[Linuxtrent] Re: hurd & linux

  • From: Lele Gaifax <lele@xxxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Mon, 6 Jan 2003 13:35:11 +0100

>>>>> On Mon, 6 Jan 2003 13:02:10 +0100, Daniele Nicolodi <daniele@xxxxxxxxxx> 
>>>>> said:

    DN> L'architettura a microkernel ha tanti vantaggi... talmente
    DN> tanti che Linux sta andando proprio in quella direzione
    DN> soprattutto con gli stravolgimenti che stanno avvenendo nel
    DN> 2.5.

La tua affermazione è troppo generica. Come dimostrato appunto da
GNU/Linux, i vantaggi del microkernel non sono poi così fondamentali
in un gran numero di situazioni. Non puoi dire che il kernel Linux sia
monolitico, vista la sua capacità di caricare/scaricare (quest'ultimo
sempre meno, pare) dinamicamente i vari moduli di accesso alle
periferiche, o che implementano altre funzionalità. Ma non puoi
nemmeno dire che sia un microkernel: con questo termine ci si
riferisce a un "cuore" di SO ancor più stretto, che sa fare benissimo
pochissime cose, tra cui mettere d'accordo e mantenere in
comunicazione un'orda di pezzetti software, che complessivamente danno
la sensazione di avere a che fare con un sistema operativo
completo. In Linux non è così: ad esempio, il kernel *deve* sapere che
prima o poi avrà a che fare con dei "file", e quindi avere coscienza,
perlomeno generica, di cos'è un file, che metadati abbia, cosa sia un
filesystem...

Su Hurd, a questo ci pensa un subsystem dedicato, che può essere
attaccato/staccato al volo, anche da un utente qualsiasi, che può
rimpiazzarlo con uno suo. Questo ad esempio rende possibile la figata
di avere dei filesystem "piatti": invece che montare la tua partizione
con i tuoi tool di sviluppo metti in /usr/local/bin, immagina che il
"mount" sottostante possa fare un merge tra la directory /bin e la
tua, presentandoti di fatto una unica directory, la /bin, che contiene
gli eseguibili di sistema PIÙ i tuoi...

Tutto questo ha ovviamente un prezzo, che è dato dalla somma di
svariate voci:

 * difficoltà nell'implementare correttamente il tutto

 * difficoltà nell'implementare degli adattatori per conservare la
   compatibilità con gli strumenti a disposizione su Unix

 * difficile ottimizzazione, per ottenere le stesse prestazioni

 * ricerca basata su tecnologie relativamente nuove, e poco
   conosciute, quindi pochi sviluppatori

Non capisco quali stravolgimenti nel 2.5 ti facciano pensare che
Linux seguirà sempre più la filosofia microkernel: Linus è stato
abbastanza chiaro, anche nel suo scambio di vedute con l'autore di
Minix, proprio sulla diatriba "modulare". Come spesso accade, non è
possibile dire che una strada in particolare è migliore di tutte le
altre: dipende dal mezzo che hai a disposizione, e quale è il fine del
viaggio.

ciao, lele.
-- 
nickname: Lele Gaifax   | Quando vivro' di quello che ho pensato ieri
real: Emanuele Gaifas   | comincero' ad aver paura di chi mi copia.
email: lele@xxxxxxxxxx  |               -- Fortunato Depero, 1929.

-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con SOGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: