Skip Navigation Links | |
Exit Print View | |
Device Driver Tutorial Oracle Solaris 11.1 Information Library |
1. Introduction to Device Drivers
Differences Between Kernel Modules and User Programs
Execution Differences Between Kernel Modules and User Programs
Structural Differences Between Kernel Modules and User Programs
Data Transfer Differences Between Kernel Modules and User Programs
User and Kernel Address Spaces on x86 and SPARC Machines
Development Environment and Tools
Compiling with Oracle Solaris Studio
Compiling with the GNU C Compiler
Adding, Updating, and Removing a Driver
Loading and Unloading a Driver
3. Reading and Writing Data in Kernel Memory
The Oracle Solaris Operating System (Oracle Solaris OS) is implemented as an executable file that runs at boot time. The Oracle Solaris OS is referred to as the kernel. The kernel contains all of the routines that are necessary for the system to run. Because the kernel is essential for the running of the machine, the kernel runs in a special, protected mode that is called kernel mode. In contrast, user-level applications operate in a restricted mode called user mode that has no access to kernel instructions or to the kernel address space. Device drivers run in kernel mode and are prevented from directly accessing processes in user mode.