TITLE
    PowerBook (Bronze Keyboard and FireWire): Information About ROM-in-RAM
Article ID:
Created:
Modified:
58342
5/6/99
11/20/00

TOPIC

    I understand the PowerBook G3 Series (Bronze keyboard) and PowerBook (FireWire) use the ROM-in-RAM (NewWorld ROM). What is it and what does it mean to me?


DISCUSSION

    This PowerBook is different from previous PowerBook computers in that it has no single, large physical ROM that contains many components of the Mac OS, the 68K emulator, hardware initialization, and the nanokernel. Instead, a small physical ROM provides hardware initialization functions and provides a mechanism to load the Mac OS ROM image into RAM. The new software architecture that is centered around ROM-in-RAM and its ramifications has the code name NewWorld.

    ROM-in-RAM

    Hardware-specific code resides in firmware (ROM) that fits into one ROM called the boot ROM. The boot ROM includes the code and tables needed to start up the computer, load an operating system, and provide common hardware access services.

    All higher-level software resides in what has been historically known as the Mac OS ROM, but with much of the old hardware-specific code moved into the boot ROM. As before, the Mac OS 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 many components of the Mac OS software. The ROM-in-RAM approach sidesteps this requirement by copying an image of the Mac OS ROM into RAM before the Mac OS begins operation. Once the Mac OS begins operation, a Mac OS ROM image in RAM and an actual Mac OS ROM behave in the same way. No new or different software interfaces are directly accessible from the Mac OS. During the boot process, software contained in the Mac OS ROM file communicates with Open Firmware to collect information about the hardware, using the Open Firmware Client Interface.

    Performance

    Performance of a PowerBook computer using ROM-in-RAM should exceed performance measurements for other Macintosh computers with comparable microprocessors and speeds due to the improved interrupt handling with the ROM-in-RAM approach. In addition, performance is improved because code that used to exist in ROM is now in RAM and RAM chips operate faster than the ROM chips.

    RAM Footprint

    Because the Mac OS ROM image is stored in RAM, approximately 3 megabytes of RAM is removed from availability for other uses. In effect, a system with 64 megabytes of RAM appears to have only 61 megabytes available. Some portion of the missing 3 megabytes is offset by having fewer patches in RAM.

    Data Structures and Files

    The Mac OS ROM image is contained in a new file, named "Mac OS ROM", that is kept in the System Folder. The Mac OS ROM image is exactly the same as it would be if it were an actual Mac OS ROM, containing the high-level software, the kernel software, and the 68K emulator.

    Startup Disk Control Panel

    Previous systems stored the user's selected startup device in PRAM when the user selected a device in the Startup Disk control panel. This device was honored by the Mac OS ROM unless the selected device was unavailable or was overridden by the user. The startup disk routine for the PowerBook computer, rather than setting Mac OS PRAM, sets an Open Firmware config variable called boot-device. This setting is honored by Open Firmware unless the selected device is unavailable or is overridden by the user.

    Pressing the following keys during the startup sequence can be used to override the selected startup device.

    Command-Option-Shift-Delete: will ignore the device that is selected in the Startup Disk control panel.

    C: force the internal CD-ROM drive to be the startup device

    D: force the internal hard disk to be the startup device.

    Open Firmware and Startup Devices

    In order for a device supported by an expansion card (for example a SCSI PC card) to participate in the startup process (for example, to boot a drive connected to that SCSI PC card), the card must include an expansion ROM containing startup firmware. Expansion cards for startup devices must contain all the driver code required during startup in the expansion ROM on the card. Depending on their functions, such cards may also need to provide support resources such as fonts.

    Examples of devices needed during system startup include display, keyboard, and mouse devices, and storage devices such as hard drives and CD-ROM drives.

    Important : If Open Firmware code is not included in the expansion card for a startup device, the card will not be usable until the operating system loads its supporting software from disk after the startup process has concluded.


Document Information
Product Area: Computers
Category: PowerBook
Sub Category: PowerBook G3 Series (Bronze Kbd)

Copyright © 2000 Apple Computer, Inc. All rights reserved.