注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

deisp的博客

 
 
 

日志

 
 

驱动详细  

2008-05-29 20:19:04|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

您查询的关键词是: 如果打开速度慢,可以尝试快速版;如果想保存快照,可以添加到搜藏

(百度和网页http://blog.sina.com.cn/studyfeng的作者无关,不对其内容负责百度快照谨为网络故障时之索引,不代表被搜索网站的即时页面)

http://blog.sina.com.cn/studyfeng Sat, 22 Dec 2007 08:57:40 GMT+8 SINABLOG 3.5(beta) zh-cn Copyright 1996 - 2007 SINA Inc. All Rights Reserved. Sat, 22 Dec 2007 00:57:40 GMT+8 http://blog.sina.com.cn/s/blog_4aee432701000957.html

昨夜一夜几乎未眠,一直到凌晨3点才渐渐的进入梦乡,究其原因就是我住的房子的窗户正对窗户的一个邻居半夜产子,从半夜12点一直到凌晨3点多一直在持续一个过程,那就是呻吟

由于距离很近,所以说整整一晚上那边的动静是可以听到的,只是不能看到罢了,不过足以知道过程的艰辛了

首先刚开始入睡时突然听到有女子的呻吟声,几乎是嘶哑的,无助的,从中透露着一丝凄凉,当时没反应过来是什么,于是很是气愤,想来这家也太没素质了,半夜吵人睡觉,就这样在生气中过了半个小时,于是乎也是无法入睡,到12点半时突然回忆起电视上的镜头发觉应该是产子了,不然也不会这样,此时此刻,悠然对女人产生了一份钦佩之情,以前没有听过跟没有见过,也就想象不到生子的艰辛了,这次真正是感觉到了,那名女子一直呻吟了几个小时,突然想到了圣经里上帝为了惩罚女性,于是让女子有了生育之痛想象一下你个人就是叫几个小时足以累死,更不用说一个产妇了,这样使我很是敬佩,都说很多事情都应该是男人担的,女人只不过是感情动物罢了,想象这句话很没道理,但就生子这一项几知道足有多难了,那时候我听到了一种无助声音,而又夹带着一丝的信念,对于一个生命的诞生是多么神圣的事情,可谁又知这后面藏着多少的艰辛,多少的企盼,多少的信念也许准妈妈当时真的就有一个信念,那就是去造就一个未来,再苦再累又该如何我当时也是很是感动,想对妈妈说一声:你辛苦了最后终于在3点的时候听到了一个娃娃的哭声,人们的心都放下了,祝福,我只能在心里默默地祝福她们

紧张的时刻已近过去,剩下的只有是思考了

首先想到的是伟大的母亲,前几天母亲节刚过,也就是那次很是正经的对母亲发短信说了声:妈妈,您辛苦了想象这样说的只有这一次了,其实母亲的爱是最无私的了,也就是所说的只有付出,不求回报,想想从小到现在仅仅是对母亲的依赖,即使是长大了,工作了,也依旧存在着一种依赖之情,妈妈永远在家里看着出门在外的我,不管我的的地位怎样,始终有份亲情在骨子里面深深的刻着又想到了那个风筝,妈妈不就是放风筝的,我不就是那个飞上天的风筝亚

其次想到了那个新生儿的父亲,不管怎样敬佩,我还是对现在都什么年代了,还在家里生孩子有了一丝的疑义,不知是什原因使得这位父亲选择了这个地点,是政府政策,还是对于金钱的无奈,毕竟医院是有一定环境,苦是要受的,可在医院至少安全系数更高一点亚不过也不能去责怪这位父亲,毕竟人家是家的,而我只是一个外人旁听者而已,对自己要求一下就行了,男人就是该赚一点钱的,不要求太多,能够顾家消费就行了,至少还应有个医院的环境吧,至少应该在老婆最危急的时候陪在旁边吧女人受这么大的苦,男人就不该付出一点吗?

最后再说一句,母亲,辛苦了

对自己说一声,有空给家打个电话

]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee432701000957.html#comment Fri, 18 May 2007 12:23:17 GMT+8 http://blog.sina.com.cn/s/blog_4aee432701000957.html http://blog.sina.com.cn/s/blog_4aee43270100094t.html  本来这个规划文档从一个月前就在写(一直在google上存着),想慢慢的加入,可有很想放出来一来不可敷衍自己,二来有个动力可以经常看到.

目标阶段适时参考

专业方面:现在给自己的定位是linux底层驱动的嵌入式开发,最近要找到这方面的奋斗目标,在这两年的时间里努力使自己成为拥有这方面的优势的人才 技能方面:给自己一个挑战的机会,使自己可以很好的学习一门语言,英语真的很重要的,另外粤语也是要适当的掌握的 素质方面:读一部名著,要真实的理解其中的内容,所讲的哲理,目前暂定为资治通鉴 财富方面:学会理财,目前暂定为学习富爸爸系列书本知识,学会简单的投资计划,拥有一定的投资头脑(例如股票) 影响能力:培养自己的表达能力,加强自己的思维应变能力,努力的做到时刻牢记培养的能力 时间管理:理解尽管去做这本书中的时间解决方案,培养自己拥有这方面的能力,做到无压力工作的境界

筹备中..........

]]> 会飞的风 http://blog.sina.com.cn/s/blog_4aee43270100094t.html#comment Thu, 17 May 2007 13:16:18 GMT+8 http://blog.sina.com.cn/s/blog_4aee43270100094t.html http://blog.sina.com.cn/s/blog_4aee43270100094q.html 今天一直在很郁闷中度过,本来昨天晚上熬夜所写的文档今天让部门头头看了一下,结果被批的一塌糊涂,说我这样的文章只能算是应付的,很是不爽,只有拿回来慢慢改了,不过当时头头也给了一点修改意见,按照他的修改意见一直改到了现在突然发现自己昨天写的真的是很差的,一直在怀疑昨天怎么没有发现,由于头头性子很直,说话不分场合,于是当时真的很难堪,不过过后想象还是值得的,毕竟我发现我在提高.
于是我又想到了严师出高徒这句话,感触好深,想到了现在还有机会去犯错误,其实只要有人去指正你,那么每犯一次错误等于就是去提高依次,这样的机会真的是很难得了,还好现在我碰上了一位好的头头,现在实习已经属于半个社会人了,的却能犯错的机会没有象大学里那样多了,大学了所作的一切始终是在一群没有各种利益的环境下,大家都是以一棵真诚之心来面对着,错了就改,别人也不会去看底的,想想挺怀念的,幸亏到六月份该回去答辩论文,在最后时刻体会一把大学生活了,只能好好去留念了.
天下莫柔弱于水,而攻坚强者莫之能先,其无以易之.柔之胜刚,弱之胜强,天下莫不知,莫能行.是以圣人云:能受国之垢,是为社稷主,能受国之不祥,是为天下王.正言若反.

