日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Linux 內(nèi)核的類型( 三 )


此而增加的內(nèi)核設(shè)計(jì)的靈活性和可維護(hù)性可以彌補(bǔ)任何損失 。
我并不想討論這些問(wèn)題,但必須說(shuō)明非常有趣的一點(diǎn)是,這種爭(zhēng)論經(jīng)常會(huì)令人想到前幾年
CPU領(lǐng)域中RISC和CISC的斗爭(zhēng) ?,F(xiàn)代成功的CPU設(shè)計(jì)中包含了所有這兩種技術(shù),就像Linux
內(nèi)核是微內(nèi)核和單內(nèi)核的混合產(chǎn)物一樣 。Linux內(nèi)核基本上是單一的,但是它并不是一個(gè)
純粹的集成內(nèi)核 。前面一章所介紹的內(nèi)核模塊系統(tǒng)將微內(nèi)核的許多優(yōu)點(diǎn)引入到Linux的單
內(nèi)核設(shè)計(jì)中 。(順便提一下,我考慮過(guò)一種有趣的情況,就是Linux的內(nèi)核模塊系統(tǒng)可以
將系統(tǒng)內(nèi)核轉(zhuǎn)化成為簡(jiǎn)單的不傳遞消息的微內(nèi)核設(shè)計(jì) 。雖然我并不贊成,但是它仍然是一
個(gè)有趣的想法 。)
為什么Linux必然是單內(nèi)核的呢?一個(gè)方面是歷史的原因:在Linus的觀點(diǎn)看來(lái),通過(guò)把內(nèi)
核以單一的方式進(jìn)行組織并在最初始的空間中運(yùn)行是相當(dāng)容易的事情 。這種決策避免了有
關(guān)消息傳遞體系結(jié)構(gòu)、計(jì)算模塊裝載方式等相關(guān)工作 。(內(nèi)核模塊系統(tǒng)在隨后的幾年中又
進(jìn)行了不斷地改進(jìn) 。)
另外一個(gè)原因是充足的開(kāi)發(fā)時(shí)間的結(jié)果 。Linux既沒(méi)有開(kāi)發(fā)時(shí)間的限制,也沒(méi)有來(lái)自于市
場(chǎng)壓力的發(fā)行進(jìn)度 。所有的限制只有并不過(guò)分的對(duì)內(nèi)核的修改與擴(kuò)充 。內(nèi)核的單一設(shè)計(jì)
在內(nèi)部實(shí)現(xiàn)了充分的模塊化,在這種條件下的修改或增加都并不怎么困難 。而且問(wèn)題還在
于沒(méi)有必要為了追求尚未證實(shí)的可維護(hù)性的微小增長(zhǎng)而重寫Linux的內(nèi)核(Linus曾多次特
別強(qiáng)調(diào)了如下的觀點(diǎn):為了這點(diǎn)利益而損耗速度是不值得的) 。后面章節(jié)中將詳細(xì)討論充
足開(kāi)發(fā)時(shí)間的效果 。
如果Linux是純微內(nèi)核設(shè)計(jì),那么向其他體系結(jié)構(gòu)上的移植將會(huì)比較容易 。實(shí)際上,有一
些微內(nèi)核,如Mach微內(nèi)核,就已經(jīng)成功地證明了這種可移植性的優(yōu)點(diǎn) 。實(shí)際的情況是,
Linux內(nèi)核的移植雖然不是很簡(jiǎn)單,但也絕不是不可能的:大約的數(shù)字是,向一個(gè)全新的
體系結(jié)構(gòu)上的典型的移植工作需要30 000到60 000行代碼,再加上不到20 000行的驅(qū)動(dòng)程
序代碼(并不是所有的移植都需要新的驅(qū)動(dòng)程序代碼) 。粗略計(jì)算一下,一個(gè)典型的移植
大約平均需要50 000行代碼 。這對(duì)于一個(gè)程序員或者最多一個(gè)程序小組來(lái)說(shuō)是力所能及的
,可以在一年之內(nèi)完成 。雖然這比微內(nèi)核的移植需要更多的代碼,但是Linux的支持者將
會(huì)提出,這樣的Linux內(nèi)核移植版本比微內(nèi)核更能夠有效地利用底層硬件,因而移植過(guò)程
中的額外工作是能夠從系統(tǒng)性能的提高上得到補(bǔ)償?shù)?。
這種特殊設(shè)計(jì)的權(quán)衡也不是很輕松就可以達(dá)到的,單內(nèi)核的實(shí)現(xiàn)策略公然違背了傳統(tǒng)的看
法,后者認(rèn)為微內(nèi)核是未來(lái)發(fā)展的趨勢(shì) 。但是由于單一模式(大部分情況下)在Linux中
運(yùn)行狀態(tài)良好,而且內(nèi)核移植相對(duì)來(lái)說(shuō)比較困難,但沒(méi)有明顯地阻礙程序員團(tuán)體的工作,
他們已經(jīng)成功地把內(nèi)核移植到了現(xiàn)存的大部分實(shí)際系統(tǒng)中,更不用說(shuō)類似掌上型電腦了 。
只要Linux的眾多特點(diǎn)仍然值得移植,新的移植版本就會(huì)不斷涌現(xiàn) 。

推薦閱讀