A significant new feature in the 2.6 Linux kernel is the addition of a unified device model. The device model provides a single mechanism for representing devices and describing their topology in the system. Such a system provides several benefits:
Minimization of code duplication
A mechanism for providing common facilities, such as reference counting
The capability to enumerate all the devices in the system, view their status, and see to what bus they attach
The capability to generate a complete and valid tree of the entire device structure of the system, including all buses and interconnections
The capability to link devices to their drivers and vice versa
The capability to categorize devices by their class, such as ...