×

linux的内核及其内核源码分析的资料概述

消耗积分:0 | 格式:rar | 大小:2.07 MB | 2018-11-05

分享资料个

  Linux系统的版本那么多,为什么要分析Linux0.11这个超级低的版本呢?答案是简单。高版本的代码量实在是让人心寒,读完有瞎子摸象的感觉。我之所以想分析操作系统是因为我不理解它,不明白那么多不可思议的功能是如何实现的。想想看,我们用了这么多年的计算机操作系统是如何让它启动起来的呢?都说现在的操作系统是分时的、并行的,它是如何实现的呢?让一一个程序挂起,让另-一个程序运行可能! ?甚至-一个函数还可能返回两个不同的值!原理课上说,操作系统真的是这么做的,我相信但是我不理解,因为听说而已,未曾亲见。当我看完了进程的管理之后,我认为我应该算是理解了。不能说理论课不重要,相反,理论课的学习是太重要了。没有原理课上讲的知识,阅读代码的时候会发现,仅仅知道代码这么写会执行什么操作,但是不知道为什么要这么执行,理解起来很是困难。

  我认为,对于学计算机专业的同学来说,看一遍操作 系统的源码是非常非常有用的,它能为以后的学习打下非常好的基础。以前,我用MFC写过一-些 Windows的小小程序,有一种在云雾中行走的感觉,总是认为自己写的程序好像是正确的。当时的感觉就是,编写Windows的应用程序与以往的程序编写方法完全不同,好像在Windows中自己就失去了对计算机的控制能力,完全依偎在操作系统的怀里。有-本书《win32汇编语言程序设计》写得很好,讲解如何在Win32的环境下使用汇编语言。当时认为,实在是太高深没测了。还有,当时在听嵌入式系统的设计的时候真是雾里看花,我不知道老师在将什么。因为不懂的实在是太多了。

  现在,我的感觉是,计算机的世界不再那么的神秘了,-切都好像变得有些透明了,就想粘了油的纸。同时,分析操作系统使我对C语言和汇编语言也有了一个全新的认识,感觉自己好像理解了C语言。这一切我实在是无法用语言来描述,这是一种感觉,没有读过源码的人是不会有的。我可以保证,只有你能够比较认真的阅读代码的话,动手能力- -定会显著的提高。看完了,Linux0.11 的代码,你会说:“我终于入门了!”

  如果时间允许,阅读高版本的Linux自然是非常好的。但是,我认为我来说这个性价比

  太低了。如果我在这段时间里去分析Linux2.*. *的代码,也许刚刚搞明白它的启动过程和系统的结构。而Linux0.11却让我知道了什么是操作系统。不知道实际情况如何,但我现在的感觉是,如果给我2个月的时间,我也可以写一个能够运行的操作系统的。

  写这本书的目的绝对绝对不是让你不去读源代码,而是让你读代码的效率大大的提高。如果不去阅读代码,这本书没有任何的实际意义。由于,操作系统的实现涉及到了很多很多杂乱的知识。我当时为此而在网上东奔西跑,走了很多弯路,固然浪费了很多时间。为了节约你的时间,我将阅读的时候遇到过的困难写了下来。同时,我为这本书建立了一个FTP服务器,将我参考过的文献资料以及一些工具和试验的代码共享了上面。

  在网上关于高版本Linux的分析可以说是海量的,但是关于Linux0.11的我就知道一本,是中文的,叫做《Linux0.11版本完全分析》。因此我想在此感谢他为我们初学者做出的贡献。

  Linux操作系统的版本很多,0.11 版是Linus第一个正式发布的版本,代码量在1万行左右。它包括了进程的管理、内存管理、设备管理和文件管理。在这个操作系统上可以运行.out格式的可执行文件,甚至运行批处理文件,支持多进程。它利用了很多在原理课上提到的技术。但是,由于这个版本很低,因此也有许多技术它没有使用。例如:线程、交换内存、实现进程同步和互斥的PV操作等。同时,它仅仅支持Minix1.0的文件系统,也没有对网络和虚拟文件系统的支持。但是,这些不足不会影响你对操作系统的入门的。

  操作系统是非常的复杂的,但是在Linux0.11中又显得那么的简单。对于用户来说,操作系统的结构是:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !