Macintosh-Baukasten

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Der Macintosh-Baukasten (engl. Macintosh Toolbox) war eine Sammlung von Ressourcen, Treibern, Routinen und Programmierschnittstellen, die sich im ROM früherer Macintosh-Computer (sogenannte Old World ROM-Macintoshs) befanden, die als Betriebssystem mit dem klassischen Mac OS arbeiteten.

Um Arbeits- und Diskettenspeicherplatz zu sparen, waren seit dem ersten Macintosh mit 128 KB RAM zahlreiche Komponenten des Betriebssystems in einem ROM bereitgestellt worden. Arbeitsspeicher (RAM) war zu dieser Zeit wesentlich teurer als die gleiche Menge ROM, und 128 KB Arbeitsspeicher stellten bei der Produktion bereits einen enormen Kostenfaktor dar. Außerdem bot diese Maßnahme einen gewissen Geschwindigkeitsvorteil, da ROM seinerzeit schneller auszulesen war als RAM und noch weitaus schneller als Disketten.

Da der Inhalt des ROMs mit der Auslieferung des Rechners festgelegt war, wurden alle Inhalte des Baukastens über eine Tabelle angesprungen. Neuere Baukastenkomponenten in der Betriebssystemdatei wurden so statt der jeweils veralteten Inhalte des ROMs verwendet.

In den 1990er Jahren kehrte sich das Preis- und Geschwindigkeitsverhältnis von ROM und RAM zunehmend um, ROM war nun deutlich teurer als die gleiche Menge RAM und zudem deutlich langsamer. Mit dem iMac, dem PowerBook G3 „Lombard“ und dem Blau-Weißen Power Mac G3 verschwanden daher die Baukasten-ROMs aus den Macintosh-Rechnern und wurden vielmehr als ROM-Datei auf der Festplatte bereitgestellt. Das Open-Firmware-Start-ROM dieser mit „New World ROM” bezeichneten Mac-Modelle laden den Macintosh-Baukasten nicht aus dem verbauten ROM, sondern aus dieser mit Mac OS bereitgestellten ROM-Datei in den Arbeitsspeicher – das klassische Mac OS kann die Funktionen der Macintosh Toolbox anschließend wie gehabt nutzen.

Der Macintosh-Baukasten wurde ursprünglich in Pascal entwickelt und dann aus Geschwindigkeits- und Platzgründen in Motorola-68000-Assembler umgesetzt. Im Laufe der Jahre wurden Teile in die Programmiersprache C und C++ übersetzt, um nativ auf dem Power Macintosh laufen zu können.

Bestandteile[Bearbeiten | Quelltext bearbeiten]

Wichtige Bestandteile des Macintosh-Baukastens umfassen:

  • QuickDraw
  • Window Manager
  • Dialog Manager
  • Control Manager
  • Menu Manager
  • Event Manager
  • TextEdit
  • Resource Manager
  • Finder-Schnittstelle
  • Scrap-Manager
  • Standard file package
  • Sound Manager

Nachfolge[Bearbeiten | Quelltext bearbeiten]

Anfang der 1990er-Jahre war Apple mit dem als veraltet geltenden Betriebssystem „Macintosh System Software“ (ab 1996 in Mac OS umbenannt) nicht mehr konkurrenzfähig. Microsoft und IBM arbeiteten an einem grafischen Betriebssystem, das so einfach zu bedienen sein sollte wie das Apple-Betriebssystem, zusätzlich jedoch moderne Funktionen wie kooperatives Multitasking und Speicherschutz bot. Während der Entwicklung von System 7 wurde der Macintosh-Baukasten von 68k-Assembler auf C neu implementiert und mit dem Projekt „Star Trek“ (System 7 auf einem x86-PC) sogar auf die x86-Architektur portiert.

Am Ende scheiterte Apple jedoch bei dem Versuch, sein Betriebssystem entweder zu erweitern oder durch eine moderne Neuentwicklung zu ersetzen. Projekte wie Pink (Taligent) und Copland waren gescheitert während Microsoft mit Windows 95 große Erfolge feierte und Microsoft und IBM mit OS/2 und Windows NT stabile und moderne Betriebssysteme entwickelt hatten.

Ende 1996 erhielt Apple durch die Übernahme von NeXT ein modernes Unix-basiertes Betriebssystem, das eine nicht-kompatible objektorientierte Programmierschnittstelle (API) namen OpenStep enthielt. Diese neue API wurde von Apple im Betriebssystemprojekt Rhapsody als Yellow Box und mit Mac OS X schließlich als Cocoa weiterentwickelt.

Da jedoch viele Anbieter von für Apple unverzichtbarer Anwendersoftware ein mit dem ursprünglichen Macintosh-API kompatibles System forderten, wurde sowohl unter Mac OS ab Version 8 als auch unter Mac OS X eine neue Programmierschnittstelle implementiert, die größtmögliche Source-Code-Kompatibilität mit dem Macintosh-Baukasten bieten sollte. Damit wurde der Portierungsaufwand für bestehende Anwendungen gering gehalten und Softwarehersteller konnten ihre Programme relativ schnell auf das neue Betriebssystem Mac OS X portieren, das ab 2002 das ältere Mac OS vollständig ersetzte. Diese kompatible Programmierschnittstelle nennt sich Carbon und ist in jeder Version von Mac OS X (ab 2012 OS X) enthalten, wird jedoch seit 2007 nicht mehr weiterentwickelt und wurde auch nicht mehr auf 64-Bit portiert, sodass nur 32-Bit-Anwendungen unter OS X die Funktionen des Carbon-API nutzen können.

Literatur[Bearbeiten | Quelltext bearbeiten]

Weblinks[Bearbeiten | Quelltext bearbeiten]