What's New in the Solaris 9 9/04 Operating Environment

Writing Device Drivers

The Solaris 9 release includes the following enhancements for writing device drivers.

Frame Buffer Power Management

Some devices, such as certain tape drives and frame buffers, should not lose power, even in a power cycle, when their drivers are detached. A new interface, ddi_removing_power, checks whether a device loses power as a result of a suspend operation. A new property, no-involuntary-power-cycles, can be specified to ensure that the device is not powered down unintentionally.

For more information, see the ddi_removing_power(9F) and no-involuntary-power-cycles(9P) man pages.

SPARC: Sun StorEdge Traffic Manager

The Sun StorEdgeTM Traffic Manager supports multiple paths for I/O devices such as Fibre Channel-accessible storage. This feature balances the workload across multiple devices. The Traffic Manager increases reliability by redirecting requests from a failed interface card or storage device to a card or device that is operational.

SPARC: Driver Fault Injector Harness

The driver fault injector harness is a Solaris device driver development tool. The harness injects a wide range of simulated hardware faults when the driver under development accesses its hardware. The harness tests the impact of the test fault conditions on a SPARC based device driver.

For more information, see the man pages th_define(1M) and th_manage(1M).

Generic LAN Driver

Driver developers can use the Generic LAN Driver (GLD). The GLD implements much of the STREAMS and Data Link Provider Interface (DLPI) functionality for a Solaris network driver. Until the Solaris 8 10/00 release, the GLD module was available only for Solaris x86 Platform Edition network drivers. Now, GLD is available for Solaris SPARC Platform Edition network drivers.

For more information, see Chapter 16, Drivers for Network Devices, in Writing Device Drivers.