《linux设备驱动开发详解》第二版

本书详述了Linux设备驱动开发的理论与实践,包括自旋锁、信号量、中断处理、内存I/O访问、字符及块设备驱动、网络设备、USB与PCI设备等内容,适合Linux开发人员和嵌入式工程师参考。
摘要由CSDN通过智能技术生成

作者:宋宝华

出版社:人民邮电出版社

出版日期:2010-11-01

定价:88.00元

页码:632页

开本:16

内容简介:

本书是一本介绍Linux设备驱动开发理论、框架与实例的书,本书基于LDD6410开发板,以Linux 2.6版本内核为蓝本,详细介绍自旋锁、信号量、完成量、中断顶/底半部、定时器、内存和I/O映射以及异步通知、阻塞I/O、非阻塞I/O等Linux设备驱动理论;字符设备、块设备、TTY设备、I2C设备、LCD设备、音频设备、USB设备、网络设备、PCI设备等Linux设备驱动的架构和框架中各个复杂数据架构和函数的关系,并讲解了Linux驱动开发的大量实例,使读者能够独立开发各类Linux设备驱动。
  本书内容全面,实例丰富,操作性强,语言通俗易懂,适合广大Linux开发人员、嵌入式工程师参考使用。

目录:

第1篇 Linux设备驱动入门

第1章 Linux设备驱动概述及开发环境构建 2
1.1 设备驱动的作用 3
1.2 无操作系统时的设备驱动 3
1.3 有操作系统时的设备驱动 5
1.4 Linux设备驱动 6
1.4.1 设备的分类及特点 6
1.4.2 Linux设备驱动与整个软硬件系统的关系 7
1.4.3 Linux设备驱动的重点、难点 8
1.5 Linux设备驱动开发环境构建 8
1.5.1 PC上的Linux环境 8
1.5.2 LDD6410开发板 11
1.5.3 工具链安装 13
1.5.4 主机端nfs和tftp服务安装 14
1.5.5 源代码阅读和编辑 14
1.6 设备驱动Hello World:LED驱动 15
1.6.1 无操作系统时的LED驱动 15
1.6.2 Linux下的LED驱动 16
1.7 全书结构 19

第2章 驱动设计的硬件基础 21
2.1 处理器 22
2.1.1 通用处理器 22
2.1.2 数字信号处理器 23
2.2 存储器 25
2.3 接口与总线 29
2.3.1 串口 29
2.3.2 I2C 30
2.3.3 USB 31
2.3.4 以太网接口 33
2.3.5 ISA 34
2.3.6 PCI和cPCI 35
2.4 CPLD和FPGA 38
2.5 原理图分析 41
2.5.1 原理图分析的内容 41
2.5.2 原理图的分析方法 41
2.6 硬件时序分析 43
2.6.1 时序分析的概念 43
2.6.2 典型硬件时序 44
2.7 芯片手册阅读方法 45
2.8 仪器仪表使用 48
2.8.1 万用表 48
2.8.2 示波器 48
2.8.3 逻辑分析仪 50
2.9 总结 52

第3章 Linux内核及内核编程 53
3.1 Linux内核的发展与演变 54
3.2 Linux 2.6内核的特点 55
3.3 Linux内核的组成 56
3.3.1 Linux内核源代码目录结构 56
3.3.2 Linux内核的组成部分 57
3.3.3 Linux内核空间与用户空间 60
3.4 Linux内核的编译及加载 60
3.4.1 Linux内核的编译 60
3.4.2 Kconfig和Makefile 62
3.4.3 Linux内核的引导 69
3.5 Linux下的C编程特点 71
3.5.1 Linux编码风格 71
3.5.2 GNU C与ANSI C 73
3.5.3 do{ }while(0) 77
3.5.4 goto 78
3.6 总结 79

第2篇 Linux设

