Sistema operativo per bambini

Kid Operating System (KOS) è un progetto per sviluppare un sistema operativo per scopi educativi con licenza GNU GPL . Funziona su architettura x86 .

Il progetto è iniziato in Giugno 1998, su iniziativa di giovani programmatori delle scuole superiori francesi . Volevano approfondire le loro conoscenze di programmazione sviluppando loro stessi un piccolo sistema operativo. L'inesperienza ha giocato un ruolo importante nel far progredire lo sviluppo, che all'inizio è stato relativamente lento. Il team di sviluppo contava fino a dieci persone attive. Attualmente (nel 2005), il team è ridotto a 3 sviluppatori attivi.

Storico

Una cronologia più completa è disponibile sul sito.

gli obiettivi del progetto

L'obiettivo del progetto non è quello di ottenere il più rapidamente possibile un sistema operativo funzionale che dovrebbe competere con altri sistemi liberi o proprietari. L'obiettivo è puramente educativo e pedagogico. Per gli sviluppatori, questo progetto è un'opportunità per apprendere la programmazione di basso livello, per comprendere il funzionamento interno di un sistema operativo e l'architettura di un computer, per imparare a lavorare in gruppo e per utilizzare strumenti di lavoro collaborativo. Per gli altri, il progetto KOS fornisce documenti, una bibliografia e un codice sorgente disponibile sotto licenza GPL.

Specifiche del sistema

Il sistema operativo KOS ha alcune peculiarità rispetto ad altri sistemi come GNU / Linux ad esempio.

Prima di tutto, è un sistema modulare  : l'intero kernel è suddiviso in moduli, che sono collegati tra loro all'avvio del sistema. Non è un sistema micro-kernel, ma un sistema monolitico. Tuttavia, l'approccio modulare consente di separare in modo pulito le parti portatili e non del sistema e di garantire la chiarezza delle interfacce tra i diversi moduli.

Inoltre, KOS cerca di impostare un sistema originale di accesso alle risorse del computer e del sistema. Il tradizionale approccio Unix di avere un'unica interfaccia per accedere alle risorse, tutte considerate file, sembrava troppo restrittivo agli occhi degli sviluppatori. Volevano tenere conto della reale disparità di risorse gestite da un sistema operativo: file, schede audio, schede grafiche, varie periferiche, socket ... Per questo, hanno provato a impostare un'architettura chiamata Karm (per Kos Abstract Resource Management ), consentendo l'accesso a ciascuna risorsa attraverso varie interfacce, a seconda delle sue specificità.

KOS ha alcune altre caratteristiche originali, in particolare a livello di gestione della memoria virtuale.

Sistema operativo semplice

Da KOS, due degli sviluppatori di questo sistema hanno lanciato SOS , Simple Operating System. L'obiettivo di questo progetto è dettagliare, passo dopo passo, la realizzazione di un piccolo sistema operativo. Ogni passaggio dà luogo ad un articolo pubblicato su una rivista mensile ed è accompagnato dal codice associato.

Link esterno