Using the driver framework to build bus and device drivers in the ChorusOS operating system provides the following benefits:
A structured framework, easing the task of building drivers
The hierarchical structure of drivers in the driver framework mirrors the hardware structure
Ensures compliance and functionality within the ChorusOS operating system
Enables the user to develop multi-bus device drivers, which may run on all buses supporting the common bus driver interface
Drivers built with the driver framework are homogeneous across various system profiles (flat memory, protected memory, virtual memory)
Allows dynamic configuration (and reconfiguration) needed for plug-and-play, hot-plug, and hot-swap support
Supports the binary driver model
The APIs are version resilient
The bus and drivers are adaptive (in terms of the memory footprint and complexity) to the various system profiles and customer requirements
Supports the dynamic loading and unloading of driver components
Meets real-time requirements, by providing non-blocking (asynchronous) run-time APIs