Linux设备驱动开发 pdf下载pdf下载

Linux设备驱动开发百度网盘pdf下载

作者:
简介:本篇提供书籍《Linux设备驱动开发》百度网盘pdf下载
出版社:浙江新华书店旗舰店
出版时间:2021-03
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

内容提要:
        本书讲解了Linux驱动开发的基础知识以及所用到的开发环境,全书分为22章,其内容涵盖了各种Linux子系统,包含内存管理、PWM、RTC、IIO和IRQ管理等,还讲解了直接内存访问和网络设备驱动程序的实用方法。在学完本书之后,读者将掌握设备驱动开发环境的概念,并可以从零开始为任何硬件设备编写驱动程序。 
    阅读本书需要具备基本的C语言程序设计能力,且熟悉Linux基本命令。本书主要是为嵌入式工程师、Linux系统管理员、开发人员和内核黑客而设计的。无论是软件开发人员,还是系统架构师或制造商,只要愿意深入研究Linux驱动程序开发,阅读本书后都将有所收获。

作者简介:
    约翰·马迪厄(John Madieu)是嵌入式Linux和内核研发工程师,居住在法国巴黎。他主要为自动化、运输、医疗、能源等领域的公司开发驱动程序并提供开发板支持包(Board Support Package,BSP)。他目前就职于法国公司EXPEMB,该公司专注于模块化计算机的电子开发板设计和嵌入式Linux解决方案。同时,他还是一位开源和嵌入式系统爱好者,坚信通过知识分享能够学到更多的知识。  
    他爱好拳击,接受过6年的专业训练,并开始提供培训课程。

目录:
OO章    内核开发简介 
    1.1    环境设置 
        1.1.1    获取源代码 
        1.1.2    内核配置 
        1.1.3    构建自己的内核 
    1.2    内核约定 
        1.2.1    编码风格 
        1.2.2    内核结构分配和初始化 
        1.2.3    类、对象、面向对象的编程 
    1.3    总结 
第2章    设备驱动程序基础 
    2.1    内核空间和用户空间 
        2.1.1    模块的概念 
        2.1.2    模块依赖 
        2.1.3    模块的加载和卸载 
    2.2    驱动程序框架 
        2.2.1    模块的入点和出点 
        2.2.2    模块信息 
    2.3    错误和消息打印 
        2.3.1    错误处理 
        2.3.2    处理空指针错误 
        2.3.3    消息打印——printk() 
    2.4    模块参数 
    2.5    构建OO个模块 
        2.5.1    模块的makefile 
        2.5.2    内核树内 
        2.5.3    内核树外 
        2.5.4    构建模块 
    2.6    总结 
第3章    内核工具和辅助函数 
    3.1    理解宏container_of 
    3.2    链表 
        3.2.1    创建和初始化链表 
        3.2.2    创建链表节点 
        3.2.3    添加链表节点 
        3.2.4    删除链表节点 
        3.2.5    链表遍历 
    3.3    内核的睡眠机制 
    3.4    延迟和定时器管理 
        3.4.1    标准定时器 
        3.4.2    高精度定时器(HRT) 
        3.4.3    动态TickTickless内核 
        3.4.4    内核中的延迟和睡眠 
    3.5    内核的锁机制 
        3.5.1    互斥锁 
        3.5.2    自旋锁 
    3.6    工作延迟机制 
        3.6.1    Softirq和Ksoftirqd 
        3.6.2    Tasklet 
        3.6.3    Tasklet调度 
        3.6.4    工作队列 
        3.6.5    内核线程 
    3.7    内核中断机制 
        3.7.1    注册中断处理程序 
        3.7.2    下半部的概念 
    …… 
第4章    字符设备驱动程序 
第5章    平台设备驱动程序 
第6章    设备树的概念 
第7章    I2C客户端驱动程序 
第8章    SPI设备驱动程序 
第9章    Regmap API——寄存器映射抽象 
OO0章    IIO框架 
OO1章    内核内存管理 
OO2章    DMA——直接内存访问 
OO3章    Linux设备模型 
OO4章    引脚控制和GPIO子系统 
OO5章    GPIO控制器驱动程序——gpio_chip 
OO6章    OOIRQ管理 
OO7章    输入设备驱动程序 
OO8章    RTC驱动程序 
OO9章    PWM驱动程序 
第20章    调节器框架 
第21章    帧缓冲驱动程序 
第22章    网络接口卡驱动程序