返回信息流发信人: ParadiseLost (AbuseyourdNa), 信区: Linux
标 题: Re: 求达人说一下linux驱动开发的学习步骤。。。
发信站: 北邮人论坛 (Mon May 5 01:15:25 2008), 站内
1. 学会写简单的makefile
2. 编一应用程序,可以用makefile跑起来
3. 学会写驱动的makefile.
4. 写一简单char驱动,makefile编译通过,可以insmod, lsmod, rmmod. 在驱动的init函数里打印hello world, insmod后应该能够通过dmesg看到输出。
5. 写一完整驱动, 加上read, write, ioctl, polling等各种函数的驱动实现。 在ioctl里完成从用户空间向内核空间传递结构体的实现。
6. 写一block驱动, 加上read,write,ioctl,poll等各种函数实现。
7. 简单学习下内存管理, 这个是最难的,明白各种memory alloc的函数实现细节。这是linux开发的基本功
8. 学习锁机制的应用,这个不是最难的但是最容易犯错的,涉及到很多同步和并发的问题。
9. 看内核中实际应用的驱动代码。 你会发现最基本的你已经知道了, 大的框架都是一样的, 无非是read, write, ioctl等函数的实现, 但里面包含了很多很多细小的实现细节是之前不知道的。 这时候就要考虑到很多别的问题而不仅仅是基本功能的实现。
推荐您看2.6.20中integrated的一个驱动 kvm, 记得是在driver/lguest下,很好玩的, 就是linux下的虚拟机驱动, 代码不长,但功能强大。有能力的可以自己写一操作系统按照要求做成磁盘镜像加载到虚拟机中, 然后客户机可以有自己的4G虚拟地址空间。
10. 看完驱动欢迎您进入Linux kernel学习中来。
最简单的方法,跟着ldd(linux devive driver)做一遍。
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #8916同步于 2010/6/21
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖
求达人说一下linux驱动开发的学习步� yegle
hobby
2010/6/21镜像同步7 回复
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
看过部分,我师兄曾经就说过:这本书不太适合一点基础没有的初学者,最好有过一些驱动开发经验,看这书的时候会弄明白很多以前迷糊的东西。by other words, 这书值得多看几遍 :)
PS:我觉得简单来说,你能在这本书中找到
1、很多常见问题的解决方法,而是是相对全面的solution。
2、驱动实现背后的原理(很多时候上网找的资料总是在描述在某种特定环境下该怎么做,而忽略了对于其背后原理的分析以及通用方法的讨论)
【 在 UZ 的大作中提到: 】
: ldd这书谁读过?评价一个?
谢谢hobby,我昨天就查了下这书,居然是免费开放的。写driver的确很诱人,记得和一个amd的大哥哥(做内存部分硬件的)聊天的时候他就和我说写driver的人最抢手~
【 在 hobby 的大作中提到: 】
: 看过部分,我师兄曾经就说过:这本书不太适合一点基础没有的初学者,最好有过一些驱动开发经验,看这书的时候会弄明白很多以前迷糊的东西。by other words, 这书值得多看几遍 :)
: PS:我觉得简单来说,你能在这本书中找到
: 1、很多常见问题的解决方法,而是是相对全面的solution。
: ...................
那给大家发个华清远见的培训资料吧。
有点年头了,将就着看吧。
【 在 hobby 的大作中提到: 】
: 发信人: ParadiseLost (AbuseyourdNa), 信区: Linux
: 标 题: Re: 求达人说一下linux驱动开发的学习步骤。。。
: 发信站: 北邮人论坛 (Mon May 5 01:15:25 2008), 站内
: ...................
附件(1.4MB)
呵呵 不客气
用的越久,越发现linux有很多很多的闪光点
这个帖子也是昨天翻linux版块精华区看到的,话说也是昨天才知道linux可以用netcat轻松的在局域网内传文件和用vim打开压缩包查看文本,天天有收获啊~
【 在 UZ 的大作中提到: 】
: 谢谢hobby,我昨天就查了下这书,居然是免费开放的。写driver的确很诱人,记得和一个amd的大哥哥(做内存部分硬件的)聊天的时候他就和我说写driver的人最抢手~
【 在 hobby 的大作中提到: 】
: 呵呵 不客气
: 用的越久,越发现linux有很多很多的闪光点
: 这个帖子也是昨天翻linux版块精华区看到的,话说也是昨天才知道linux可以用netcat轻松的在局域网内传文件和用vim打开压缩包查看文本,天天有收获啊~
: ...................
哇塞 长见识了
以后有这样的事 多上来分享下啊 哈哈