簡述單內(nèi)核操作系統(tǒng)及其優(yōu)缺點(diǎn)
很多人都對(duì)單內(nèi)核操作系統(tǒng)不太了解,下面由學(xué)習(xí)啦小編為大家整理了簡述單內(nèi)核操作系統(tǒng)及其優(yōu)缺點(diǎn)的相關(guān)知識(shí),希望對(duì)大家有幫助!
簡述單內(nèi)核操作系統(tǒng)及其優(yōu)缺點(diǎn)
單內(nèi)核也叫集中式操作系統(tǒng)。整個(gè)系統(tǒng)是一個(gè)大模塊,可以被分為若干邏輯模塊,即處理器管理、存儲(chǔ)器管理、設(shè)備管理和文件管理,其模塊間的交互是通過直接調(diào)用其他模塊中的函數(shù)實(shí)現(xiàn)的。
優(yōu)點(diǎn):
單內(nèi)核模型以提高系統(tǒng)執(zhí)行效率為設(shè)計(jì)理念,因?yàn)檎麄€(gè)系統(tǒng)是一個(gè)統(tǒng)一的內(nèi)核,所以其內(nèi)部調(diào)用效率很高。
缺點(diǎn):
單內(nèi)核的缺點(diǎn)也正是由于其源代碼是一個(gè)整體而造成的,通常各模塊之間的界限并不特別清晰,模塊間的調(diào)用比較隨意,所以進(jìn)行系統(tǒng)修改或升級(jí)時(shí),往往“牽一發(fā)而動(dòng)全身”,導(dǎo)致工作量加大,使其難于維護(hù)。
補(bǔ)充:1.微內(nèi)核操作系統(tǒng)及其優(yōu)缺點(diǎn)
微內(nèi)核是指把操作系統(tǒng)結(jié)構(gòu)中的內(nèi)存管理、設(shè)備管理、文件系統(tǒng)等高級(jí)服務(wù)功能盡可能地從內(nèi)核中分離出來,變成幾個(gè)獨(dú)立的非內(nèi)核模塊,而在內(nèi)核只保留少量最基本的功能,使內(nèi)核變得簡潔可靠,因此叫微內(nèi)核。
微內(nèi)核實(shí)現(xiàn)的基礎(chǔ)是操作系統(tǒng)理論層面的邏輯功能劃分。幾大功能模塊在理論上是相互獨(dú)立的,形成比較明顯的界限,其優(yōu)點(diǎn)如下:
· 充分的模塊化,可獨(dú)立更換任一模塊而不會(huì)影響其他模塊,從而方便第三方開發(fā)、設(shè)計(jì)模塊。
· 未被使用的模塊功能不必運(yùn)行,因而能大幅度減少系統(tǒng)的內(nèi)存需求。
· 具有很高的可移植性,理論上講只需要單獨(dú)對(duì)各微內(nèi)核部分進(jìn)行移植修改即可。由于微內(nèi)核的體積通常很小,而且互不影響,因此工作量很小。
不出:2.操作系統(tǒng)其它兩種內(nèi)核系統(tǒng)簡述
外內(nèi)核
外內(nèi)核系統(tǒng),也被稱為縱向結(jié)構(gòu)操作系統(tǒng),是一種比較極端的設(shè)計(jì)方法。
外內(nèi)核這種內(nèi)核不提供任何硬件抽象操作,但是允許為內(nèi)核增加額外的運(yùn)行庫,通過這些運(yùn)行庫應(yīng)用程序可以直接地或者接近直接地對(duì)硬件進(jìn)行操作。它的設(shè)計(jì)理念是讓用戶程序的設(shè)計(jì)者來決定硬件接口的設(shè)計(jì)。外內(nèi)核本身非常的小,它通常只負(fù)責(zé)系統(tǒng)保護(hù)和系統(tǒng)資源復(fù)用相關(guān)的服務(wù)。
傳統(tǒng)的內(nèi)核設(shè)計(jì)(包括單核和微核)都對(duì)硬件作了抽象,把硬件資源或設(shè)備驅(qū)動(dòng)程序都隱藏在硬件抽象層下。比方說,在這些系統(tǒng)中,如果分配一段物理存儲(chǔ),應(yīng)用程序并不知道它的實(shí)際位置。而外核的目標(biāo)就是讓應(yīng)用程序直接請(qǐng)求一塊特定的物理空間,一塊特定的磁盤塊等等。系統(tǒng)本身只保證被請(qǐng)求的資源當(dāng)前是空閑的,應(yīng)用程序就允許直接存取它。既然外核系統(tǒng)只提供了比較低級(jí)的硬件操作,而沒有像其他系統(tǒng)一樣提供高級(jí)的硬件抽象,那么就需要增加額外的運(yùn)行庫支持。這些運(yùn)行庫運(yùn)行在外核之上,給用戶程序提供了完整的功能。
理論上,這種設(shè)計(jì)可以讓各種操作系統(tǒng)運(yùn)行在一個(gè)外核之上,如Windows和Unix。并且設(shè)計(jì)人員可以根據(jù)運(yùn)行效率調(diào)整系統(tǒng)的各部分功能。
混合內(nèi)核
混合內(nèi)核它很像微內(nèi)核結(jié)構(gòu),只不過它的的組件更多的在核心態(tài)中運(yùn)行以獲得更快的執(zhí)行速度。
混合內(nèi)核實(shí)質(zhì)上是微內(nèi)核,只不過它讓一些微核結(jié)構(gòu)運(yùn)行在用戶空間的代碼運(yùn)行在內(nèi)核空間,這樣讓內(nèi)核的運(yùn)行效率更高些。這是一種妥協(xié)做法,設(shè)計(jì)者參考了微內(nèi)核結(jié)構(gòu)的系統(tǒng)運(yùn)行速度不佳的理論。然而后來的實(shí)驗(yàn)證明,純微內(nèi)核的系統(tǒng)實(shí)際上也可以是高效率的。大多數(shù)現(xiàn)代操作系統(tǒng)遵循這種設(shè)計(jì)范疇,微軟公司開發(fā)的Windows操作系統(tǒng)就是一個(gè)很好的例子。另外還有XNU,運(yùn)行在蘋果Mac OS X上的內(nèi)核,也是一個(gè)混合內(nèi)核。
混合內(nèi)核的例子: BeOS 內(nèi)核 ,DragonFly BSD,ReactOS 內(nèi)核Windows NT、Windows 2000、Windows XP、Windows Server 2003以及Windows Vista等基于NT技術(shù)的操作系統(tǒng)。