免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 11858 | 回复: 6
打印 上一主题 下一主题

《深入Linux设备驱动程序内核机制》第2章 字符设备驱动 [复制链接]

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
1 [报告]
发表于 2012-03-19 21:39 |显示全部楼层
1.中间扯FS扯得有点远了。
2.动态生成结点的机制演变了几次。开始是devfs,后来干掉了devfs只用uevent,现在是devtmpfs与uevent同时存在?
3.说穿了这还是在追代码,同类的书宋宝华之流写了好几本。敢不敢再站高点玩味一下?就像我现在看勋伯格的和声学一样,一般和声学中给出被视为理所当然的教条、初级概念及规矩,勋伯格这种大师级人物敢去解释、追本溯源,讨论其由来并且说得一针见血(甚至过头地上升到哲学和美学)。各个领域的初级概念往往由大师来解读最精彩。艺术家天生有种倾向,不知工程师能否写出随笔一般探讨内核的文章。

PS. 以前看代码的时候就很在意为什么要用两种数据结构来记录设备号。

PS2. 最近有啥初级职位内推机会么?

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
2 [报告]
发表于 2012-03-19 23:04 |显示全部楼层
本帖最后由 tempname2 于 2012-03-20 07:47 编辑

其实是想说你“综述”也扯得太远了。

看过一个MIT老师讲体系的视频,很精彩,讲到一半的时候老师突然问,我们刚刚讲的这些是为了解决什么问题?过了半天才有一个人答上来。老师然后说,有时候我们太过专注于问题的解决,以至于到最后忘了最初要解决的是什么问题。情景分析类的书籍最容易让人陷入这种窘境,一条线拉的太长,看的人步步为营,深入其中,偶然一抬头,奇怪,怎么走到这里来了。

=================================

有一段时间应该是只有uevent没有devtmpfs的,记得阿三那本书里有些例子还要写uevent规则才能生成结点。而且引入devtmpfs最强有力的优势应该是减少对用户空间的依赖以及加快启动速度,在嵌入式环境下这是很有用的,除此之外devtmpfs就跟老的devfs一样了。不知道在不在意这些因素的环境下,是不是仍然主要靠uevent。

=================================

你发的职位都很正点啊,可惜太高端了(内推费也不菲吧),动不动就5年经验7经验。要是有些对年限要求较少的机会就好了。


论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
3 [报告]
发表于 2012-03-20 11:51 |显示全部楼层
校招……尼玛忘了还有这一招……难得离交大这么近……可惜现在晚了点…… time flies,去年就是这个时候出来找事的……不能说了……再说………又是满腹牢骚

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
4 [报告]
发表于 2012-03-20 12:59 |显示全部楼层
回复 8# MagicBoy2010

The art of unix programming,或者以前在CU上看过的一篇讲x86和ARM的文章,就是我期待的那种漫漫而谈的感觉。如果能这样很严肃地去探究内核里的基本元素……

现在很多看起来理所当然的东西,都是前人很严肃地探究出来的。我之前提过的视频里讲过,最早的CPU只有现在所谓的“直接寻址”,想写点灵活点的循环,只得写出能自我修改的代码,所以才会有“解析某条指令编码,提取其中表地址的部分”这样在现在看起来很荒唐的指令。后来,一个很聪明的人才想出了index register,也就是Intel所谓"寄存器间接寻址"或者"基址变址寻址"之类的。这些东西,至少我在其它地方没有看过。内核,或者扩大到操作系统,里的各个元素,是不是也有这种故事呢?其背后的逻辑可否拿出来侃一侃呢?

代码是用来解决问题的。曾经和对Linux不熟但经验丰富的工程师合作,他们对硬件很熟,开门就问了很多直击要害的问题,我却要想一下才能回答出来--因为我平时只是漫无边际地去看代码,有时候能总结出来它做了什么事,或者潜意识里留下一些印象,却不曾从上往下地想,不曾被需求驱使去思考。

写代码因为外界需求,为了解决问题,才写出了代码。看代码的人却只看到了代码,而没有看到背后的需求和原始问题。善于总结的人多少能看出些端倪,如果有材料能拧一下总线岂不乐哉?不要告诉我繁杂细节,不要引用代码佐证某句话;告诉我问题是什么,问题的特性,解决问题的难点,解决办法的历史及演化,演化背后的逻辑。

这不是写给初学者看,而是写给入门者看。我感觉一年左右经验,像我这样,算是入门了。中国只有给小孩看的动画,日本有给各个年龄层次看的动画。入门的书籍够多了,有一些给其他“年龄”层次看的书就好了。

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
5 [报告]
发表于 2012-03-21 12:29 |显示全部楼层
要有我肯定买

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
6 [报告]
发表于 2012-03-21 14:51 |显示全部楼层
你似乎误会我的意思了。演化进程之所以精彩,一部分原因是最初的解决办法往往解决明了,直入主题,可以更好的看清问题。二是演化的进程让能让人不断重新认识问题。三是一些难以理解的东西,往往在历史中才能找到答案。这些是辅助性的,我只是想借此更加清楚地了解“代码想解决什么问题”。所以,我不是着重强调“演化史”,而是想说要“更靠近问题”。

但学习过程也不可能完全从“问题”开始,比如那些协议,背景那么庞大。即使是简单的东西,从“需求”开始往上走也不现实。我自己的体会是,分两阶段。第一阶段按大多数参考书籍安排的来;第二阶段,由于基本了解了是面对是什么事,可以更主动更地去靠近问题。即使现在我已经很清晰地有这些意识,平时看书还是时不时被牵着鼻子走。主动思考的习惯难以培养。

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
7 [报告]
发表于 2012-11-12 23:03 |显示全部楼层
这么多人求下载,让作者情何以塂啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP