Vrije Universiteit Amsterdam
Het bouwen van een betrouwbaar besturingssysteem: Foutbestendigheid in MINIX
3
* Startdatum: 09-09-2010
* Tijd: 13.45
* Locatie: Aula
* Titel: Building a dependable operating system: fault tolerance in
MINIX 3
* Spreker: J.N. Herder
* Promotor: prof.dr. A.S. Tanenbaum
* Onderdeel: Faculteit der Exacte Wetenschappen
* Wetenschapsgebied: Exacte wetenschappen
* Evenementtype: Promotie
Jorrit Helder bouwde een betrouwbaar besturingssysteem dat fouten in
stuurprogramma's kan weerstaan en herstellen. Dit deed hij door het
besturingssysteem foutbestendig te maken zodat het normaal kan blijven
functioneren ondanks de aanwezigheid van veel voorkomende problemen.
Een van de grootste problemen met computers is dat ze niet voldoen aan
de verwachtingen van gebruikers ten aanzien van betrouwbaarheid,
beschikbaarheid, veiligheid, etc. Een onderzoek onder Windowsgebruikers
liet bijvoorbeeld zien dat 77% van de klanten één tot vijf fatale
fouten per maand ontdekt en de overige 23% van de klanten maandelijks
zelfs meer dan vijf fatale fouten ervaart. De oorzaak van deze
problemen ligt in het besturingssysteem ('operating system') dat een
centrale rol heeft in vrijwel elk computersysteem. De meeste fouten
zijn te herleiden tot stuurprogramma's voor randapparatuur ('device
drivers') die relatief foutgevoelig zijn. Dergelijke stuurprogramma's
zijn nauw geïntegreerd in het besturingssysteem, waardoor fouten zich
gemakkelijk kunnen verspreiden en het hele besturingssysteem kunnen
ontregelen. Dit probleem doet zich niet alleen voor bij standaard
besturingssystemen voor de PC, zoals Windows, Linux, FreeBSD en MacOS.
Besturingssystemen voor mobiele apparatuur (bijvoorbeeld telefoons,
PDAs, fotocamera's, etc.) en ingebedde computers (bijvoorbeeld in
auto's, pinautomaten, medische apparatuur, etc.) zijn veelal gebaseerd
op een vergelijkbaar ontwerp waardoor ze soortgelijke problemen kennen.
Onbetrouwbare besturingssystemen veroorzaken niet alleen persoonlijke
frustraties, maar hebben ook grote maatschappelijke consequenties zoals
economische schade en veiligheidsrisico's.
Helder stelde zich tot doel om een uitermate betrouwbaar
besturingssysteem te bouwen dat fouten in stuurprogramma's kan
weerstaan en herstellen. Zijn doelstellingen zijn gerealiseerd door het
besturingssysteem foutbestendig ('fault tolerant') te maken zodat het
normaal kan blijven functioneren ondanks de aanwezigheid van veel
voorkomende problemen. Hoewel veel van de gebruikte ideeën en
technieken op zich niet nieuw zijn, was hun gecombineerde potentieel om
de betrouwbaarheid van besturingssystemen te verbeteren tot nog toe
niet voldoende onderzocht en overtuigend aangetoond. Door dit te doen
levert zijn proefschrift onder andere de volgende bijdragen die zowel
wetenschappelijke als praktisch van belang zijn:
0M Hoe de betrouwbaarheid van besturingssystemen kan worden verbeterd
met behoud van het veel gebruikte UNIX-programmeermodel.
In tegenstelling tot aanverwant onderzoek, is alleen het binnenwerk van
het besturingssysteem vernieuwd zodat compatibiliteit met bestaande
software kan worden behouden en praktische toepassing stapsgewijs
mogelijk is.
0M Het introduceert een foutbestendig ontwerp dat het besturingssysteem
in staat stelt om een breed scala aan fouten in belangrijke componenten
automatisch te detecteren en te repareren, zonder
gebruikerstoepassingen te interrumperen en zonder tussenkomst van de
gebruiker. Veel van deze ideeën zijn van toepassing in een bredere
context dan besturingssystemen alleen.
0M Tot slot heeft dit onderzoek niet alleen geleid tot een ontwerp,
maar is dit ontwerp ook geïmplementeerd, met als resultaat een publiek
beschikbaar besturingssysteem, MINIX 3, dat beschikbaar is via de
officiële website http://www.minix3.org/. Dit besturingssysteem maakt
duidelijk dat de voorgestelde aanpak praktisch toepasbaar is.
Het volledige proefschrift is te downloaden via VU-dare
© Copyright Vrije Universiteit Amsterdam