Cosa sono le estensioni del kernel?

Un’estensione del kernel è un software per computer che viene caricato nel componente centrale di un sistema operativo. Le estensioni del kernel potrebbero essere utilizzate per fornire funzionalità o supporto hardware che altrimenti non farebbero parte del kernel. Un’estensione del kernel spesso può eseguire attività o accedere a parti del sistema operativo che il normale software non può. In alcuni sistemi operativi, le estensioni del kernel sono chiamate moduli del kernel o semplicemente moduli.

Nella maggior parte dei sistemi operativi, l’accesso alla rete, ai file system e alle chiamate di sistema è limitato per mantenere un sistema stabile e sicuro. Le estensioni del kernel sono in grado di accedere a queste funzioni e sistemi perché vengono eseguite come parte del kernel. Un kernel senza estensioni è noto come kernel di base. Le estensioni possono essere aggiunte o rimosse dal kernel di base.

Le estensioni consentono una maggiore flessibilità nelle capacità di un kernel senza aumentare la complessità del kernel di base. Ad esempio, potrebbe essere caricata un’estensione del kernel per abilitare le funzioni di risparmio energetico appropriate per i computer portatili. Queste funzionalità in genere non sono incluse nel kernel di base perché il sistema operativo potrebbe non essere utilizzato su un laptop.

Anche le estensioni oi moduli del kernel possono essere caricati e scaricati dinamicamente, il che significa che vengono aggiunti e rimossi dal kernel secondo necessità. Ciò consente al computer di risparmiare memoria e altre risorse quando l’estensione non è in uso. Una scheda di rete USB (Universal Serial Bus) potrebbe caricare i driver richiesti come estensioni del kernel quando è collegata, quindi scaricare le estensioni quando il dispositivo viene rimosso.

Hanno più autorità di altri programmi, quindi le estensioni e i moduli del kernel possono causare problemi unici. Un driver di dispositivo codificato male eseguito come estensione del kernel potrebbe causare l’arresto anomalo dell’intero sistema. Per questo motivo, gli sviluppatori di software sono spesso incoraggiati a utilizzare le estensioni del kernel solo quando non ci sono alternative.

Per la maggior parte degli utenti, la configurazione delle estensioni avviene automaticamente. Alcuni utenti, in particolare quelli che utilizzano particolari sistemi operativi, gestiscono autonomamente l’estensione del kernel oi moduli. Esistono variazioni nelle versioni dei kernel, quindi estensioni e moduli potrebbero non essere compatibili con tutti i kernel o tutti i sistemi operativi.