Cinque principali attività di un sistema operativo rispetto alla gestione dei processi

Ci sono cinque attività principali che un sistema operativo deve mantenere per gestire i processi che sta eseguendo. Senza queste cinque attività, un sistema operativo non sarebbe in grado di rimanere stabile a lungo.

Creazione del processo

Quando accendi il computer per la prima volta, il sistema operativo apre i processi per eseguire servizi per qualsiasi cosa, dallo spooler di stampa alla sicurezza del computer. Quando si accede al computer e si avviano i programmi, i programmi creano processi dipendenti. Un processo non è il programma stesso, ma piuttosto le istruzioni che la CPU utilizza per eseguire il programma. Un processo appartiene a Windows oa qualche altro programma che hai installato.

Video del giorno

Stato di elaborazione

Lo stato di un processo può essere "creato", "in esecuzione", "in attesa" o "bloccato". Puoi dire che un processo sta "aspettando" il momento dopo l'avvio del suo programma padre e prima che sia stato elaborato dalla CPU. Un processo è "in esecuzione" quando la CPU lo sta elaborando. È possibile considerare un processo "bloccato" se il computer non dispone di memoria sufficiente per elaborarlo o se non è possibile individuare i file associati al processo. Tutti i sistemi operativi hanno una sorta di sistema di gestione dei processi, sebbene abbiano nomi diversi per ogni stato.

Sincronizzazione dei processi

Una volta che i processi sono in esecuzione, il sistema operativo ha bisogno di un modo per garantire che due processi non accedano alle stesse risorse contemporaneamente. In particolare, due processi non possono tentare di eseguire la stessa area di codice contemporaneamente. Se due processi tentano di eseguire questo codice contemporaneamente, potrebbe verificarsi un arresto anomalo mentre tentano di chiamare gli stessi file e inviare contemporaneamente le stesse istruzioni alla CPU. Se due processi devono eseguire lo stesso codice, uno deve attendere il completamento dell'altro prima di procedere.

Comunicazione di processo

Il computer deve garantire che i processi possano comunicare con la CPU e tra di loro. Ad esempio, un programma può avere molti processi e ogni processo può avere un diverso livello di autorizzazione. Un livello di autorizzazione è semplicemente un'indicazione del livello di accesso che un processo dovrebbe avere al sistema. La comunicazione di processo garantisce che il computer possa determinare le autorizzazioni di ciascun processo. Questo è molto importante per impedire al malware di eliminare i file di sistema o di aggiungere istruzioni al sistema operativo stesso.

Prevenzione del deadlock

Infine, il computer deve disporre di un modo per garantire che i processi non diventino deadlock. Il deadlock si verifica quando due processi richiedono ciascuno una risorsa che l'altro sta attualmente utilizzando e quindi nessuno dei due processi può completare ciò che sta facendo. Le risorse non possono essere rilasciate e i programmi si bloccano. Puoi anche fare riferimento a questa situazione come "attesa circolare". I sistemi operativi prevengono lo stallo in diversi modi, ma il metodo più comune è forzare un processo a dichiarare le risorse di cui avrà bisogno prima di poterlo fare avviare. In alternativa, un processo può essere forzato a richiedere risorse in blocchi e quindi a rilasciare le risorse al termine.