What comes to mind when you think of Mac OS X? Is it the applications you use? Perhaps you recall Mac OS X's distinctive user interface? Or maybe you think of Mac OS X's stability? In truth, Mac OS X embodies all these things.
The Mac OS X operating system is often described as a collection of layers, as seen in Figure 1-1.
You are probably already familiar with the topmost layer: the applications that run on Mac OS X (like Mail, iTunes, Safari, and so on). These applications are all written against a collection of application frameworks. These frameworks are special libraries that provide the code and all the other resources (icons, translated strings, and so on) to perform common tasks. For example, the Cocoa framework contains a number of resources necessary to make a Cocoa application.
All Mac OS X applications use graphics to some extent, ranging from simply presenting its user interface to processing graphical data like QuickTime movies. The system provides several specialized libraries for working with graphics and graphics files.
These layers rest on the broad shoulders of the core operating system, which at the lowest level is responsible for making your Macintosh run. For example, the core OS handles reading from and writing to your hard drive and random access memory (RAM), it manages your network connections, it ...