我們首先要了解下什么是linux內(nèi)核,那么Linux內(nèi)核是Linux操作系統(tǒng)的核心,也是整個Linux功能體現(xiàn)的核心,它是用C語言編寫的,符合Posix準(zhǔn)。Linux早是由芬蘭黑客Linus Torvalds為嘗試在英特爾X86架構(gòu)上提供自由免費(fèi)的類UNIX操作系統(tǒng)而開發(fā)的。該計劃開始于1991年,這里有一份Linus Torvalds當(dāng)時在Usenet新聞組comp.os.minix所登載的帖子,這份著名的帖子標(biāo)志著Linux計劃的正式開始。在計劃的早期有一些Minix黑客提供了協(xié)助,而今天全球無數(shù)程序員正在為該計劃無償提供幫助。
現(xiàn)今Linux是一個一體化內(nèi)核(Monolithic Kernel)系統(tǒng),設(shè)備驅(qū)動程序可以完全訪問硬件。Linux內(nèi)的設(shè)備驅(qū)動程序可以方便地以模塊化(Modularize)的形式設(shè)置,并在系統(tǒng)運(yùn)行期間可直接裝載或卸載。
inux內(nèi)核主要功能包括進(jìn)程管理、內(nèi)存管理、文件管理、設(shè)備管理、網(wǎng)絡(luò)管理等。
1、進(jìn)程管理:進(jìn)程是在計算機(jī)系統(tǒng)中資源分配的小單元。內(nèi)核負(fù)責(zé)創(chuàng)建和銷毀進(jìn)程,而且由調(diào)度程序采取合適的調(diào)度策略,實(shí)現(xiàn)進(jìn)程間的合理且實(shí)時的處理器資源的共享。從而內(nèi)核的進(jìn)程管理活動實(shí)現(xiàn)了多個進(jìn)程在一個或多個處理器上的抽象。內(nèi)核還負(fù)責(zé)實(shí)現(xiàn)不同進(jìn)程間、進(jìn)程和其他部件之間的通信。
2、內(nèi)存管理:內(nèi)存是計算機(jī)系統(tǒng)中主要的資源。內(nèi)核使得多個進(jìn)程安全而合理地共享內(nèi)存資源,為每個進(jìn)程在有限的物理資源上建立一個虛擬地址空間。內(nèi)存管理部分代碼可分為硬件無關(guān)部分和硬件有關(guān)部分:硬件無關(guān)部分實(shí)現(xiàn)進(jìn)程和內(nèi)存之間的地址映射等功能;硬件有關(guān)部分實(shí)現(xiàn)不同體系結(jié)構(gòu)上的內(nèi)存管理相關(guān)功能并為內(nèi)存管理提供與硬件無關(guān)的虛擬接口。
3、文件管理:在Linux系統(tǒng)中的任何一個概念幾乎都可以看做一個文件。內(nèi)核在非結(jié)構(gòu)化的硬件上建立了一個結(jié)構(gòu)化的虛擬文件系統(tǒng),隱藏了各種硬件的具體細(xì)節(jié),從而在整個系統(tǒng)的幾乎所有機(jī)制中使用文件的抽象。Linux在不同物理介質(zhì)或虛擬結(jié)構(gòu)上支持?jǐn)?shù)十種文件系統(tǒng)。例如,Linux支持磁盤的標(biāo)準(zhǔn)文件系統(tǒng)ext3和虛擬的特殊文件系統(tǒng)。
4、設(shè)備管理:Linux系統(tǒng)中幾乎每個系統(tǒng)操作終都映射到一個或多個物理設(shè)備上。 除了處理器、內(nèi)存等少數(shù)的硬件資源之外,任何一種設(shè)備控制操作都由設(shè)備特定的驅(qū)動代碼來進(jìn)行。內(nèi)核中必須提供系統(tǒng)中可能要操作的每一種外設(shè)的驅(qū)動。
5、網(wǎng)絡(luò)管理:內(nèi)核支持各種網(wǎng)絡(luò)標(biāo)準(zhǔn)協(xié)議和網(wǎng)絡(luò)設(shè)備。網(wǎng)絡(luò)管理部分可分為網(wǎng)絡(luò)協(xié)議棧和網(wǎng)絡(luò)設(shè)備驅(qū)動程序。網(wǎng)絡(luò)協(xié)議棧負(fù)責(zé)實(shí)現(xiàn)每種可能的網(wǎng)絡(luò)傳輸協(xié)議(TCP/IP協(xié)議等);網(wǎng)絡(luò)設(shè)備驅(qū)動程序負(fù)責(zé)與各種網(wǎng)絡(luò)硬件設(shè)備或虛擬設(shè)備進(jìn)行通信。
以上就是linux內(nèi)核的五大功能的簡單介紹了,各位觀眾老爺了解了嗎,可以一起討論討論啊。