How Mac OS X Works

The Anatomy of Mac OS X

The heart of the Mac OS X is the XNU kernel. The kernel refers to the part of an operating system that loads first. It controls and monitors hardware resources like memory, CPU processor allocation and disk drives. The XNU kernel includes code from an old computer architecture system called Mach. Mach is a product of Carnegie Mellon University and has been around since the 1980s. This code is responsible for some basic functions within the Mac computer, including virtual memory management and multitasking. The code also gives the Mac OS the authority to reduce the CPU's processing speed should it begin to overheat.

Another part of the kernel is the Input-Output (I/O) Kit. It relies on a specialized, limited version of the C++ programming language to control device drivers. Device drivers are what allow external devices to interact with your computer. For example, your printer may require a device driver on your computer so that you can print from your machine. Handling all the requests and information moving from your computer to other devices -- and vice versa -- is a demanding job. The I/O Kit enables a Mac computer to handle several devices over different technologies at the same time. That's why you can connect devices to a Mac using USB, FireWire and Thunderbolt cables simultaneously.


The third part of the XNU kernel is your computer's security guard and bouncer. Based on the Berkeley Software Distribution (BSD) derivative for UNIX, this part of the kernel is in charge of maintaining system securities and permissions. When you log in to a Mac computer the BSD determines your level of access. An administrator would have nearly free reign and could download or delete programs and other data. Other user levels might not have such liberal permissions. This lets the administrator define which processes a normal user can and can't access. The BSD element of the XNU kernel also helps synchronize processes in the Mac computer.

Also part of Mac OS X are the core services layer and the application services layer. Together with the kernel and hardware, these layers form what computer engineers call a stack. A stack is just a way to conceptualize the relationship of the various layer of a computer's software and hardware. At the bottom of the stack you'll find the hardware and firmware. The next level up is the OS kernel. After that you'll find the core services and then the application services layer. The applications themselves are at the top of the stack.

The core services component of Mac OS X consists of multiple frameworks that allow the computer to process tasks like text searches in various languages and system APIs. The applications services layer is the basic graphic user interface (GUI) system. This is the layer the typical user will see -- it's what creates the graphics environment. The application services layer also acts as a communications channel between various applications, allowing them to interact.

Next, let's look at some Mac OS X features.