Nel calcolo, cos'è un kernel?

Nella maggior parte dei sistemi operativi per computer, il kernel è il componente centrale. È il ponte tra l'utente e le applicazioni e l'hardware del computer. È anche il meccanismo che consente al computer di gestire contemporaneamente più utenti e più attività. I tipi di kernel sono il kernel monolitico, il microkernel, il kernel ibrido, il nanokernel e l'exkernel.

Il kernel gestisce tutte le risorse di sistema del computer. Ciò include l'archiviazione a lungo termine, l'unità di elaborazione centrale (CPU), la memoria a breve termine e i dispositivi di input e output. Quando un'applicazione necessita di una di queste risorse, il kernel rende disponibile la risorsa e completa la richiesta.

Questa gestione delle risorse consente ai sistemi operativi di essere sia multiutente che multitasking. Il sistema operativo non esegue in realtà più di un'attività alla volta. Invece, il kernel commuta le attività a una velocità così alta che il computer sembra eseguire più attività. Il kernel alQuindi è responsabile di garantire che le risorse utilizzate da un utente o un processo non vengano violate la richiesta di un altro utente o processo.

Ci sono due tipi principali di kernel sono il kernel monolitico e il microkernel. I kernel monolitici utilizzano un metodo di supervisione di gestione delle risorse in cui tutti i servizi del sistema operativo sono eseguiti nello stesso spazio di indirizzi, chiamato spazio del kernel. Alcuni kernel monolitici possono caricare e scaricare moduli eseguibili. Ciò estende le capacità del sistema operativo pur mantenendo una quantità minima di codice in esecuzione nello spazio del kernel in qualsiasi momento.

I microkernel eseguono solo la quantità minima di servizi del sistema operativo, come la gestione della memoria, la gestione dei thread e la comunicazione tra process nello spazio del kernel. Tutti gli altri servizi, come driver di dispositivi, interfacce utente e gestione dei file, sono eseguiti nello spazio utente. Il microkernelminimizza gravemente la quantità di codice in esecuzione in modalità kernel.

Un kernel ibrido è una combinazione del monolitico e dei microkernel. La maggior parte dei servizi di sistema del sistema operativo sono eseguiti nello spazio del kernel, come un kernel monolitico. Esistono altri servizi, come il file system e il sistema di finestre, che vengono eseguiti nello spazio utente.

Gli altri tipi di kernel sono il nanokernel e l'exkernel. Il nanokernel utilizza i driver di dispositivi per gestire quasi tutti i servizi. L'Exokernel utilizza i programmi per allocare le risorse fisiche.

ALTRE LINGUE

Questo articolo è stato utile? Grazie per il feedback Grazie per il feedback

Come possiamo aiutare? Come possiamo aiutare?