Hoofdcategorieën

Tanenbaum: 'Besturingssystemen lijden aan overgewicht'

Door René Wichers, vrijdag 26 januari 2007 10:58
Bron: Computerworld, views: 27.122

VU-professor Andrew Tanenbaum heeft een pleidooi gehouden voor het meten van de betrouwbaarheid van programmatuur in zogeheten 'Lifetime Failures'. Dat is het aantal malen dat software gedurende het leven van de gebruiker dienst weigert.

Andrew Tanenbaum 'Een huishoudelijk apparaat zet je aan, en dan werkt het, jaren lang. Zo zouden computers ook moeten werken', aldus Tanenbaum tijdens een congres in Australië. 'Er is geen enkele reden om de matige betrouwbaarheid van computers te accepteren.' Volgens de prof zit het probleem niet in de hardware, die alle prestaties en - met features als raid en ecc - betrouwbaarheid biedt die gebruikers nodig hebben. Met software is het echter beroerd gesteld, zei Tanenbaum: ontwikkelaars proberen teveel functionaliteit te bieden, waardoor programmatuur traag en foutgevoelig wordt. Hij illustreerde dat met de groei van het Windows-besturingssysteem: waar NT nog uit zes miljoen regels code bestond, werd voor XP een kleine vijftig miljoen regels gebruikt. Met tussen de 10 en de 75 bugs per duizend regels code is dat volgens hem vragen om problemen.

Tanenbaum pleitte daarom voor zelfherstellende software. Een eerste stap op weg naar een goed besturingssysteem is een minimalistische kernel, die desgewenst modulair kan worden uitgebreid. Vervolgens zouden componenten als bestandssystemen moeten worden geïsoleerd, zodat een falend onderdeel geen crashes bij andere componenten kan veroorzaken. Minix, het besturingssysteem dat Tanenbaum twintig jaar geleden schreef en dat nog altijd gebruikt wordt, zou dergelijke kenmerken al in de praktijk brengen. 'We moeten in 2007 de wijze herzien waarop een programma werkt', zei Tanenbaum: 'Er is behoefte aan een ultrabetrouwbaar OS, dat altijd werkt en dat niet de problemen van Windows heeft.' Hij suggereerde daarop dat het goed zou zijn als dit ideeëngoed als uitgangspunt voor de verdere ontwikkeling van Linux gebruikt zou worden, met als uiteindelijke doelstelling een besturingssysteem met een 'LF' van nul.

Volgende 10:59
Vorige 10:42

Reacties

«  1  2  3  4  5  »

Is dit niet weer gewoon zijn eigenlijk al jarelange bekende pleidooi voor een modulair OS in een nieuw jasje? Kan me herinneren dat hij een jaar of 6 terug ook een pleidooi tegen linux had vanwege de monolithic kernel.

Evengoed heeft hij technisch gezien wel gelijk, maar ik denk economisch-praktisch gezien gaat het er niet zo gauw van komen vanuit de ontwikkelaars.

Dit is leuk voor embedded apparaten, maar ik wil graag dat mijn toekomstige os ook applicaties die in het verleden gebouwd zijn kan draaien.

En een te simpel OS heeft weer tot gevolg dat al die functionaliteit weer in applicaties geduliceerd wordt. Een kernel ontwikkelaar vind dat mooi, maar de gebruiker wordt er niet wijzer van, weer een andere oplossing voor hetzelfde probleem.

Dus je hebt geen dvd-speler omdat je je videobanden daar niet op af kunt spelen? En geen cd-speler omdat die je lp's niet vreet?
Hoe vaak gebruik je WordPerfect nog, of speel je de originele HalfLife?

Op een gegeven moment neem je je verlies, en dat is tegenwoordig steeds eenvoudiger door prima open-source software die op meerdere platforms draait zoals Open Office.

En spellen speel je over het algemeen na een tijdje niet meer.

Daarbij is het zo dat men nog virtual machine kan draaien voor andere en oudere besturingssystemen.

Ik zou het overigens geen verlies noemen, maar een stap voorwaarts. Als je kijkt naar de Windows reeks, deze is gebouwd op code uit de jaren 70: de beginperiode. Hoeveel van de T-Ford zien we nog terug in de huidige auto's? Ik denk dat Microsoft het lef moet hebben om zich te distantieren van zijn huidige lijn en door te stappen naar een nieuwe. Dat kan de nek van het bedrijf omdraaien, voor hetzelfde geldt dat zij nog jaren gebakken zitten i.v.m. het succes.

WordStar & VisiCalc Rule !

