BETTER PERFORMANCE.
The first Power Macs achieved their well-known stability and compatibility by simply executing large amounts of the time-proven 680x0 Toolbox code in an emulator. With Copland, this situation is reversed: It's comprised mostly of native PowerPC code, so calls to the microkernel services benefit directly from the PowerPC's processing speed.
It's important that Copland's device drivers are reentrant native code. Thus, they provide better raw throughput over what's possible using emulated drivers, and concurrent I/O operations are supported. A native file system boosts file I/O rates, especially for virtual memory. It also offers new capabilities, such as the ability to
handle hard drives up to 256 TB in size and individual files up to 2 GB in size. Finally, an improved 680x0 emulator executes the remaining portions of the 680x0 Toolbox code, and any 680x0 applications, significantly faster.
The microkernel also has a preemptive task scheduler that helps overall performance. As with other OSes, this task scheduler juggles task activity so that when one task gets blocked--perhaps while waiting on pending I/O or for access to an exclusively owned resource--other tasks still execute.
This keeps the overall system running efficiently rather than stalling when a program waits for an I/O function to complete, as is often the case with System 7. While the kernel, I/O services, and server programs created by Copland-savvy applications execute preemptively, for reasons of compatibility, existing Mac applications still have to execute cooperatively.
A MORE STABLE OS.
The microkernel improves reliability through the use of memory protection, separate
address spaces, and user/supervisor execution modes. Again, for compatibility purposes, this memory-protection mechanism has limitations: Applications and nonreentrant Toolbox code reside in a single Cooperative space and can trash one another, but not the entire OS.
Because of the microkernel's modular design, Apple can release portions of the OS for shakedown before Copland ships next year. For example, drivers, network services based on Open Transport, and a faster 680x0 emulator will be released with the PCI-bus (Peripheral Component Interconnect) Macs that are due out this summer. Users can depend on these services' being reliable in Copland because they will sport any bug fixes and performance-tuning accomplished during the interval.
AN EXTENSIBLE ARCHITECTURE.
This is an outgrowth of Copland's modular design. Portions of the OS can readily be replaced to, say, support a new volume format or an imaging engine without having an impact on other OS services.
In recognitio
n of the fact that third-party vendors often extend the Mac OS in new and useful ways, Copland's microkernel offers a well-documented native patching mechanism. For example, both the new File Manager and the high-level Toolbox supply hooks so that these portions of the OS can be readily extended.
HARDWARE ABSTRACTION.
Copland's ship date was delayed so that hardware dependencies could be eliminated from every part of the OS but the drivers. Unlike previous versions of the Mac OS, Copland is not ROM-based: Instead, all the OS and Toolbox code resides in disk files.
Open Firmware, an evolving IEEE standard, is used to bootstrap the computer. This prepares Copland for the new PowerPC system hardware standard, CHRP (Common Hardware Reference Platform), which was jointly proposed by Apple, IBM, and Motorola. (For details, see "New PowerPC Standard Supports Macs," March BYTE.) This hardware abstraction also assists Mac clone vendors: They can readily add custom hardware to their system
designs to add value or cut costs without requiring a drastic revision of Copland.