真希望能象水一样以弱胜强,也许在步入社会之处我是弱者,经验是少的,靠一点点的改进争取积累以达到在专业上无人可易的境界.

]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee43270100094q.html#comment Thu, 17 May 2007 12:04:51 GMT+8 http://blog.sina.com.cn/s/blog_4aee43270100094q.html http://blog.sina.com.cn/s/blog_4aee43270100094h.html 今天中午回去也没什么事,拿起了很久未翻的庄子翻了下,突然发现有个典故很经典竟然是出自庄子这本书,螳螂捕蝉,黄鹊在后,其实刚看时也没什么感觉,不过到下午时竟然发现一些事情似乎寓意一样 ,似乎有种很不爽的感觉现摘这段话与此:
庄周游于雕陵之樊,一异鹊自南方来者,翼广七尺,目大运寸,感周之颡,而集于栗林庄周曰:此何鸟哉?翼殷不逝,目大不蹇裳躩步,执弹而留之一蝉,方得美荫而忘其身螳螂执翳而搏之,见得而忘其形;异鹊从而利之,见利而忘其真庄周怵然曰:噫!物固相累,二类相召也捐弹而反走,虞人逐而谇之其一是上面所说的人处于很好很投入的状态时会忘掉很多东西,结果不知这后面隐藏着什么,由此来告诫千万不要因为利益而忘记危险,而我所想到的是当我们处于什么也没有的状态时无助,及无所求时当然会远离很多的危险,可那样只能平平淡淡的一生,有人很喜欢平淡的生活,包括我在大学的时候,对于未来的设想是安安稳稳的过一生,其实也没什么错的,不过就是一中的人生对幸福的一种看法罢了,而在深圳的这一段时间里我发现我自己在变化,人生是需要奋斗的,只有面对越烈越多的困难,才会成熟起来的,于是我想到的螳螂捕蝉,黄鹊在后肯定是会出现的,不过只要你够强,争取当最后的赢家就是了
我还想到了一件事,也是我最近才发现的,五一时在火车上遇到了一个感觉挺有缘分得朋友,巧的是去回时都是坐的同一辆车,很谈得开,不过今天上网查她的资料时感觉有种被骗得感觉,她和我说的完全与事实不符的,我不知到底意味着什么,不信任还是别的,只能说是未知了,我想起来我还是挺傻的,什么都跟人说,她还告诫我在火车上不要对别人说的太多,容易被骗得,呵呵!我又想到了螳螂捕蝉,黄鹊在后,是不是我又太投入了,忘了周围的一切了,其实如果不忘了周围的一切,又怎么能够玩的开心亚
]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee43270100094h.html#comment Wed, 16 May 2007 12:12:09 GMT+8 http://blog.sina.com.cn/s/blog_4aee43270100094h.html http://blog.sina.com.cn/s/blog_4aee432701000925.html 母亲节到了,该给家里打个电话,以前总是一周一次的,可最近太多太多的事阻断了这个惯例,想家,夜深人静的时候,也是想家的时候虽说打回去妈妈肯定也不会说什么节日之类的,也许就没有听过这个节日,通通话足以,总之想念对方,不知为什么总是在最困难时想到了家,美好的时候也就没有了这种感觉,一直在反省自己,是不是自私,难道只有在患难时才见真情,不管忘了家的时候,还是独自逍遥自在时,家永远在远方注视着一个期望,如同放出去的风筝,飞得再高,还是要回来的,不管是坠落在地,还是折断双翼的回来,家依旧放开心怀去欢迎你的到来毕竟,是一份亲情,友情等所有的感情上升到亲情时,一切都变得无私了总之,想家得时候给家里打个电话,不想的时候也要打一个,毕竟有人也在想着你的
   英语,是该好好学学了,不再是为了证书之类的,不再是为了炫耀之类的,为自己,也该学学了,定了3年后进外企,不学英语怎么能行的,英语好似一项本能,始终要学的,记住,从现在开始,好好学习好好工作
  专业也是一项技能
]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee432701000925.html#comment Sat, 12 May 2007 11:51:19 GMT+8 http://blog.sina.com.cn/s/blog_4aee432701000925.html http://blog.sina.com.cn/s/blog_4aee4327010008xv.html  上班两年之内不要攒钱,挣多少花多少,除了吃喝,要买书,要旅游,要经历自己没有经历过的事物,读万卷书不如行万里路男孩子如果想干点事,最好不要谈恋爱,女孩子不要结婚

 一定要有理想,先确定自己的偶像,然后开始奋斗

]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee4327010008xv.html#comment Tue, 08 May 2007 06:16:10 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008xv.html http://blog.sina.com.cn/s/blog_4aee4327010008xd.html  五一去了南阳,我不敢去判断我到底收获了什么,也不敢去计算我失去了什么,总之一切的一切都是缘分的注定,当失去一样东西的时候总是在不自觉间又得到了另外的

五一放假的六天可以说是在车上度过的两天两夜,又睡了两天两夜,真正和她在一起的不过是仅仅的两天,我不敢说这两天真的收获了什么,在这一方面我真的越来越觉得这是一个缘分的注定,这样的话也许五一前我会很努力的去争取这份缘分,可是在过了五一后我发现很多东西真的是靠很多因素的,只一味的争取是不行的

很多人把旅游定义为累并快乐着,我也许很想去这样定义的这几天,可事实往往不尽人意,总之这样的五一我实在难与去定义

感情对于我来说可以是很失败的,可其他的收获换算是弥补了这方面的不走,至少我懂得了很多道理的首先是见到了几个比较好的朋友,他们今年考的研究生,看着的确很厉害的真的对我来说影响很大,我就是直接就没有考研的那种人,现在想想还没有后悔,以后会不会还不知道呢,至少现在不会,这样的话毕竟比他们造了几年接触到社会的,我想在这几年的时间里努力的锻炼我自己,在各方面达到一定的高度,毕竟也证明一下我不考研也是可以成才的这社会不止要考研的

坐火车时遇到一些同路者,谈起来她们真的好厉害的,好像什么都知道的,这样使我很无助,特别有个人说我以后见人不要说自己是本科的,说是小学的,当然说起来是玩笑的,可最终却很影响了我,不过话又说回来,现在的学校生活真的可以培养很全面的人才吗,靠的还是自己的努力

]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee4327010008xd.html#comment Mon, 07 May 2007 11:24:47 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008xd.html http://blog.sina.com.cn/s/blog_4aee4327010008ue.html 一份承诺
一份补偿
一次悲伤的结束
不知能不能完美的开始
还是彻底的结束
盼望着
想到上次的离别
好难忘记
梨,避风塘,青索龙
离开
再次去找回这段已丢失的
希望道路是美好的
]]> 会飞的风 http://blog.sina.com.cn/s/blog_4aee4327010008ue.html#comment Mon, 30 Apr 2007 09:23:16 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008ue.html http://blog.sina.com.cn/s/blog_4aee4327010008to.html  Late to the interview means late on projects and deadlines
面试迟到不仅是礼貌问题,更重要的是会让面试官觉得你将来不可能按时完成工作 
Lack of enthusiasm means you dont care about your work
面试的时候要表现出对此工作的热情,而不是我不愿意干这个,不愿意干那个 
Little to no company knowledge means you lack research skills
知己知彼百战不殆,面试前要做好功课,对这个公司多了解一点你的胜算就增加一点 
Inappropriate dress translates to inappropriate work
面试衣着不要走极端,要跟公司文化符合,最好面试前能去看一眼这个公司员工的着装,给自己一个参考还要注意一点的是,有些IT精英面试的时候上身穿的很整洁,结果桌子下面却是破旧的牛仔和锃亮的皮鞋 
Too negative is too much: Spells P-R-O-B-L-E-M
不管你现在工作如何糟糕,现在环境如何恶劣,都不要在面试中表现出过分的消极和过度的抱怨,因为这样会给人以问题雇员的印象 
Arrogance or dominating the interview signals conflict on teams
面试表现出自信是应该的,但是走向极端的自信就变成了自大,要记住你是来面试的,保持专业的态度很重要 
Too quiet means you lack confidence in your work
一个人钻在小黑屋编程的时代已经过去了,现在需要的是商业敏感和技术卓越,在面试中要表现的适当外向,毕竟将来你要跟客户交流另外面试中和面试官的眼神交流也是很重要的 
Misstating qualifications means, well, youre a liar
你简历中提到的所有技能和资历都要诚实,不要夸大,比如你只懂Java Script就声称自己有Java经验等,如果被揭穿的话,后果就不用说了 
Speaking only tech-ese means you wont work well with others
不要处处卖弄术语来显示你的专业,要学会使自己说话方式灵活,能被不同类型的人接受,从人力资源到CTO,因为你将来面对的最终客户也是不同类型的 
Not saying thank you is not welcome
要记得面试结束后写一封感谢信,毕竟就是一个email的问题,不过要记得拼写检查一下哦有位面试官说一个面试者给其很深的印象是因为他不但写了感谢信,而且在感谢信中把面试中觉得回答的不好的问题又回答了一遍,这招你也可以借鉴一下]]> 会飞的风 技能完善 http://blog.sina.com.cn/s/blog_4aee4327010008to.html#comment Mon, 30 Apr 2007 02:19:13 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008to.html http://blog.sina.com.cn/s/blog_4aee4327010008tl.html   又来深圳几天了,记得上次从这儿回去时已是兴致勃勃的,可紧紧地回家的20天中,实在使我懂得了很多,虽说来了之后已经没有上次来的激情了,留下的都是遗憾等等,我承认回去之后的确做错了一件事,从始到终可以说都是我的问题,不管怎样,我这次似乎是第一次尝到了爱情的滋味
  在去找她的两天时间里,发生了很多本不应发生的事情,当我坐上南下的火车时,我才发现我错了,那一刻,我真正的感觉到了爱情的力量是那么的巨大,也许这段爱情真的要结束了,那一刻我才发现我敢说很爱她,可一切感觉是很晚了,她发了短信过来,话不多,却很心寒,在爱的世界里没有对与错,只有珍惜不珍惜我承认是我没有珍惜这段爱情,我不知道为什么总是到最后的时刻才让我发现爱情的美好,可以说以前对她的感觉就是喜欢,我也不敢说什么爱之类的,也就如此带来了太多的徘徊,在最后一刻我才发现不仅仅是喜欢的问题爱一个人真的可以为她付出的一切坐车对我来说已经几乎习惯了,毕竟20个小时不是开玩笑的,可我还是打算五一回去一趟,虽说来深圳才5天,找她,然后希望能有一个珍惜的机会,虽说坐车回很累,感觉也是值得的
]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee4327010008tl.html#comment Sun, 29 Apr 2007 12:18:04 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008tl.html http://blog.sina.com.cn/s/blog_4aee4327010008tk.html  今天突然发现了一个特棒的网站,刘润的blog,看着令我大为感慨,是的,作为刚介入社会的大学生,我只能做的就是学习了,可又发现了那么多的我不懂得地方,感觉他的博客的确是一条启明星,指引着影响着我,思考真的横重要的,于是乎以后该时刻提醒着自己,顺便把名字改为听风--思考,我能做到的 ]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee4327010008tk.html#comment Sun, 29 Apr 2007 11:14:39 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008tk.html http://blog.sina.com.cn/s/blog_4aee4327010008ti.html 作者:刘润我以前写过一篇文章,讲的是职业规划需要地图,但不能只有地图一个好的职业规划,就像开车一样,首先要知道自己想去哪里,其次知道自己在哪里,最后还要地图来告诉自己怎么去不知道想去哪里的会消极(没有目标),不知道自己在哪里的会迷惘(迷失自我),不知道怎么去的会盲目(无路可寻)

这三点都很重要,我今天想单说说这张地图

没有人可以拥有一张完整的职业地图每个职业人都依靠着自己手里掌握的一张或精确或粗糙,或完整或部分的草图,勾画着自己的职业未来我看过不少人手里的地图,有的绚丽无比,有的简单得可怜;有的非常精确,有的误人子弟其中有一张,给我留下了很深的印象让我与大家分享,我看到了什么宝藏

地图第一站:专家

刚刚大学毕业,我们接受了十几年的教育,积攒了非常丰富的知识选择创业?没有魄力的话,不如就业能学到的东西多千万别去读MBA,也不要假想1-2年后就开始做管理那些是经验的升华,可是我们还没有太多的经验可以升华

我们拥有的傲人资本就是年轻我们学东西比任何人都快,我们的知识掌握得最好,我们有旺盛的精力在这个阶段,我们其实大部分人都在靠体力挣钱加班?不在话下工资不高?只要学到东西,没有问题我们不断成为年长者的威胁,我们的原始积累在不断自我挑战中前进

我常常说,不要在乎自己35岁前的收入等你以后回过头来看自己年轻时,会觉得那些钱少得可笑如果你为了800元或1000元每月的差异放弃了一个非常好的机会,将来你会捶胸顿足

这段时间的特征:

资源:知识为王

头衔:专家

生活:靠自己赚钱

环保:不可再生资源

地图第二站:业主

随着公司里不断新进专家,我们开始感叹,我们的体力已经无法和他们相比了我们已经成了老专家工作的时间明显缩短,学习新东西的速度明显放缓但是我们积累了那些新人所无法立刻具备的核心价值:经验我们开始可以说经验告诉我,是这样的,相信我,这样的决定我做过300次

然后很多人从一两个项目开始创业了他们看到,世界排名前十的富翁,好像没有一个是为别人打工的他们开始学习荷兰人的精神,打理自己的生意这段时间,经验和技能开始发挥重要作用之前省吃俭用得来的一点财富,全部投入生意我们有点患得患失,原来,我们开始有东西可以失去了我们希望得到的更多

有的人失败了,于是继续回去打工;有的人成功了,开始读MBA;有的人成了大功,开始雇用MBA我们开始觉得,有人为自己打工,原来比自己打工更累

这段时间的特征:

资源:技能为王

头衔:业主

生活:靠别人赚钱

环保:可持续发展

地图第三站:资者

我们开始想什么是轻松的活,答案是:没有除非继承遗产或者娶个富婆怎么办呢?我们开始琢磨怎么可以不干活,让钱去干活那就业主为我干活,我投资业主

10年前认识的张三,5年前认识的李四聚在一起,发现大家的资源可以运作,而王五原来可以帮这个忙,一拍即合以前积累的人脉开始体现无上的价值以前积累的钱,开始自己生出自己

