-
内容大纲
Linux内核是一种复杂、可迁移、模块化和广泛使用的软件,在全世界过半数设备的80%左右服务器和嵌入式系统中运行。设备驱动程序在Linux系统良好运行中起到非常重要的作用。随着Linux已成为最流行的操作系统之一,为专有设备开发驱动程序的兴趣也与日俱增。
约翰·马杜著的《Linux设备驱动程序开发(影印版)(英文版)》将帮助你理解驱动程序相关基础知识,并带你完成游览Linux内核的漫长旅程。本书涵盖基于多种Linux子系统的驱动程序开发,包括内存管理、PWM、RTC、IIO和IRQ管理。本书还提供直接内存访问和网络设备驱动程序的实用方法。
在本书最后,你将会熟悉驱动程序开发的概念,并且可以从头开始为最新版内核编写任何驱动程序。 -
作者介绍
-
目录
Preface
Chapter 1: Introduction to Kernel Development
Environment setup
Getting the sources
Source organization
Kernel configuration
Build your kernel
Kernel habits
Coding style
Kernel structures allocation/initialization
Classes, objects, and OOP
Summary
Chapter 2: Device Driver Basis
User space and kernel space
The concept of modules
Module dependencies
depmod utility
Module loading and unloading
Manual loading
modprobe and insmod
/etc/modules-load.d/.conf
Auto-loading
Module unload
Driver skeletons
Module entry and exit point
init and exit attributes
Module information
Licensing
Module author(s)
Module description
Errors and message printing
Error handling
Handling null pointer errors
Message printing - printk0
Module parameters
Building your first module
The module's makefile
In the kernel tree
Out of the tree
Building the module
Summary
Chapter 3: Kernel Facilities and Helper Functions
Understanding container_of macro
Linked lists
Creating and initializing the list
Dynamic method
Static method
Creating a list node
Adding a list node
Deleting a node from the list
Linked list traversal
Kernel sleeping mechanism
Wait queue
Delay and timer management
Standard timers
Jiffies and HZ
Timers API
Timer setup initialization
Standard timer example
High resolution timers (HRTs)
HRT API
HRT setup initialization
Dynamic tick/tickless kernel
Delays and sleep in the kernel
Atomic context
Nonatomic context
Kernel locking mechanism
Mutex
Mutex API
Declare
Acquire and release
Spinlock
Spinlock versus mutexes
Work deferring mechanism
Softirqs and ksoftirqd
ksoftirqd
Tasklets
Declaring a tasklet
……
Chanter 4: Character Device Drivers
Chapter 5: Platform Device Drivers
Chaoter 6: The Conceot of Device Tree
Chapter 7: 12C Client Drivers
Chapter 8: SPI Device Drivers
Chapter 9: Regmap API - A Register Map Abstraction
Chapter 10: IIO Framework
Chapter 11: Kernel Memory Management
Chapter 12: DMA- Direct Memory Access
Chapter 13: Linux Device Model
Chapter 14: Pin Control and GPIO Subsystem
Chapter 15: GPIO Controller Drivers - gpio_chip
Chapter 16: Advanced IRQ Management
Chaoter 17: Inout Devices Drivers
Chapter 18: RTC Drivers
Chapter 19: PWM Drivers
Chapter 20: Regulator Framework
Chapter 21: Framebuffer Drivers
Chapter 22: Network Interface Card Drivers
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...