Go to main content

Device Driver Tutorial

Exit Print View

Updated: April 2019
 
 

Using This Documentation

  • Overview – Provides practical information about how to develop device drivers for the Oracle Solaris operating system. It also includes the step-by-step descriptions of writing, building, installing, loading, and testing real device drivers.

    This guide shows you how to develop a simple device driver for the Oracle Solaris operating system. It also explains how device drivers work in Oracle Solaris. This book is a companion to Writing Device Drivers for Oracle Solaris 11.3, a thorough reference document that discusses many types of devices and drivers. This tutorial examines complete drivers but does not provide a comprehensive treatment of all driver types. For comprehensive treatment, refer to Writing Device Drivers for Oracle Solaris 11.3 and other books.

  • Audience – You should read this tutorial if you need to develop, install, and configure device drivers for the Oracle Solaris OS. You also should read this book if you need to maintain existing drivers or add new functionality to existing Oracle Solaris OS drivers. Information about the kernel provided in this book also will help you troubleshoot problems you might encounter installing or configuring Oracle Solaris systems.

  • Required knowledge

      To write device drivers for the Oracle Solaris OS, you should have the following background:

    • Be an experienced C programmer

    • Have experience with data structures, especially with linked lists

    • Understand bit operations

    • Understand indirect function calls

    • Understand caching

    • Understand multithreading (see the Multithreaded Programming Guide )

    • Be familiar with a UNIX shell

    • Understand the basics of UNIX system and I/O architecture

    The most important information you need to have to write a device driver is the device specification. Get a detailed specification for the device that you will work on.

    Experience with Oracle Solaris OS compilers, debuggers, and other tools will be very helpful to you. You also need to understand where the file system fits with the kernel and the application layer. These topics are discussed in this tutorial.

Product Documentation Library

Documentation and resources for this product and related products are available at http://www.oracle.com/pls/topic/lookup?ctx=E53394-01.

Feedback

Provide feedback about this documentation at http://www.oracle.com/goto/docfeedback.