EnsconcE
Mooie vergelijking: precies evenveel. De regels code uit de jaren 70 waar jij op doelt zijn allang en breed niet meer terug te vinden. Wel ondersteuning voor dingen die er al veel te lang in hardware kunnen zijn, zoals ouwe toetsenborden, seriele aansluitingen, parrallelle kabels (sowieso niet te spellen die dingen) enzovoorts, maar de echte code kun je vergeten.
van de T ford hebben we ook nog altijd het idee met vier wielen, de motor, het stuur, pedalen voor het ''en en hendels bij het stuur voro het ander, de asses en ga maar door, alleen in veel modernere uitvoering. Met de source van Windows XP naast die van een Os uit de 70er jaren zoals DOS kun je zeg maar hetzelfde zien: de ideeën zijn niet allemaal weg, maar de code is wel totaal anders.

Met de source van Windows XP naast die van een Os uit de 70er jaren zoals DOS kun je zeg maar hetzelfde zien: de ideeën zijn niet allemaal weg, maar de code is wel totaal anders.
Zeker weten?

Zo werd kortgeleden een bug ontdekt die van windows 3.1 tot en met Vista van toepassing was.

True, geen jaren '70 code, maar wel code die toch een aardig eind teruggaat in de geschiedenis.

Neem je de zaak SCO VS Linux: de 'bewijzen' waarmee SCO op de proppen kwam betrof code uit eind jaren '70/begin jaren '80 die oa in Linux terug te vinden is...

DOS komt overigens uit 1980, dus niet uit de jaren '70

ik had anders graag nog eens Little Big Adventure 2 gespeeld op mn huidige pc, maar krijg het niet aan de praat :(

Werkt dat niet met dosbox? da's een dos emulator die onder xp draait. Werkt voor de meeste spellen goed.

@knettergek

Ik denk dat je je daar behoorlijk in vergist. Het grootste deel van de belangrijkste business transacties wordt nog steeds door COBOL uitgevoerd en dat gaat echt niet snel veranderen anytime soon.

http://talkback.zdnet.com...essageID=527858&start=-43

Dus je hebt geen dvd-speler omdat je je videobanden daar niet op af kunt spelen? En geen cd-speler omdat die je lp's niet vreet?
Dat zijn in mijn definitie nou net embedded apparaten. Net zou goed als er nog steeds een stuur en een gaspedaal op mijn auto zit.

Half life is nou net geen goed voorbeeld, dat staat nog op mijn pc en is leuk voor kleine schietfeestejes omdat het ook op de oude pc draait en op die maner

Wiel, motor, stuur, claxon. Genoeg hoor...

Er is zelfs een WinXp patch voor LBA-2.

Daarom worden er nog steeds VHS recorders verkocht en daarom verkoopt Technics 24 jaar later nog steeds de SL1200 serie draaitafels uit.

Daarom zijn er mensen die nog steeds de eerste versie's console's hebben staan en die nog steed gebruiken. Omdat iets oud is wil niet zeggen dat men het niet meer wil gebruiken.

Dat de markt je anders wil doen geloven is heel wat anders. De markt wil alleen maar zichzelf in leven houden door steeds nieuwe dingen te verzinnen, of het nodig is is een andere vraag.

En je moet ze de kost geven die nog steeds de eerste Wolfenstein van tijd tot tijd spelen, is gewoon leuk om even terug te gaan in de tijd, des te meer waardeer je wat er tegenwoordig allemaal kan ;)

Je logica gaat dus niet helemaal op. Ik werk ook nog steeds met draaitafels en heb nog duizenden platen uit de periode 60's-80's liggen die nooit meer weggaan, zeker omdat niet alles van destijds op digitale media te krijgen is maar ook de nostalgie van een krasje hier en een tikje daar ;) Kan geen mp3 speler tegen op :)

Als je oude meuk op je kleine modulaire kernel wil installeren moet je maar een addon op je kernel (extra module) erbij installeren.
Dat is net het hele idee van micro kernels: alleen gebruiken en installeren wat nodig is.
En niet al die potentiele veiligheids en stabiliteitsrisico's hebben lopen terwijl je alleen maar wil tekstverwerken met je pc.

Dat is dus het probleem: wat heb je nodig? Een goede OEM moet dat kunnen bewerkstelligen, maar dan heb je het nog niet gehad over zoveel verschillende randapparatuur die geinstalleerd kan worden. Bij embedded systemen of een mac zit je redelijk vast aan bepaalde configuraties en randapparatuur.

Tanenbaum zit dit al lang te zeggen heb ik de indruk. En eerlijk gezegd heb ik mijn linux kernel zelf nog nooit weten crashen, maar de dingen die hij zegt waarvan de linux-kernel developers die nuttig vinden worden wel gebruikt. Zo is de kernel al een heel stuk modulairder dan vroeger. Trouwens zijn ze bezig met automatische detectie dat enkel geladen wordt wat er nodig is voor de op het moment aanwezige apparatuur (upstart en andere init-varianten).

Een computer is gewoon zo complex dat het normaal wel eens fout gaat, en de huidige bsd's en linux doen een goeie job (de bovenliggende software durft wel te crashen), over windows en mac weet ik niet genoeg meer daar ik het niet (meer) gebruik.

Overgang van monolithische kernel naar een microkernel hoeft geen enkele impact te hebben op de applicaties die er op draaien. Zolang alle API's, die een applicatie nodig heeft, aanwezig zijn, is er geen enkel probleem.

Een microkernel is wel iets trager, maar daar krijg je wél stabiliteit voor terug; tijdens een crash doe je ook niet veel met je computer dus per saldo zal ja er even snel (en minder gefrustreerd) op kunnen werken.

Euhm... Windows heeft een microkernel, Linux/BSD zijn monolitisch. De kwetsbare plek van de micro kernel is juist dat je externe modules "on the fly" laad en die "super user" rechten geeft (hardware drivers). Hierdoor kunnen fouten in die modules het systeem instabiel maken. Bovendien kunnen virussen hier misbruik van maken, want die modules liggen in geval van een microkernel niet vast.

Nu heeft Linux ook wel de mogelijkheid om modules te laden, maar deze liggen van to voren vast. Voordeel is dat de scheiding "priviged (root)" code en user code, daardoor hard vast ligt. Dat maakt het systeem simpeler en makkelijker robuust te maken.

De bewering dat een micro kernel stabieler zou zijn, lijkt me niet zo direct hard te maken.

Zo microkernelig is Windows XP nochtans niet hoor. Ik moet veel minder herstarten als ik nvidia drivers installeer op linux (X-server) dan op windows (heel de pc). Ondanks dat de linux devs er prat op gaan geen micro kernel te leveren en MS beweert een micro kernel te kunnen leveren, op www.reactos.org kan je hier meer dingen voor vinden.

Vanwege performance redenen is er dan ook juist voor de grafische zaken besloten af te wijken van de microkernel methode.

Je haalt een aantal zaken door elkaar.

Het punt van een microkernel is dat deze zijn servers (processen: drivers, e.d.) scheidt en in user space (niet kernel space) laat draaien, met user privileges en desnoods met extra rechten om hardware aan te spreken.

Deze servers worden geisoleerd van elkaar waardoor het niet direct mogelijk is om data van andere servers te veranderen, wat voor malware triviaal is.

Bovendien heeft Windows geen microkernel systeem, maar een zogenaamde "Hybrid" kernel (oftewel een iets aangepaste monolitische kernel).

Dit houdt in ieder geval in, dat de services (drivers) niet meer in user space, maar in kernel space draaien en je dus de voordelen qua beveiliging kwijt bent.

Zie ook http://en.wikipedia.org/wiki/Hybrid_kernel#NT_kernel .

