base di conoscenza
CTRL+F per cercare la tua parola chiave

Kernel monolitico

Un kernel monolitico è un'architettura del sistema operativo in cui l'intero sistema operativo lavora nello spazio del kernel. Il modello monolitico differisce dalle altre architetture del sistema operativo (come l'architettura microkernel) in quanto definisce da solo un'interfaccia virtuale di alto livello sull'hardware del computer. Una serie di primitive o chiamate di sistema implementano tutti i servizi del sistema operativo come gestione dei processi, concorrenza e gestione della memoria. I driver di dispositivo possono essere aggiunti al kernel come moduli.

Moduli caricabili

I sistemi operativi modulari come OS-9 e i più moderni sistemi operativi monolitici come OpenVMS, Linux, BSD, SunOS, AIX e MULTICS possono caricare (e scaricare) in modo dinamico moduli eseguibili in fase di esecuzione.

Questa modularità del sistema operativo è a livello binario (immagine) e non a livello di architettura. I sistemi operativi monolitici modulari non devono essere confusi con il livello architettonico di modularità inerente ai sistemi operativi server-client (e i suoi derivati ​​a volte commercializzati come kernel ibrido) che usano micro kernel e server (da non confondere con moduli o demoni).

In pratica, il caricamento dinamico dei moduli è semplicemente un modo più flessibile di gestire l'immagine del sistema operativo in fase di runtime, rispetto al riavvio con un'immagine del sistema operativo diversa. I moduli consentono una facile estensione delle capacità dei sistemi operativi come richiesto. I moduli caricabili dinamicamente comportano un piccolo sovraccarico rispetto alla creazione del modulo nell'immagine del sistema operativo.

Tuttavia, in alcuni casi, il caricamento dinamico dei moduli (secondo necessità) aiuta a ridurre al minimo la quantità di codice in esecuzione nello spazio del kernel; ad esempio, per ridurre al minimo l'ingombro del sistema operativo per i dispositivi incorporati o quelli con risorse hardware limitate. Vale a dire, non è necessario che un modulo scaricato sia archiviato in una scarsa memoria ad accesso casuale.

Esempi di architettura monolitica

  • Kernel Unix
    • BSD
      • FreeBSD
      • NetBSD
      • OpenBSD
      • MirOS BSD
      • SunOS
    • Sistema UNIX V
      • AIX
      • HP-UX
      • Solaris
        • OpenSolaris / illumos
  • Gherigli di tipo Unix
    • Linux
  • DOS
    • DR-DOS
    • MS-DOS
      • Microsoft Windows 9x series (95, 98, 98 SE, ME)
    • DOS gratuito
  • OpenVMS
  • XTS-400
  • z / TPF