Pagina 1 di 1
Come funziona un microkernel?
Inviato: lun 25 lug 2005, 19:35
da Raistlin84
Ciao,allora leggendo qua e là, ho trovato varie cose sui microkernel,ma nonostante tutto non ho ben capito nella pratica che vantaggi comportano e che difetti hanno.
La mia è pura curiosità,ho letto di Hurd e L4,mi piacerbbe capire come funzionano,le differenze tra un kernel monolitico,i vantaggi,svantaggi.E poi se per puro divertimento potrei far girare un microkernel sul mio pc.
Re: Come funziona un microkernel?
Inviato: lun 25 lug 2005, 20:18
da masalapianta
Raistlin84 ha scritto:Ciao,allora leggendo qua e là, ho trovato varie cose sui microkernel,ma nonostante tutto non ho ben capito nella pratica che vantaggi comportano e che difetti hanno.
La mia è pura curiosità,ho letto di Hurd e L4,mi piacerbbe capire come funzionano,le differenze tra un kernel monolitico,i vantaggi,svantaggi.E poi se per puro divertimento potrei far girare un microkernel sul mio pc.
in due parole:
i microkernel son kernel ridotti all'osso (a ring 0 gira lo scheduler e poco altro) che demandano il resto delle funzioni a processi in user land; di contro i kernel monolitici e monolitici modulari girano completamente in kernel land; i primi hanno il vantaggio di essere piu' stabili (meno roba gira in kernel land e meno pericolo c'e' che il sistema vada a donne allegre) ma lo svantaggio di essere meno performanti (ovviamente se una funzione la implemento in user land avro' un overhead che non avrei se la implementassi in kernel land), i monolitici e i monolitici modulari l'esatto contrario.
Inviato: lun 25 lug 2005, 20:39
da Paoletta
anche questo ti potrebbe interessare:
La controversia fra Linus Torvalds e Andrew Tanenbaum riguarda principalmente che il prof era sostenitore dei microkernel e Linus no;
http://www.oreilly.com/catalog/opensour ... /appa.html
Inviato: lun 25 lug 2005, 20:42
da Raistlin84
Si,l'avevo letta!E ci mancherebbe!
Comunque grazie davvero.
In pratica al momento non c'è nessun motivo per cui utilizzare un microkernel.
Inviato: lun 25 lug 2005, 20:50
da masalapianta
Raistlin84 ha scritto:Si,l'avevo letta!E ci mancherebbe!
Comunque grazie davvero.
In pratica al momento non c'è nessun motivo per cui utilizzare un microkernel.
quale parte di "i primi hanno il vantaggio di essere piu' stabili (meno roba gira in kernel land e meno pericolo c'e' che il sistema vada a donne allegre)" non hai capito?
Inviato: lun 25 lug 2005, 21:51
da Raistlin84
Beh,non e' che non ho capito.Vedendo che Linux, almeno a mio avviso, sembra stabilissimo,non vedo perchè non si possa puntare alle prestazioni.
Forse sbaglio,ma un kernel monolitico sviluppato veramente bene dovrebbe risultare di grande stabilità,quindi si può tranquillamente usare esaltando le prestazioni.Ma soprattutto al momento da quanto ho trovato in giro,non mi sembrano esserci microkernel open source abbastanza maturi,anzi sono abbastanza instabili.
Inviato: lun 25 lug 2005, 23:54
da masalapianta
Raistlin84 ha scritto:Beh,non e' che non ho capito.Vedendo che Linux, almeno a mio avviso, sembra stabilissimo,
dipende cosa ci devi fare, "stabilissimo" assume valori diversi a seconda dell'uso che ne fai; "stabilissimo" per uso desktop e' ben poca cosa rispetto a "stabilissimo" per pilotare macchine a controllo numerico (per usi di questo tipo si usano ancora perlopiu' kernel della serie 2.2)
non vedo perchè non si possa puntare alle prestazioni.
ripeto: dipende che ci devi fare
Forse sbaglio,ma un kernel monolitico sviluppato veramente bene
non esiste e non esistera' mai software sviluppato "veramente bene"
Ma soprattutto al momento da quanto ho trovato in giro,non mi sembrano esserci microkernel open source abbastanza maturi,anzi sono abbastanza instabili.
vero, ma io ti ho fatto un discorso semplificato al massimo, ma i vantaggi di un microkernel non si riducono alla maggiore stabilita' (a parita' di pulizia del codice), un microkernel ad esempio offre discreti vantaggi anche nella scalabilita' su architetture smp molto spinte, permette di avere un'architettura di sistema intrinsecamente piu' sicura, ecc..
Inviato: mar 26 lug 2005, 17:43
da absinthe
masalapianta ha scritto:Raistlin84 ha scritto:Beh,non e' che non ho capito.Vedendo che Linux, almeno a mio avviso, sembra stabilissimo,
dipende cosa ci devi fare, "stabilissimo" assume valori diversi a seconda dell'uso che ne fai; "stabilissimo" per uso desktop e' ben poca cosa rispetto a "stabilissimo" per pilotare macchine a controllo numerico (per usi di questo tipo si usano ancora perlopiu' kernel della serie 2.2)
non vedo perchè non si possa puntare alle prestazioni.
ripeto: dipende che ci devi fare
Forse sbaglio,ma un kernel monolitico sviluppato veramente bene
non esiste e non esistera' mai software sviluppato "veramente bene"
Ma soprattutto al momento da quanto ho trovato in giro,non mi sembrano esserci microkernel open source abbastanza maturi,anzi sono abbastanza instabili.
vero, ma io ti ho fatto un discorso semplificato al massimo, ma i vantaggi di un microkernel non si riducono alla maggiore stabilita' (a parita' di pulizia del codice), un microkernel ad esempio offre discreti vantaggi anche nella scalabilita' su architetture smp molto spinte, permette di avere un'architettura di sistema intrinsecamente piu' sicura, ecc..
orpolà uno che mi ha illuminato la via!
non esisterebbe mica un libro o un bel documento su internet x questa roba? cioè qualcosa di + dettagliato seppur qualitativo (non ho tempo di partire da zero e imparare tutti i concetti "quantitativi" necessari per la creazione di un kernel)
tnx.
M.
Inviato: mar 26 lug 2005, 20:17
da Paoletta
c' è un libro di nome "modern operating systems" di Tanenbaum, che è molto interessante;
però dello stesso autore c'è anche "sistemi operativi:progetto e implementazione" che contiene tutto il codice di Minix,uno dei 2 S.O. creati da Tanenbaum e di cui esiste la traduzione in italiano; in quest'ultimo libro ci sono teoria e pratica;
costa un pò,ma se lo compri da amazon risparmi;
Inviato: mar 26 lug 2005, 20:22
da Paoletta
scusa,ma invece è:
Sistemi Operativi Disegno e Implementazione
oltretutto cercandolo on line credo che la versione in italiano non sia più disponibile,quindi c'è solo quella in inglese:
Operating Systems Design and Implementation.
Inviato: mar 26 lug 2005, 21:00
da Raistlin84
Grazie davvero a tutti allora.Mi avete fatto un po' di chiarezza e limato un po' di niubbaggine

.
Guarderò se trovo una versione pdf del libro.
THX!
Inviato: mer 27 lug 2005, 21:59
da absinthe
Paoletta ha scritto:scusa,ma invece è:
Sistemi Operativi Disegno e Implementazione
oltretutto cercandolo on line credo che la versione in italiano non sia più disponibile,quindi c'è solo quella in inglese:
Operating Systems Design and Implementation.
stai a vedere che lo compro davvero... sai ho 1 settimana di ferie ad agosto
grazie,
M.