韓彬
摘 要:計(jì)算機(jī)操作系統(tǒng)自從被研究出來后,已經(jīng)歷經(jīng)了多年的發(fā)展,在漫長的發(fā)展過程中也逐漸涌現(xiàn)出了許多操作系統(tǒng)的體系結(jié)構(gòu),例如:簡單體系結(jié)構(gòu)、微內(nèi)核結(jié)構(gòu)和外核結(jié)構(gòu)等。本文以此為背景,進(jìn)行了深入的研究,主要針對操作系統(tǒng)結(jié)構(gòu)進(jìn)行了細(xì)致分析,并指出了這些結(jié)構(gòu)格子所具備的優(yōu)勢與劣勢,借以對我國的計(jì)算機(jī)操作系統(tǒng)的發(fā)展發(fā)揮有效的促進(jìn)作用。
關(guān)鍵詞:計(jì)算機(jī);操作系統(tǒng)體系結(jié)構(gòu);分析
操作系統(tǒng)對于計(jì)算機(jī)而言,不僅是一項(xiàng)最為基礎(chǔ),也是一項(xiàng)最為重要的系統(tǒng)軟件。立足于計(jì)算機(jī)用戶的角度而言,計(jì)算機(jī)操作系統(tǒng)主要是其所能享受的各項(xiàng)服務(wù);從程序員層面來看,是用戶登錄某一個程序的界面或者是接口;對于設(shè)計(jì)人員來說,則是多樣化的模塊同單元之間的不同聯(lián)系,即本文重點(diǎn)研究的操作系統(tǒng)的體系結(jié)構(gòu)。放諸現(xiàn)實(shí),設(shè)計(jì)或改善一套全新的操作系統(tǒng)的重點(diǎn)在于設(shè)計(jì)體系結(jié)構(gòu),歷經(jīng)多年發(fā)展,計(jì)算機(jī)操作系統(tǒng)已由最初的單一控制循環(huán)體逐漸演變?yōu)檩^為復(fù)雜的分布式操作系統(tǒng),加之用戶的需求逐漸呈現(xiàn)出了多樣化特征,計(jì)算機(jī)操作系統(tǒng)已然變成了一個兼具復(fù)雜與龐大的軟件系統(tǒng)。參照相關(guān)研究結(jié)果表明,分析計(jì)算機(jī)操作系統(tǒng)的體系結(jié)構(gòu)有助于正確處理軟件系統(tǒng)的復(fù)雜問題,如此一來,此舉具有一定的現(xiàn)實(shí)意義。
一、簡單體系結(jié)構(gòu)
計(jì)算機(jī)操作系統(tǒng)體系結(jié)構(gòu)的最初模樣便是簡單體系結(jié)構(gòu),礙于彼時(shí)的多種因素影響,比如平臺、軟件應(yīng)用等方面的限制,致使系統(tǒng)結(jié)構(gòu)展現(xiàn)出了一種混亂無章的模樣,比如:操作系統(tǒng)的各用戶使用的應(yīng)用程序同內(nèi)核程序混雜在一起,甚者二者的運(yùn)行地址和空間完全一致。這類操作系統(tǒng)的本質(zhì)就是相關(guān)過程與項(xiàng)目的簡易組合,而其中所運(yùn)用的方法也較為簡單,因此使得其結(jié)構(gòu)從宏觀層面上來看,十分模糊。
該體系結(jié)構(gòu)的優(yōu)點(diǎn)與缺點(diǎn)如下所述:優(yōu)點(diǎn):不同模塊之間的組合方式相對簡單,組合結(jié)構(gòu)比較緊湊,具備較高的靈活性,可以參照使用環(huán)境和實(shí)際需求的不同自由組裝,且因?yàn)槠淠苤苯討?yīng)用在不同過程中,導(dǎo)致結(jié)構(gòu)的工作效率較高。
缺點(diǎn):1.從上文所述可知,該操作結(jié)構(gòu)較為模糊,不同過程間毫無規(guī)律的相互調(diào)用的問題時(shí)有發(fā)生,過程間的網(wǎng)絡(luò)與聯(lián)系均較為復(fù)雜化,致使相關(guān)人員難以清楚認(rèn)知結(jié)構(gòu)情況。2.系統(tǒng)內(nèi)各過程間的聯(lián)結(jié)性過強(qiáng),對單一過程進(jìn)行的改動往往會影響到其他過程,此舉造成了系統(tǒng)的維護(hù)性較差的情況。3.系統(tǒng)內(nèi)各過程間具有復(fù)雜聯(lián)系,無法保證其處理結(jié)果的正確性,且每一過程都是可見的,難以隱藏信息,這就造成了該系統(tǒng)的可靠性與安全性較低。
二、微內(nèi)核結(jié)構(gòu)
微內(nèi)核計(jì)算機(jī)操作系統(tǒng)體系結(jié)構(gòu)的主要任務(wù)是把系統(tǒng)中原有的代碼轉(zhuǎn)移到較高層次之中,借以減少系統(tǒng)內(nèi)所存代碼的數(shù)量,降低內(nèi)核體積,因此,該結(jié)構(gòu)也被稱為服務(wù)器結(jié)構(gòu)或是客戶機(jī)結(jié)構(gòu)。通常,該系統(tǒng)結(jié)構(gòu)所使用的方法主要是借由用戶進(jìn)程向服務(wù)器發(fā)送相關(guān)請求與要求,進(jìn)而由服務(wù)器在完成后續(xù)操作后,通過某個途徑再反饋至用戶進(jìn)程中。在微內(nèi)核結(jié)構(gòu)中,內(nèi)核的工作內(nèi)容就是處理客戶端與服務(wù)器之間的通信信息,系統(tǒng)內(nèi)包含多個部分,每個部分各具備一定功能,譬如:文件管理、進(jìn)程管理等,這些部分的內(nèi)容量較小,致使管理工作也可以較為便利的開展。內(nèi)核機(jī)構(gòu)的服務(wù)與運(yùn)行均是借助用戶進(jìn)程的形式得以展現(xiàn),無需在核心中運(yùn)行或是直接訪問硬件,以此避免在服務(wù)器出現(xiàn)錯誤或是受損時(shí)對系統(tǒng)產(chǎn)生影響,僅會使相關(guān)的服務(wù)器崩潰。
該體系結(jié)構(gòu)的優(yōu)點(diǎn)與缺點(diǎn)如下所述:優(yōu)點(diǎn):從上文可知,微內(nèi)核結(jié)構(gòu)具有較高的靈活性、拓展性以及可靠性,這將會大幅降低系統(tǒng)的整體復(fù)雜度。
缺點(diǎn):從某種層面上來看,微內(nèi)核結(jié)構(gòu)也具有難以忽略的缺陷,主要表現(xiàn)在應(yīng)用程序調(diào)動服務(wù)時(shí)需經(jīng)過兩次的用戶態(tài)與核心態(tài)的切換。
三、外核結(jié)構(gòu)
外核結(jié)構(gòu)的本質(zhì)是為了使操作系統(tǒng)獲取更優(yōu)化的性能與更高的靈活性,操作系統(tǒng)的接口處在整體系統(tǒng)中屬于硬件層,內(nèi)核之中將以往操作系統(tǒng)產(chǎn)生的抽象全部提出,將重點(diǎn)放置在硬件資源的復(fù)用。在操作系統(tǒng)的外核結(jié)構(gòu)中,內(nèi)核所擔(dān)負(fù)的主要任務(wù)是單一的申請操作、釋放和復(fù)用硬件資源,過往操作系統(tǒng)提供的抽象將全部應(yīng)用于用戶空間中。
通常情況下,外核結(jié)構(gòu)的內(nèi)核主要分別負(fù)責(zé)三個方面的工作:跟蹤資源的所有權(quán)、保護(hù)操作系統(tǒng)的安全性和撤銷對資源的訪問行為。外核中,所有操作系統(tǒng)的抽象都以庫的形式展現(xiàn)出來,而用戶在訪問硬件資源時(shí),也是借由調(diào)用庫來完成操作的。
該體系結(jié)構(gòu)的優(yōu)點(diǎn)與缺點(diǎn)如下所述:優(yōu)點(diǎn):外核機(jī)構(gòu)所呈現(xiàn)出的最明顯的特點(diǎn)是較快的運(yùn)行速度,應(yīng)用程序可以直接訪問硬件系統(tǒng);良好的拓展性,該系統(tǒng)僅需在應(yīng)用層之上額外添加一個系統(tǒng)庫即可拓展出應(yīng)用或功能,無需對內(nèi)核做出任何改動;較好的靈活性,只對系統(tǒng)庫配置加以更改即可使系統(tǒng)適應(yīng)不同的運(yùn)行環(huán)境。
缺點(diǎn):外核結(jié)構(gòu)最為明顯的缺點(diǎn)是較差的安全性,系統(tǒng)之內(nèi)的多數(shù)共享服務(wù)均處于應(yīng)用層之中,若想對其開展保護(hù)工作則只能借由互聯(lián)網(wǎng)用戶予以實(shí)施,此舉將會降低系統(tǒng)的安全性。
綜上所述,由上文可知,在市場中較為主流的操作系統(tǒng)的體系結(jié)構(gòu)都具有不同的優(yōu)勢與劣勢,尚未出現(xiàn)一種盡善盡美的體系結(jié)構(gòu)。通常來講,微內(nèi)核結(jié)構(gòu)的操作系統(tǒng)體系結(jié)構(gòu)多應(yīng)用在安全的操作系統(tǒng)之中,而簡單結(jié)構(gòu)和外核結(jié)構(gòu)則會適用在嵌入式操作系統(tǒng)中。不過,在實(shí)際的應(yīng)用過程中,則需參照具體的實(shí)際情況選擇適宜的體系結(jié)構(gòu),在必要時(shí)間,可以依據(jù)各異的需求對操作系統(tǒng)進(jìn)行合理修改,從而滿足實(shí)際所需。
參考文獻(xiàn):
[1].趙良,葉俊民,羅景等.操作系統(tǒng)體系結(jié)構(gòu)風(fēng)格的比較研究[J].計(jì)算機(jī)應(yīng)用研究,2005(5):50-52.
[2].王邦千.計(jì)算機(jī)操作系統(tǒng)體系結(jié)構(gòu)綜述[J].達(dá)縣師范高等??茖W(xué)校學(xué)報(bào):自然科學(xué)版,2005(5):30-32,61.