linux设备驱动程序学习笔记(序)

作者重新开始研究Linux设备驱动开发,并使用FL2440开发板进行实践。基于S3C2440芯片及Linux 2.6.35内核,采用arm-linux-gcc4.3.2作为交叉编译器。分享了驱动开发过程中的心得与经验。

 之前玩过一段时间驱动,毕业工作了就没碰过,前几天看到满是灰尘的开发板,想重新再玩玩,发现以前好多资料都没了,这次开个博,记录一下,当个笔记,也能给其他志同道合的人做个参考。

我是参考宋宝华的《linux设备驱动开发详解》来的,书的内容不错,就是代码有点老,而且实际编译中有很多错误。我后面发上来的例子都是再我的开发板上经过测试通过的程序。

我的板子型号是FL2440,芯片是S3C2440。linux内核版本2.6.35,交叉编译环境arm-linux-gcc 4.3.2

移植再板子上的是yaffs的文件系统,busybox版本1.20.2

大致情况是这样,之前很多零碎的准备工作,包括移植系统,挂载nfs等准备在另一组博客里写,现在就先写驱动这一块。

顺便说一下感受,我发现很多东西,以前没搞懂,再次拿起书看得时候居然救豁然开朗了,所以说技术这东西都是一点一滴的积累,积累多了,,很多问题自然就悟出来了。


Linux设备驱动程序是用于控制和管理硬件设备的软件模块。学习Linux设备驱动程序可以帮助开发人员理解和掌握Linux内核的工作原理,以及如何编写和调试设备驱动程序。 以下是一些学习Linux设备驱动程序的笔记和建议: 1. 理解Linux设备模型:Linux设备模型是一种用于管理设备的框架,它提供了一种统一的方式来表示和操作设备。学习Linux设备模型可以帮助你理解设备的注册、初始化和销毁过程。 2. 学习字符设备驱动程序:字符设备是一种以字节为单位进行读写的设备,如串口、终端等。学习字符设备驱动程序可以帮助你了解字符设备的打开、关闭、读写等操作,并学习如何实现设备文件的注册和操作。 3. 学习块设备驱动程序:块设备是一种以块为单位进行读写的设备,如硬盘、闪存等。学习块设备驱动程序可以帮助你了解块设备的分区、缓存、IO调度等操作,并学习如何实现块设备的注册和操作。 4. 学习中断处理:中断是设备向处理器发送信号的一种机制,用于通知处理器设备的状态变化。学习中断处理可以帮助你了解中断的注册、处理和释放过程,并学习如何编写中断处理程序。 5. 学习设备驱动程序的调试技巧:设备驱动程序的调试是一个重要的技能,可以帮助你快速定位和解决问题。学习设备驱动程序的调试技巧可以帮助你理解和使用调试工具,如 printk、kprobe等。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值