linuxdriver_code_tool .....................\03 .....................\..\2.6内核升级工具 .....................\..\...............\device-mapper-1.00.19-2.i386.rpm .....................\..\...............\lvm2-2.00.25-1.01.i386.rpm .....................\..\...............\mkinitrd-4.2.0.3.tar.tar .....................\..\...............\module-init-tools-3.2.2.tar.bz2 .....................\..\...............\modutils-2.4.5-1.src.rpm .....................\04 .....................\..\内核模块参数范例 .....................\..\................\book.c .....................\..\内核模块导出符号 .....................\..\................\export_symb.c .....................\..\最简单的内核模块 .....................\..\................\hello.c .....................\05 .....................\..\udev源代码 .....................\..\..........\udev-114.tar.gz .....................\06 .....................\..\globalmem驱动 .....................\..\.............\globalmem.c .....................\..\linux内核container_of宏_Linux技术文章_Linux_操作系统.mht .....................\..\【转】container_of函数简介 - 嵌入式linux - 斯是陋室,惟吾德馨.htm .....................\..\【转】container_of函数简介 - 嵌入式linux - 斯是陋室,惟吾德馨_files .....................\..\..................................................................\bg_art_bottom.gif .....................\..\..................................................................\bg_art_left.gif .....................\..\..................................................................\bg_art_left_bottom.gif .....................\..\..................................................................\bg_art_left_top.gif .....................\..\..................................................................\bg_art_right.gif .....................\..\..................................................................\bg_art_right_bottom.gif .....................\..\..................................................................\bg_art_right_top.gif .....................\..\..................................................................\bg_art_top.gif .....................\..\..................................................................\bg_menu.gif .....................\..\..................................................................\comment.htm .....................\..\..................................................................\comment_files .....................\..\..................................................................\.............\base.css .....................\..\..................................................................\.............\index.css .....................\..\..................................................................\.............\num.png .....................\..\..................................................................\img_menu_left.gif .....................\..\..................................................................\index.css .....................\..\..................................................................\tophem1.gif .....................\..\..................................................................\userstar.gif .....................\..\包含2个globalmem设备驱动 .....................\..\..........................\globalmem_two.c .....................\07 .....................\..\含并发控制的globalmem驱动 .....................\..\.........................\globalmem_lock.c .....................\08 .....................\..\globalfifo驱动 .....................\..\..............\globalfifo.c .....................\..\poll应用程序范例 .....................\..\................\pollmonitor.c .....................\09 .....................\..\异步通知应用程序范例 .....................\..\....................\asyncmonitor.c .....................\..\支持异步通知的globalfifo .....................\..\........................\globalfifo_async.c .....................\10 .....................\..\S3C2410实时钟驱动 .....................\..\.................\s3c2410-rtc.c .....................\..\秒设备驱动与应用程序 .....................\..\....................\second.c .....................\..\....................\second_test.c .....................\11 .....................\..\DMA范例 .....................\..\.......\3c505.c .....................\..\.......\3c505.h .....................\..\.......\dma.h .....................\..\静态映射范例 .....................\..\............\mach-smdk2440.c .....................\12 .....................\..\NVRAM驱动 .....................\..\.........\generic_nvram.c .....................\..\平台设备 .....................\..\........\devs.c .....................\..\看门狗驱动 .....................\..\..........\s3c2410_wdt.c .....................\..\触摸屏驱动 .....................\..\..........\作为input设备 .....................\..\..........\.............\s3c2410_ts.c .....................\..\..........\.............\s3c2410_ts.h .....................\..\..........\作为普通字符设备 .....................\..\..........\................\s3c2410-ts.c .....................\13 .....................\..\IDE驱动 .....................\..\.......\ide-disk.c .....................\..\.......\ide-h8300.c .....................\..\RAMDISK驱动 .....................\..\...........\rd.c .....................\14 .....................\..\S3C2410串口驱动 .....................\..\...............\regs-gpio.h .....................\..\...............\regs-serial.h .....................\..\...............\s3c2410.c .....................\..\串口核心层 .....................\..\..........\serial_core.c .....................\..\..........\serial_core.h .....................\15 .....................\..\S3C2410 I2C主机驱动
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值