白天出入各种场合,用我们的多年的处世力发现机会;晚上就打开电脑,看看钱们又生了多少子孙终于,财务自由了,开始空虚了干点什么呢?去打工吧如此,终点又回到了起点但是高度,已经不同了

这段时间的特征:

资源:人脉为王

头衔:资者

生活:靠钱赚钱

环保:生生不息

这幅地图有点意思

(首发于职场2007年2月刊)

]]> 会飞的风 技术学习 http://blog.sina.com.cn/s/blog_4aee4327010008ti.html#comment Sun, 29 Apr 2007 10:15:18 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008ti.html http://blog.sina.com.cn/s/blog_4aee4327010008ta.html 新手只所以是新手,他不会或不善于搜索,再算搜到粘边的话题,也看不太明白还有一个重要的原因是:论坛上少了些新人技术专贴,不是那种大杂烩的问题贴,一两句解答对新手来说还是不够的,新人要的是图文比如:<生命中不能承受之失 IEs4Linux>,<Linux的GNOME环境下麦克风的调节>,<Gnome中关闭光驱自动播放功能及修改默认自动播放程序>,<Audacious的编译安装手记>,<Ubuntu的黑体解决方案>,<Linux下isocue/bin格式光盘镜像的挂载>,<Linux下光盘载入后呈现乱码的解决办法>等
以上文章都写在这些老手们的bolg里,文章真是棒!还有在置顶贴的<Ubuntu 7.04 新手指南>的作者在他的bolg里已把该文章更新到25日
为了大家,我把收集来的有关linux bolg,与大家分享,不知bolg的主人们会不会介意,也希望更多的过来人把自己的bolg的地址贴出来与大家分享,谢谢!

http://www.lirui.name/


]]> 会飞的风 技术学习 http://blog.sina.com.cn/s/blog_4aee4327010008ta.html#comment Sun, 29 Apr 2007 06:45:50 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008ta.html http://blog.sina.com.cn/s/blog_4aee4327010008t2.html    以下为Ubuntu目录的主要目录结构,您稍微了解它们都包含了哪些文件就可以了,不需要记忆
    /   根目录
   
    boot/      启动文件所有与系统启动有关的文件都保存在这里
        grub/   Grub引导器相关的文件
   
    dev/       设备文件
    proc/      内核与进程镜像
   
    mnt/      临时挂载
    media/   挂载媒体设备
   
    root/      root用户的$HOME目录
    home/         
        user/   普通用户的$HOME目录
        .../
   
    bin/      系统程序
    sbin/      管理员系统程序
    lib/      系统程序库文件
    etc/      系统程序和大部分应用程序的全局配置文件
       init.d/   SystemV风格的启动脚本
       rcX.d/   启动脚本的链接,定义运行级别
       network/   网络配置文件
       X11/      图形界面配置文件
   
    usr/      
       bin/      应用程序
       sbin/   管理员应用程序
       lib/      应用程序库文件
       share/   应用程序资源文件
       src/      应用程序源代码
       local/      
            soft/      用户程序      
            .../      通常使用单独文件夹
       X11R6/   图形界面系统
   
    var/         动态数据
   
    temp/         临时文件
    lost+found/   磁盘修复文件


启动流程
========
   Linux系统主要通过以下步骤启动:
   1读取MBR的信息,启动Boot Manager
       Windows使用NTLDR作为Boot Manager,如果您的系统中安装多个版本的Windows,您就需要在NTLDR中选择您要进入的系统
       Linux通常使用功能强大,配置灵活的GRUB作为Boot Manager,我们将在启动管理章节中向您介绍它的使用方式
   2加载系统内核,启动init进程
       init进程是Linux的根进程,所有的系统进程都是它的子进程
   3init进程读取/etc/inittab文件中的信息,并进入预设的运行级别,按顺序运行该运行级别对应文件夹下的脚本脚本通常以start参数启动,并指向一个系统中的程序
       通常情况下,/etc/rcS.d/目录下的启动脚本首先被执行,然后是/etc/rcN.d/目录例如您设定的运行级别为3,那么它对应的启动目录为/etc/rc3.d/
   4根据/etc/rcS.d/文件夹中对应的脚本启动Xwindow服务器xorg
       Xwindow为Linux下的图形用户界面系统
   5启动登录管理器,等待用户登录
       Ubuntu系统默认使用GDM作为登录管理器,您在登录管理器界面中输入用户名和密码后,便可以登录系统(您可以在/etc/rc3.d/文件夹中找到一个名为S13gdm的链接)
   
更改运行级别
------------
   在/etc/inittab文件中找到如下内容:   
       # The default runlevel.
       id:2:initdefault:
      
   这一行中的数字2,为系统的运行级别,默认的运行级别涵义如下:
       0   关机
       1   单用户维护模式
       2~5   多用户模式
       6   重启

服务管理
========

更改启动服务
------------
   在运行级别对应的文件夹中,您可以看到许多文件名以S##和K##起始的启动脚本链接
   例如:
       /etc/rcS.d/S35mountall.sh   挂载文件系统
       /etc/rcS.d/S40networking   启用网络支持
       /etc/rc2.d/S13gdm      启动登录管理器
       /etc/rc2.d/S20makedev   创建设备文件
       /etc/rc2.d/S23xinetd   启动超级进程
   init进程将以start为参数,按文件名顺序执行所有以S##起始的脚本脚本名称中的数字越小,它将被越早执行例如在 /etc/rc2.d/文件夹中,S13gdm文件名中的数字小于S23xinetd,S13gdm将比S23xinetd先执行
   
   如果一个脚本链接,以K##起始,表示它将以stop参数被执行如果相应服务没有启动,则不执行该脚本
   例如:
       /etc/rc2.d/K20powernowd   针对某种硬件的电源管理支持

   如果您想禁止某一服务在启动时自动运行,您可以将相应运行级别中的脚本由S##xxx重命名为K##xxx


手动控制服务
------------

   您也可以手动运行带有以下参数的启动脚本,来控制系统服务
   start      启动   
   stop      停止
   restart      重启
   例如:
   /etc/rc2.d/K20powernowd start
   
   有时您并不清楚当前运行级别,该运行级别下未必有相应脚本;而且此类脚本的前三位字符并不固定,不便于记忆这时,您可以直接使用 /etc/init.d/文件夹中的启动脚本(/etc/rcX.d/中的启动脚本链接到/etc/init.d/文件夹下相应脚本),这也是我们向您推荐的方式
   例如:
   /etc/init.d/powernowd start

Tips:以上命令的位置并没有包含在环境变量的搜索路径中,所以要输入完整路径


