This feature is new in the Solaris Express 3/04 release.
The Solaris 10 Operating System has been enhanced to enable kernel modules to perform device access operations such as open, read, and write a device. This system also enables you to determine which devices are provided through a new set of publicly available Layered Driver Interfaces, referred to as the “LDI.”
Driver developers can use the LDI interfaces to access character, block, or STREAMS devices directly from within the Solaris kernel. Application developers can use the LDI interfaces to display device layering information. This new architecture also provides administrators with observability into device usage inside the kernel. For further information, see the ldi_*(9F) and the di_*(3DEVINFO) man pages.
The prtconf and fuser utilities have been enhanced to include the following capabilities:
“Device Layering” through the prtconf command – This command displays device minor node and device usage information. The utility also shows which minor nodes a kernel module currently has open.
See the prtconf(1M) man page.
“Device Usage” through the fuser command – This command displays information about users of a device. The command also shows what generic Solaris kernel subsystem or user process opens and accesses a device inside the Solaris kernel.
See the fuser(1M) man page.
The Layered Driver Interfaces begin with the prefix ldi_. These interfaces are used for device access and to obtain device information at the kernel level. Man pages are provided for the interfaces in section 9F. At the user level, a set of device information library interfaces provides for retrieving kernel device usage information within applications. Man pages are provided for the LDI libdevinfo interfaces within section 3DEVINFO. In addition, the prtconf(1M) and fuser(1M) man pages include information about displaying the kernel device usage information that is provided by the LDI architecture.
For further information, see Chapter 13, “Layered Driver Interface (LDI),” in the Writing Device Drivers.