OSX Structure

Apple officially introduced the Mac osX system in January 2000. Even if this news is not from yesterday, I found it useful to talk about it to inform the 'switchers' but also to understand how the apple was able to realize the most successful system in the world.

OSX Structure

Mac osX set different goals for itself that we could list as follows:

  • foolproof stability.
  • improved response times.
  • optimization of the use of system resources.
  • reduction to the strict minimum of the modifications necessary for porting applications.
  • compatibility of old applications.

A system with revolutionary performances bringing with it a new approach of users accustomed for years to a logic of Mac OS now upset. So goodbye to the settings bar, dashboards and other manual management of extensions. Because Mac OS X represents, on the one hand, a decisive turning point compared to previous versions of Mac OS and, on the other hand, it can be seen as a natural evolution. This next generation of operating system appears as a synthesis of many technologies, some new and others representing standards recognized by the IT industry.

One of the major novelties of Mac OS X, in addition to a stunning graphical interface, is undoubtedly the adoption of a UNIX kernel named Darwin and based on the Mach Kernel 3.0 as well as Free BSD. The benefits deriving from such a choice are numerous: protected memory, preemptive multitasking, symmetric multiprocessing, clustering or even dynamic memory.

So many elements whose meaning seems vague to most users and that we will detail later. But this new generation of the operating system is much more than a new kernel and a revolutionary interface. There is also Classic, a compatibility environment in which Mac OS 9.1 runs like any other Mac OS X application by allowing software not intended for the new system to work. On the other hand, given the implementation of numerous network protocols and services, this system appears as the ultimate platform in order to take maximum advantage of the Internet and network communications in general. The objective of this article is to study the different components forming the architecture of Mac OS X, while making the novice understand a number of unavoidable names when talking about the new system.


DARWIN

The adoption of a UNIX kernel in the system architecture represents an important gain in terms of stability and performance. Features proven many times by all the incarnations of the Unix system: AIX (IBM), A /UX (Apple), HP /UX (Hewlett Packard), Solaris (Sun) as well as all versions of Linux or Xenix.

The Mac OS X kernel, commonly known as Darwin, was originally the name of a project launched by Apple in the spring of 1999. Project with the objective of making available to developers the source code of fragments of Mac OS X Server 1.0. From now on, Darwin has become the lowest layer of Mac OS X. The primary components of Darwin are Mach Kernel 3.0, Free BSD, network protocols as well as the I/O Kit.

Mach Kernel, developed at Carnegie Mellon University in the United States, is the pivotal element of Mac OS X and manages the link between hardware and software.


QUARTZ

Behind the code name "Quartz" hides the 2D display engine of Mac OS X. It is based on the Adobe PDF format and replaces the QuickDraw display of previous versions of Mac OS. However, QuickDraw instructions are still managed for compatibility reasons. Quartz is the result of a collaboration between Apple and Adobe, and is optimized for PowerPC processors and G4 Altivec technology. Its role is to manage in real time the display of windows, transparency effects, and font smoothing on the screen. The video memory manages the display on the screen and the graphics card is responsible, for example, for refreshing the movement of a window. Aqua therefore relies on Quartz when displaying real-time animations and transparencies.

The graphic aspect of Mac OS X represents unequivocally the element that aroused the most lively reactions during its first presentation. Thanks to Quartz, we could affirm that history is repeating itself. Indeed, Apple was the first company to offer users a graphical interface in an operating system. Today, it may seem difficult to the uninitiated to differentiate at first glance a Mac OS system from another system such as Windows. The combination of Quartz and Aqua marks a new fundamental step in terms of the graphical interface and the pleasure of use that such an interface brings.Quartz is composed of two elements:

  • the Core Graphics Services which manages the display on the screen of the windows (their drawing, their position, etc.) and the cursor…
  • the Core Graphics Rendering which represents an additional complement composed of several graphic libraries. These are used for on-screen rendering, print preview and other services. It uses the PDF format (ensuring good color management and data compression), in a vector way.

OPEN GL

OpenGL is an industry standard for the development of 3D graphics applications. It is specially designed for games, animations, medical imaging and other applications requiring a robust framework for the production of 3D images. The implementation of OpenGL in the system (also present in Mac OS 9) facilitates in particular the porting of games on the Macintosh platform.

OpenGL offers a wide and powerful series of functions related to 3D effects such as texture plating, transparency, anti-aliasing (smoothing), atmospheric effects (fog, smoke etc.) and other special effects.


QUICK TIME

Mac OS X comes with QuickTime version 5. Its role in Mac OS X is to process multimedia files such as movies, sounds and images. QuickTime is used by the other applications, but is also visible in the form of the QuickTime Player, a local or Internet movie player (live broadcast), and the plug-in for browsers, allowing them to display multimedia elements such as movies or sounds directly on their pages.

Some formats recognized by QuickTime: PICT, BMP, GIF, JPEG, PNG, MP3, the Macromedia Flash format etc. To this are added the video formats AVI, AVR, DV, M-JPEG, MPEG 1, or Open DML.

QuickTime also offers a range of very important “image processing” possibilities. This is one of its main advantages because it allows developers to very easily include QuickTime movies in applications or even add effects to these movies. We could add that the QuickTime format was chosen by the ISO (International Standard Organization) as the basic format for the development of the MPEG 4 format.


CLASSIC

Classic certainly represents one of the most interesting innovations of Mac OS X. Indeed, without this process, the use on Mac OS X of applications developed for earlier systems would have been impossible. Classic behaves like any other application on Mac OS X. Software not intended for Mac OS X runs inside this application completely transparently. That is, a non-Mac OS X software will behave like another application (its icon will appear in the Dock). However, we will notice that its menus are gray, like its dialog boxes and the rest of its interface. Indeed, Classic applications do not benefit from the advantages of Mac OS X such as Aqua, protected memory, multitasking or dynamic memory allocation.

It is possible to automatically launch the Classic environment at each startup. The integration of Mac OS 9.1 within Mac OS X itself partly explains the size that the system occupies on the hard disk. Indeed, while Mac OS 9 requires about 200 MB of free disk space on the hard drive, Mac OS X occupies about 700 MB.


CARBON

To take advantage of the advantages of Mac OS X, a program must take into account a number of elements and use particular functions. An application that takes into account its elements (and which therefore works without the need for the Classic environment) is said to be “carbonized”. Analyzes have shown that only about 10% of the code of an application had to be modified in order to “carbonize” it. Apple has therefore developed Carbon, a device that meets three imperatives:

  • ensure a smooth migration of existing applications.
  • allow carbonized applications to benefit from the achievements and advantages of Mac OS X.
  • allow charred applications to remain functional under Mac OS 9.1.

It is the CarbonLib extension, running on Mac OS 8.1 or higher, which makes this last point possible.

Most application publishers have already announced a carbonization of their products. Some are already available. But this is an intermediate stage. Indeed, Mac OS X brings a whole new breed of applications, thanks to a system called Cocoa.


COCOA

Cocoa designates a new type of applications totally optimized for Mac OS X. Very modern, this device is inherited from Open Step, the Next system, and object-oriented. Cocoa applications can be developed in Objective-C or Java language. The design of Cocoa applications is relatively simple. In addition, Apple makes available to all Mac OS X users, free of charge, on a supplied CD, all the necessary development tools.


Aqua

Aqua is Apple's name for the Mac OS X GUI. This includes both the appearance and the behavior of the interface. The appearance is the first thing that grabs people's attention. Aqua employs a sort of "translucent gel" theme for its GUI widgets (a look seen in many previous MetaTools/ MetaCreations applications). For more information, click here.

Read this article in French 🇫🇷