2007年11月
register_blkdev,注册一个块设备.这个函数也算是骨灰级的了,N年前就有这个函数了.那时候我曾天真的以为这个世界上只有三种设备,块设备,字符设备,网络设备.后来发现世界并非那么简单,生活也并非那么简单,尽管,生,很简单,活,很简单,但生活却不简单.阅读全文>
发表于 @ 2007年11月30日 17:53:00|评论(loading...)|编辑
有一天身子问心:"我要是痛了,医生会给我治,你痛了谁给你治啊?"于是心说:"我只能自己给自己治."也许因为这样,每个人都有一个治疗自己心中伤痛的方法.喝酒,唱歌,发火,或哭或笑,跟朋友诉苦,共旅行,跑马拉松,最差的一种方法是逃避这种心痛.我的方法是写这种伪技术的文章.阅读全文>
发表于 @ 2007年11月29日 21:28:00|评论(loading...)|编辑
经过上节的头脑风暴,咱们明白了,PCI这边儿入口虽然多,但还是有规律可循有法可依的,内核启动时,得一个一个严格的按照顺序调用它们来完成PCI子系统的初始化,不能乱了章法。这点儿并不是所有人都会明白的,比如前段儿时间厦门那出儿卖房事件里宣称“我海关有人,谁敢动我”的那位海关老婆,她就觉得有法是不如有人的。阅读全文>
发表于 @ 2007年11月25日 22:59:00|评论(loading...)|编辑
李小璐脱了,周迅脱了,汤唯脱了.下一个脱的是谁?
答案不是林志玲,不是徐静蕾,而是QH.
阅读全文>
发表于 @ 2007年11月24日 23:30:00|评论(loading...)|编辑
现在让我们来关注一下fsbr.尽管之前就FSBR本身已经说过了,但是代码中出现了很多关于fsbr的变量以及函数.如果不来梳理一下,恐怕你和我一样,仍然感到无限困惑,无限茫然.那么让我们点亮心灵的阿拉丁神灯,共同穿越这代码的迷朦.阅读全文>
发表于 @ 2007年11月24日 23:27:00|评论(loading...)|编辑
你可以重复初恋,却不能重复热情.你可以重复后悔,却重复不了最爱.你可以重复调用这个函数,却重复不了其上下文.阅读全文>
发表于 @ 2007年11月22日 17:31:00|评论(loading...)|编辑
不是所有的人都拥有孤独,不是所有的青春都是瑰丽无比,不是所有的开始都有美丽的结局,不是所有的憧憬都有美丽的旅程,不是所有的忧伤都有无心的伤害,不是所有的沉默都有宁静的心,不是所有的PCI设备都具有电源管理的能力.阅读全文>
发表于 @ 2007年11月22日 17:29:00|评论(loading...)|编辑
在Root Hub醒来的刹那,天已经暗淡,窗外的树木早已在冬天离去,带着黄莺优美的歌声和秋季的落英缤纷,Root Hub明白自己应该开始工作了,所以在这个函数中,uhci->rh_state会被设置为UHCI_RH_RUNNING.阅读全文>
发表于 @ 2007年11月22日 17:26:00|评论(loading...)|编辑
道儿上混的人都知道,变态的代码和偷车贼都是我们生活中不得不应对的很平常的一部分。说到这里你应该能够猜得出,接下来咱们就要看具体的代码了。阅读全文>
发表于 @ 2007年11月20日 15:44:00|评论(loading...)|编辑
现在俺决定,下次望见月亮时,俺要自豪的在心里默默的呼喊一下:月亮,我们来了!作为热身,借这地儿俺也要呼喊一下:PCI,我们来了!虽说俺都不记得上次望见月亮是哪年哪月的事儿了,但是PCI总归是就在眼前的。阅读全文>
发表于 @ 2007年11月16日 16:51:00|评论(loading...)|编辑
车上的乘客大家请注意,下一站车上将上来几个小偷,大家一定要看管好自己的钱包和随身携带的物品.
——东北某报记者在葫芦岛听到公共汽车售票员这样提示.阅读全文>
发表于 @ 2007年11月15日 21:55:00|评论(loading...)|编辑
如果失败的人生可以F5,如果莫名的悲伤可以DEL;
如果逝去的岁月可以CTRL+C,如果甜蜜的往事可以CTRL+V;
如果一切都可以CTRL+ALT+DEL,那么我们所有的故事是不是永远都不会ALT+F4?阅读全文>
发表于 @ 2007年11月15日 17:50:00|评论(loading...)|编辑
正是通过这幅图,我们才真正体会到了skelqh这个数组的意义和价值,没有它们构建的基础框架,如果不是这11个元素像人民币一样的坚挺,真正的qh根本就没有办法建立,根本就没有办法连接起来,其它qh对skelqh的依赖,就好比台湾贸易对中国大陆的依赖,就好比糖尿病人对胰岛素的依赖,毫无疑问,在uhci-hcd中提出使用skelqh这个数组是一个无比英明的决定.尽管有人觉得skelqh的存在浪费了内存,而且搞得代码看上去复杂了许多,但它确实非常实用,像棉花一样实用.要知道,寒冷的时候,温暖我们的,不是爱情,而是棉花.阅读全文>
发表于 @ 2007年11月15日 15:06:00|评论(loading...)|编辑
当年歌坛大姐大那英在看到usb子系统中对这两种传输的实现的复杂性之后,颇为感慨的对写代码的哥们儿唱出了那句”就这样被你征服”,而其多年来的老对手田震看了之后心情抑郁,一气之下,嗓子永久性的嘶哑了,但仍然呼吁后人看这些代码的时候要”执著”.所以我们看代码的时候看不懂也不用灰心,歌手林志炫的成名曲"单身情歌"也就是把自己看代码的亲身经历唱了出来:为了看代码孤军奋斗,早就吃够了看代码的苦,在代码中失落的人到处有,而我只是其中一个.毫无疑问,这首歌唱出了我们看代码的心声,所以歌曲一问世便得到了广大Linux爱好者的追捧并迅速窜红.阅读全文>
发表于 @ 2007年11月14日 21:05:00|评论(loading...)|编辑
网友”易中天品三围”问我,那么为何在uhci_submit_common中调用了usb_gettoggle()和usb_settoggle,而uhci_submit_control中没有调用呢?在回答这个问题之前我倒是先问一下这位网友,易中天老师的下一本书是否该叫做”易中天品三点”了?阅读全文>
发表于 @ 2007年11月12日 16:52:00|评论(loading...)|编辑
正如我们曾经说过的,内存对设备驱动的重要性就好比房子对我们谈婚论嫁的重要性,这年头,女孩子找对象的基本要求是,有车有房,父母双亡,床上豺狼,床下绵羊.都说婚姻是爱情的坟墓,可是如果没有房子,你连坟墓都进不去!阅读全文>
发表于 @ 2007年11月12日 16:09:00|评论(loading...)|编辑
为了说明俺也是有主义有信仰的,也是经历过楼市股市狂风暴雨考验的,这里就讲讲PCI,而且不再做过多的罗唆铺垫,直接开门见山,让他们看看80后不仅仅知道什么是网恋什么是异性同居,知道怎么靠上半身上位怎么用下半身写作,还知道什么叫PCI,什么叫雷厉风行。阅读全文>
发表于 @ 2007年11月09日 15:01:00|评论(loading...)|编辑
马克思主义认为,追求利润是资本家的天性.获取剩余价值或追求利润,是资本主义生产方式的绝对规律,是资本家进行生产和从事各种活动的唯一目的和动机.所以为了更大程度的获取剩余价值,资本家们提出了带宽回收的概念.这就是为什么前面要让skel_term_qh指向FSBR的QH.即,虽然本轮广度优先已经结束了,但是只要还有没有执行的TD,你主机控制器就不可以闲着,你必须继续执行新的TD.看到这里我不禁感慨万千,并强烈认可了万恶的资本主义被社会主义替代的历史必然性.阅读全文>
发表于 @ 2007年11月05日 22:32:00|评论(loading...)|编辑
因为写的就是usb core里的东东,所以名字就改为《我是USB Core》了,内容也做了部分的调整。阅读全文>
发表于 @ 2007年11月05日 17:54:00|评论(loading...)|编辑
医生,请把孩子取出来之后,顺便给我吸吸脂.
——广州一妇女在剖腹产手术前对医生说.阅读全文>
发表于 @ 2007年11月05日 15:54:00|评论(loading...)|编辑
子曾经曰过:不吃饭的女人这世上也许还有好几个,不吃醋的女人却连一个也没有.我也曾经曰过:不遵循usb spec的USB设备这世上也许还有好几个,不调用usb_submit_urb()的USB设备驱动却连一个也没有.想必一路走来的兄弟们早就想知道神秘的usb_submit_urb()函数究竟是怎么混的吧?阅读全文>
发表于 @ 2007年11月05日 15:46:00|评论(loading...)|编辑
如果你把这个函数中这一段for循环删除,那么就相当于裸照门事件几天之后某些人把石靖的裸照中的精华部分从网上删除掉.关于后者,其后果是不言自明的,人们千方百计在百度图片上搜索,每天近6万的搜索在找石靖,又有几个人还能看到石靖的裸照?那么关于前者,后果也是不言自明的,没有这段精彩的循环,这个函数就完全失去了意义,其存在就没有了价值.阅读全文>
发表于 @ 2007年11月04日 20:59:00|评论(loading...)|编辑
在这个道德沦丧的社会里,能看到这么简单这么单纯的一个函数真的很不容易,也许是写代码的人良心发现吧,如果每个函数都设计得像西直门立交桥一样复杂,如果每次函数跳转都像地铁十三号线转二号线那么曲折蜿蜒,非要给乘客一种犹太人走在纳粹集中营里的感觉,那么也许这代码就没人愿意看了.阅读全文>
发表于 @ 2007年11月04日 16:08:00|评论(loading...)|编辑
这个core的故事,从match开始,到match结束,它虽说不会遍及core的边边角角所有部分,但应该也有那么十之七八。在match的两端是设备和设备的驱动,是接口和接口的驱动,这个故事里遇到的人,遇到的事,早就安排在那里了,由不得我们去选择。在人生的路口上,早已经安排了那些人,那些事,决定你向左走还是向右走。既然如此,那就随便走好了,想那么多干什么呢?阅读全文>
发表于 @ 2007年11月02日 12:08:00|评论(loading...)|编辑
基地址的概念是计算机中经常用的,其实生活中也经常用,比如你一个朋友来北京玩,你告诉她去秀水街买假名牌,假设你因为一向孝顺父母,经常去秀水街给他们买假名牌,因而对整条秀水街都特熟悉,那么可能你不用带她去,你直接告诉她说第几家店卖什么,第几家店的什么商品还不错,但是你首先必须告诉她秀水街本身的地理位置,或者说地址,这就是基地址.阅读全文>
发表于 @ 2007年11月01日 21:42:00|评论(loading...)|编辑
从上节的上节我们已经知道,usb_generic_driver在自己的生命线里,以一己之力将设备的各个接口送给了linux的设备模型,让usb总线的match函数,也就是usb_device_match(),在自己的那条驱动链表里为它们寻找一个合适的接口驱动程序。现在让咱们轻声的问一句,这些接口驱动都从哪里来?阅读全文>
发表于 @ 2007年11月01日 00:10:00|评论(loading...)|编辑