The Mac OS is a graphical operating system developed by Apple Inc. The tenth version of the Mac OS is the Mac OS X which was launched in 2001.
The structure of the Mac OS X includes multiple layers. The base layer is Darwin which is the Unix core of the system. Next layer is the graphics system which contains Quartz, OpenGL and QuickTime. Then is the application layer which has four components, namely Classic, Carbon, Cocoa and Java. The top layer is Aqua, which is the user interface.
A diagram that demonstrates the structure of Mac OS X is as follows −
Details about the different components of the Mac OS X structure as seen in the image above are as follows −
The Darwin Core is based on the BSD (Berkeley Software Distribution) version of Unix. Mach is the main part of the Darwin core and it performs operations such as memory use, data flow from and to CPU etc. Darwin is also open source i.e. anyone can obtain its source code and make modifications to it. Different versions of Darwin can be used to enhance the Mac OS X.
Some of the major features of the Darwin core are protected memory, automatic memory management, preemptive multitasking, advanced virtual memory etc. It also provides I/O services for Mac OS X and supports plug-and-play, hot-swapping and power management.
The graphics subsystem in the Mac OS X contains three parts i.e. Quartz, OpenGL and QuickTime. The 2-D graphics in the graphics subsystem is managed by Quartz. It provides fonts, interface graphics, rendering of the images etc. OpenGL provides support for 3-D graphics in the system such as texture mapping, transparency, antialiasing, atmospheric effects, special effects etc.
It is also used in Unix and Windows systems. QuickTime is used for different digital media such as digital video, audio and video streaming etc. It also enables creative applications such as iMovie, iTunes etc.
The application subsystem in Mac OS X provides the classic environment to run classic applications. Carbon, Cocoa and Java are the three application development environments available.
The classic environment makes sure that applications written for the previous versions of the operating system can run smoothly. The carbon environment is used to port existing applications to carbon application program interfaces. This is called carbonising the application. The cocoa environment provides object-oriented application development environment. The cocoa applications use the benefits of the Mac OS X Structure the most. The Java applications and Java applets can be run using the Java environment.
Aqua is the user interface of Mac OS X. It provides good visual features as well as the tools to customize the user interface as per the user requirements. Aqua contains extensive use of colour and texture as well as extremely detailed icons. It is both pleasant to view and efficient to use.