常用系统服务
============
   acpi-support   高级电源管理支持
   acpid       acpi守护程序.这两个用于电源管理,非常重要
   alsa      声音子系统
   alsa-utils   
   anacron      cron的子系统,将系统关闭期间的计划任务,在下一次系统运行时执行
   apmd      acpi的扩展
   atd      类似于cron的任务调度系统建议关闭
   binfmt-support   核心支持其他二进制的文件格式建议开启
   bluez-utiles   蓝牙设备支持
   bootlogd   启动日志开启它
   cron      任务调度系统,建议开启
   cupsys      打印机子系统
   dbus      消息总线系统(message bus system)非常重要
   dns-clean   使用拨号连接时,清除dns信息
   evms      企业卷管理系统(Enterprise Volumn Management system)
   fetchmail   邮件用户代理,用于收取邮件
   gdm      gnome登录和桌面管理器
   gdomap      
   gpm      终端中的鼠标支持
   halt      别动它
   hdparm      调整硬盘的脚本,配置文件为/etc/hdparm.conf
   hibernate   系统休眠
   hotkey-setup   笔记本功能键支持支持类型包括: HP, Acer, ASUS, Sony, Dell, 和IBM
   hotplug and hotplug-net   即插即用支持,比较复杂,建议不要动它
   hplip          HP打印机和图形子系统
   ifrename   网络接口重命名脚本如果您有十块网卡,您应该开启它
   inetd      在文件/etc/inetd.conf中,注释掉所有你不需要的服务如果该文件不包含任何服务,那关闭它是很安全的
   klogd      重要
   linux-restricted-modules-common   受限模块支持/lib/linux-restricted-modules/文件夹中的模块为受限模块例如某些驱动程序,如果您没有使用受限模块,就不需要开启它
   lvm      逻辑卷管理系统支持
   makedev      创建设备文件,非常重要
   mdamd      磁盘阵列
   module-init-tools   从/etc/modules加载扩展模块,建议开启
   networking   网络支持按/etc/network/interfaces文件预设激活网络,非常重要
   ntpdate      时间同步服务,建议关闭
   pcmcia      pcmcia设备支持
   powernowd   移动CPU节能支持
   ppp and ppp-dns   拨号连接
   readahead   预加载库文件
   reboot      别动它
   resolvconf   自动配置DNS
   rmnologin   清除nologin
   rsync      rsync守护程序
   sendsigs   在重启和关机期间发送信号
   single      激活单用户模式
   ssh      ssh守护程序建议开启
   stop-bootlogd   在2,3,4,5运行级别中停止bootlogd服务
   sudo      检查sudo状态重要
   sysklogd   系统日志
   udev & udev-mab 用户空间dev文件系统(userspace dev filesystem)重要
   umountfs   卸载文件系统
   urandom      随机数生成器
   usplash      开机画面支持
   vbesave      显卡BIOS配置工具保存显卡的状态
   xorg-common   设置X服务ICE socket
   adjtimex   调整核心时钟的工具
   dirmngr      证书列表管理工具,和gnupg一起工作
   hwtools      irqs优化工具
   libpam-devperm   系统崩溃之后,用于修理设备文件许可的守护程序
   lm-sensors   板载传感器支持
   mdadm-raid   磁盘陈列管理器
   screen-cleanup   清除开机屏幕的脚本
   xinetd      管理其他守护进程的一个inetd超级守护程序

重要配置文件
============
   !无论任何情况下,在修改配置文件之前,请您先备份它!
   建议您使用这个命令:sudo cp xxx xxx_`date +%y%m%d_%H:%M`
   当然这很麻烦,您可以新建一个名为bak的文件,内容如下:
      #!/bin/bash
      sudo cp $1  $1_`date +%y%m%d_%H:%M`
   把它放在您能够记住的目录下,比如/home,执行命令sh /home/bak xxx,就可以将当前文件夹下的文件xxx另存为xxx_yymmdd_HH:MM的格式了


全局配置文件
------------
   系统初始化
   /etc/inittab      运行级别控制台数量
   /etc/timezone      时区
   /etc/inetd.conf      超级进程
   文件系统
   /etc/fstab      开机时挂载的文件系统
   /etc/mtab      当前挂载的文件系统
   用户系统
   /etc/passwd      用户信息
   /etc/shadow      用户密码
   /etc/group      群组信息
   /etc/gshadow      群组密码
   /etc/sudoers      Sudoer列表(请使用visudo命令修改此文件,而不要直接编辑)
   Shell
   /etc/shell      可用Shell列表
   /etc/inputrc      ReadLine控件设定
   /etc/profile      用户首选项
   /etc/bash.bashrc   bash配置文件
   系统环境
   /etc/environment   环境变量
   /etc/updatedb.conf   文件检索数据库配置信息
   /etc/issue      发行信息
   /etc/issue.net
   /etc/screenrc      屏幕设定
   网络
   /etc/iftab      网卡MAC地址绑定
   /etc/hosts      主机列表
   /etc/hostname      主机名
   /etc/resolv.conf   域名解析服务器地址
   /etc/network/interfaces   网卡配置文件
   
用户配置文件
------------
   /etc/目录下的所有文件,只有root用户才有修改权限应用软件的全局配置文件,普通用户也不能够修改,如果您想配置软件,以适应您的需求,您可以修改它的用户配置文件

   用户配置文件通常为全局配置文件的同名隐藏文件,放在您的$HOME目录下,例如:
   /etc/inputrc      /home/user/.inputrc
   /etc/vim/vimrc      /home/user/.vim/vimrc

   也有少数例外,通常是系统程序
   /etc/bash.bashrc   /home/user/.bashrc

]]> 会飞的风 技术学习 http://blog.sina.com.cn/s/blog_4aee4327010008t2.html#comment Sun, 29 Apr 2007 01:40:09 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008t2.html http://blog.sina.com.cn/s/blog_4aee4327010008sx.html  最近一直都是忙得不可开交,不知道到底为了什么,最后一样是迷茫,使该给自己定一下目标,接着是计划了,不然只会这样不停的堕落下去了

首先我想到的是我的职业的定位,这一点我一直在考虑我到底该怎么定义我的人生道路,现在做的这一方面对于我来说是挺满足的,现在做的主要是技术,嵌入式方面,由于在学校已经学过类似的知识,感觉是挺对口的,其实大学本科毕业能够找本专业的实在是很少了,我不知道这样到底对不对,其实路真正到了你回头的时候才有资格去判断它到底对不对,不过那时已经毫无用处了

当我正在是否一直做技术时,我今天突然看到一句话,作一行要先做强,这样在转业不错,毕竟每一行都是相通的是呀,现在做就要作出一点名堂

先写到此!!!!!!!!!!!!!!!!!!

]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee4327010008sx.html#comment Sat, 28 Apr 2007 12:49:56 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008sx.html http://blog.sina.com.cn/s/blog_4aee4327010008sw.html  什么样的工作可以当自己的职业来做?  
  什么样的工作可以当事业来做?  
  什么样的职业可以当事业来做?  

没有热情和激情,自己的职业和事业不可能达到一种颠峰的状态,最多只是平庸而已    
我觉得大部分人可能不清楚自己,所以才一直平庸我觉得认识自己的优缺点,研究一下自己喜欢干什么,想干什么,能干什么(社会能提供什么样的机会),确定自己在社会中的坐标,认清自己,发现自己,然后给自己确定一个切合实际情况的目标,然后心平气和不急不躁一步一步向前冲,这可能是取得成功的正确方法   
      想靠一夜暴富,这种机会太少了,就这么等下去?或者想就这样蹉跎岁月,最后后悔的还是自己,等你30多岁找不到工作时,自己才会明白其实这是对自己的不负责任

