Features of the USB ports include power saving modes and the ability to boot the computer using a USB mass-storage device.
In the iMac, the USB port can be completely powered down during Sleep mode. USB devices must be able to start up again when the computer wakes up from Sleep mode. This functionality is part of the USB-suspend mode defined in the USB specification. Information about the operation of USB-suspend mode on Macintosh computers is included in the Mac OS USB DDK API Reference , available on the World Wide Web at
http://developer.apple.com/techpubs/hardware/DeviceManagers/usb/usb.html
In addition to restarting themselves out of Sleep mode, USB devices can also provide a remote wakeup function for the computer. The USB root hub in the computer is set to support remote wakeup whenever a device is attached to or disconnected from the bus. The keyboard that comes with the computer uses this method to wake the computer on a key press.
The KeyLargo IC contains special circuitry that allows the computer to wake from Sleep mode on connect, disconnect, and resume events. Compatible USB devices should support the USB-suspend mode defined in the USB specification.
The iMac can boot from a USB storage device that follows the USB Mass Storage Class specification.
Class drivers are software components that are able to communicate with many USB devices of a particular kind. If the appropriate class driver is present, any number of compliant devices can be plugged in and start working immediately without the need to install additional software. The Mac OS for the iMac includes USB Mass Storage Support 2.0, a class driver that supports devices that meet the USB Mass Storage Class specification.
The iMac uses an Open Host Controller Interface (OHCI) controller for USB communication. Some early USB devices (most notably keyboards) can't interoperate with an OHCI controller. Those devices are not supported by the Macintosh USB system software.