Apple Desktop Computer manual What Has Changed

Page 57

C H A P T E R 5

Software

Not changing the higher level software as often simplifies things for many groups inside Apple, including testing, system software, software configuration management, developer support, and publications. Third-party developers can also benefit from this.

What Has Changed

Hardware-specific code that performs the computer’s start-up activities resides in firmware (ROM). That code fits into one ROM called the Boot ROM. The Boot ROM includes the hardware specific code and tables needed to start up the computer, to load an OS, and to provide common hardware access services.

All higher level software resides somewhere else. For now, think of it residing in what has been historically known as the Mac OS ToolBox ROM, but with much of the old hardware-specific code moved into the Boot ROM. As before, the ToolBox ROM can still be augmented by Enablers, the System file, and extensions.

Prior to the iMac, all Macintosh computers required a ROM component that contained the Mac OS Toolbox software. The NewWorld approach sidesteps this requirement by copying an image of the Mac OS ToolBox into RAM before the Mac OS begins operation. The area of RAM that contains the ToolBox image is excluded from the available memory space in RAM, and is marked as read-only. Once the Mac OS begins operation, a ToolBox image in RAM and an actual ToolBox ROM behave in the same way.

No new or different software interfaces are directly accessible from Mac OS. During the boot process, software contained in the Mac OS ToolBox ROM file communicates with Open Firmware to collect information about the hardware, using the Open Firmware Client Interface.

Note

Open Firmware is a central component of the NewWorld architecture. For reference material about Open Firmware, see “Open Firmware” (page 11).

Most of the changes are completely transparent to Mac OS. Only the Startup Disk control panel is affected: it includes added code to modify the Open Firmware’s configuration variables in the NV-RAM.

Why Make This Change?

57

Image 57
Contents Apple iMac Computer Page Contents RAM Expansion Devices and PortsRtas SoftwareRtas NV-RAM Appendix Abbreviations IndexFigures and Tables Page About This Developer Note Contents of This NoteSupplemental Reference Documents PowerPC G3 MicroprocessorMac OS ATA DevicesOpen Firmware USB DevicesE F a C E Introduction Features Shows a front view of the computer Case and External FeaturesFront view 2Side view showing I/O bay System Software Compatibility IssuesMain RAM Expansion Modules Video RAM Expansion ModulesUSB Ports and Devices Page Architecture Architecture Processor module G3 MicroprocessorBackside Cache Main Logic Board Memory Controller and PCI BridgeController IC USB Controller Video Display SubsystemBuilt-in Modem Infrared Link Module Devices and Ports USB Ports USB ConnectorsGND Transfer Types SupportedADB Compatibility USB Compatibility IssuesMacintosh-To-Macintosh Connections Serial Port CompatibilityUSB Storage Devices USB ControllerKeyboard Layout KeyboardKeyboard and USB MouseVideo Display Hard Disk DriveSound System Infrared Communication LinkSound Outputs Sound InputsBuilt-in Microphone External Sound InputSound Specifications External Sound OutputHeadphone Jacks Total harmonic distortion Internal Modem Ethernet PortPage RAM Expansion Removing the Logic Board Assembly Expansion SlotsPlacing the Computer Face Down Unfastening the Cables Removing the bottom coverRAM Expansion Removing the Retaining Screws 3Logic board assembly handle and retaining screwsRemoving the EMI Shield Removing the Logic Board AssemblyLocations of the Expansion Slots 6Locations of the RAM expansion slots Main RAM ExpansionElectrical Design of RAM SO-DIMMs Mechanical Design of RAM SO-DIMMsSdram Devices Configuration of RAM SO-DIMMs Address Multiplexing RAM SO-DIMM Electrical LimitsVideo RAM Expansion Page Software Why Make This Change? What Has Changed Features of the New Approach RAM Footprint PerformanceUser Experience Data Structures and FilesBoot ROM Contents Rtas Mac OS ndrv DriversToolbox Image File Contents NewWorld Boot Process Trampoline CodeToolBox ROM Image Interrupt Handling What Is DifferentRAM Footprint Outmoded ResourcesStartup Disk Control Panel NanoKernelOpen Firmware and the Device Tree Interrupt LayoutMachine Identification Software Abbreviations Chrp NMI Page Index Nvram X, Y, Z Allen Watson