- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux 2.6内核的精彩世界
2003年岁末,Linux社区最鼓舞人心的消息莫过于期盼已久的Linux内核2.6版正式推出。作为一个主要发布版本,2.6相对于2.4有很大的改动;它引入了许多新的特性,同样也去除很多过时的特性。
它在哪些方面有大的改动?它对Linux的开发人员以及其他层面的Linux用户可能有什么样的影响?阅读本文,您将得到答案。--译者
尽管我们第一次启动Linux 2.4似乎只是昨天的事,时间已经流走,内核开发团队的2.6版内核开发工作已经接近完成了。本文将试图描述2.6内核中的许多新特性(侧重i386平台的Linux)。和封闭源码的软件的预发布不一样的是,这里所描述的所有特性当前都是2.5版内核开发树中可用的(其中一些的bug少一些,另一些bug多一些)。(按照Linux的传统,偶数版本的内核是稳定的,奇数版本的只是开发用的)。也就是说,这里所描述的一些特性在实际的2.6版本中仍可能被去除或标志为experimental(试验性)。然而内核当前处于特性冻结(feature-freeze)时期,最终的发行版本应该不大可能过于偏离这里的描述。同时也应该清楚这里描述的一些新特性在第一次出现在2.6系列内核后,可能被向后移植到了官方的或者发行版供应商的2.4版内核之中。
或许使得这篇文章更为晦涩的是,即将到来的内核的版本号至今仍未确定。最可能使用的版本号是2.6,但是一些人提议版本号可以使用3.0,因为这个版本中包含了NUMA以及无MMU系统的支持。为论述方便,本文将一直使用2.6作为即将到来的内核的版本号。
您正在阅读的是本文档(《Linux 2.6内核的精彩世界》)非正式版的第一版,完稿于2003年7月13日,基于2.5.75开发版内核。随着Linux内核最后工作的完成,这份文档将发布其他非正式版,但是这份文档的正式版直到2.6的最后发布才宣告完成。由于本文是非正式版的第一版,其中可能有错误或者疏漏;如果您发现了它们,请告诉我,我将很高兴地去修正它们。
到目前为止的故事...
Linux内核始于1991年由Linus Torvalds为他的386开发的一个类Minix的操作系统。Linus初始曾想命名为这个系统为Freax,但很幸运的是最后他最后没有那样做。Linux 1.0的官方版发行于1994年3月,包含了386的官方支持,仅支持单cpu系统。Linux 1.2发行于1995年3月,它是第一个包含多平台(Alpha,Sparc,Mips等)支持的官方版本。Linux 2.0发行于1996年6月,包含很多新的平台支持,但是最重要的是,它是第一个支持SMP(对称多处理器)体系的内核版本。Linux 2.2在1999年1月到来,它带来了SMP系统上性能的极大提升,同时支持更多的硬件。最后,Linux 2.4于2001年1月发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等。Linux 2.6不仅包含了这些特性,同时也是一个无论对相当大的系统还是相当小的系统(PDA等)的支持都有很大提升的大跨越。
多种平台支持
能够支持相当广泛的硬件和平台,是采用Linux作为内核的操作系统(比如 GNU操作系统,系统和环境常常是和Linux一块分发。Linux一般不被认为是独立的操作系统,只是操作系统的内核。)的优势之一。Linux自1.2版就开始包含对新的处理器类型和特性的支持,最新的Linux 2.6内核发布版本也不例外。这种趋势不会直接影响到Linux在Intel平台下的使用,同时使得Linux能在尽可能大的范围内被使用,这一点非常重要。
小规模-嵌入式系统中的Linux
Linux 2.6 扩展多平台支持的一个主要途径就是把uClinux的大部并入了主流内核(mainstream kernel)。uCLinux(可以发音为you-see-Linux,但更正确的拼写,首字母应该式希腊字母mu)是将Linux应用在微控制器平台的项目。很多年来,这个Linux分支为许多嵌入式芯片提供了支持,把它更多的集成到主流内核中是一件非常有意义的事。
不像通常的Linux移植版本,这里描述的嵌入式移植版由于硬件限制和通常的Linux相比,不具有所有类似的特性。主要的区别在于:这些移植版是针对于没有内存管理单元(MMU)的处理器的(Intel的CPU从386开始就有MMU了)。缺少MMU的支持,运行真正的多任务系统时,任务之间没有内存保护机制(因此任何程序都可以使得其他程序崩溃),一些有关进程派生的系统调用也无法实现。正是因为没有内存保护机制(或者说,没有任何安全性可言),它们不
文档评论(0)