Dit is leuk voor embedded apparaten, maar ik wil graag dat mijn toekomstige os ook applicaties die in het verleden gebouwd zijn kan draaien.
Dat staat hier los van. Windows XP draait immers ook veel Win'98 games niet. Win '98 draait amper win3.11 games (zelfs sommige Win'95 games niet)... en win3.11 draait ook veel DOS-games niet (jah, ik ben een retro-gamer ;)). Oftewel: op de huidige manier is de compatibiliteit sowieso ver te zoeken (de compatibiliteitsmodus van XP verandert hier helaas bar weinig aan).

Een minimalistische kernel betekent helemaal niet dat applicaties weer allemaal het wiel moeten gaan uitvinden. Het betekent alleen dat al die extra (gedeelde) functionaliteit in een laag tussen het OS en de applicatie wordt gestopt. Een beetje zoals .net of java dat doen. Je houdt dan niet minder functionaliteit over, het is alleen anders georganiseerd. Een kwetsbaarheid in een applicatie of een bibliotheek bedreigt dan de stabiliteit van het OS niet langer.

Edit @The Ed:
Daar geef ik je gelijk in, in de huidige markt zie ik het ook niet een, twee, drie gebeuren. Maar we zullen deze eeuw toch wel wat meer zien dan Windows, Linux en hun opvolgers, mag ik hopen.

Dat is inderdaad een oplossing, maar ik dacht ook niet zozeer aan de applicatieontwikkelaars alswel aan de kernelontwikkelaar(s). Al is het maar vanwege een soort sunk-cost fallacy zullen die (En dan denk ik aan de grotere jongens in de markt) denk ik niet snel geneigd zijn om maar eens de schouders onder een minimalistische kernel te zetten.

Is dit niet weer gewoon zijn eigenlijk al jarelange bekende pleidooi voor een modulair OS in een nieuw jasje? Kan me herinneren dat hij een jaar of 6 terug ook een pleidooi tegen linux had vanwege de monolithic kernel.
Klopt helemaal.. Dat heeft hij al sinds de start van Linux in 91. Er zijn behoorlijke flamewars geweest omdat Tanenbaum Linus de les wou lezen, hij "wist" dat je zo geen succesvol OS kon maken. :P
Minix, het besturingssysteem dat Tanenbaum twintig jaar geleden schreef en dat nog altijd gebruikt wordt, zou dergelijke kenmerken al in de praktijk brengen.
Hij is ook de persoon die destijds pogingen tegenhield om Minix bruikbaar te maken. Patches voor voorzieningen als swap werden tegengehouden omdat Minux eenvoudig moest blijven om als onderwijsmateriaal te dienen. Uit die onvrede is Linux gestart, er konden geen verbeteringen gemaakt worden aan Minix.

Over je eigen graf graven gesproken :P
'Er is behoefte aan een ultrabetrouwbaar OS, dat altijd werkt en dat niet de problemen van Windows heeft
Allemaal veel te theoretisch, net als de andere opmerkingen. In de praktijk weten we hoe moeilijk het is om markt te veroveren. Je ziet ook dat een systeem Windows en Linux overal te onpas gebruikt worden.

Theoretisch denk je dat systemen als pin automaten een specifiek OS draaien, maar dit draait gewoon Windows. Vluchtinformatie op schiphol draait ook gewoon op Windows. De roosterinformatie displays op school draaien gewoon een powerpoint scheet. Ga zo maar door.

Er is geen massale behoefte voor een OS dat je kunt gebruiken voor specifieke taken. Men gebruikt het OS wat ook door een willekeurige beheerder te onderhouden is!

powerpoint scheet
LOL B-)

Tanenbaum pleitte daarom voor zelfherstellende software.
Klinkt voor mij nogal vrij artificial intellegence over. Klinkt leuk, maar als dit perfect systeem zich tegen jouw begint te keren :>

ach zolang ze maar vatbaar blijven voor EMP is 1 schot genoeg

Hij bedoelt met name gecrashte drivers herkennen, indien mogelijk vervangen of updaten en opnieuw starten.


Waar is 't goede nieuws dan? 'T meer een opmerking over 't falen van (vooral) Windows.

Da's goed nieuws :Y)

Natuurlijk moet gevolg altijd afgewogen worden tegenover impact. De beslissing om stabiliteit in te leveren om dan meer features te kunnen bieden is geen accidentele beslissing.

Windows is volgens mij voor 95% van de klanten stabiel genoeg om werkbaar te zijn. Ik zou alvast geen features als "netwerkbeheer" of "security center" willen inleveren om meer stabiliteit te hebben.

groot gelijk Jan Groothuijse ;)

Windows is volgens mij voor 95% van de klanten stabiel genoeg om werkbaar te zijn.
Volgens mij niet. Maar dat hangt er vanaf wat je acceptabel vindt. Vind je 10 verloren documenten in een heel mensenleven -door computerfout- acceptabel? Ik niet.

Zelfs Windows XP geeft echt niet voldoende stabiliteit naar mijn mening met op nr. 1: Windows Verkenner (explorer.exe errors). Aangezien ik vaak meerdere vensters open heb en deze allemaal afgesloten worden na zo'n fout, kost me dit op een werkdag behoorlijk veel tijd.

wel de laatste keer dat windows XP is gecrashed.....Nog nooit ! Tenzij je harddisk crashes ook gaat meetellen.
Het probleem zit "bijna" altijd achter het toetsenbord.

Hoeveel mensen gebruiken er wel "niet gecertifieerde" drivers ? Ik dus nooit als het niet gecertifieerd is komt het er niet in. Basta.

explorrer error ? wel dat is een proces geen OS en je zegt een aantal keer per dag, dan is er toch echt wat mis met je installatie. Gebeurd bij mij misschien 1 keer iedere maand en dan is het toch steeds een probleem dat veroorzaakt wordt door een ander proces dat niet van Microsoft zelf is.

Wel makkelijk zo altijd de schuld op Windows afschijven.

Dan kan je de hardware die je gekocht hebt ook buitensmijten, want soms heb je gewoon geen andere keuze. Het voordeel van windows is dat er drivers voor gemaakt worden door de fabrikanten zelf, hoe ongecertificeerd ze ook kunnen zijn.

