Zo is Mac OS X ontstaan vanuit NeXT
Waar komt macOS eigenlijk vandaan? In dit artikel duiken we in de oorsprong van het besturingssyteem dat dagelijks door miljoenen mensen wordt gebruikt. Zijn macOS en voorganger Mac OS X gewoon een vervolg op de al eerder bestaande versies Mac OS 8 en Mac OS 9? De werkelijkheid blijkt heel anders te liggen.
Voor het ontstaan van Mac OS X moeten we teruggaan naar de jaren tachtig, toen Apple met man en macht probeerde om een nieuwe generatie besturingssysteem te ontwikkelen, dat gebaseerd was op de technologische inzichten van die tijd. Steve Jobs was in die periode niet meer werkzaam bij Apple. Hij had ondertussen met NeXT een nieuw bedrijf opgericht, dat verderop in dit verhaal nog een belangrijke rol zal gaan spelen.
Objectgeoriënteerd
Een van de belangrijkste eisen van Apple was dat het besturingssysteem objectgeoriënteerd moesten zijn. Vrijwel alle software uit die tijd was procedureel gestructureerd. Denk maar aan Basic: het programma begint bij regel 1 en doorloopt verschillende regels, soms afhankelijk van gebruikersinput, en stopt wanneer de laatste regel bereikt is.
Objectgeoriënteerde software bestaat uit objecten, met datavelden (attributes) die zelfstandig een procedure kunnen doorlopen (method). Zulke objecten kunnen in principe op elke plek in de software aangeroepen worden en zelfs tussen programma’s onderling. Apple deed verschillende pogingen om een nieuw, objectgeoriënteerd besturingssysteem. Misschien zeggen de codenamen Taligent, Copland en Gershwin je nog wel wat. Of misschien ook niet, want ze waren weinig succesvol.
NeXT
In de tussentijd was Jobs vastbesloten om zijn volgende bedrijf succesvol te maken. Hij richtte NeXT op, met als doel het ontwikkelen van de computer van de toekomst. Het moest draaien op een nieuw, modern besturingssysteem dat snel, flexibel en krachtig moest zijn. Jobs koos daarbij voor een implementatie van Unix, een familie van besturingssystemen die in allerlei vormen en gedaanten overal terug te vinden is.
NeXT Computer, ontworpen door Hartmut Esslinger (1988)
Een van de kenmerken van Unix is dat het modulair is, waardoor kleine stukjes code verantwoordelijk worden voor één kleine, relatief simpele taak. Dat is mogelijk omdat het van de grond af gericht op multitasking is. Het leidt tot een kernel die compact en snel is. Deze kernel zorgt voor de communicatie tussen programma’s en de hardware. Sterker nog: drivers voor de hardware zitten voor het overgrote deel ín de kernel – korter kan de weg tussen hardware en besturingssysteem niet zijn. De basis van het NeXT-besturingssysteem werd gevormd door de Mach-kernel, een aangepaste versie van Unix.
NeXTSTEP, de voorganger van Mac OS X
Bij NeXT werd in de jaren tachtig het NeXTSTEP besturingssysteem ontwikkeld, dat in 1989 officieel uitkwam. Een betaversie van NeXTSTEP werd in 1988 al getoond bij de lancering van de eerste computer van het bedrijf. De naam werd in de loop van de jaren steeds anders geschreven: het begon met NextStep, later NeXTstep, NexTStep, neXtStep, NeXTSTEP en uiteindelijk NEXTSTEP. De kernel van NeXTSTEp was gebaseerd op de Mach-kernel, die oorspronkelijk was ontwikkeld op Carnegie Mellon University, aangevuld met delen van BSD. De grafische interface was gebouwd op een objectgeoriënteerde GUI-toolkit. Ze gebruikten destijds al de Objective C-programmeertaal.
De Geschiedenis van de Computer