首页 > > > 学习Linux内核和驱动开发有终南捷径吗?欢迎来辩!
话题背景
这是一个连阅读都被碎片化的时代,在这样一个时代,人们趋向于激进、浮躁。内心的不安宁使我们极难静下心来研究什么。许许多多的Linux工程师,他们的 简历书写着“精通”Linux内核,有多年的工作经验,而他们的“精通”却只是把某个寄存器从0改成1,从1改成0的不断重复;许许多多的Linux工程 师终日埋头苦干,敲打着自己的机器和电路板,却从未冷静下来思考,并不断重构和升华自己的知识体系。
Linux内核的版本更新达上千个,代码规模不断增长,平均每个版本的新增代码有4万行左右。在源代码的10个主要子目录中,驱动程序的代码量呈线性增 长趋势。Linux各个子系统之间的关系错综复杂,系统整体规模和复杂性分别呈超线性和接近线性增长趋势,drivers和arch等模块的快速变化是引 起系统复杂性增加的主因。设备驱动程序是连接计算机软件和硬件的纽带和桥梁,开发者在嵌入式操作系统的开发移植过程中,有将近70%~80%的精力都用在 了驱动程序的开发与调试方面。这就对设备驱动程序开发人员提出了极高的要求。开发者不仅要同时具备软件和硬件的知识和经验,而且还要不断地学习、更新自 己,以便跟上嵌入式系统日新月异的发展。在代码量最多的驱动程序中,有什么规律可循?最根本的又是什么?学习Linux内核和驱动开发有捷径吗?欢迎大家 参与讨论,分享Linux内核和驱动开发的经验。
从以下话题中任选一个或多个话题参与讨论,这次讨论的话题内容不限于下面罗列的话题。
1. 分享Linux内核学习和驱动开发的经验。
2. 您觉得Linux驱动开发的难点是什么,有什么好的方法来克服?
3. Linux内核有上百个驱动子系统,你研究过内核各种驱动子系统的共性,层次结构设计吗?分享学习一个Linux内核子系统的经验,例如USB、I2C、HID等driver。
4. 您深入研究过Linux设备驱动模型,关注过Linux内核驱动的设计思想吗?
5. Android系统是基于Linux内核的,传统的Linux驱动开发和Android驱动开发有什么区别?
2015-08-17至2015-09-15
活动结束后将选取5名讨论精彩的童鞋,每人赠送一本《Java并发编程的艺术》作为奖励。
活动结束后将选取4名讨论精彩的童鞋,每人赠送一本《Linux设备驱动开发详解:基于最新的Linux 4.0内核》图书作为奖励。

作者: 宋宝华
丛书名:电子与嵌入式系统设计丛书
出版社:机械工业出版社
出版日期:2015 年8月
开本:16开
版次:1-1
本书首先介绍Linux设备驱动的基础。第1章简要地介绍了设备驱动,并从无操作系统的设备驱动引出了Linux操作系统下的设备驱动,介绍了本书所基 于的开发环境。第2章系统地讲解了Linux驱动工程师应该掌握的硬件知识,为工程师打下Linux驱动编程的硬件基础,详细介绍了各种类型的CPU、存 储器和常见的外设,并阐述了硬件时序分析方法和数据手册阅读方法。第3章将Linux设备驱动放在Linux 2.6内核背景中进行讲解,说明Linux内核的编程方法。由于驱动编程也在内核编程的范畴,因此,这一章实质是为编写Linux设备驱动打下软件基础。
·END·
ChinaUnix
即日起,参与有效回帖前5名即可获得30积分奖励
http://bbs.chinaunix.net/
你的同行伙伴都在通过ChinaUnix探讨技术问题
ChinaUnix技术交流群:QQ203848540 微信:na973966431
⬇️ 点击 “阅读原文” 即可进入CU社区参与话题讨论哦
原文作者:;如有侵权,请联系管理员删除。