做事业的人,要有程序员的脑筋,更要有外交家的手腕.  

 你工作的环境对你的发展重要!

]]> 会飞的风 生活百味 http://blog.sina.com.cn/s/blog_4aee4327010008sw.html#comment Sat, 28 Apr 2007 12:23:45 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008sw.html http://blog.sina.com.cn/s/blog_4aee4327010008s8.html     最近很想对自己的人生做一个长远的规划,不知道又怎么入手,只好先上网找一些类似的文章转载以下,争取到时候做一个好的规划:
1.确定志向
志向是事业成功的基本前提,没有志向,事业的成功也就无从谈起俗话说:志不立,天下无可成之事立志是人生的起跑点,反映着一个人的理想胸怀情趣和价值观,影响着一个人的奋斗目标及成就的大小所以,在制定生涯规划时,首先要确立志向,这是制定职业生涯规划的关键,也是你的职业生涯中最重要的一点
2.自我评估
自我评估的目的,是认识自己了解自己因为只有认识了自己,才能对自己的职业作出正确的选择,才能选定适合自己发展的职业生涯路线,才能对自己的职业生涯目标作出最佳抉择自我评估包括自己的兴趣特长性格学识技能智商情商思维方式思维方法道德水准以及社会中的自我等等
3.职业生涯机会的评估
职业生涯机会的评估,主要是评估各种环境因素对自己职业生涯发展的影响,每一个人都处在一定的环境之中,离开了这个环境,便无法生存与成长所以,在制定个人的职业生涯规划时,要分析环境条件的特点环境的发展变化情况自己与环境的关系自己在这个环境中的地位环境对自己提出的要求以及环境对自己有利的条件与不利的条件等等只有对这些环境因素充分了解,才能做到在复杂的环境中避害趋利,使你的职业生涯字串3
规划具有实际意义
环境因素评估主要包括:
(1)组织环境
(2)政治环境
(3)社会环境
(4)经济环境
4.职业的选择
职业选择正确与否,直接关系到人生事业的成功与失败据统计,在选错职业的人当中,有80%的人在事业上是失败者正如人们所说的女怕嫁错郎,男怕选错行由此可见,职业选择对人生事业发展是何等重要如何才能选择正确的职业呢?至少应考虑以下几点:
(1)性格与职业的匹配
(2)兴趣与职业的匹配
(3)特长与职业的匹配
(4)内外环境与职业相适应
5.职业生涯路线的选择
在职业确定后,向哪一路线发展,此时要作出选择即,是向行政管理路线发展,还是向专业技术路线发展;是先走技术路线,再转向行政管理路线由于发展路线不同,对职业发展的要求也不相同因此,在职业生涯规划中,须作出抉择,以便使自己的学习工作以及各种行动措施沿着你的职业生涯路线或预定的方向前进通常职业生涯路线的
选择须考虑以下三个问题:
(1)我想往哪一路线发展?
(2)我能往哪一路线发展?
(3)我可以往哪一路线发展? 字串9
对以上三个问题,进行综合分析,以此确定自己的最佳职业生涯路线
6.设定职业生涯目标
职业生涯目标的设定,是职业生涯规划的核心一个人事业的成败,很大程度上取决于有无正确适当的目标没有目标如同驶入大海的孤舟,四野茫茫,没有方向,不知道自己走向何方只有树立了目标,才能明确奋斗方向,犹如海洋中的灯塔,引导你避开险礁暗石,走向成功
目标的设定,是在继职业选择职业生涯路线选择后,对人生目标做出的抉择其抉择是以自己的最佳才能最优性格最大兴趣最有利的环境等信息为依据通常目标分短期目标中期目标长期目标和人生目标短期目标一般为一至二年,短期目标又分日目标周目标月目标年目标中期目标一般为三至五年长期目标一般为五至十年
7.制定行动计划与措施
在确定了职业生涯目标后,行动便成了关键的环节没有达成目标的行动,目标就难以实现,也就谈不上事业的成功这里所指的行动,是指落实目标的具体措施,主要包括工作训练教育轮岗等方面的措施例如,为达成目标,在工作方面,你计划采取什么措施,提高你的工作效率?在业务素质方面,你计划学习哪些知识,掌握哪些技能,提高你的业务能力?在潜能开发方面,采取什么措施开发你的潜能等等,都要有具体的计划与明确的措施并且这些计划特别具体,以便于定时检查
8.评估与回馈
俗话说:计划赶不上变化是的,影响职业生涯规划的因素诸多有的变化素
是可以预测的,而有的变化因素难以预测在此状况下,要使职业生涯规划行之有效,就须不断地对职业生涯规划进行评估与修订其修订的内容包括:职业的重新选择;职业生涯路线的选择;人生目标的修正;实施措施与计划的变更等等
]]> 会飞的风 http://blog.sina.com.cn/s/blog_4aee4327010008s8.html#comment Fri, 27 Apr 2007 03:54:06 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008s8.html http://blog.sina.com.cn/s/blog_4aee4327010008ce.html

实验平台:友善之臂s3c2410

编译环境:ubuntu > arm-linux-gcc3.4.5

内核版本:Linux2.6

实验目的:在Linux下完成arm板上的8*8按键驱动开发,最终实现用一个中断程序实现           64个按键的中断触发,按键由16个io口实现矩阵键盘

       初次接触linux的驱动开发,很多的知识只能边学边做,虽说上是比较慢的,可这也是一个需要经历的过程,最终不管怎样,也是实现了项目的基本要求,在此期间的也学到了一些很基础性的知识,当然,很多东西只看是不能解决问题的,只需实验一下,调试一下,结果比看要好的多了,在此也把我如何接触并如何面对一个毫无头绪的驱动问题下手总结如下

       入门:对于一个刚接触Linux的人来说只能是先了解驱动开发的原理了,动态加载驱动可以说是我了解的第一个概念了,在系统跑起来之后,把所编译的驱动用insmod再加载进去也就是所谓的动态加载了,当然也有卸载驱动的rmmod了,在这个基础上才正式的了解了一些很基础的命令知识

       理解驱动:这个过程也许是最为抽象的了,只能找了一个示例驱动来读,比较的难啃,有种只缘身陷此山中的感觉,幸亏还只是个按键驱动,短一点,这样的话最终还是了解了驱动的架构,主要还是由几个函数组成,各个函数各有用途,总体结构是不变的,

static int __init s3c2410_button_init(void)  //初始化硬件模块

static void __exit s3c2410_button_exit(void)  //卸载硬件模块

module_init(s3c2410_button_init);           //加载硬件模块

module_exit(s3c2410_button_exit);         //卸载                 

最主要的也是最基本的就是上面的几个子函数了,也可以说是格式化的东西了,一个驱动中所必须拥有的函数,初始化和卸载其实都是些相反的过程,正如初始化干了些什么,而卸载再把所做得事情按相反的顺序去掉就行了,

初始化硬件s3c2410_button_init(void)包括了:

register_chrdev(0,DEVICE_NAME,&s3c2410_button_fops);

       //注册设备的函数,各参数含义:

       0:需要动态分配一个设备号,如果注册成功的话,把设备号返回出来,当然这        个设备号以后卸载时要用到的

       DEVICE_NAME:所定义的设备名,自己定义,加载模块后就可以查到的

       &s3c2410_button_fops:一个应用文件表,其中定义了通过映射怎么操作设备等等

devfs_mk_cdev(MKDEV(s3c2410_button_major,0), S_IWUSR,DEVICE_NAME);

       加载设备到文件系统,很格式化的东西

当然卸载硬件则是一个相反的过程了, s3c2410_button_exit()包括了:

devfs_remove(DEVICE_NAME);//刚好相反的过程

unregister_chrdev(s3c2410_button_major,DEVICE_NAME);

       //卸载设备的函数,主要传递了设备号和设备名

接下来主要是&s3c2410_button_fops这个表的建立了,其实主要是一些对应的关系了

static struct file_operations s3c2410_button_fops = {

       .owner = THIS_MODULE,

       .open  = s3c2410_button_open,

       .release=s3c2410_button_close,

       .read  = s3c2410_button_read,

};

在这里主要实现打开文件,关闭文件,读文件这几个功能,在驱动所写的程序中也就是这三个函数:

s3c2410_button_close()

s3c2410_button_open()

s3c2410_button_read()

也就是通过这个结构表的建立,我们可以在应用程序中通过open,release,read来调用这几个函数,作用还是挺大的,接下来也该看看这几个函数的内部结构了

其中的open,close函数其实系统已经默认的做了很多的调用,也就是说如果只是打开文件关闭文件的话,里面置空就行了,系统会自动完成你所需要的而read函数则是自己所要编写的实现的一个基本功能就是内核到用户之间参数的传递,也就是把通过系统模式所读到的数据通过   

copy_to_user(buff,(char *)&button_ret,sizeof(unsigned char));

传递给用户使用,这样可以防止用户直接访问系统区域导致安全隐患当然在read里面还要有一些访问各种端口所得到的数据等等,这也就是所要给用户使用的数据

       如果具备了以上的几个函数也就具有了一个驱动的大致的框架结构,可以正常的加载卸载驱动,不过具体到要驱动作些事情还是需要在各个子函数里添加一些需要用到的变量及用到的参数,这样驱动才能正式的运行,才能得到想要的结果

       键盘驱动的编写:其实也就是在原有的结构上添加一些变量,初始化一些端口,并访问,最后通过传递参数得到一个键值,这样一个键盘驱动才是最完全的

       首先说一下键盘驱动的方案,在这里的64个键盘,其中都是触发同一个中断,然后再通过中断程序扫描键盘,得到键值并存在队列里面,然后由read函数调用传递给用户使用,这里存在一个建队列的过程,这个队列其实就是一个环形的链表,由一个指针指向其中的一个结构体,然后存键值,取键值,

typedef struct {          

    unsigned char buf[MAX_BUTTON_BUF]; 

    unsigned int head,tail;          

    wait_queue_head_t wq;        

} BUTTON_DEV;

这个就是链表的结构体,包含了一个数组主要用来存放键值的,还有head,tail是用来指示当前的存放键值位置和取键值的位置,最后的wq也就是一个等待队列,这样才能在阻塞模式下工作当然在这里有个宏定义的很好,

#define    INCBUF(x,mod)    ((++(x)) & ((mod)-1)) 

这个令我费了好长时间去理解,也就是组成环形链表的一个构成,mod的值为链表长度,当x在链表的范围时是不影响的,大于时则与后自动把X置为初始值重新开始这样在设备初始化时也就需要初始化一下队列,把队列置为等待队列,

    init_waitqueue_head(&(buttondev.wq));

这样才能在阻塞模式下更好的使用这个队列作为等待队列,另外初始化还应包括对中断的初始化,

 set_irq_type(IRQ_EINT5,IRQT_FALLING);

这里把对应的IRQ_EINT5中断置为上升沿触发模式,当然模式也是可以变换的,这是根据自己的情况而定的这样除了一些所必须的架构初始化,键盘初始化已经足够了卸载当然是一样的原理,同样的架构是不变的

       打开文件open()时所需做的也是一些对各种参数的初始化,主要是对中断的申请:

request_irq(IRQ_EINT5, (void *)&matrix_button_Isr, SA_INTERRUPT, DEVICE_NAME, NULL);

当然在关闭文件时也就调用了释放中断函数,把对应的中断函数关了:

free_irq(IRQ_EINT5,NULL);

其实这一切都是对应的过程这样所对应的打开关闭文件已经做得差不多了,接下来主要就是对read()还有中断处理的操作了

       中断操作函数如下:

static void matrix_button_Isr(int irq, void *dev_id, struct pt_regs *reg)

{

              int r;

              disable_irq(IRQ_EINT5);

       if(testkey()==1)

       {

              r=get_row();

              get_row();

              key=buttonstatus[row][col];

              if(key!=0)storekey();

              while(r==get_row())mdelay(1);

       }            enable_irq(IRQ_EINT5);

}

这里主要就是关中断,中断来后禁止其它中断函数,其实这里也是一个算法的问题,

其中的取键值的过程主要是,get_row()通过判断那个为低先得到键盘按下所在的行,然后get_col()再得到键盘所在的列,主要是各个列位依次置0,判断行是否变化,如果变化则是所要找的列,这样键值就可以通过列表查到了,最后还有一个开中断的设置,不过当时一直出现一个问题,在开中断后如果按住键不松的话将会一直有中断产生,最后只好用了一条while语句,一直等到键释放后才开中断

       接下来就只剩读函数了read(),在这里主要是取冲区的键值,这样在这种情况下如果有键值的话则直接取出,然后通过

copy_to_user(buff,(char *)&button_ret,sizeof(unsigned char));

把值传递给用户区,如果没值的话则判断是否为阻塞模式,如果为非阻塞则直接返回,如果为阻塞则设置等待队列,一直等待直到唤醒后继续读值

static ssize_t matrix_button_read(struct file *filp, char *buff, size_t count,loff_t *offset)

{    

    static unsigned char button_ret;

 retry:

       if(buttondev.head!=buttondev.tail)

       {

    button_ret=buttonRead();

    copy_to_user(buff,(char *)&button_ret,sizeof(unsigned char));

    return sizeof(unsigned char);

        }

    else

        {

    if(filp->f_flags & O_NONBLOCK)

        return -EAGAIN;

       wait_event_interruptible(buttondev.wq,flag);

       flag=0;

       if(signal_pending(current))

                     {

             printk("rturn -ERESTARTSYS\n");

             return -ERESTARTSYS;

            }

    goto retry;

       }

    return sizeof(unsigned char);

}

]]> 会飞的风 技术学习 http://blog.sina.com.cn/s/blog_4aee4327010008ce.html#comment Thu, 05 Apr 2007 07:12:38 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008ce.html http://blog.sina.com.cn/s/blog_4aee4327010008an.html

一个最为简单的文件系统,其实就是配置一下busybox,建几个文件架,然后把初始化些一下就可以搭建了,基本没什么的功能

[*] Support for devfs

[*] Build BusyBox as a static binary (no shared libs)

/* 将 busybox 编译为静态连接,少了启动时找动态库的麻烦 */

[*] Do you want to build BusyBox with a Cross Compiler?

(/usr/local/arm/3.3.2/bin/arm璴inux) Cross Compiler prefix

[*] Support reading an inittab file

/* 支持 init 读取/etc/inittab 配置文件,一定要选上 */

Choose your default shell (ash) >

/* (X) ash

* #!/bin/sh */

[*] ash

[*] cp

[*] cat

[*] ls

[*] echo (basic SuSv3 version taking no options)

[*] env

[*] mv

[*] pwd

[*] rm

[*] touch

[*] mount

[*] umount

[*] Support loopback mounts

[*] Support for the old /etc/mtab file

另外,按照他的这种方法做出来的文件系统,运行的时候 shell 并不好有,没有历史记录自动补全删除字符的功能,下面介绍如何为它添加这些功能:

[*] vi-style line editing commands

二再来说一下配置文件的问题

在文件系统中,配置文件主要存放在 /etc 目录里面使用 /linuxrc 脚本

至于 rcS 这个目录的编写主要是安排哪些目录挂载哪些次级文件系统

现在已经可以跑什么也没有的系统了

声明:

由于这次作Linux确实是第一次接触,大量查找了网上的资源,目的也就是编一个最为简单的操作系统,于是乎所作步骤所写总结可能会很多copy自其他地方,敬请作者谅解

备注:

参考文档:基于 S3c2410 的 Linux 全线移植文档

参考网址:应该是luofuchong写的,非常有用,对busybox理解非常有帮助

http://www.cnitblog.com/luofuchong/archive/2007/01/10/21711.aspx

]]> 会飞的风 技术学习 http://blog.sina.com.cn/s/blog_4aee4327010008an.html#comment Tue, 03 Apr 2007 06:09:55 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008an.html http://blog.sina.com.cn/s/blog_4aee4327010008a9.html 1,内核支持

YAFFS2是YAFFS的升级版,能更好的支持NAND FLASH,我们采用最新的YAFFS2文件系统我们首先下载YAFFS文件系统

http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2.tar.gz?view=tar

下载完成以后解压着文件包,在文件包的根目录下面有个文件patch-ker.sh,我们执行这个文件,就可以很轻松的把yaffs2加入到内核中具体命令是:

[root@localhost yaffs2]# sh patch-ker.sh /linux2.6_2410/linux-2.6.14

这里我们假设我们的linux2.6.14的内核在/linux2.6_2410/linux-2.6.14目录下执行完成以后,我们的yaffs2已经加入到了内核,在内核的fs目录下你会发现多了一个yaffs2目录,在这个目录下是yaffs2的相关内容,在内核的配置菜单[File systems]à[miscellaneous filesystems]中增加了[Yaffs2 file systems support]选项这个选项就是yaffs2的配置内容我们可以选择这个选项的全部内容,保存配置,然后退到终端,输入make,重新编译内核,内核中就增加了对yaffs2文件系统的支持

主要是把yaffs2文件系统的文件拷贝到fs目录,并修改Makefile 和 Kconfig文件

在配置方面有些地方要注意一下,以下是我的配置信息:


1,首先make menuconfig,进入配置窗口,然后选择load an Alternate Configuration File

把arch/arm/configs/smdk2410_defconfig配置文件load进来


2,进入Device Drivers->Memory Technology Devices(MTD)目录,配置界面如下:

Memory Technology Device (MTD) support

[ ] Debugging

[ ] MTD concatenating support

[*] MTD partitioning support

[ ] RedBoot partition table parsing

[ ] Command line partition table parsing

[ ] ARM Firmware Suite partition parsing

--- User Modules And Translation Layers

[*] Direct char device access to MTD devices

[*] Caching block device access to MTD devices

[ ] FTL (Flash Translation Layer) support

[ ] NFTL (NAND Flash Translation Layer) support

[ ] INFTL (Inverse NAND Flash Translation Layer) support

RAM/ROM/Flash chip drivers --->

Mapping drivers for chip access --->

Self-contained MTD device drivers --->

NAND Flash Device Drivers --->


3,进入NAND Flash Device Drivers目录,配置界面如下:

[*] NAND Device Support

[ ] Verify NAND page writes

[*] NAND Flash support for S3C2410/S3C2440 SoC

[*] S3C2410 NAND driver debug

[ ] S3C2410 NAND Hardware ECC

[ ] DiskOnChip 2000, Millennium and Millennium Plus (NAND reimplement

[ ] Support for NAND Flash Simulator


回到File systems->Miscellaneous filesystems目录,配置信息如下:

[*] YAFFS2 file system support

--- 512 byte / page devices

[*] Lets Yaffs do its own ECC

[*] Use the same ecc byte order as Steven Hill's nand_ecc.c

--- 2048 byte (or larger) / page devices

[*] Autoselect yaffs2 format

[*] Disable lazy loading

[*] Turn off wide tnodes

[*] Turn off debug chunk erase check

[*] Cache short names in RAM



从2.6.12的fs/Kconfig中拷贝下面几项到2.6.14的fs/Kconfig中去:


config DEVFS_FS

bool "/dev file system support (OBSOLETE)"

depends on EXPERIMENTAL

help

This is support for devfs, a virtual file system (like /proc) which

If unsure, say N.


config DEVFS_MOUNT

bool "Automatically mount at boot"

depends on DEVFS_FS

help

This option appears if you have CONFIG_DEVFS_FS enabled. Setting

this to 'Y' will make the kernel automatically mount devfs onto /dev

when the system is booted, before the init thread is started.

You can override this with the "devfs=nomount" boot option.

If unsure, say N.


config DEVFS_DEBUG

bool "Debug devfs"

depends on DEVFS_FS

help

If you say Y here, then the /dev file system code will generate

debugging messages. See the file

<file:Documentation/filesystems/devfs/boot-options> for more

details.

If unsure, say N.

重新make menuconfig在File systems->Pseudo filesystems目录里面可以后到devfs的配置选项如下:

[*] /proc file system support

[*] /dev file system support (OBSOLETE)

[*] Automatically mount at boot

[*] Debug devfs

[*] Virtual memory file system support (former shm fs)

[ ] Relayfs file system support

改变启动参数

noinitrd root=/dev/mtdblock/3 init=linuxrc console=ttySAC0,115200

好了,应该完成了,保存配置后,make 生成的zImage下载到flash中就可以成功挂载yaffs2文件系统了(我现在用的是原来2.4内核用的yaffs2文件系统,所以,我现在只是帮我的板换了个2.6的内核而已,下一步打算搞一个属于自己的文件系统,呵呵)

/****************************

声明:

确实是第一次接触,大量查找了网上的资源,目的也就是编一个最为简单的操作系统,于是乎所作步骤所写总结可能会很多copy自其他地方,敬请作者谅解

备注:


]]> 会飞的风 技术学习 http://blog.sina.com.cn/s/blog_4aee4327010008a9.html#comment Tue, 03 Apr 2007 03:50:04 GMT+8 http://blog.sina.com.cn/s/blog_4aee4327010008a9.html


引文来源  听风--思考

----------------------------
一键转贴,快速捕捉生活精彩,赢每周好礼!查看活动首页>>

  评论这张
 
阅读(208)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017