驱动开发
文章平均质量分 86
huzm08
这个作者很懒,什么都没留下…
展开
-
Linux驱动编程 step-by-step (二)
简单字符设备驱动 1、主次设备号 主设备号标识设备连接的的驱动,此设备好由内核使用,标识在相应驱动下得对应的设备 在linux中设备号是一个32位的dev_t类型 typedef __u32 __kernel_dev_t; typedef __kernel_dev_t dev_t; crw------- 1 root root 10, 1 Apr 1转载 2011-11-15 08:53:41 · 289 阅读 · 0 评论 -
Linux驱动编程 step-by-step (三) .
字符设备中 重要的数据结构 大部分字符驱动设计三个重要的数据结构 struct file_operations struct file struct inode 一、文件操作 在之前的一篇文章中已经有介绍了如何去生情字符设备设备号,但是没有做任何的工作,也就只能写一个不能工作的字符设备; struct file_operations 结构域用来转载 2011-11-15 08:54:53 · 237 阅读 · 0 评论 -
Linux驱动编程 step-by-step (一)
第三次看了LDD3了(虽然现在已经是kernel3.0但从这本书上还是能学到很多) 每次都有一些收获 现在终于能够写一些代码了 驱动程序的作用: 简单来说 驱动程序就是使计算机与设备通信的特殊的代码,在作单片机时候(无OS)我们自己定义接口及自定义的结构来操作相关硬件,而在有OS的模式下我们操作的硬件是去实现对应的接口(这些接口是已定义好的,我们需要实现这些接口)而无需自己定义接口,这样既能正转载 2011-11-15 08:52:06 · 251 阅读 · 0 评论 -
Linux驱动编程 step-by-step (四)
似乎每一章介绍的内容比较少,但学习是一个循序渐进的过程,不在于一天学多少,重要的一天能真正的学懂多少,所以我主张一步一步来,从多个渠道去学习知识,实现互补。 本节测试代码传到此处了:char_step1 大家可以下载测试一下。 字符设备的注册与设备节点的自动创建 cdev 结构 内核内部使用struct cdev来表示一个字符设备 struct cdev { struc转载 2011-11-15 08:56:18 · 282 阅读 · 0 评论 -
Linux驱动编程 step-by-step (五)
2011-11-11 00:35 3206人阅读 评论(13) 收藏 举报 主要的文件操作方法实现 文件操作函数有很多的操作接口,驱动编程需要实现这些接口,在用户编程时候系统调用时候会调用到这些操作 view plaincopy to clipboardprint? struct file_operations { ... loff转载 2011-11-15 08:57:25 · 258 阅读 · 0 评论 -
Linux驱动编程 step-by-step (六) .
说点上节没有讲完的话题 用户地址检测 简单模块调试 以及一些杂项 检测用户空间地址的有效性 上一节中提到在read write时候要检测用户空间传递的参数地址是否是有效地址,有的内核函数会自行检测,但是在调用轻量级的内核函数时候,就可能不去检测用户空间的地址是否有效,如果此时用户无传递一个无效地址,而内核函数去操作了它,这时棘手的问题出现了,轻则内核oops 关机重启就OK了,在特别严重转载 2011-11-15 08:58:29 · 338 阅读 · 0 评论