1.模塊子系統(tǒng)(Module Subsystem)、統(tǒng)一設(shè)備模型(Unified Device Model)和 PnP支持模塊子系統(tǒng)發(fā)生了重大變化。
2.穩(wěn)定性有所提高
為了徹底避免內(nèi)核加載或者導(dǎo)出正在被使用的內(nèi)核模塊,或者至少為了減少加載或者卸載模塊的同時(shí)使用該模塊的可能性(這有時(shí)會(huì)導(dǎo)致系統(tǒng)崩潰),內(nèi)核加載和導(dǎo)出內(nèi)核模塊的過程都得到了改進(jìn)。
我一直以為Linux不會(huì)死機(jī),直到我的基于2.4內(nèi)核Linux突然死機(jī),造成重大損失。所以,強(qiáng)烈建議所有基于2.4內(nèi)核的Linux應(yīng)用系統(tǒng)馬上升級(jí)內(nèi)核,一定注意,升級(jí)前備份系統(tǒng),防止升級(jí)出錯(cuò)造成重大損失,也要防止硬件不兼容、應(yīng)用系統(tǒng)不兼容問題,最好先測試一下,再上線運(yùn)行!
3.統(tǒng)一設(shè)備模型
統(tǒng)一設(shè)備模型的創(chuàng)建是 2.6 內(nèi)核最重要的變化之一。它促進(jìn)了模塊接口的標(biāo)準(zhǔn)化,其目的是更好地控制和管理設(shè)備,例如:更準(zhǔn)確地確定系統(tǒng)設(shè)備。 電源管理和設(shè)備電源狀態(tài)。 改進(jìn)的系統(tǒng)總線結(jié)構(gòu)管理。
4.即插即用(PnP)支持
運(yùn)行 2.6 內(nèi)核的 Linux 成為一個(gè)真正即插即用的 OS。例如,對(duì) ISA PnP 擴(kuò)展、遺留 MCA 和 EISA 總線以及熱插拔設(shè)備的 PnP 支持。
5.內(nèi)核基礎(chǔ)設(shè)施的變化
為了區(qū)別以 .o 為擴(kuò)展名的常規(guī)對(duì)象文件,內(nèi)核模塊現(xiàn)在使用的擴(kuò)展名是 .ko。 創(chuàng)建了新的 sysfs 文件系統(tǒng),當(dāng)內(nèi)核發(fā)現(xiàn)設(shè)備樹時(shí)就會(huì)描述它。 內(nèi)存支持,NUMA 支持 ,支持更大數(shù)量的 RAM。2.6 內(nèi)核支持更大數(shù)量的 RAM,在分頁模式下最高可達(dá) 64GB。
6.NUMA
對(duì)非一致內(nèi)核訪問(Non-Uniform Memory Access - NUMA)系統(tǒng)的支持是 2.6 內(nèi)核中新出現(xiàn)的。
7.線程模型,NPTL
相對(duì)于 v2.4 的 LinuxThreads,在版本 2.6 中新出現(xiàn)的是 NPTL(Native POSIX Threading Library)。 NPTL 為 Linux 帶來了企業(yè)級(jí)線程支持,提供的性能遠(yuǎn)遠(yuǎn)超過了 LinuxThreads。它所基于的用戶與內(nèi)核線程的比率是 1:1。
在 2003 年 10 月,GNU C 程序庫 glibc 中融入了 NPTL 支持,Red Hat 率先在 Red Hat Linux 9 和 Red Hat Enterprise Linux 中使用定制的 v2.4 內(nèi)核實(shí)現(xiàn)了 NPTL。
8.性能改進(jìn)
新的調(diào)度器算法 ,2.6 Linux 內(nèi)核引入了新的 O(1) 算法。在高負(fù)載情況下它運(yùn)行得特別好。新的調(diào)度器基于每個(gè) CPU 來分布時(shí)間片, 這樣就消除了全局同步和重新分配循環(huán),從而提高了性能。
內(nèi)核搶占(Kernel Preemption) ,新的 2.6 內(nèi)核是搶占式的。這將顯著地提高交互式和多媒體應(yīng)用程序的性能。
I/O 性能改進(jìn),Linux 的 I/O 子系統(tǒng)也發(fā)生了重大的變化,通過修改 I/O 調(diào)度器來確保不會(huì)有進(jìn)程駐留在隊(duì)列中過長時(shí)間等待進(jìn)行輸入/輸出操作, 這樣就使得 I/O 操作的響應(yīng)更為迅速。
快速用戶空間互斥(Fast User-Space Mutexes) ,“futexes”(快速用戶空間互斥)可以使線程串行化以避免競態(tài)條件,引入它也提高了響應(yīng)速度。 通過在內(nèi)核空間中部分實(shí)現(xiàn)“futexes”以允許基于競爭設(shè)置等待任務(wù)的優(yōu)先級(jí)而實(shí)現(xiàn)改進(jìn)。
9.擴(kuò)展性改進(jìn)
處理器數(shù)目更多,Linux 內(nèi)核 2.6 最多可以支持 64 個(gè) CPU。支持更大的內(nèi)存,歸功于 PAE(物理地址擴(kuò)展,Physical Address Extensions),在 32-位系統(tǒng)上分頁模式下所支持的內(nèi)存增加到了 64GB。
用戶和組,惟一用戶和組的數(shù)量從 65,000 增至 40 多億,也就是從 16-位增加到了 32-位。
PID 的數(shù)量,PID 的最大數(shù)量從 32,000 增至 10 億。
打開文件描述符的數(shù)量,打開文件描述符的數(shù)量沒有增加,但是不再需要事先設(shè)置該參數(shù),它將自行調(diào)節(jié)。
10.支持更多的設(shè)備
在 Linux 內(nèi)核 2.6 之前,內(nèi)核中有可以約束大型系統(tǒng)的限制,比如每條鏈 256 個(gè)設(shè)備。v2.6 內(nèi)核徹底地打破了這些限制, 不但可以支持更多類型的設(shè)備,而且支持更多同類型的設(shè)備。在 Linux 2.6 系統(tǒng)中,可以支持 4095 種主要的設(shè)備類型, 每一個(gè)單獨(dú)的類型可以有超過一百萬個(gè)子設(shè)備。 文件系統(tǒng)大小, Linux 內(nèi)核 2.6 所允許的可尋址文件系統(tǒng)大小最大為 16 TB。
11.文件系統(tǒng)
ext2、ext3 和 ReiserFS 等傳統(tǒng) Linux 文件系統(tǒng)得到了顯著的改進(jìn)。最值得注意的改進(jìn)是擴(kuò)展屬性(或文件元數(shù)據(jù))的引入。 最重要的是 POSIX ACL 的實(shí)現(xiàn),這是對(duì)普通 UNIX 權(quán)限的擴(kuò)展,可以支持更細(xì)化的用戶訪問控制。
12.除了對(duì)傳統(tǒng) Linux 文件系統(tǒng)的改進(jìn)支持以外,新的內(nèi)核完全支持在 Linux 中相對(duì)較新的 XFS 文件系統(tǒng)。 Linux 2.6 內(nèi)核現(xiàn)在還引入了對(duì) NTFS 文件系統(tǒng)的改進(jìn)的支持,現(xiàn)在允許以讀/寫模式安裝 NTFS 文件系統(tǒng)。