Software libero pensiero libero/Volume I/Parte prima/GNU Hurd

Volume I
Parte prima
GNU Hurd

../Sviluppi inattesi ../Alix IncludiIntestazione 20 luglio 2008 75% Open Source

Parte prima - Sviluppi inattesi Parte prima - Alix


GNU Hurd

Nel 1990 il sistema GNU era quasi completo, l’unica parte significativa ancora mancante era il kernel. Avevamo deciso di implementare il nostro kernel come un gruppo di processi server che girassero sul sistema Mach. Mach è un micro-kernel sviluppato alla Carnegie Mellon University e successivamente all’Università dello Utah; GNU Hurd è un gruppo di server (o “herd of gnus”: mandria di gnu) che gira su Mach svolgendo le funzioni del kernel Unix. L’inizio dello sviluppo fu ritardato nell’attesa che Mach fosse reso disponibile come software libero, come era stato promesso.

Una ragione di questa scelta progettuale fu di evitare quella che sembrava la parte più complessa del lavoro: effettuare il debugging del kernel senza un debugger a livello sorgente. Questo lavoro era già stato fatto, appunto in Mach, e avevamo previsto di effettuare il debugging dei server Hurd come programmi utente con GDB. Ma questa fase si rivelò molto lunga, e il debugging dei server multithread che si scambiano messaggi si è rivelato estremamente complesso. Per rendere Hurd robusto furono così necessari molti anni.