Tässä ensiksikin käyttöjärjestelmistä perustietoja:
http://www.cs.helsinki.fi/u/niklande/opetus/kj/2007/kalvot/luento03-2p.pdf
Sitten historiallinen kiista Tannebaum-Thorvalds:
http://oreilly.com/catalog/opensources/book/appa.html
Minixin luoja Tannebaum siis kannatti tuolloin mikrokerneliä. Hänen esitti muutamia vääriä veikkauksia tulevaisuudesta, mutta mikrokernelit ovat joka tapauksessa vallanneet pöytätietokoneet kaiketi yli 95% (MS ja Mac).
Siis mikrokernelissä on varmaan joitakin etujakin, jos ehkä muutama haittakin. Ainakaan monoliittinen Unix ei ole onnistunut valtaamaan mitään mikrokernel-käyttöjärjestelmiltä, eikäpä juuri monoliittinen linuxikaan, vaan se on syönyt eniten unixia.
Miten siis olisi käynyt, jos Linux olisi muokattu alkujaan mikrokerneliä käyttäväksi käyttöjärjestelmäksi Tannebaumin osoittamalla tiellä?
Olisiko pilkoutuminen vielä useampiin jakaluihin ollut yksi vaara? Vai olisiko useiden eri kehittäjien toiminta ollut paremmin koordinoitavissa, kun ohjelmistomuutoksen vaikutus oli rajoittunut pienempään moduuliin? Vai olisiko koko linux jäänyt minixin harvinaiseksi variaatioksi, joka olisi tunnettu epävakaudestaan?
Minixin uusin versio kuulemma voidaan päivittää lennossa ja on väitteiden mukaan hyvin vikasietoinen.
http://www.cs.helsinki.fi/u/niklande/opetus/kj/2007/kalvot/luento03-2p.pdf
Sitten historiallinen kiista Tannebaum-Thorvalds:
http://oreilly.com/catalog/opensources/book/appa.html
Minixin luoja Tannebaum siis kannatti tuolloin mikrokerneliä. Hänen esitti muutamia vääriä veikkauksia tulevaisuudesta, mutta mikrokernelit ovat joka tapauksessa vallanneet pöytätietokoneet kaiketi yli 95% (MS ja Mac).
Siis mikrokernelissä on varmaan joitakin etujakin, jos ehkä muutama haittakin. Ainakaan monoliittinen Unix ei ole onnistunut valtaamaan mitään mikrokernel-käyttöjärjestelmiltä, eikäpä juuri monoliittinen linuxikaan, vaan se on syönyt eniten unixia.
Miten siis olisi käynyt, jos Linux olisi muokattu alkujaan mikrokerneliä käyttäväksi käyttöjärjestelmäksi Tannebaumin osoittamalla tiellä?
Olisiko pilkoutuminen vielä useampiin jakaluihin ollut yksi vaara? Vai olisiko useiden eri kehittäjien toiminta ollut paremmin koordinoitavissa, kun ohjelmistomuutoksen vaikutus oli rajoittunut pienempään moduuliin? Vai olisiko koko linux jäänyt minixin harvinaiseksi variaatioksi, joka olisi tunnettu epävakaudestaan?
Minixin uusin versio kuulemma voidaan päivittää lennossa ja on väitteiden mukaan hyvin vikasietoinen.
Vastaukset 21
Vanhimmat
Linuxydin ei ole nykyisin monoliittinen!
totta. linuxin kernel on pitkään ollut modulaarinen.
myös linuxin kernelin päivittäminen on tietyin edellytyksin mahdollista ihan lennossa.
normaalikäyttäjällä siihen nyt harvemmin tarvetta silti on.
jotenkin ikävää että ihmisillä on monta vuotta vanhoja tietoja/oletuksia linuxista. eikö niitä olisi syytä jotenkin yrittää oikoa?
Linux on monoliittinen kerneli, jossa jo pelkkä ajurin vika aiheuttaa koko järjestelmän kaatumisen toisin kuin kehittyneemmissä Mikrokerneliä käyttävissä käyttöjärjestelmissä, kuten Windowsissa.
Monoliittinen kerneli on hidas, raskas ja hyvin epävakaa, koska se ei kestä edes ajureidensa vikoja.
Minä en kyllä ole huomannut minkäälaista kaatuilua. Mikäli jokin ajuri on temppuillut niin se on yleensä ollut juuri se modulaarinen joten sen voi poistaa ajon aikana ja yksinkertaisesti komennolla
rmmod
ja mahdollisesti korvata jollakin toisella ajurimodulilla.
Sen sijaan Windowsin BSOD on tullut aika monta kertaa, eikös se ole käyttöjärjestelmän kaatuminen.
"Linux on monoliittinen kerneli, jossa jo pelkkä ajurin vika aiheuttaa koko järjestelmän kaatumisen"
Siinäpä menitkin asiaan. Linuxissa on oltava laadukasta koodia, muutenhan se kaatuilisi jatkuvasti. Näin ei kuitenkaan asiat ole, vaan Linux on yksi vakaimmista mitä saatavilla on.
"toisin kuin kehittyneemmissä Mikrokerneliä käyttävissä käyttöjärjestelmissä, kuten Windowsissa"
Windowsihan ei muuta teekään kuin kaatuilee.
"Monoliittinen kerneli on hidas, raskas ja hyvin epävakaa, koska se ei kestä edes ajureidensa vikoja."
Mutta Pentti, miksi ajureissa pitäisi olla vikaa? Linuxin tyyliin kuuluu ettei ajureissa saa olla vikaa. Linuxissa ei olla vielä edes kolmannessa versiossa ja silti on vakaampi ja nopeampi kuin kuudes windows..
Toisekseenkin monoliittinen on mikrokerneliä huomattavasti nopeampi. Tämä onkin se syy miksi Linuxia käytetään supertietokoneissa. Linux ytimeen voidaan tarvittaessa kääntää kaikki ajurit sisään, joka tekee siitä 100% monoliittisen ja siten nopeamman. Työpöytäkoneissa käytetään kuitenkin moduleja, ei tarvii kääntää uutta kerneliä aina kun kytkee uuden laitteen kiinni.
Mieti pena.. Linux on moduliversionakin jo nopeampi kuin Windows.. ajattele mikä on ero sitten kun ajurit on käännetty sisään. Kyllä hävettäisi jos olisin Microsoft-fani.
Architecture
Linux is a monolithic kernel.
http://en.wikipedia.org/wiki/Linux_kernel#Technical_features
Menkää nyt hyvät ihmiset korjaamaan ensin tuo, jotka ovat eri mieltä asiasta.
Mutta vaikkei linux enää olisikaan monoliittinen ytimeltään, niin alkujaan se kuitenkin oli ja samat kysymyksethän jäävät pääosin voimaan. Oliko jotain muuttunut, jos linux olisi ollut mikroytiminen alkujaan?
Käytössä ei ole puhtaita mikrokerneleitä eikä täysin monoliittisä. Kaikki ovat jonkinasteisia sekasikiöitä koska halutaan saada molempien etuja samalla välttäen niiden haittoja.
Windowsin ydin on puhdas mikrokerneli johon on lisätty monoliittisen kernelin hyviä piirteitä.
Juu
YRITETTY lisätä
Monoliittinen kerneli on tunnetusti tehokkain.
"Olisiko pilkoutuminen vielä useampiin jakaluihin ollut yksi vaara?"
"jakelujen" määrä kertoo vain Linuxin suosiosta. Miksi muista ytimistä on tehty niin vähän käyttöjärjestelmiä? Onko ne huonoja? Linuxin on huolinut käyttöjärjestelmänsä ytimeksi todella moni.
Kun nyt keskustelussa edetään tuosta ytimestä kuorikerroksiin, niin jakeluiden lukumäärän voi nähdä myös haluna keksiä pyörä (graafinen käyttöliittymä) yhä uudestaan. Sama kehitysponnistus yhteen suuntaan olisi voinut tuottaa nykyistä vielä menestyksellisemmän tuloksen. Muutakin ylimääräistä tuosta jakeluiden runsaudesta aiheutunee. Esim. Openofficesta näyttää olevan kaksi vähän erilaista linux-pakettia, mutta vain yksi Windows-paketti, joka toimii ainakin XP:ssä ja Vistassa. Tämä siis 32-bittisenä.
M-Kar:[Linuxin on huolinut käyttöjärjestelmänsä ytimeksi todella moni.]
Kieltämättä moni. PC:n käyttäjistä kuitenkin alle 5% osuus yhteensä.
Ja takaisin ytimeen, niin vaikka jakeluiden lukumäärä olisi ollut sama kuin nyt, niin olisiko mikroydin tuonut siihen mitään lisää tai poistanut jotain?
"nykyistä vielä menestyksellisemmän tuloksen"
Linuxissa ei edelleenkään ole kyse tuloksen tekemisestä tai menestyksen hakemisesta.
http://fi.wikipedia.org/wiki/Käyttöjärjestelmän_ydin
Linux voidaan kääntää joko 100% monoliittiseksi tai sitten niin modulaariseksi että se on käytännössä mikrokerneli
"Kun nyt keskustelussa edetään tuosta ytimestä kuorikerroksiin, niin jakeluiden lukumäärän voi nähdä myös haluna keksiä pyörä (graafinen käyttöliittymä) yhä uudestaan."
Ei sitä pyörää ole uudelleen keksitty. Erilaisia työpöytiä kyllä on mutta kaikilla on omia erikoisuuksia. Ihmiset kun tykkäävät käyttää tietokonetta eri tavoilla.
"Esim. Openofficesta näyttää olevan kaksi vähän erilaista linux-pakettia, mutta vain yksi Windows-paketti, joka toimii ainakin XP:ssä ja Vistassa. Tämä siis 32-bittisenä."
Siis mitähän nyt selität? OpenOffice tulee useimmissa käyttöjärjestelmissä mukana eikä tässä minun Ubuntussa ole kuin yksi OpenOffice.
"Kieltämättä moni. PC:n käyttäjistä kuitenkin alle 5% osuus yhteensä."
Tuollaiset prosenttiosuudet on ihan huuhaata. Kotipalvelimista esimerkiksi lähes 100% käyttää jotain Linux-pohjaista käyttöjärjestelmää. Suomessa kotikäyttäjistä käyttää hyvin moni jotain Linux-pohjaista käyttöjärjestelmää:
http://www.tekniikkapiste.fi/blogi/2008/12/03/5
Olkoonkin niin että Linuxin perustana oleva ydin on monoliittiseksi luettava, en todellakaan muista milloin olisin viimeksi päätynyt kernel paniciin, siitä on todella kauan aikaa. En lue viimeksi reilusti vuosi sitten tapahtunutta kernelin panikointia ytimen viaksi koska olin itse kääntänyt sen ytimen mutta väärillä konfiguraatioilla.
Mainittakoon tähän väliin ettei tuosta kannata repiä mitään irti, nykyään käyttäjän ei tarvitse kääntää sitä kerneliä ellei halua, itse yritinkin tehdä vähän kuin mikrokerneliä siitä eli yritin siirtää mahdollisimman paljon modulaariseksi mutta joku meni pieleen, siksi se ei toiminutkaan buutista.
Niin, siis varsinaista ytimen kaatumista en muista tapahtuneen kuin herra ties milloin, kyllä se on harvinaista ainakin omien kokemusten pohjalta ja erilaisia jakeluita on tullut kokeiltua sentään hitonmoinen läjä. Kyllä linux on hyvin vakaa.
Ja mitä sitten tulee niihin viallisiin ajureihin niin niitä mulle on sattunut jonkin verran mutta korjaus on aina onnistunut kyseinen ajurimoduli poistamalla eli modulaarisuus on niinkin vahvana nykyaikaisissa jakeluissa että vialliset ajurit on voinut poistaa/vaihtaa vauhdissa ilman että käyttis olisi mitenkään halvaantunut tai kärsinyt, monoliittiseen osaan ei ole osunut vikoja.
Tässä yritetään nyt tehdä lihasoppaa kärpäsestä, lopputulokset jää laihaksi liemeksi.
En ole ikinä nähnyt kernel paniccia vaikka olen tietokoneita räplännyt aika paljon.
Aika extriimiä! No kokeile sitten tehdä jokin äärimmäisen extreme kernelin konffi josta yrität poistaa kaiken paitsi mitä kone välttämättä tarvitsee, kyllä siitä äkkiä saa kernel panicit kasaan ;D
Ihan toinen asia onko sellaisessa mitään järkeä työpöytäkoneessa.
Eräs viestini tarkoitus oli kysellä, miten linux voisi olla vielä parempi. Jos tämä on vastaus tuohon kysymykseeni:
exergy:[Tässä yritetään nyt tehdä lihasoppaa kärpäsestä, lopputulokset jää laihaksi liemeksi. ]
Niin ei kait sitten mitenkään?
Joo tuotas tuon piti oleman vastaus Pentille mutta se tuli vähän väärään paikkaan.
Mitä tulee kernelin kehittämiseen niin siitä jotakin ymmärtävät eivät pyöriskele täällä ;D Se että on jokin mielipide siitä miten jokin asia pitäisi tehdä jää ilman asiantuntemusta pelkäksi mielipiteeksi eikä pelkän mielipiteen perusteella kannatta mihinkään tärkeään alkaa tekemään mitään muutoksia.
Tarkoitan siis sitä että koska emme käytännössä ymmärrä yhtään mitään ytimestä ja sen tekemisestä niin emme myöskään ymmärrä rajoittavia tekijöitä tai sitä miksi jotakin voi tai ei voi tehdä. Miten kukaan täällä siis voisi vastata mitään järkevää kysymykseesi? Täydellinenhän mikään ihmisen tekele ei voi koskaan olla joten kehittäjätiimi jatkanee töitä heti kun 2.6.28-juhlat on ohi.
Mutta jos minulta tarviit jonkun vastauksen niin sitä voisi kehittää siten että sen uuden ytimen mukana tulisi aina ihan uusi tietokonekin ja laskun voisi lähettää Pentti Neloselle, sillä kun kuulemma on rahaa niin että ranteet notkuu niin ei sen budjetissa muutama konekaan edes näy.
Linux on jo markkinoiden paras ydin.