自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Unix內(nèi)核知識講解

系統(tǒng) 其他OS
大多數(shù)Unix內(nèi)核都設(shè)計(jì)為單模塊。單內(nèi)核是兩大陣營中一種較為簡單的設(shè)計(jì),在1980年之前,所有的內(nèi)核都設(shè)計(jì)成單內(nèi)核。

今天,我們來對Unix內(nèi)核的知識進(jìn)行講解。學(xué)習(xí)了很多關(guān)于Unix內(nèi)核的知識。我們知道所有的Unix內(nèi)核都同宗同源,并且提供相同的API,現(xiàn)代的Unix內(nèi)核存在許多設(shè)計(jì)上的相似之處。

Unix內(nèi)核幾乎毫無例外的都是一個(gè)不可分割的靜態(tài)可執(zhí)行塊(文件)。也就是說,它們必須以完整、單獨(dú)的可執(zhí)行塊的形式在一個(gè)單獨(dú)的地址空間中運(yùn)行。Unix內(nèi)核幾乎都需要硬件系統(tǒng)提供頁機(jī)制以管理內(nèi)存。這種頁機(jī)制可以加強(qiáng)內(nèi)存空間的保護(hù),并保證每個(gè)進(jìn)程都可以運(yùn)行于不同的虛地址空間上。

操作系統(tǒng)內(nèi)核可以分為兩大設(shè)計(jì)陣營:單內(nèi)核和微內(nèi)核(第三陣營外內(nèi)核,主要用在科研系統(tǒng)中,但也逐漸在現(xiàn)實(shí)世界中壯大起來)。

單內(nèi)核是兩大陣營中一種較為簡單的設(shè)計(jì),在1980年之前,所有的內(nèi)核都設(shè)計(jì)成單內(nèi)核。所謂單內(nèi)核就是把它從整體上作為一個(gè)單獨(dú)的大過程來實(shí)現(xiàn),并同時(shí)運(yùn)行在一個(gè)單獨(dú)的地址空間。

因此,這樣的內(nèi)核通常以單個(gè)靜態(tài)二進(jìn)制文件的形式存放于磁盤。所有內(nèi)核服務(wù)都在這樣的一個(gè)大內(nèi)核空間中運(yùn)行。內(nèi)核之間的通信是微不足道的,因?yàn)榇蠹叶歼\(yùn)行在內(nèi)核態(tài),并身處同一地址空間:內(nèi)核可以直接調(diào)用函數(shù),這與用戶空間沒有什么區(qū)別。

這種模式的支持者認(rèn)為單模塊具有簡單和高性能的特點(diǎn)。大多數(shù)Unix內(nèi)核都設(shè)計(jì)為單模塊。

另一方面,微內(nèi)核并不作為一個(gè)單獨(dú)的大過程來實(shí)現(xiàn)。相反,微內(nèi)核的功能被劃分為獨(dú)立的過程,每個(gè)過程叫做一個(gè)服務(wù)器。理想情況下,只有強(qiáng)烈請求特權(quán)服務(wù)的服務(wù)器才運(yùn)行在特權(quán)模式下,其他服務(wù)器都運(yùn)行在用戶空間。

不過,所有的服務(wù)器都保持獨(dú)立并運(yùn)行在各自的地址空間。因此,就不可能像單模塊內(nèi)核那樣直接調(diào)用函數(shù),而是通過消息傳遞處理微內(nèi)核通信:系統(tǒng)采用了進(jìn)程間通信(IPC)機(jī)制,因此,各種服務(wù)器之間通過IPC機(jī)制互通消息,互換“服務(wù)”。服務(wù)器的各自獨(dú)立有效地避免了一個(gè)服務(wù)器的失效禍及另一個(gè)。Unix內(nèi)核也是如此。

同樣,模塊化的系統(tǒng)允許一個(gè)服務(wù)器為了另一個(gè)服務(wù)器而換出。因?yàn)镮PC機(jī)制的開銷比函數(shù)調(diào)用多,又因?yàn)闀婕皟?nèi)核空間到用戶空間的上下文切換,因此,消息傳遞需要一定的周期,而單內(nèi)核中簡單的函數(shù)調(diào)用沒有這些開銷。

基于此,付之于實(shí)際的微內(nèi)核系統(tǒng)讓大部分或全部服務(wù)器位于內(nèi)核,這樣,就可以直接調(diào)用函數(shù),消除頻繁的上下文切換。Windows NT內(nèi)核和Mach(Mac OS X的組成部分)是微內(nèi)核的典型實(shí)例。

不管是Windows NT還是Mac OS X,都在其新近版本中不讓任何微內(nèi)核服務(wù)器運(yùn)行在用戶空間,這違背了微內(nèi)核設(shè)計(jì)的初衷。關(guān)于Unix內(nèi)核,我們就介紹了這么多。

【編輯推薦】

  1. Unix系統(tǒng)開放式發(fā)展
  2. Unix系統(tǒng)版本講解
  3. 斷電之后的Unix系統(tǒng)
  4. 從Unix BSD系統(tǒng)結(jié)構(gòu)條理說起
  5. 解析Unix系統(tǒng)軟件
責(zé)任編輯:小霞
相關(guān)推薦

2010-04-21 13:47:45

Unix內(nèi)核

2010-04-30 16:08:20

Unix內(nèi)核

2010-04-30 16:19:17

Unix內(nèi)核

2010-05-04 09:22:10

Unix文件

2010-05-05 13:45:21

Unix Telnet

2010-04-30 13:27:26

Unix cronta

2010-05-04 12:25:28

Unix鏈接

2010-04-30 13:38:51

Unix at命令

2010-05-05 10:44:37

Unix 反引號

2010-05-04 16:33:39

Unix系統(tǒng)

2010-05-05 15:02:39

Unix系統(tǒng)

2010-04-21 13:41:41

Unix內(nèi)核

2010-04-21 14:29:52

Unix 線程

2010-04-21 12:39:48

Unix 消息隊(duì)列

2010-05-04 09:45:28

Unix系統(tǒng)

2010-04-30 18:20:23

Unix系統(tǒng)

2010-04-13 17:52:16

Unix交換區(qū)

2010-05-05 13:22:29

Unix Shell

2010-04-30 01:28:59

Unix系統(tǒng)

2010-04-20 11:34:26

Unix操作系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號