JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Writing Device Drivers     Oracle Solaris 11 Information Library
search filter icon
search icon

Document Information

Preface

Part I Designing Device Drivers for the Oracle Solaris Platform

1.  Overview of Oracle Solaris Device Drivers

2.  Oracle Solaris Kernel and Device Tree

3.  Multithreading

4.  Properties

5.  Managing Events and Queueing Tasks

6.  Driver Autoconfiguration

7.  Device Access: Programmed I/O

8.  Interrupt Handlers

9.  Direct Memory Access (DMA)

10.  Mapping Device and Kernel Memory

11.  Device Context Management

12.  Power Management

13.  Hardening Oracle Solaris Drivers

14.  Layered Driver Interface (LDI)

Part II Designing Specific Kinds of Device Drivers

15.  Drivers for Character Devices

16.  Drivers for Block Devices

17.  SCSI Target Drivers

18.  SCSI Host Bus Adapter Drivers

19.  Drivers for Network Devices

20.  USB Drivers

21.  SR-IOV Drivers

Part III Building a Device Driver

22.  Compiling, Loading, Packaging, and Testing Drivers

23.  Debugging, Testing, and Tuning Device Drivers

24.  Recommended Coding Practices

Part IV Appendixes

A.  Hardware Overview

B.  Summary of Oracle Solaris DDI/DKI Services

C.  Making a Device Driver 64-Bit Ready

D.  Console Frame Buffer Drivers

E.  pci.conf File

Index

Numbers and Symbols

A

B

C

D

E

F

G

H

I

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

K

_KERNEL symbol, index iconCompiling and Linking the Driver
kernel
debugger
See kmdb debugger
device tree, index iconWhat Is the Kernel?
memory
allocation, index iconDynamic Memory Allocation
associating with user applications, index iconAssociating Kernel Memory With User Mappings
detecting leaks with mdb, index iconDetecting Kernel Memory Leaks
module directory, index iconCopying the Driver to a Module Directory
overview, index iconWhat Is the Kernel?
kernel data structures, index iconObtaining Kernel Data Structure Information
kernel logging functions, index iconKernel Logging and Printing Functions
kernel statistics, See kstats
kernel statistics functions, index iconKernel Statistics Functions
kernel terminal emulator, index iconOracle Solaris Consoles and the Kernel Terminal Emulator
kernel thread functions, index iconKernel Thread Control and Synchronization Functions
kernel variables
setting, index iconSetting Kernel Variables
use with debuggers, index iconModifying Kernel Variables
using, index iconSetting Up Test Modules
kmdb debugger, index iconUsing the kmdb Kernel Debugger
booting on SPARC systems, index iconBooting kmdb With an Alternate Kernel on the SPARC Platform
booting on x86 systems, index iconBooting kmdb With an Alternate Kernel on the x86 Platform
macros, index iconkmdb Macros for Driver Developers
setting breakpoints, index iconSetting Breakpoints in kmdb
kmdb kernel debugger, index iconEnable the Deadman Feature to Avoid a Hard Hang
kmem_alloc() function, index iconDynamic Memory Allocation
kmem_flags kernel variable, index iconSetting kmem_flags Debugging Flags
kmem_free() function, index iconRetrieving Target Device Information
kstats
See network statistics
definition, index iconKernel Statistics
Ethernet drivers, index iconKernel Statistics for Oracle Solaris Ethernet Drivers
functions
index iconKernel Statistics Functions
index iconKernel Statistics Functions
structure members, index iconKernel Statistics Structure Members
structures, index iconKernel Statistics Structures
task queues, index iconTask Queue Kernel Statistics Counters