Wat is een OS?

Door Ruudjah op dinsdag 12 mei 2009 19:59 - Reacties (21)
Categorie: OS, Views: 7.074

Toen ik begon op een MSX-2 homecomputer, wist ik niet eens dat er zoiets als een OS bestond. Later, wanneer er een auto voor de deur stopte met een pa die een grote doos in zijn handen had, begon ik in te zien dat er zoiets als [1] een programma bestaat om programma’s mee te starten. In die doos zat een heuse Escom 486 met 4 echte megabytes aan geheugen, waar windows 3.11 tevreden mee was.

http://tweakers.net/ext/f/85LoWDMBhQ8o2hXtXZ98ZHzN/full.png

Een pentium 3 was het vervolg, deze computer zat k in een doos, en ging ook direct aan na de kabels te hebben geprikt. Vervolgens, een paar minuten wachten weiter, ging k deze computer trouw wachten op invoer van iemand, met een mooi blauw scherm met overall kleine plaatjes. Ik wist inmiddels heel erg goed dat je zoiets als programma’s hebt, want ik kon toen programmeren in basic, quaken, whacky wheels spelen, typen in word en internetten met het blauwe e-plaatje.

Dat kon op n of andere manier door iets wat windows heet. Maar ik had geen interesse noch noodzaak om te weten te komen h en wrom nou precies “windows”.

Nu, jaren later, heb ik die interesse wel. Echter, ik kan de vraag: “wat is een OS” alleen nog steeds niet 100% zelfverzekerd goed beantwoorden. Een hoop antwoorden die ik heb bedacht, zijn niet de goede antwoorden. Enerzijds omdat een OS veranderd, anderzijds omdat mijn begrip steeds beter wordt.
[2] Een OS is een set veelgebruikte functies voor programma’s, zodat functies niet vaker hoeven worden geimplementeerd.

Dat is wat ik tot voor kort dacht.

Tot een vriend van me op dit verhaal attendeerde, geschreven door Neil Stephensonoverigens makkelijk te vinden op het web met creatief googelen. Ik heb het gelezen, nogmaals gelezen, en nogmaals goed gelezen. Hoewel geschreven in 1998, misschien wel n op het hoogtepunt van de actualiteit met Mac OS 10.6, Windows 7 en Ubuntu Jacky Jackalope.

Wt een verhaal.

Er worden hier rake klappen uitgedeeld aan mijn perceptie van wat nu precies een OS is. ntje die lekker aankwam:
“Most people who shop for OSes (if they bother to shop at all) are comparing not the underlying functions but the superficial look and feel. The average buyer of an OS is not really paying for, and is not especially interested in, the low-level code that allocates memory or writes bytes onto the disk. What we're really buying is a system of metaphors. And--much more important--what we're buying into is the underlying assumption that metaphors are a good way to deal with the world.”
http://tweakers.net/ext/f/8FcljaxXYHLfKoduh8Uj5Gua/full.jpg

Het verhaal (niet deze quote) maakt niet alleen duidelijk wat een OS precies is, maar het geeft ook een onbetaalbare blik op hoe nu precies de operating system markt in elkaar steekt. Neem nu deze:
“Why, then, do I say that Microsoft is not such a great operating systems company? Because the very nature of operating systems is such that it is senseless for them to be developed and owned by a specific company. It's a thankless job to begin with. Applications create possibilities for millions of credulous users, whereas OSes impose limitations on thousands of grumpy coders, and so OS-makers will forever be on the shit-list of anyone who counts for anything in the high-tech world. Applications get used by people whose big problem is understanding all of their features, whereas OSes get hacked by coders who are annoyed by their limitations. The OS business has been good to Microsoft only insofar as it has given them the money they needed to launch a really good applications software business and to hire a lot of smart researchers. Now it really ought to be jettisoned, like a spent booster stage from a rocket. The big question is whether Microsoft is capable of doing this. Or is it addicted to OS sales in the same way as Apple is to selling hardware?”
Om het simpel te stellen: Een OS is een set API’s (functionaliteit). Functionaliteit die developers (van linus op z’n zolderkamer, tot Big Corp. met een leger aan devvers) willen uitbreiden. Daaruit volgt dat het idioterie is om deze API’s proprietair te houden (lees: closed source). Windows en Mac OS (of ieder ander OS) closed houden is daarom per definitie een designfout. Omdat het veelgebruikte functionaliteit betreft die, geve het tijd, tch wel open worden geimplementeerd, en, niet onbelangrijk: de developers moeten het kunnen uitbreiden, wat bij een gesloten systeem near-impossible is. Getuige de vele OSS OS projecten.

We gaan even verder op [3] “Een OS is een set API’s”. Dat is zo, maar niet helemaal volledig denk ik. Er mist nog iets bij van de GUI, en de gebundelde programma’s. Van de GUI kunnen we stellen dat dit bij de API’s hoort. Van een configuratiescherm om je lokale instellingen te doen, tot het vrijgeven van een API die de standaard windows tekent, zoals een simpele messagebox en de bekende balk met minimize, maximize en close. De gebundelde programma’s zijn in feite ook niet meer dan veruit gegeneraliseerde programma’s, voor de meest voorkomende taken. Zoals bijvoorbeeld wordpad, paint, notepad, defraggen, vul maar in. In feite past dat ook in het “Een OS is een set API’s”. Een iets eloquentere poging: [4]Een OS is een set veelgebruikte functionaliteit voor developers en eindgebuikers”. Maar ik twijfel er niet aan of ook deze poging gaat k ooit voor de leeuwen. Misschien wel door jouw.

http://tweakers.net/ext/f/vF6eq14QYKfMHbbcDMNn2RHI/full.jpg

Als toetje wil ik jullie graag nog deze meegeven uit het verhaal.
“There are only two ways to sell a product: price and features. When OSes are free, OS companies cannot compete on price, and so they compete on features. This means that they are always trying to outdo each other writing code that, until recently, was not considered to be part of an OS at all: stuff like GUIs. This explains a lot about how these companies behave.

It explains why Microsoft added a browser to their OS, for example. It is easy to get free browsers, just as to get free OSes. If browsers are free, and OSes are free, it would seem that there is no way to make money from browsers or OSes. But if you can integrate a browser into the OS and thereby imbue both of them with new features, you have a salable product.

Setting aside, for the moment, the fact that this makes government anti-trust lawyers really mad, this strategy makes sense. At least, it makes sense if you assume (as Microsoft's management appears to) that the OS has to be protected at all costs. The real question is whether every new technological trend that comes down the pike ought to be used as a crutch to maintain the OS's dominant position. Confronted with the Web phenomenon, Microsoft had to develop a really good web browser, and they did. But then they had a choice: they could have made that browser work on many different OSes, which would give Microsoft a strong position in the Internet world no matter what happened to their OS market share. Or they could make the browser one with the OS, gambling that this would make the OS look so modern and sexy that it would help to preserve their dominance in that market. The problem is that when Microsoft's OS position begins to erode (and since it is currently at something like ninety percent, it can't go anywhere but down) it will drag everything else down with it.”