This chapter presents an overview of the native driver environment and services, or I/O architecture, available in the Mac OS for Power Macintosh computers that include a PCI bus. It covers concepts and terminology that are introduced with this I/O architecture. It also provides a high-level summary of the new driver interfaces, packaging, and support. The discussion in this chapter applies to run-time drivers, which run after the system startup steps detailed in Startup and System Configuration
The previous Macintosh I/O architecture was based on resources of type 'DRVR' and their associated system software, including the Device Manager. Mac OS now supports a more general concept of driver software. In the new I/O architecture, a driver is any PowerPC native code that controls a physical or virtual device. This definition includes resources of type 'ndrv' but excludes resources of type 'DRVR', protocol modules, control panels, resources of type 'INIT', and application code.
Native device drivers are now isolated from application-level interfaces and services; in particular, main driver code must run without access to the Macintosh Toolbox. This concept is discussed further in Separation of Application and Driver Services.
To understand this chapter, you should have some experience developing drivers or similar software designed to work with Mac OS. For recommended reading material about Macintosh technology, see the documents listed in Supplementary Documents.