《异构多核多线程智能调度策略研究》小组工作总结.pdfVIP

《异构多核多线程智能调度策略研究》小组工作总结.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《异构多核多线程智能调度策略研究》 小组工作总结 项目负责人:杜霖 组员:肖戊辰 唐武兵 沈岩 指导教师:徐远超 一年之前第一次接触Linux和开源软件运动的时候,感觉这一切简直太不可 思议了,一名赫尔辛基大学的二年级学生 Linus Torvalds,因为不满意当时所 有的操作系统,重写了他的老师——计算机科学巨匠Andrew S. Tanenbaum—— 编写的类 Unix 操作系统 Minix,并将它放到了互联网上,取名为 Linux。从此 Linux 的发展便一发不可收拾,从最初由几名世界顶级计算机 hacker 通过网络 和Linus共同维护,到如今庞大的开发社区,它正在被全世界的人关注,并被应 用到所有你能想象到的地方。 那时候一心想写一个自己的操作系统,于是就没日没夜地研读Linux内核源 代码,看各种关于 Linux 内核编程的书籍。内核太大了,几百万行的代码,一辈 子也不可能看完;带着美式幽默的注释,让你完全摸不着头脑;错综复杂的逻辑 关系,繁琐的硬件知识,再加上诡异的 gcc 属性和 ATT 汇编语法,让我这只菜 鸟仿佛误入了亚马逊雨林。漫无目的学习的日子不知道持续了多久,我意识到这 样下去注定一无所获。后来我找到了徐远超老师,他非常热衷于Linux内核的研 究,他告诉我,现在的处理器无论从集成度、工艺、核数都即将达到极限,要突 破这个极限,就要将同构的处理器模式转变为异构模式,异构多核处理器将是处 理器的未来。然而目前的操作系统,包括Linux,都不支持异构的处理器,因此 现在很多学者都在研究支持异构多核处理器的Linux内核调度策略,他认为这个 课题将是操作系统领域的重点之一。我觉得这个研究方向很有意思,目标明确, 于是找来一些爱好 Linux 的朋友,在徐老师的指导下开始了为期一年的 Linux 内核之旅。 这一年的艰辛与喜悦无法用语言形容。 我和我的组员大部分只有C和汇编的编程功底,对于Linux的底层实现几乎 都是零基础。最开始面对内核源代码真的是被吓住了,每一行都工工整整地列在 那里,你懂得那些语法,但你不知道那是做什么的;就像是最开始学习英语,你 认得每个字母,甚至音标,但不知道它们连在一起是什么意思。还有内核源代码 的注释,好像是那些开发 Linux 的世界级 hacker 们专用的美式俚语。于是我们 就找来各种参考书,最经典的是一本原版 Understanding The Linux Kernel, 我们就对照着它的讲解,一行行地理解源代码。Linux内核学习最难得一点就是 它的环环相扣,一个知识点可能牵扯到其他复杂的知识点,比如你要彻底弄懂线 程的切换,你就要从代码级理解什么是线程,它是如何创建的,还要掌握 gcc 编译器的内联汇编格式和它特有的__attribute__属性;你要弄懂什么是系统调 用就要知道什么是中断、什么是异常,Linux定义的中断和CPU制造厂商定义的 有什么区别等等,当真正弄懂一些东西,就感觉与自己的计算机靠得更近了,那 种感觉真的是太爽了。钻研了半本书,读了上千行代码,回过头来真正要自己写 些代码加入到内核中时,发现一行也写不出来,我们才意识到,只看分析不写程 序等于什么也没学会,于是我们就试着写第一个自己的系统调用,第一次编译自 己的内核,你难以想象,这些事情甚至可以改变一个程序员的人生观和价值观!! 我们几个每天几乎从早到晚地学习这些内容。内核编程不像用户层那么容易,每 次编译都要经历很长时间,一个小的疏漏都可能导致系统崩溃,或者满屏的警告, 有些错误无法复现,因此根本无法调试,网上的资料搜个遍也无法解决,有时候 为了搞定一个问题,一夜都不能合眼。编译-系统崩溃-再编译-再崩溃,这都是 家常便饭了。这个课题属于探索性研究,能否得出结果都是未知的,很多次我们 制定一个内核代码修改方案做试探性修改,路走到一半就实在进行不下去了,所 有的设想都要推翻重来。很多时候当你解决了一个“顽症”,激动到睡不着,第 二天新的问题一下又把你的热情降到冰点,我们的心情曲线总是在波峰和波谷之 间跳变。一些人受不了这种枯燥或是这样高强度的工作而离开了,还有一些坚持 到了最后,但无论是离开的还是留下的,我都想深深地感谢他们,他们都是非常 专业和敬业的程序员,他们每个人都为这个项目奉献自己的智慧和精力

文档评论(0)

docindoc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档