linux驱动开发学习步骤

转载 2013年12月05日 10:22:30
1. 学会写简单的makefile 


2. 编一应用程序,可以用makefile跑起来


3. 学会写驱动的makefile


4. 写一简单char驱动,makefile编译通过,可以insmod, lsmod, rmmod. 在驱动的init函
数里打印hello world, insmod后应该能够通过dmesg看到输出。


5. 写一完整驱动, 加上read, write, ioctl, polling等各种函数的驱动实现。 在ioct
l里完成从用户空间向内核空间传递结构体的实现。


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)做一遍。



转载自http://blog.chinaunix.net/uid-7747097-id-2562083.html

如何学习linux驱动开发

linux设备驱动开发,看起来是一份很高大上的职业,毕竟从事上层应用开发人员太多,而且门槛又不是特别高,而内核级开发从业人员要少得多,而且资料又较少。有许多刚刚接触到linux设备驱动开发的同仁会感觉...
  • hwunion
  • hwunion
  • 2014年11月30日 12:23
  • 844

分享Linux内核学习和驱动开发的经验

回复 1# shenlanyouyu  临时想起一些说一下吧: 1. 分享Linux内核学习和驱动开发的经验。 内核学习 Linux 内核功能越来越完善,如果没有充裕的...
  • ruanjianruanjianruan
  • ruanjianruanjianruan
  • 2015年10月07日 22:47
  • 4109

Ubuntu16.04学习总结

1、安装搜狗输入法:       看有的文章说搜狗输入法和Fcitx冲突,因此先移除Fcitx:       sudo apt remove fcitx*       sudo apt auto...
  • niuzhijun66
  • niuzhijun66
  • 2017年12月16日 20:55
  • 145

Linux驱动开发学习步骤

1. 学会写简单的makefile  2. 编一应用程序,可以用makefile跑起来  3. 学会写驱动的makefile 4. 写一简单char驱动,makefile...
  • wbgxx
  • wbgxx
  • 2011年08月30日 16:30
  • 312

linux驱动开发学习路线

结构、操作系统、体系结构、编译原理、计算机网络你全修过 我想大概可以分为4个阶段,水平从低到高 从安装使用=>linux常用命令=>linux系统编程=>内核开发阅读内核源码 其...
  • wowotoupi
  • wowotoupi
  • 2014年07月17日 09:00
  • 514

Linux驱动开发步骤

1、在Kconfig文件中添加选项,如下: config YS_QDEC tristate "YS_QDEC" help  ys_qdec 2、在Makefile文件中添加编译设置,如下: obj-$...
  • tomtntlili
  • tomtntlili
  • 2014年01月15日 10:50
  • 5500

Linux驱动开发学习的简单步骤

1. 学会写简单的makefile     2. 编一应用程序,可以用makefile跑起来    3. 学会写驱动的makefile    4. 写一简单char驱动,makefile编译通过,可以...
  • tony821224
  • tony821224
  • 2009年12月23日 21:39
  • 594

Linux经验总结:linux的入门学习流程(菜鸟发贴,仅供参考)(更新RHCE完结)

学习linux快一个多月了,当然我是在培训机构里学习,所有进度比较快(离不开马哥的解压缩式教导。。。),博客里很多同学留言问怎么学习LINUX,所以写下这篇文章。本着尽量避免枯燥的原则来学习LINUX...
  • deansrk
  • deansrk
  • 2011年08月18日 14:08
  • 5464

Linux设备驱动开发入门——Hello world

      近期做的工作主要有两个,一是将dvsdk_4中的video_copy项目移植到自己的板子上,在参考资料极其匮乏的情况下,本人继续发扬艰苦奋斗的作风和打不死的小强精神,终于将Omap3530...
  • liuqiqi677
  • liuqiqi677
  • 2011年06月20日 15:45
  • 5766

Linux驱动开发学习的一些必要步骤

Linux驱动开发学习的一些必要步骤
  • lishaman
  • lishaman
  • 2011年01月15日 23:53
  • 467
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux驱动开发学习步骤
举报原因:
原因补充:

(最多只允许输入30个字)