"Gebeurd bij mij misschien 1 keer iedere maand en dan is het toch steeds een probleem dat veroorzaakt wordt door een ander proces dat niet van Microsoft zelf is."

Je explorer.exe zou niet mogen crashen ook al is het een programma dat niet van Microsoft zelf is; alleen dat niet-Microsoft-programma zou moeten crashen....

Het punt is nu juist dat de beslissing om alle functionaliteit in de kernel te stoppen, een fout in een module gelijk het hele systeem kwetsbaar maakt. Als je deze extra functionaliteit in een laag boven de compacte en foutloze kernel te zetten, levert een fout in deizelfde module geen gevaar op voor andere modules, want die worden door de kernel van elkaar afgeschermd.

Windows is volgens mij voor 95% van de klanten stabiel genoeg om werkbaar te zijn

Aha, Win95 dankte zijn naam aan de betrouwbaarheid en win98 was dus voor 98% van de klanten stabiel....

Maar serieus met Win95 in de gedachte....
Wat kan je nu meer met XP dan met 95 ? (afgezien van de stabiliteit en de herkenning van hardware)
Zoveel code en functionaliteiten in XP waarbij je je afvraagt wat je er mee moet... Om een ander idee te geven, WinCE of mobile weten ze ook in een paar MB ROM-geheugen te proppen....

Het kan dus wel.....

en toch experimenteert ook Microsoft druk met een gecontroleerde microkernel.

Functionaliteit vs Betrouwbaarhied,

Ik heb respect voor dergelijke puristen, echter heeft hij het fout wanneer hij denkt dat er behoefte is aan super stabiele windows, dergelijke behoefte is er namelijk niet.

Volgens mij is die behoefte er wel, maar wordt het eigenlijk onderdrukt omdat het algemeen aanvaard wordt dat OS'en nu eenmaal niet foutloos kunnen zijn.
Van mij mogen er best wel wat functies uit Windows als dit de stabiliteit verhoogd.

Inderdaad, zeker niet als dat betekend dat er aan functionaliteit moet ingeboet worden, en dat het waarschijnlijk ook duurder wordt.

Zelfs de hardware-oplossingen die de stabiliteit kunnen verhogen die hij noemt (raid en ecc geheugen) worden nauwelijks door consumenten gebruikt vanwege de hogere prijs.
Verder kan ik niet zeggen dat ik al enige problemen heb ondervonden van de 'instabiliteit' van windows xp. De problemen die ik tot nog toe gehad heb zijn ofwel te wijten aan slechte hardware (kapotte harddisk), of aan slechte drivers.
Als ik eenmaal een systeem heb dat volledig geinstalleerd is kan ik het gewoon aan en uitzetten net zoals andere elektronica.

De rest van de problemen die ik tegenkom hebben te maken met fouten in de software. Ik zou dus zelfs durven zeggen dat het OS het stabielste stuk software is dat ik gebruik :)

Een driver draait in de kernel space en kan dus alle kernel datastructuren bereiken en veranderen. Een rotte driver kan daardoor het het OS platgooien. In een micro kernel draait een driver in een afgeschermde proces ruimte waardoor fout isolatie plaatsvindt. De eindgebruiker krijgt dezelfde functionaliteit maar met een veel stabieler systeem.

Probleem is dat een beschermde omgeving draaien de snelheid absoluut niet ten goede komt, waardoor bij een microkernel als Windows en OS X de beslissing is genomen om de drivers toch weer low-level toegang te laten krijgen. En bij een monolitische kernel als Linux dus in de kernel mee moeten.

Strikte scheiding is vanuit stabiliteitsoogpunt prima, vanuit performance oogpunt zelden efficient.

Dat die slechte drivers zo'n inpact hebben is dus juist een van de voornaamste klachten van Tannenbaum.

Windows kan 50% kleiner zonder dat er maar 1 feature hoeft te wijken.
Ofdat stabiliteit/veligheid/compactheid/etc gelijk staat aan een hogere prijs is zeer de vraag.

Hoeveel manuren schat je dat het MS kost om een product 10 jaar lang te debuggen?
Of het aantal supportdesk uren die sterk bug gerelatererd zijn? Om ng maar te zwijgen hoeveel simpeler het is om 'het volgende OS' te schrijven met als basis nette en schone code. Wie gaat al die uurtjes betalen? Precies de consument. Dezelfde consument die ook steeds nieuwe hardware nodig heeft vanwege dat logge OS.
Ik zeg niet dat een nieuw OS niet wat zwaarder mag worden maar er zit een groot verschil is niet zwaarder en zoals het de laatste decenia is.

