当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 6 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 学习Linux的困惑
帖子发表于 : 2009-10-12 13:31 

注册: 2009-10-12 13:23
帖子: 7
送出感谢: 0 次
接收感谢: 0 次
各位达人:
小弟我想研究Linux驱动开发,请问你们有什么好的学习路线吗?我不知道驱动开发大概要学些什么东西,内核,和硬件都要学吗?希望高手们能给我个提示,非常感谢


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 学习Linux的困惑
帖子发表于 : 2009-10-12 20:30 

注册: 2009-06-27 23:33
帖子: 37
送出感谢: 0 次
接收感谢: 0 次
我觉得,可以从嵌入式的驱动入手。相对简单,而且比较具体。毕竟PC上的驱动基本都很完善,而且PC的系统太过复杂和庞大。
硬件肯定要懂的。首先硬件data sheet你的看的懂,控制寄存器,状态寄存器各个位的意义,工作原理和操作方法都要知道,其次要知道怎么通过读/写这些寄存器来控制硬件和查询状态。
内核基本的概念要知道,特别是和驱动联系较紧密的内存分配,中断处理,定/计时间,I/O端口控制什么要熟悉。


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 学习Linux的困惑
帖子发表于 : 2009-10-13 10:02 

注册: 2007-08-09 0:23
帖子: 62
地址: 广东
送出感谢: 0 次
接收感谢: 2
论坛那么同类的文章为什么不先搜索搜索再问呢?
懒惰与不富于主动思考。。。


_________________
请大家多多指教。michaelbmg@gmail.com
BLOG:http://blog.sina.com.cn/toddbmg


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 学习Linux的困惑
帖子发表于 : 2009-10-13 10:12 

注册: 2009-10-12 13:23
帖子: 7
送出感谢: 0 次
接收感谢: 0 次
月光林地的猫 写道:
我觉得,可以从嵌入式的驱动入手。相对简单,而且比较具体。毕竟PC上的驱动基本都很完善,而且PC的系统太过复杂和庞大。
硬件肯定要懂的。首先硬件data sheet你的看的懂,控制寄存器,状态寄存器各个位的意义,工作原理和操作方法都要知道,其次要知道怎么通过读/写这些寄存器来控制硬件和查询状态。
内核基本的概念要知道,特别是和驱动联系较紧密的内存分配,中断处理,定/计时间,I/O端口控制什么要熟悉。

我大致明白了。。。。非常感谢


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 学习Linux的困惑
帖子发表于 : 2009-10-13 10:14 

注册: 2009-10-12 13:23
帖子: 7
送出感谢: 0 次
接收感谢: 0 次
toddbmg 写道:
论坛那么同类的文章为什么不先搜索搜索再问呢?
懒惰与不富于主动思考。。。

你说的很对,我赞同你!


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 学习Linux的困惑
帖子发表于 : 2009-10-13 10:56 

注册: 2007-08-09 0:23
帖子: 62
地址: 广东
送出感谢: 0 次
接收感谢: 2
我的经历是:

学习是一个实践与看书互相反馈的过程,不要忽视实践练习,
如果你想学驱动,必须按步走
1。学好C
2。学习<LINUX程序设计>第三版,你首先必须是一个实实在在的程序员。不要连信号量是什么和怎么用都不了解就去学驱动,那真是笑大口。
3。<LINUX设备驱动程序>第三版,通过驱动程序才有机会在代码层次上找到内核的入门。学驱动与内核当然你必须学过单片机或微机原理。
4。<Linux内核设计与实现>(第二版) ,至此,看完这本书,已经对内核有了一个深刻的认识。
5。因为前面两本书已经联系实际地让你接触了一部分的内核代码。给你搭起了内核的架构,如果你更深入学习内核,那么可以专心学习一个体系结构的汇编如ARM,然后删除所有不相关的体系架构及其包括其include下的头文件,删除相当部分不关心的硬件驱动程序,删除大多数不感兴趣的文件系统,这样看内核代码并不恐怖!


_________________
请大家多多指教。michaelbmg@gmail.com
BLOG:http://blog.sina.com.cn/toddbmg


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 6 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译