-
Products
JBoss Enterprise Middleware
Red Hat JBoss Fuse Developer Studio Portfolio Edition Web Framework Kit Application Platform Web Server Data Grid Portal Platform Red Hat JBoss A-MQ SOA Platform Business Rules Management System (BRMS) Data Services Platform Messaging JBoss Operations Network JBoss Community or JBoss enterprise -
Solutions
Migration Center
Migrate to Red Hat Enterprise Linux Migration Center Systems management Upgrading to Red Hat Enterprise Linux JBoss Enterprise Middleware IBM AIX to Red Hat Enterprise Linux HP-UX to Red Hat Enterprise Linux Solaris to Red Hat Enterprise Linux UNIX to Red Hat Enterprise Linux Start a conversation with Red Hat Migration services -
Training
Courses and training paths
Popular and new courses JBoss Middleware Administration curriculum Core System Administration curriculum JBoss Middleware Development curriculum Advanced System Administration curriculum Linux Development curriculum Cloud Computing and Virtualization curriculum Cloud Computing, Virtualization, and Storage curriculum
Red Hat Enterprise Linux Kernel Device Drivers (RHD362)
Introduction and Review of Kernel Programming
-
What is a Kernel?
-
Linux Kernel Variants
-
Interacting with the Kernel
-
Kernel Implementation
-
The Linux Source Tree
-
Writing Kernel Modules
-
Compiling Kernel Modules
-
More about Kernel Modules
-
Review of Kernel Structures
Device Drivers
-
Device Drivers
-
Device Driver Design
-
Interacting with Character Device Drivers
-
Interacting with Block Device Drivers
-
Interacting with Network Interface Cards
-
Device Nodes
-
Character Device Drivers: Registration
-
The Device Node Problem
-
File Operations
-
Defining File Operations
-
Registering File Operations
-
File I/O Conventions
Unified Device Model
-
Device Model Objects
-
The sysfs filesystem
-
Device Model Structures
-
Tying it all Together
-
Netlink Sockets and User Events
-
Userspace event agents
-
Device Registration
-
Miscellaneous Devices
Interrupt Handling
-
Interrupt Context
-
Handling Interrupts
-
Interrupt Structures
-
ISR Registration
-
System Context
-
Softirqs
-
Deferred Activity: Tasklets
-
Deferred Activity: Work Queues
-
Custom Work Queues
-
Example: Serial Mouse
Advanced File Operations
-
IOCTLs
-
IOCTL Conventions
-
Implementing IOCTLs
-
Lockless IOCTLs
-
Sleeping
-
Wait Queues
-
Wait Queues
-
Variations on wait_event()
-
Sleeping in System Calls
-
Multiplexed I/O
-
Polling
Interacting With Devices
-
Device Interaction
-
Managing Exclusive Access
-
I/O Ports
-
I/O Memory Buffers
-
Accessing I/O Memory Buffers
-
Userspace Drivers
Direct Memory Access
-
Managing DMA
-
Initializing DMA
-
Coherent Allocations
-
Streaming DMA Mappings
PCI Drivers
-
Peripheral Component Interconnect
-
PCI Configuration Space
-
PCI Driver Registration
-
Registering PCI Drivers
-
Driver Probe Function
-
Initializing PCI devices
-
Releasing a PCI Device
-
Managing PCI Resources
-
Accessing Configuration Space
-
Listing PCI Devices
USB Drivers
-
The Universal Serial Bus
-
USB Descriptors
-
USB Transfer Types
-
Linux USB Implementation
-
USB Drivers
-
USB Registration
-
Initializing USB Interfaces
-
USB Class Drivers
-
USB Request Blocks
-
Using USB request blocks
-
Synchronous USB Requests
-
More information
Introduction to Network Device Drivers
-
Networking
-
Network Devices
-
Network Device Callback Functions
-
Network Driver Initialization
-
Network Driver Transmission Queue Control
-
Network Statistics
-
Socket Buffers (Packets)
-
Socket Buffer API
-
Transmission
-
Reception
-
Example Implementations
Introduction to Block Device Drivers
-
Block Devices
-
I/O Scheduling
-
Linux 2.6 Elevator Functions
-
Block Device Driver Implementation
-
Block Device Registration
-
Block Device File Operations
-
The gendisk structure
-
Request Queues
-
Initialization Example
-
Handling Requests
Note: Course outline is subject to change with technology advances and as the nature of the underlying job evolves. For questions or confirmation on a specific objective or topic, please contact a training specialist.