Een heel oud spreekwoord dat nog steeds 100% valide is:
Een goed begin is het halve werk.

Hehe, als je eens 'gewoon voor de fun' van Linus torvalds leest, dan zal je zien dat linux is ontstaan aan de beperktheid van minix, n de slechte opbouw daarvan.

Weer zo iemand die alleen maar klaagt, maar zelf ook niet echt iets werkends neerzet.

Linus Torvalds heeft minix als basis voor Linux gebruikt.
Uiteraard herstel je dan de fouten van je voorganger.
Bovendien praten we dan over de mid-80's. Inmiddels zijn we allemaal wijzer geworden, er was toen geen linux 2.6 of Vista / XP

Prof. Tanenbaum heeft ook een aantal goede boeken geschreven over OSen, waarbij deze onderling worden vergeleken.

Tanenbaum is geen onbekende in OS land en heeft wel degelijk bewezen dat het beter kan dan Linux. Overigens hebben ook anderen bewezen dat een microkernel Linux mogelijk is en daardoor stabieler wordt.

Het gekibbel tussen hem en Linus is vooral een van karakters, en niet technisch. Tanenbaum denkt esthetisch; zo mooi mogelijk willen doen. Linus denkt pragmatisch; zolang het maar werkt.

De meeste programmeurs zitten qua mening ergens er tussenin; het liefst doen ze alles zo moei mogelijk, maar ergens trekken ze de grens omdat het ook ooit nog eens af moet zijn.

De meeste programmeurs zitten qua mening ergens er tussenin; het liefst doen ze alles zo moei mogelijk, maar ergens trekken ze de grens omdat het ook ooit nog eens af moet zijn.
Inderdaad, laat die Hurd kernel eerst maar eens gereleased worden zodat we kunnen kijken of hij nu echt een stabieler systeem geeft dan Linux.

Overigens komen kritische kernelbugs onder Linux zeer zelden voor (in de stabiele reeks). Gewoonlijk zit het probleem ergens anders.

Tanenbaum is de meest gepubliceerde Computer Science wetenschapper die we in Nederland hebben. Hem afdoen als een zeikert is dan ook onzin.

Dat is ook het probleem met veel mensen die dit soort betogen lezen zoals dit van Tanenbaum: ipv te kijken waar hij wellicht gelijk heeft en daar je voordeel mee doen, gaat men pruttelen en komt die zeurdiscussie omtrent linux weer aan de orde.

Zolang men dus die oude 'discussie' aan blijft halen en blijft piepen dat Tanenbaum niets heeft gepresteerd etc., zolang ook zal het nodig zijn voor mensen zoals Tanenbaum om de discussie omtrent simpelere, meer betrouwbare OS-en te voeren.

En nofi, maar Andrew snapt vele malen meer waar hij het over heeft dan jij ooit zult doen.

Dat iemand veel gepubliceerd is, betekent nog niet dat ie goed is. (met name bij professors geldt dat)

Hij is theoreticus. Maar mist praktijk ervaring.
Zijn OS wordt door niemand gebruikt. Waar is dan je recht van spreken over OS-en die wereldwijd zeer populair zijn?

Natuurlijk zijn andere meningen goed, en daar kan je je voordeel mee doen.
Maar als iemand tien jaar lang diezelfde mening blijft verkondigen dan is het niet meer interessant.

Als systeembeheerder ben ik hier volledig mee akkoord, het gebeurt te vaak dat programma's niet werken zoals ze horen te werken, en zelfs al werken ze optimaal, voor de eindgebruiker is het niet altijd vanzelfsprekend om te doen wat hij wil doen.

Dat terwijl er wel veel aandacht besteed wordt aan eye-candy en functionaliteiten die door 95% van de gebruikers nooit gebruikt worden. Natuurlijk hangt de 'bug-rate' heel sterk af van het programma, sommige werken perfect, andere zijn heel frustrerend.

Reviewers werken er ook aan mee: als een programma geen eye-candy heeft maar wel goed werkt, krijgt ie toch negatief kritiek. Terwijl eye-candy wel 't laatste is waar 't over zou moeten gaan.

Het idee is juist dat het voor het de eindgebruiker geen verschil maakt. Een microkernel behandelt modules die voorheen in kernel space draaiden, nu als gewone processen met een eigen virtuele geheugenruimte. Als er een fout in die module zit, crashed alleen die module, niet de hele machine. Als er een exploit mogelijkheid in die module zit, kan je niet andere modules bereiken, want die zitten in een andere virtuele geheugenruimte. Alleen als er een fout zit in de micro kernel kunnen er problemen ontstaan. De geringe grootte en overzichtelijkheid van de microkernel zorgt ervoor dat je veel betere garanties hebt over de afwezigheid van fouten.

