Kirjaudu

Uutiskirje

Rekisteröidy Sektoriin ja tilaa itsellesi joko aamuisin tai iltaisin ilmestyvä uutiskirje sähköpostiisi.

Tiistai, 9.5.2006

Mikroydinkäyttöjärjestelmät tekemässä come-backin?

Käyttöjärjestelmä-asiantuntija Andrew Tanenbaum on yhdessä kolmen muun tutkijan kanssa julkaissut artikkelin, jossa pureudutaan käyttöjärjestelmien tietoturva- ja luotettavuusongelmiin. Tutkijoiden mukaan nykykäyttöjärjestelmien suurimmat ongelmat liittyvät niiden kokoon ja heikkoon virhetilanteiden eristämiseen. Linux-ytimessä on yli 2,5 miljoonaa riviä koodia ja Windows XP:n ydin on tuplasti isompi. Erään ohjelmistojen luotettavuustutkimuksen mukaan ohjelmissa on tyypillisesti 6-16 bugia tuhatta riviä koodia kohden. Konservatiivisen arvion mukaan Linux-ytimessä on näin ollen noin 15 000 bugia ja Windows XP-ytimessä tuplasti enemmän.

Tanenbaum vertaa käyttöjärjestelmiä laivoihin, joissa merenkäynnin ongelmatilanteisiin on varauduttu eristämällä eri osastot toisistaan. Nykyiset käyttöjärjestelmät ovat kuin vanhoja laivoja, joissa jokainen vuoto saattaa upottaa koko aluksen.

Osa uusista käyttöjärjestelmäydinkonsepteista on otettu käyttöön mikroydin-monipalvelinarkkitehtuuria hyödyntävässä Minix 3 -käyttöjärjestelmässä, jonka ytimessä on vain 4000 riviä koodia. Tanenbaum uskoo, että se mikä mikroydinarkkitehtuurin suorituskyvyssä menetetään, saadaan moninkertaisesti takaisin parantuneena luotettavuutena.

Lue juttu oma, 9.5.2006 00:04. Lähde: computer.org
Rekisteröidy ja kirjaudu sisään, jos haluat kommentoida.

Kommentit ( 6 uutta / 6 )
pistettä.
Näytä vain kommentit joilla on vähintään
Pisterajan alittavia kommentteja piilossa.
muumio Re: Yhdyssana
muumio, 9.5.2006 21:54:38
Pisteet: 0
... "mikroydinkäyttöjärjestelmä", nimittäin. Onnittelut sanahirviöstä.
Ehdin jo ihmetellä hetken, että kuka piru tämä Mikroyd oikein on.
Rousku Tutun kuuloista.
Rousku, 9.5.2006 02:38:10
Pisteet: 0
(Kyllä, mikroydinkäyttöjärjestelmä on yhdyssana.)

Eikös tätä monoliittinen kerneli vastaan mikrokerneli -sotaa olla käyty jo iät ajat? (Esim. Tanenbaum-Torvalds yhteenotot: http://www.oreilly.com/catalog/opensources/book/ap... ) Muistaakseni muutamia perusväittämiä ovat olleet:

1) Monoliittiset kernelit ovat antiikkisia. Mikrokernelit ovat tulevaisuus.

Ja vastaväittäminä:

1) Saavuttaakseen samat ominaisuudet monoliittisen kernelin kanssa on mikrokerneliin kirjoitettava vähintään sama määrä koodia. Bugeja on siis yhtä paljon, niiden sijainti vain vaihtuu.

2) Nykyaikaiset monoliittikernelit on pilkottu moduuleiksi, joiden ero mikrokerneleiden palveluihin on koko ajan hämärtymässä.

3) Tietoturvaan vaikuttaa moni muukin asia, kuin kernelikoodin rivimäärä.

Jne... ja sota jatkuu, eikä loppua näy.

