Concetti Chiave
- Lo schedulatore è una componente essenziale del sistema operativo che gestisce le transizioni dei processi tra diversi stati, come sospeso e attivo.
- La schedulazione a lungo termine è tipica dei sistemi batch e coinvolge la transizione dei processi dallo stato new a ready, gestendo lavori memorizzati su disco.
- La schedulazione a medio termine regola la transizione tra gli stati pronto, sospeso e waiting, ottimizzando l'uso delle risorse del sistema.
- La schedulazione a breve termine è eseguita frequentemente, gestendo le transizioni tra ready e running ogni volta che un processo rilascia il processore.
- I processi sono classificati come CPU bound o Input/Output bound, a seconda del loro utilizzo della CPU e delle risorse di Input/Output, influenzando la loro programmazione.
Ruolo dello schedulatore
La componente del Sistema Operativo che opera questo tipo di scelta(transizione di un processo da sospeso a attivo) è lo schedulatore. Ci sono diversi tipi di schedulazione : lungo termine ; medio termine ; breve termine(usato piu' frequentemente).
La schedulazione a lungo termine riguarda la transizione dello stato new allo stato ready ed è caratteristica dei sistemi batch. In questi sistemi una parte dei lavori è inviata al sistema e messo su disco nello stato sospeso. I processi sospesi vengono chiamati anche dormienti, quei processi rimossi dalla memoria centrale e salvati su disco;
La schedulazione a medio termine riguarda la transizione tra pronto e sospeso e tra waiting e sospeso;
La schedulazione a breve termine riguarda le transizioni tra ready e running. E' eseguita molto frequentemente perche' lo schedulatore deve intervenire ogni volta che un processo rilascia il processore;
Processi e risorse
I processi si possono suddividere in processi CPU bound, che impegnano molto la CPU e richiedono poche operazioni di Input/Output, e processi Input/Output bound che sarebbero l'opposto. I processi competono per le risorse del sistema e il S.O. con la schedulazione le colloca ai processi controllandone l'esecuzione. Attuare una buona schedulazione è molto complicato.
Domande da interrogazione
- Qual è il ruolo principale dello schedulatore nel sistema operativo?
- Quali sono le differenze tra i vari tipi di schedulazione?
- Come si classificano i processi in base all'uso delle risorse?
Lo schedulatore è responsabile della transizione dei processi da uno stato all'altro, come da sospeso a attivo, e gestisce diversi tipi di schedulazione: lungo termine, medio termine e breve termine, ognuna con specifiche funzioni e caratteristiche.
La schedulazione a lungo termine gestisce la transizione da new a ready, quella a medio termine si occupa delle transizioni tra pronto e sospeso, mentre la schedulazione a breve termine riguarda le transizioni tra ready e running, intervenendo frequentemente quando un processo rilascia il processore.
I processi possono essere classificati come CPU bound, che richiedono molte risorse della CPU e poche operazioni di Input/Output, o Input/Output bound, che hanno esigenze opposte. La competizione per le risorse è gestita dal sistema operativo attraverso la schedulazione.