Met zijn eerste stelling ga ik niet akkoord.

Een huishoud toestel werk inderdaad van dag een, maar deze veranderd niet. Als je een koffiezet apparaat koopt dan kan je daarmee koffie maken en blijven maken. Het is niet dat je op een mooie dag wakker wordt en je koffiezet na een 'update' opeens ook eten opwarmt.

Een PC is dan ook ingewikkelder en dat hier fouten optreden is de normaalste zaak van de wereld. Het is uiteindelijk door een mens gemaakt en de mens is, gelukkig, niet perfect.

Het is misschien dan meer te vergelijken met het neerzetten van een waterkoker naast dat koffieapparaat. Zelfs al gaat het koffiezetapparaat stuk, de waterkoker doet het nog ;)

Als ik VMWare installeer en de geinstalleerde versie van Windows crashed dan werkt mijn Linux nog gewoon verder.

99% van de mensen gebruikt een computer 'out-of-the-box' en dan werkt er vanalles niet, daar gaat zijn stelling over. Niet over bugs in extra stukken software die er later bij komen, maar om de fouten die er al in zitten bij het afrekenen aan de kassa.

De hele essentie van zijn koffiezetapparaatvergelijking is dat je die dus niet hoeft te updaten, want hij functioneert al foutloos. (Er kunnen natuurlijk productiefouten in zitten doordat het proces niet deterministisch is, maar dat geldt voor software niet.)

overdrijven is ook een kunst zullen we maar zeggen.
99% van de verkochte pc's werken niet out-of-the-box. Heb ik toch altijd veel geluk gehad en net die ene procent gekocht zeg.
:Z

Maar bijvoorbeeld mijn Phillips DVD recorder met HD van 160GB loopt een paar keer per week vast. Stekker er uit, weer d'r in en hij doet het wel weer, maar wasie net een programma aan het opnemen op DVD of HD dan ben je je programma kwijt en je (eventuele) DVD is verpest.

En dan over OSen: Ik ben het helemaal met Tanenbaum eens, Windows Vista: 15GB. 15 GB voor een OS??? WTF?
En er zit veel teveel meuk in de kernel etc. Dan al dat gemier met backwardscompatible blijven etc etc.

En ook dat is niet alleen in softwareland. Oor de Pentium4 is een gedocht. Slechts 1/3 van de transistors is bezig met het feitelijke rekenwerk, de overige 2/3 is bezig met administratie. En waarom? Omdat dat ding zo uber complex is met 3 modes en alles backwards compatible etc etc. (ja, een Pentium4 kan een 8088 programma probleemloos uitvoeren)
Pentium4 is een gedocht, echt. Overal dirty hacks en vervelende hooks voor backward compatibility.

Langleve de open source. Als we alles open source hadden hoeften we niet de CPU's binary-compatible te houden maar hoeften we alleen de compilers aan te passen aan de nieuwe CPU's. DAT zou pas snelheidswinst opleveren, meer dan die paar Mhz. die we er telkens bovenop gooien.

Die CPU die we bijna allemaal in onze PC's hebben is nogsteeds compatible met de CPU's uit het 1mb RAM MS-DOS tijdperk met alle beperkingen van dien.
Wanneer gaan wij eindelijk breken met het verleden en eens verstandig te werk?

Offtopic:
Breken met het verleden en eindelijk is onze ogen open doen zouden we buiten de computerwereld ook eens moeten doen.

Pentium4 is een gedocht, echt. Overal dirty hacks en vervelende hooks voor backward compatibility.
Voor alle andere x86s geldt precies hetzelfde.
Overigens valt het qua transistorcount tegenwoordig allemaal wel mee. De hoeveelheden cache zijn zo groot dat de transistorcount van de rekeneenheden en instructieverwerking etc niet zo heel relevant meer zijn.
Langleve de open source. Als we alles open source hadden hoeften we niet de CPU's binary-compatible te houden maar hoeften we alleen de compilers aan te passen aan de nieuwe CPU's. DAT zou pas snelheidswinst opleveren, meer dan die paar Mhz. die we er telkens bovenop gooien.
Dit is niet waar.
Er is genoeg bewijs te vinden dat opensource programma's zelfs voor het porten van de ene naar de andere linux-distributie al de nodige patches nodig hebben. Een overgang van een 32-bit platform naar 64-bit is soms dramatisch veel werk.
Opensource maakt het iets makkelijker dan binaries, maar het is zeker niet de oplossing. Verder kleven er allerlei nadelen aan het verspreiden van broncode. Iedereen kan zo bij jou in de keuken kijken. Voor veel software is de investering in de technologie veel te duur om de concurrent gratis mee te laten kijken.