Toisaalta nythän on loistava tilaisuus ratkoa IRL kumpi järjestelmä on tietoturvallisempi, kun OS X on mikrokerneli ja Linux monoliittinen. ;)
bungle Re: Tutun kuuloista.
bungle, 9.5.2006 10:59:23
Pisteet: +1
Toisaalta nythän on loistava tilaisuus ratkoa IRL kumpi järjestelmä on tietoturvallisempi, kun OS X on mikrokerneli ja Linux monoliittinen. ;)
Millä perusteella? Ihan sama olisi väittää, että Windows NT kernel on microkernel. Toisaalta on myös väärin väittää, että Windows NT tai Mac OS X:n XNU kernel olisivat monoliittisia. Käytännössä ne ovat hybridejä. Eli niissä on poimittu ideoita kummastakin. Esim. XNU sisältää osia BSD:n monoliittisesta kernelistä ja esim. NT käyttää jaettua muistia nopeuden parantamiseksi. Puhdasoppinen microkernel ei ole vielä tänä päivänäkään pystynyt näyttämään, että se olisi toimiva ratkaisu myös käytännössä (vrt. monoliittinen vaihtoehto) ja veikkaan, ettei sellaista nähdä vielä moniin vuosiin, jos koskaan. Muutoinkin ohjelmoinnissa on usein tehtävä (monesti juuri tehokkuussyistä) kompromisseja, enkä usko, että minix3 myöskään näiltä välttyy.
--
"See the animal in his cage that you built, are you sure what side you're on?" -- Trent Reznor
zerco Re: Tutun kuuloista.
zerco, 9.5.2006 12:33:30
Pisteet: 0
Toisaalta nythän on loistava tilaisuus ratkoa IRL kumpi järjestelmä on tietoturvallisempi, kun OS X on mikrokerneli ja Linux monoliittinen. ;)
Millä perusteella? Ihan sama olisi väittää, että Windows NT kernel on microkernel. Toisaalta on myös väärin väittää, että Windows NT tai Mac OS X:n XNU kernel olisivat monoliittisia. Käytännössä ne ovat hybridejä. Eli niissä on poimittu ideoita kummastakin. Esim. XNU sisältää osia BSD:n monoliittisesta kernelistä ja esim. NT käyttää jaettua muistia nopeuden parantamiseksi. Puhdasoppinen microkernel ei ole vielä tänä päivänäkään pystynyt näyttämään, että se olisi toimiva ratkaisu myös käytännössä (vrt. monoliittinen vaihtoehto) ja veikkaan, ettei sellaista nähdä vielä moniin vuosiin, jos koskaan. Muutoinkin ohjelmoinnissa on usein tehtävä (monesti juuri tehokkuussyistä) kompromisseja, enkä usko, että minix3 myöskään näiltä välttyy.
Eiköhän tässä Tanenbaum vain hae hieman julkisuutta:) Ajatuksena microkernel on mukava, ehkä jopa hieno, mutta käytäntö on sitten ihan toista. Ja kyllähän tuo minix3 varmasti sopii hyvin henkilöille, jotka haluavat "tutkia" (tuosta ei ilmeisesti saa ilmaiseksi sorsia) ja opiskella microkernelin sielun elämää. Eli hyvin toimii korkeakuluissa ja yliopistoissa...
Nemesis Re: Tutun kuuloista.
Nemesis, 9.5.2006 13:24:05
Pisteet: +1
Toisaalta nythän on loistava tilaisuus ratkoa IRL kumpi järjestelmä on tietoturvallisempi, kun OS X on mikrokerneli ja Linux monoliittinen. ;)
Eikä ole. XNU (OS X:n kerneli) sisältää osia Machista, mutta puhdas mikrokerneli se ei ole. Samaten siellä on osia BSD:stä.

kernelthread.com kertoo asiasta seuraavaa:

"XNU's Mach component is based on Mach 3.0, although it's not used as a microkernel. The BSD subsystem is part of the kernel and so are various other subsystems that are typically implemented as user-space servers in microkernel systems. XNU's Mach is responsible for various low-level aspects of the system"