Een veel betere oplossing is om een compleet framework te definieren waarbinnen een programma draait, en voor dit framework een bytecode-formaat samen te stellen (in principe het formaat wat een compiler na de eerste parsing en optimalisatie-stappen doet, en voordat de platform-specifieke code gegenereerd wordt), zoals bv Java en .NET dit doen.
Je kunt zo'n omgeving op bijna ieder OS en iedere architectuur opzetten, en de software kan zonder aanpassingen gewoon draaien.
Helaas staat dit nog in de kinderschoenen, en is x86 niet het meest geschikte platform... Op een nieuwe architectuur zou een dergelijke aanpak veel efficienter kunnen zijn, maar op een x86-platform is het tot dusverre dermate minder efficient dan native code dat het een slechte naam heeft, en veel ontwikkelaars er niet aan durven beginnen.

Een oerbetrouwbare computer met OS zal net werken als een spelcomputer. Disk met Word erin en draaien maar. Dat microsoft dan ook een snel OS kan bouwen is te zien aan de Xbox (de eerste) die op een 733Mhz processor spellen draait. Windows XP MOET om kunnen gaan met exotische hardware met slechte drivers en slecht geprogrammeerde software. Het is al knap dat dit al kan, dat er dan af en toe iets mis gaat is geen verrassing en niet alleen de schuld van Microsoft.

Word op een disk oerbetrouwbaar? Niet als 't een diskette is... Er is geen achterhaalder en onbetrouwbaarder systeem dan dat, welke nog steeds gebruikt wordt in computers. Diskettes zijn extreem onbetrouwbaar.

Linux kan dat ook,
grootste probleem is dat niet alle hardware-bouwers meewerken om een opensource driver mee te leveren of uberhaupt een driver.

Kijk ook eens naar Nlite en Vlite.
Die strippen je windows zo naar 1/3 van de originele disk zonder al te veel functionaliteit te verliezen. Vaak verwijder je dan onnodige software om fe als server te werken, heel veel drivers die je niet eens nodig hebt omdat je achteraf de nieuwere installeert, eyecandy neemt ook het een en ander in beslag.

En wat blijkt achteraf,
je installeert de boel niet alleen sneller, windows start ook sneller op en heeft standaard minder geheugen. Het is net als vakantie,
je neemt veel te veel bagage met je mee.

Even ter informatie: Voor de xbox hebben ze het slechts denkbare OS genomen: Namelijk de kernel van Win2000, zwaar gestript. Niet dat daar per definitie wat fout aan was (de kernel op zich is best goed, afgezien van serials & DRM etc), het rare is alleen dat ze ook bij de spellen het PE (portable Executable) model er in gehouden hebben. (Met alle extra vertaallagen en complexiteiten dat dit met zich meebrengt) DWZ dat als je een .xbe file (xbox executable) neemt, renamed naar .exe en op een ouwe DOS machine probeert te starten dat je alle gein van "This program cannot be run in DOS mode" etc met alle bijbehorende meuk gewoon te zien krijgt.

Bijna elk mechanisme wat je in de xbox tegenkomt komt uit de desktop wereld van Microsoft. Het is ook voor mij een vraag waarom ze niet iets nieuws embedded hebben gemaakt ofzo. Waarschijnlijk wilde de devs dat ook, maar om God mag weten wat voor reden wil Microsoft alleen maar eigen technologie gebruiken, ook als deze feitelijk niet geschikt is voor het doel.

Ook de 360 dashboard is gewoon, net als de 360 kernel weer een PE... verpakt in een CAB file volgensmij.

Ooit een schema gezien van het WinXP/2000 model? Moet je die is tegenover het Unix model zetten. WinXP is een erg ingewikkeld plaatje.

De rede dat de xbox met 733Mhz. en 64MB ram toch spellen goed speelt waarbij je op de PC ~1Ghz en 512RAM nodig heb is omdat er geen dwaze services op zitten en andere onnodig RAM en cycle vretende services.

note dat dit overigens ook een rede is waarom ik op Linux ben over gegaan.

leiden = NOT(lijden) ;)

Tenzij je het studenten corps in gaat }>
«  1  2  3  4  5  »

Op dit item kan niet meer gereageerd worden.

Volgende 10:59
Vorige 10:42
VNU Media logo Hosted by True

© 1998 - 2009 Tweakers.net - Alle rechten voorbehouden - Uw Privacy - Algemene Voorwaarden

Uitgever van: