《計算機操作系統(tǒng)》課件 第6、7章 設(shè)備管理、操作系統(tǒng)的整體設(shè)計_第1頁
《計算機操作系統(tǒng)》課件 第6、7章 設(shè)備管理、操作系統(tǒng)的整體設(shè)計_第2頁
《計算機操作系統(tǒng)》課件 第6、7章 設(shè)備管理、操作系統(tǒng)的整體設(shè)計_第3頁
《計算機操作系統(tǒng)》課件 第6、7章 設(shè)備管理、操作系統(tǒng)的整體設(shè)計_第4頁
《計算機操作系統(tǒng)》課件 第6、7章 設(shè)備管理、操作系統(tǒng)的整體設(shè)計_第5頁
已閱讀5頁,還剩126頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第6章設(shè)備管理計算機系統(tǒng)中,通常把處理機和主存儲器之外的部分統(tǒng)稱為外圍設(shè)備,簡稱外設(shè)。外設(shè)種類繁多,功能各異,涉及:機、電、光、磁、聲、自動控制等多種學(xué)科。操作系統(tǒng)必須提供設(shè)備管理功能,讓用戶能簡便、有效地使用各種外設(shè)。設(shè)備管理包括:設(shè)備獨立性設(shè)備驅(qū)動程序計算機和外部設(shè)備的數(shù)據(jù)傳送控制方式設(shè)備的分配一些重要技術(shù)如中斷技術(shù)、緩沖技術(shù)、Spooling技術(shù)6.1概述6.1.1外設(shè)的分類

1.按設(shè)備的從屬關(guān)系分類2.按分配方式分類3.按使用特性分類4.按信息組織、傳送單位分類系統(tǒng)設(shè)備。它是指操作系統(tǒng)生成時,即安裝操作系統(tǒng)時就納入系統(tǒng)管理范圍的各種標(biāo)準(zhǔn)設(shè)備。用戶設(shè)備。它是指系統(tǒng)設(shè)備之外的非標(biāo)準(zhǔn)設(shè)備,在安裝操作系統(tǒng)時沒有配置,而由用戶自己安裝配置的設(shè)備。獨享設(shè)備。這類設(shè)備一旦分配給某個實體(用戶、作業(yè)、任務(wù)或進(jìn)程)使用,在沒被釋放前,其他實體不得使用。共享設(shè)備。指允許多個進(jìn)程或作業(yè)同時使用的設(shè)備。虛擬設(shè)備。通過一定的輔助存儲器和控制程序,可將一臺獨享設(shè)備模擬為共享設(shè)備,這個具有了新特性的設(shè)備就稱為虛擬設(shè)備。存儲設(shè)備。它是計算機用來存儲永久性信息的設(shè)備。輸入/輸出設(shè)備。輸入設(shè)備輸出設(shè)備字符設(shè)備。以字符為單位來組織、處理信息的設(shè)備。塊設(shè)備。以數(shù)據(jù)塊為單位來組織、處理信息的設(shè)備。具體應(yīng)用即插即用PnP設(shè)備非即插即用設(shè)備Linux將外部設(shè)備看作文件——設(shè)備文件,它以設(shè)備名作為文件名。應(yīng)用物理設(shè)備前——用mount命令掛裝到目錄樹上(稱為加載)。使用完成后——用umount命令從目錄樹卸下(稱為卸載),才可取走該設(shè)備。要掛裝到作為掛裝點的目錄,系統(tǒng)通常已準(zhǔn)備了一些常用掛裝點,如果掛裝點不存在,必需要用mkdir命令建立,然后才可進(jìn)行掛裝。

6.1.2設(shè)備管理的功能1.設(shè)備管理應(yīng)為每一類設(shè)備提供相應(yīng)的設(shè)備驅(qū)動程序2.提供設(shè)備獨立性3.對緩沖區(qū)進(jìn)行管理4.對Spooling技術(shù)的支持。5.進(jìn)行設(shè)備分配6.提供中斷處理機制1.提供相應(yīng)的設(shè)備驅(qū)動程序選擇打印機型號——確定打印機的驅(qū)動程序。圖6.1選定打印機型號2.提供設(shè)備獨立性用戶使用或編程時,打印機表現(xiàn)為一個普通的邏輯名稱。系統(tǒng)為了識別其管理的所有設(shè)備,給每個設(shè)備一個唯一的不可更改的識別號,稱為設(shè)備的物理名。通過邏輯設(shè)備名和物理設(shè)備名,提供設(shè)備獨立性,這是設(shè)備管理的一項重要任務(wù)。圖6.2邏輯打印機3.對緩沖區(qū)進(jìn)行管理為了解決速度不匹配問題,大部分外設(shè)都采用設(shè)置緩沖區(qū)的方法。

緩沖區(qū)可設(shè)置在內(nèi)存中,稱為“軟件緩沖”;也可讓外設(shè)自帶專用的寄存器,作為硬件緩沖器。例如利用打印機打印一篇文章,CPU在打印機就緒后,可把數(shù)據(jù)輸出到緩沖區(qū),打印機則從緩沖區(qū)取出數(shù)據(jù)打印,就這樣一邊送一邊打,提高CPU的利用率。并且由于一次可以送一批數(shù)據(jù)到緩沖區(qū),因而節(jié)省了CPU的數(shù)據(jù)傳送時間。4.對Spooling技術(shù)的支持。Spooling(SimultaneousPeripheralOperationsOn-line)——也稱為假脫機技術(shù)。此技術(shù)在磁盤上專門開辟一個區(qū)域,CPU不需等到打印機處于就緒狀態(tài),就可直接將要打印的所有作業(yè)存放到磁盤中,排成打印隊列。合適的時候由專門的程序(在Windows中稱為后臺進(jìn)程)把要打印的信息從磁盤送到打印機,并管理打印機的打印工作。給人的感覺好像每個作業(yè)都有一臺打印機。也就是說,該技術(shù)將一臺獨享設(shè)備模擬成了共享設(shè)備。支持Spooling技術(shù)意味著支持虛擬設(shè)備。圖6.4等待打印機的隊列5.進(jìn)行設(shè)備分配多個進(jìn)程或作業(yè)都要求使用某種設(shè)備時,設(shè)備管理根據(jù)一定的算法進(jìn)行設(shè)備分配,對暫時不能獲得設(shè)備的,系統(tǒng)將它們排在該設(shè)備請求隊列中,排隊順序決定了獲得設(shè)備的次序。而當(dāng)設(shè)備使用完畢,設(shè)備管理要及時回收。6.提供中斷處理機制如果打印過程中出現(xiàn)問題(如掉電、缺紙、脫機等),需要CPU進(jìn)行緊急處理。系統(tǒng)采用了中斷技術(shù)——當(dāng)某個事件發(fā)生時,系統(tǒng)中止現(xiàn)行程序的運行,轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序,處理完畢,返回被中斷處繼續(xù)執(zhí)行。當(dāng)出現(xiàn)問題時,中斷源立即向CPU發(fā)出一個中斷信號,系統(tǒng)進(jìn)入中斷處理機制。6.2設(shè)備標(biāo)識與設(shè)備驅(qū)動程序6.2.1邏輯設(shè)備與物理設(shè)備1.邏輯設(shè)備和物理設(shè)備的含義2.設(shè)備獨立性3.設(shè)備獨立性的優(yōu)點1.邏輯設(shè)備和物理設(shè)備的含義邏輯設(shè)備邏輯設(shè)備是對實際物理設(shè)備屬性的抽象,它并不限于某個具體設(shè)備。用戶在編程時,不用關(guān)心系統(tǒng)具體配置了哪些設(shè)備,也不需要了解各種設(shè)備的物理特性,而只要按照慣例為所用到的設(shè)備起個邏輯名字,稱為邏輯設(shè)備名。物理設(shè)備物理設(shè)備是一個具體的設(shè)備。系統(tǒng)為了能識別全部外設(shè),給每臺外設(shè)分配一個唯一不變的名字,稱為物理設(shè)備名。通過引入邏輯設(shè)備和物理設(shè)備,可實現(xiàn)設(shè)備獨立性。2.設(shè)備獨立性設(shè)備獨立性也稱為設(shè)備無關(guān)性,指用戶編程時所使用的設(shè)備與實際使用的設(shè)備無關(guān),用戶編程時使用邏輯設(shè)備名。用戶程序以邏輯設(shè)備名來請求使用某類設(shè)備時,系統(tǒng)將在該類設(shè)備中,根據(jù)設(shè)備的使用情況,將任一臺合適的物理設(shè)備分配給該程序。如果用戶程序是以物理設(shè)備名來請求指定某臺設(shè)備,假如該設(shè)備有故障或正在被其他進(jìn)程使用,則用戶程序只能一直等待。采用邏輯設(shè)備名,可以使用戶程序獨立于分配給它的某類設(shè)備的具體設(shè)備。2.設(shè)備獨立性使用邏輯設(shè)備名,還能使用戶程序獨立于所使用的某類設(shè)備。例如,在Linux系統(tǒng)環(huán)境下,系統(tǒng)提供標(biāo)準(zhǔn)輸入/輸出,在用戶程序中的輸入/輸出都使用這兩個標(biāo)準(zhǔn)的I/O,實際運行時,可根據(jù)具體情況而定。如果配備打印機,可將輸出信息送到打印機打??;如果沒有配備打印機,就把輸出重定向到某個指定文件,把要打印的信息送到該文件中。

3.設(shè)備獨立性的優(yōu)點(1)方便用戶編程。(2)便于程序移植。(3)提高了資源利用率。(4)能適應(yīng)多用戶多進(jìn)程的需要。

6.2.2實用系統(tǒng)中的邏輯設(shè)備和物理設(shè)備Linux系統(tǒng)中外部設(shè)備等同文件——設(shè)備文件;這些設(shè)備文件名就是系統(tǒng)規(guī)定的邏輯設(shè)備名;系統(tǒng)的/dev目錄下是各種設(shè)備:(1)以fd開頭的文件是軟盤設(shè)備。

/dev/fd0——第一個軟盤驅(qū)動器

/dev/fd1——第二個軟盤驅(qū)動器

/dev/fd1h1440——第一軟驅(qū)中的3.5英寸高密軟盤。(2)以hd開頭的文件是IDE硬盤設(shè)備。

/dev/hda——第一硬盤

hda1——第一個硬盤/dev/hda的第一個分區(qū)

hda、hdb、hdc、……——系統(tǒng)中的多個IDE硬盤(3)/dev/ttys——串行端口COM1,/dev/cua——調(diào)制解調(diào)器。(4)以lp開頭的文件是并行端口設(shè)備。/dev/lp0——LPT1。以tty開頭的文件是系統(tǒng)的虛擬終端以pty開頭的文件是偽終端,用telnet遠(yuǎn)程登錄時用到/dev/console——控制臺,即直接與系統(tǒng)相連的顯示器和鍵盤。Windows中的設(shè)備圖6.6設(shè)備管理器

6.2.3設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序是驅(qū)動物理設(shè)備直接進(jìn)行各種操作的軟件,它可看作I/O系統(tǒng)和物理設(shè)備的接口,所有進(jìn)程對于設(shè)備的請求都要通過設(shè)備驅(qū)動程序來完成。

1.設(shè)備控制器2.設(shè)備驅(qū)動程序的引入3.設(shè)備驅(qū)動程序的處理過程4.實用系統(tǒng)中的設(shè)備驅(qū)動程序1.設(shè)備控制器外設(shè)機械部件電子部件獨立出來設(shè)備控制器設(shè)備只有在設(shè)備控制器的控制下才能運行,且一個控制器可以控制幾臺同類設(shè)備。設(shè)備控制器CPU設(shè)備控制寄存器、狀態(tài)寄存器、數(shù)據(jù)寄存器、地址譯碼器等接收和識別CPU發(fā)來的命令

實現(xiàn)控制器與CPU之間、控制器和外設(shè)之間的數(shù)據(jù)交換

記錄設(shè)備的狀態(tài)(如設(shè)備就緒、設(shè)備忙、操作錯誤等)供CPU了解

用于識別每個設(shè)備的地址

2.設(shè)備驅(qū)動程序的引入將用戶命令中的邏輯設(shè)備名轉(zhuǎn)換為物理設(shè)備名,系統(tǒng)只是完成了第一步工作,至于要具體操縱這臺物理設(shè)備,就復(fù)雜多了。操作系統(tǒng)設(shè)計者把與物理設(shè)備直接有關(guān)的軟件部分獨立出來,構(gòu)成設(shè)備驅(qū)動程序系列,一般由設(shè)備商和軟硬件開發(fā)商提供的針對某一種具體設(shè)備的驅(qū)動程序組成。系統(tǒng)和用戶可根據(jù)需要,靈活配置物理設(shè)備,選擇相應(yīng)的驅(qū)動程序裝載。

3.設(shè)備驅(qū)動程序的處理過程(1)將抽象要求轉(zhuǎn)換為具體要求(控制器中寄存器內(nèi)容)。(2)檢查I/O請求的合法性。(3)檢查設(shè)備狀態(tài)。讀狀態(tài)寄存器內(nèi)容,看設(shè)備忙/閑狀態(tài)。(4)傳送必要的參數(shù)。(5)啟動I/O設(shè)備。向設(shè)備控制器中的命令寄存器傳送控制命令,將外設(shè)啟動,然后可由設(shè)備控制器來控制外設(shè)進(jìn)行基本I/O操作。不同類型的外設(shè),驅(qū)動程序是不一樣的。4.實用系統(tǒng)中的設(shè)備驅(qū)動程序控制面板→管理工具→計算機管理→設(shè)備管理器→指定設(shè)備→屬性→驅(qū)動程序→驅(qū)動程序詳細(xì)清單圖6.7設(shè)備驅(qū)動程序詳細(xì)資料圖6.8Windows設(shè)備及其的驅(qū)動程序4.實用系統(tǒng)中的設(shè)備驅(qū)動程序Linux核心的設(shè)備驅(qū)動程序本質(zhì)上是特權(quán)的、駐留內(nèi)存的低級的硬件控制例程的共享庫。Linux支持三類的硬件設(shè)備:字符、塊和網(wǎng)絡(luò)。字符設(shè)備直接讀寫,沒有緩沖區(qū),例如系統(tǒng)的串行端口/dev/cua0和/dev/cua1。塊設(shè)備只能按照一個塊(一般是512字節(jié)或者1024字節(jié))的倍數(shù)進(jìn)行讀寫。塊設(shè)備通過buffercache訪問,可以隨機存取。大多數(shù)的設(shè)備驅(qū)動程序可以在需要的時候作為核心模塊加載,在不再需要的時候卸載。每一類的設(shè)備驅(qū)動程序:字符、塊和網(wǎng)絡(luò),都提供了通用的接口供核心在需要請求它們的服務(wù)的時候使用。6.3輸入/輸出控制方式6.3.1程序控制輸入/輸出方式6.3.2中斷輸入/輸出方式6.3.3直接存儲器訪問方式6.3.4通道方式由誰來做輸入/輸出的工作?CPU(程序)?DMA?通道?6.3.1程序控制輸入/輸出方式程序控制輸入/輸出方式又稱為狀態(tài)驅(qū)動輸入/輸出方式或應(yīng)答輸入/輸出方式——它采用程序查詢的方式直接參與數(shù)據(jù)的輸入/輸出。(注意:程序就是CPU)程序控制輸入/輸出方式——以鍵盤為例1、CPU向鍵盤的控制器發(fā)一條輸入命令,啟動鍵盤進(jìn)行輸入操作,并將狀態(tài)寄存器的”忙/閑位”置1,表示忙。2、然后CPU運行程序不斷測試狀態(tài)寄存器的完成位,看鍵盤是否完成了輸入。直到鍵盤已將數(shù)據(jù)輸入到了鍵盤控制器的數(shù)據(jù)寄存器中,狀態(tài)寄存器的完成位變?yōu)?時,CPU才停止測試。3、CPU取走數(shù)據(jù)寄存器中的輸入數(shù)據(jù)。目前IDE接口硬盤仍在使用這種方式,稱為PIO(ProgrammingInput/Output)模式。問題:CPU等待每一個操作完成的時候會花費大量時間“忙于什么也不做”(busydoingnothing)——CPU大部分時間都處于檢查和等待狀態(tài),整個計算系統(tǒng)的效率十分低下。6.3.2中斷輸入/輸出方式

CPU請求設(shè)備傳輸后不等待,轉(zhuǎn)去做其他更有用的事情,當(dāng)設(shè)備完成請求的時候向CPU發(fā)設(shè)備中斷。(系統(tǒng)中同一時刻可能有許多設(shè)備的請求在同時發(fā)生。)所謂中斷,就是指當(dāng)某個事件發(fā)生時,向系統(tǒng)發(fā)出一個中斷信號,系統(tǒng)于是中止現(xiàn)行程序的運行,轉(zhuǎn)去執(zhí)行相應(yīng)的中斷處理程序,完畢后返回斷點繼續(xù)執(zhí)行。需要在CPU和每一個設(shè)備控制器之間增加一條中斷請求線,并在設(shè)備控制器的控制寄存器中增加一個中斷允許位。中斷輸入/輸出方式——以鍵盤輸入為例(1)開中斷。CPU把啟動位和中斷允許位為1的控制字寫入鍵盤控制狀態(tài)寄存器中,啟動鍵盤。(當(dāng)中斷允許位為1時,中斷程序可以被調(diào)用。)(2)進(jìn)程等待鍵盤輸入完成(進(jìn)入等待隊列),由進(jìn)程調(diào)度程序調(diào)度其他就緒進(jìn)程使用CPU。(3)鍵盤啟動后,當(dāng)數(shù)據(jù)寄存器裝滿后,鍵盤控制器通過中斷請求線向CPU發(fā)出中斷信號。(4)CPU暫停正在進(jìn)行的工作,轉(zhuǎn)向執(zhí)行中斷處理程序。(取出數(shù)據(jù)寄存器中的輸入數(shù)據(jù)送到內(nèi)存特定單元,并將等待輸入完成的進(jìn)程喚醒。)(5)中斷處理程序完畢,CPU返回斷點繼續(xù)執(zhí)行。(6)以后某個時刻,進(jìn)程調(diào)度程序選中正處于就緒狀態(tài)的那個進(jìn)程,該進(jìn)程從特定內(nèi)存單元中取出所需的數(shù)據(jù)繼續(xù)工作。圖6.9中斷輸入/輸出方式

中斷輸入/輸出方式優(yōu)點:CPU不需等待數(shù)據(jù)傳輸完成,I/O設(shè)備與CPU并行工作,CPU的利用率因此提高。缺點:CPU在響應(yīng)中斷后,還需要時間來執(zhí)行中斷服務(wù)程序。如果數(shù)據(jù)量大,需要多次執(zhí)行中斷程序,CPU的效率仍然不高。

6.3.3直接存儲器訪問方式

DMA(DirectMemoryAccess)方式:在外部設(shè)備和主存之間建立了直接數(shù)據(jù)通路,即外設(shè)和主存之間可直接讀寫數(shù)據(jù),且數(shù)據(jù)傳送的基本單位是數(shù)據(jù)塊。整塊數(shù)據(jù)的傳輸在一個稱為DMA控制器的控制下完成。DMA數(shù)據(jù)傳輸期間不需CPU干預(yù),僅在傳送一個或多個數(shù)據(jù)塊的開始或結(jié)束時,才需CPU處理。

圖6.10DMA控制方式圖6.11DMA數(shù)據(jù)輸入處理過程使用DMA的時候設(shè)備驅(qū)動程序必須小心。1、所有的DMA控制器都不了解虛擬內(nèi)存,它只能訪問系統(tǒng)中的物理內(nèi)存。2、DMA控制器無法訪問全部的物理內(nèi)存。DMA的地址寄存器的位數(shù)決定了它能訪問的內(nèi)存地址。DMA方式缺點:(1)外設(shè)數(shù)量眾多,配置DMA控制器,硬件的成本過大。(2)每一臺外設(shè)的DMA都需要CPU的I/O指令初始化,浪費CPU時間。(3)由于DMA控制器實際上是使用竊取CPU工作周期的方法進(jìn)行工作的,它工作時,CPU將被掛起。如果眾多外設(shè)都采用DMA方式工作,接連不斷的竊取周期,則會使CPU長時間被掛起,從而降低了CPU的效率。DMA與中斷輸入/輸出方式進(jìn)行比較

(1)誰的中斷次數(shù)多?(2)由誰完成數(shù)據(jù)傳輸?(3)工作機制?軟件?硬件?適用范圍?(4)DMA與中斷是否矛盾?

6.3.4通道方式

6.3.4通道方式1.通道的概念通道是一個獨立于CPU的專管輸入/輸出控制的處理機,它控制設(shè)備與內(nèi)存直接進(jìn)行數(shù)據(jù)交換。通道有自己的一套簡單的指令系統(tǒng),稱為通道指令。每條通道指令規(guī)定了設(shè)備的一種操作,通道指令序列便是通道程序,通道執(zhí)行通道程序來完成規(guī)定動作。1.通道的概念通道處理機寄存器部分控制部分?jǐn)?shù)據(jù)寄存器主存地址寄存器傳輸字節(jié)寄存器通道命令寄存器通道狀態(tài)寄存器分時控制地址分配數(shù)據(jù)傳送等通道靠執(zhí)行通道程序軟件完成數(shù)據(jù)傳輸,通道控制器的功能比DMA控制器更強大,它能夠承擔(dān)外設(shè)的大部分工作。

2.通道的種類以字節(jié)為傳輸單位,可以分時地執(zhí)行多個通道程序。這是一種簡單的共享通道,主要為多臺低速或中速的字符設(shè)備服務(wù)。它用開關(guān)來控制對高速外設(shè)的選擇,在一段時間內(nèi)單獨為一臺外圍設(shè)備服務(wù),直到該設(shè)備的數(shù)據(jù)傳輸工作全部結(jié)束。然后通道再選擇另一臺外設(shè)為其提供服務(wù)。它分時地為多臺外圍設(shè)備服務(wù),每個時間片傳送一個數(shù)據(jù)塊??梢酝瑫r連接多臺高速存儲設(shè)備,因此,它能夠充分發(fā)揮高速通道的數(shù)據(jù)傳輸能力。3.通道工作過程CPU根據(jù)進(jìn)程的I/O請求,形成有關(guān)通道程序,然后執(zhí)行I/O指令啟動通道。通道處理機開始運行CPU存放在主存中的通道程序,獨立負(fù)責(zé)外設(shè)和主存之間的數(shù)據(jù)傳送。當(dāng)整個I/O過程結(jié)束,才向CPU發(fā)出中斷請求。CPU響應(yīng)中斷,進(jìn)行關(guān)閉通道、記錄相關(guān)數(shù)據(jù)等工作。采用通道方式,CPU基本上擺脫了I/O傳輸工作,大大增強了CPU和外設(shè)的并行處理能力,有效地提高了整個系統(tǒng)的資源利用率。4.通道和DMA控制器的區(qū)別(1)DMA控制器和通道是硬件工作還是軟件工作?(2)連接外設(shè)的類型限制?(3)和CPU的溝通方式?CPU的介入程度?對外設(shè)的控制?6.3.5Windows中的數(shù)據(jù)傳輸控制方式(1)端口 外設(shè)都是通過接口和系統(tǒng)相連的,接口中有數(shù)據(jù)寄存器、狀態(tài)寄存器、命令寄存器等,每個寄存器被分配一個稱為I/O端口的地址編碼加以區(qū)分。故一個外設(shè)常有多個I/O端口地址,計算機通過不同的I/O端口來選擇外設(shè),并通過端口來和外設(shè)進(jìn)行通信。圖6.13鍵盤使用的端口地址(2)中斷向量 當(dāng)設(shè)備準(zhǔn)備接受或發(fā)送信息時,可以用來發(fā)送信號以獲得處理器注意的硬件線路。每條線路用一個中斷向量IRQ來標(biāo)志。每個設(shè)備都必須有唯一的IRQ線路。圖6.14IRQ及其對應(yīng)的設(shè)備(3)DMA DMA是不涉及處理器的內(nèi)存訪問。經(jīng)常用于內(nèi)存和外圍設(shè)備(如磁盤驅(qū)動器)之間的直接數(shù)據(jù)傳輸。在PC機中,DMA控制器通常集成到大規(guī)模IC芯片中,一個DMA控制器只有四個獨立的DMA通道,為了使用更多的DMA通道,可由兩個DMA控制器組成組聯(lián)方式,將第二個DMA控制器連到第一個DMA控制器的第四個通道,因此一共有七個DMA通道可供使用。

圖6.15DMA通道6.3.5Windows中的數(shù)據(jù)傳輸控制方式一個設(shè)備要能正常工作,就必需為它分配合適的I/O端口地址、IRQ、DMA通道等資源。當(dāng)然,對于不使用DMA方式的設(shè)備,只需I/O和IRQ即可。

不同設(shè)備如果分配的I/O、IRQ、DMA資源有重復(fù),必然會發(fā)生資源沖突,輕者設(shè)備不能正常工作,重者導(dǎo)致系統(tǒng)崩潰。圖6.16沖突與共享6.4設(shè)備分配

由于外設(shè)、設(shè)備控制器、通道等資源有限,對多個請求使用設(shè)備的進(jìn)程,設(shè)備管理應(yīng)能合理、有效地進(jìn)行設(shè)備的分配。

圖6.17設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)就象進(jìn)程控制塊PCB、作業(yè)控制塊JCB一樣,系統(tǒng)為每個設(shè)備建立一個設(shè)備控制塊DCB,主要用來記錄本設(shè)備的各種情況。記錄控制器的情況。記錄通道的情況。整個系統(tǒng)有一張系統(tǒng)設(shè)備表SDT,存放了系統(tǒng)的所有設(shè)備,每個設(shè)備占一個表項,內(nèi)容有設(shè)備標(biāo)識、設(shè)備類型、設(shè)備DCB指針、還可包含設(shè)備驅(qū)動程序入口等內(nèi)容。系統(tǒng)通過這些數(shù)據(jù)結(jié)構(gòu)對各種設(shè)備進(jìn)行記錄,再配合適當(dāng)?shù)姆峙洳呗院退惴?,就能實施有效的設(shè)備分配。只有當(dāng)一個進(jìn)程經(jīng)過系統(tǒng)的設(shè)備分配,獲得了通道、控制器和所需設(shè)備后,才具備了進(jìn)行I/O操作的物理條件。

6.4.2設(shè)備分配思想設(shè)備分配的原則:充分提高設(shè)備的利用率;在不導(dǎo)致死鎖的情況下盡量滿足用戶的要求。設(shè)備分配的功能:接受用戶提出的邏輯設(shè)備分配的要求,把它轉(zhuǎn)換為對物理設(shè)備的分配。

1.設(shè)備分配方式如果將獨享設(shè)備虛擬為共享設(shè)備,破壞產(chǎn)生死鎖的互斥條件,那么死鎖就不會產(chǎn)生了。

靜態(tài)分配動態(tài)分配在進(jìn)程剛建立就把其需要的設(shè)備全部分配給它,直到整個進(jìn)程運行后被撤銷才釋放這些設(shè)備。靜態(tài)分配的優(yōu)點是不會產(chǎn)生死鎖。常用于單用戶系統(tǒng)。當(dāng)進(jìn)程運行過程中提出對設(shè)備的請求,系統(tǒng)為這個進(jìn)程分配所需的設(shè)備,一旦該進(jìn)程使用完這個設(shè)備,立刻釋放出來給別的進(jìn)程。動態(tài)分配使設(shè)備的利用率得到很大提高,但這種方式如果采取的分配算法不當(dāng),則有可能會導(dǎo)致死鎖。2.獨享設(shè)備調(diào)度算法(1)先來先服務(wù)(2)優(yōu)先級高者先服務(wù)當(dāng)有多個進(jìn)程對同一臺設(shè)備提出分配請求時,根據(jù)進(jìn)程對某設(shè)備提出請求的時間順序,將這些進(jìn)程控制塊排成一個設(shè)備請求隊列,處于隊首的進(jìn)程最先獲得使用權(quán)。請求設(shè)備的進(jìn)程按優(yōu)先級排入設(shè)備請求隊列,在優(yōu)先級相同的情況下,再按時間順序排列,設(shè)備總是分配給隊首具有最高優(yōu)先級的進(jìn)程使用。

3.共享設(shè)備調(diào)度算法

共享設(shè)備的典型代表為磁盤,完成磁盤某一個物理塊的訪問要經(jīng)過三個時間段:尋道時間Ts旋轉(zhuǎn)延遲Tw讀寫時間Trw尋道時間Ts是磁頭從當(dāng)前磁道移動到目標(biāo)磁道所需的時間;

旋轉(zhuǎn)延遲Tw是當(dāng)磁頭停留在目標(biāo)磁道后,目標(biāo)物理塊從當(dāng)前位置旋轉(zhuǎn)到磁頭位置的時間;

讀寫時間Trw是目標(biāo)物理塊內(nèi)容與內(nèi)存中對應(yīng)區(qū)交換的時間。

磁盤調(diào)度的原則是公平和高吞吐量,衡量指標(biāo)有:訪問時間T:T=Ts+Tw+Trw=Ts+Tw平均訪問時間Ta:Ta=Tsa+Twa+Trwa=Tsa+Twa3.共享設(shè)備調(diào)度算法

(1)先來先服務(wù) (FirstComeFirstServe)(2)最短尋道時間優(yōu)先 (ShortestServiceTimeFirst)(3)電梯算法(1)先來先服務(wù)FCFS將申請磁盤服務(wù)的進(jìn)程按先后順序排隊,每次調(diào)度選擇位于隊首的進(jìn)程運行。例:假定當(dāng)前磁頭處在第6道,等待服務(wù)的進(jìn)程有7個,它們請求的磁道先后順序是:8、1、24、2、32、5、18。求所有進(jìn)程運行后磁頭一共移動的磁道數(shù)。 解:移動的磁道數(shù)計算如下: 2+7+23+22+30+27+13=124公平,但吞吐量不高?。?)最短尋道時間優(yōu)先SSTF算法選擇離當(dāng)前磁頭位置最近的目標(biāo)物理塊優(yōu)先訪問,以保證最短的尋道時間。例:假定當(dāng)前磁頭處在第6道,等待服務(wù)的進(jìn)程有7個,它們請求的磁道先后順序是:8、1、24、2、32、5、18。求所有進(jìn)程運行后磁頭一共移動的磁道數(shù)。 解:采用SSTF算法后的調(diào)度序列變?yōu)椋?/p>

8、5、2、1、18、24、32

移動的磁道數(shù)計算如下:

2+3+3+1+17+6+8=40優(yōu)點:降低了系統(tǒng)的平均尋道時間,提高了系統(tǒng)吞吐量;缺點:磁盤內(nèi)外邊緣的磁道訪問頻率降低,有失公平性。(3)電梯算法磁頭向一個方向移動的過程中,選擇離磁頭最近的目標(biāo)物理塊訪問,直到?jīng)]有要訪問的物理塊,然后磁頭變換移動方向,以同樣的方式選擇訪問磁盤的進(jìn)程。例:假定當(dāng)前磁頭處在第6道,等待服務(wù)的進(jìn)程有7個,它們請求的磁道先后順序是:8、1、24、2、32、5、18。求所有進(jìn)程運行后磁頭一共移動的磁道數(shù)(假定磁頭的初始方向是由低磁道向高磁道)。解:采用電梯算法后的調(diào)度序列變?yōu)椋?、18、24、32、5、2、1移動的磁道數(shù):2+10+6+8+27+3+1=57電梯算法兼顧了公平性和高吞吐量,目前較多采用電梯調(diào)度算法。4.設(shè)備

分配

程序如何對應(yīng)邏輯設(shè)備和物理設(shè)備?進(jìn)程是以物理設(shè)備名提出I/O請求的。而事實上進(jìn)程應(yīng)采用邏輯設(shè)備名來提出設(shè)備請求,以保證設(shè)備獨立性。系統(tǒng)建立邏輯設(shè)備表LUT(LogicalUnitTable),來對應(yīng)邏輯設(shè)備名和物理設(shè)備名的關(guān)系。在多用戶系統(tǒng)中,每個用戶進(jìn)程PCB中有一張LUT,當(dāng)進(jìn)程使用邏輯設(shè)備名請求I/O操作時,系統(tǒng)通過查找LUT,即可找到對應(yīng)的物理設(shè)備。6.4.3Spooling技術(shù) Spooling又稱假脫機技術(shù),現(xiàn)代操作系統(tǒng)都支持該技術(shù),它主要實現(xiàn)將獨享設(shè)備虛擬為共享設(shè)備。Spooling技術(shù)在大容量外存的支持下,由預(yù)輸入程序和預(yù)輸出程序來進(jìn)行數(shù)據(jù)傳輸。

圖6.19Spooling系統(tǒng)(1)在磁盤上開辟兩個空間,分別稱為“輸入井”和“輸出井”。

(2)預(yù)輸入進(jìn)程將輸入設(shè)備的數(shù)據(jù)寫到磁盤輸入井上。

(3)當(dāng)用戶進(jìn)程需要輸入數(shù)據(jù)時,直接從輸入井讀入內(nèi)存。

(4)用戶進(jìn)程將要輸出的數(shù)據(jù)送到磁盤輸出井上。

(5)預(yù)輸出進(jìn)程從輸出井中取出數(shù)據(jù),送給輸出設(shè)備進(jìn)行輸出。

當(dāng)用戶進(jìn)程需要輸入設(shè)備時,可直接到共享設(shè)備磁盤輸入井中去取數(shù)據(jù);當(dāng)用戶進(jìn)程要輸出數(shù)據(jù)時,將輸出數(shù)據(jù)放入輸出井即可。

由于輸入井/輸出井可以共享,于是獨享的輸入/輸出設(shè)備被模擬成可共享的設(shè)備。這種被模擬成的共享設(shè)備稱為虛擬設(shè)備。

2.實用系統(tǒng)中的Spooling技術(shù)

在Windows中使用打印機,假脫機方式是系統(tǒng)的默認(rèn)選項,前面已進(jìn)行過介紹。Linux為每臺打印機都在磁盤上定義了一個輸出緩沖區(qū),即輸出井,要打印的作業(yè)以文件的形式存放到輸出緩沖區(qū),若有多個文件,就排成隊列的形式,即打印隊列。預(yù)輸出程序(Linux中稱為打印機守護程序)定期掃描打印緩沖區(qū),將打印隊列中的文件按先進(jìn)先出依次送入打印機,完成實際的打印工作。如果要用網(wǎng)絡(luò)的共享打印機進(jìn)行遠(yuǎn)程打印,則先將要打印的作業(yè)存放到本機的打印緩沖區(qū),然后由打印機守護程序把打印作業(yè)通過網(wǎng)絡(luò)傳輸?shù)街付ǖ拇蛴C中。

Linux文件系統(tǒng)中/usr/bin目錄下有五個有關(guān)打印的程序,分別為:

Lpd Lpr Lpq Lpc lprmlpd守護程序可以說是打印機的靈魂,所有的打印作業(yè)都是由它來進(jìn)行處理的。

Lpr為提交打印作業(yè)命令,將文件放到打印緩沖區(qū)。

lpq命令就是顯示打印緩沖區(qū)中所有的作業(yè)及作業(yè)號清單。

lprm命令用于從打印緩沖區(qū)中刪除由lpq命令指定的作業(yè)。

lpc命令的功能非常強大,它是打印系統(tǒng)的控制程序,使用該命令,能檢查打印隊列及守護進(jìn)程的狀態(tài)。如果是root用戶,甚至能啟動和停止打印機的假脫機狀態(tài),使打印機不能工作以及重新安排打印隊列中作業(yè)的順序。

打印緩沖區(qū)到底哪里?打印緩沖區(qū)就是在磁盤上建立的一個目錄,打印隊列信息就存放在該目錄下。Linux系統(tǒng)采用的方法是設(shè)多個打印緩沖區(qū)目錄,一臺打印機對應(yīng)一個打印緩沖區(qū)目錄。所有的打印緩沖區(qū)目錄集中到一個主打印緩沖區(qū)目錄下。假如/usr/spool/lpd作為主打印緩沖區(qū)目錄,則每個單獨的打印機都在該目錄下有與這臺打印機同名的目錄,如名為printer1的打印機,它的打印緩沖區(qū)目錄就是/usr/spool/lpd/print1。6.5設(shè)備管理涉及到的常用技術(shù)

設(shè)備管理是建立在各種針對性硬件機制基礎(chǔ)上的,需要硬件技術(shù)的配合。兩種硬件機制: 中斷技術(shù) 緩沖技術(shù)6.5.1中斷技術(shù)

在人機聯(lián)系、故障處理、實時處理、程序調(diào)試與監(jiān)測、任務(wù)分配等方面都需用到中斷技術(shù);在設(shè)備管理中,沒有中斷技術(shù)就不可能實現(xiàn)設(shè)備與主機、設(shè)備與設(shè)備、設(shè)備與用戶、設(shè)備與程序的并行。

1.中斷及中斷源的概念中斷:指某事件發(fā)生時,CPU終止現(xiàn)行程序的運行,轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序,處理完畢返回斷點繼續(xù)執(zhí)行。引起中斷發(fā)生的事件就稱為中斷源。中斷源向CPU發(fā)出的請求中斷處理信號稱為中斷請求。CPU收到中斷請求后,中斷正在運行的程序并轉(zhuǎn)向相應(yīng)的事件處理程序稱為中斷響應(yīng)。相應(yīng)的事件處理程序稱為中斷服務(wù)程序。執(zhí)行中斷服務(wù)程序的過程稱為中斷處理。1.中斷及中斷源的概念常見中斷源類型(1)外設(shè)引起的中斷。(2)CPU引起的中斷。(3)存儲器引起的中斷。(4)控制器引起的中斷。(5)各種總線引起的中斷。(6)實時時鐘的定時中斷。(7)實時控制引起的中斷。(8)故障引起的中斷。(9)為調(diào)試程序而設(shè)置的斷點??善帘沃袛嗖豢善帘沃袛?.中斷的分類中斷分類硬中斷(外中斷)內(nèi)中段軟中斷來自于處理機及內(nèi)存外部的中斷,都稱為硬中斷或外中斷。例如,輸入/輸出中斷,操作員對機器進(jìn)行干預(yù)的中斷,各種定時器引起的時鐘中斷,調(diào)試程序中設(shè)置斷點引起的調(diào)試中斷等。在處理機和內(nèi)存內(nèi)部產(chǎn)生的中斷稱為內(nèi)中段,也稱為陷入或異常。例如,非法指令、數(shù)據(jù)格式錯誤、主存保護錯誤、地址越界錯誤、各種運算溢出錯誤、除數(shù)為零錯誤、數(shù)據(jù)校驗錯、進(jìn)程用戶態(tài)向系統(tǒng)態(tài)轉(zhuǎn)換等。由程序中執(zhí)行了中斷指令引起的中斷,稱為軟中斷。UNIX系統(tǒng)也提供了軟中斷的處理功能,該中斷又叫信號處理機構(gòu),它是UNIX系統(tǒng)提供的一種進(jìn)程通信機構(gòu),利用它,進(jìn)程之間可相互通信。3.中斷優(yōu)先級當(dāng)系統(tǒng)中同時存在若干個中斷請求時,CPU按它們的優(yōu)先級從高到低進(jìn)行處理。當(dāng)CPU響應(yīng)一個中斷源的請求,在進(jìn)行中斷處理時,如果又有新的中斷源發(fā)出中斷請求,CPU是否響應(yīng)該中斷請求,則取決于中斷源的優(yōu)先級。中斷優(yōu)先級的確定主要由下列因素來決定:(1)中斷源的緊迫性。(2)設(shè)備的工作速度。(3)數(shù)據(jù)恢復(fù)的難易程度。4.中斷處理過程

6.5.2緩沖技術(shù)1.緩沖技術(shù)的引入有哪些使用緩沖技術(shù)的情況?(討論)2.緩沖的實現(xiàn)方法(1)硬件緩沖(2)軟件緩沖硬件緩沖采用專用硬件緩沖器,一般由外設(shè)自帶的專用寄存器構(gòu)成。硬件緩沖器的大小是衡量設(shè)備性能的一個指標(biāo)。但硬件緩沖器價格較昂貴。在內(nèi)存中專門開辟若干單元作為緩沖區(qū)。系統(tǒng)通常采用這種方法。6.5.2緩沖技術(shù)3.緩沖的種類 根據(jù)緩沖區(qū)設(shè)置個數(shù)的多少,可以分為: 單緩沖 雙緩沖 多緩沖 緩沖池。(1)單緩沖假如發(fā)送者和接收者速度不匹配,將會浪費大量的等待時間,因此,通常不采用單緩沖。

(2)雙緩沖當(dāng)發(fā)送者和接收者的速度相差很大時,雙緩沖還是不能解決兩者并行工作問題。雙緩沖在實際系統(tǒng)中采用得很少。(3)環(huán)形緩沖裝入數(shù)據(jù):將輸入數(shù)據(jù)送入EMPTY指向的緩沖區(qū),填滿后,讓EMPTY指向下一個空緩沖區(qū)。每次申請一個空緩沖區(qū)時,要判斷EMPTY是否與FULL相等,若相等,表示系統(tǒng)中已沒有空緩沖區(qū),輸入進(jìn)程需要等待。提取數(shù)據(jù):直接到FULL所指緩沖區(qū)中取,然后讓FULL指向下一個滿緩沖區(qū)。同樣需判斷FULL是否和EMPTY相等,若相等,表示系統(tǒng)已無數(shù)據(jù)可取,輸出進(jìn)程等待。環(huán)形緩沖一般作為設(shè)備的專用資源,有兩個缺點:①如果系統(tǒng)的設(shè)備較多,就要占用大量的緩沖區(qū),增加內(nèi)存開銷。②緩沖區(qū)利用率不高,可能會出現(xiàn)某個設(shè)備的緩沖區(qū)不夠用,而其他設(shè)備有多個空緩沖區(qū)。(4)緩沖池

緩沖池由多個大小相同的緩沖區(qū)組成,緩沖池中的緩沖區(qū)被系統(tǒng)中所有進(jìn)程共享使用,由管理程序統(tǒng)一對緩沖池進(jìn)行管理。為便于管理,系統(tǒng)將相同類型的緩沖區(qū)鏈成一個隊列,緩沖池中共有三種隊列。為便于管理,系統(tǒng)將相同類型的緩沖區(qū)鏈成一個隊列,緩沖池中共有三種隊列。這三種隊列各有指向其首緩沖區(qū)的隊首指針和指向尾緩沖區(qū)的隊尾指針。對緩沖區(qū)進(jìn)行讀、寫操作時。從隊列中取下的緩沖區(qū)稱為工作緩沖區(qū),緩沖池中有四種工作緩沖區(qū):緩沖池的工作過程(輸入)①②③④輸出過程?CPU需要磁盤數(shù)據(jù)時,先到高速緩沖區(qū)中讀數(shù)據(jù),若數(shù)據(jù)不在高速緩沖區(qū)中,則啟動磁盤I/O,并將從磁盤讀取的數(shù)據(jù)存放到高速緩沖區(qū)中。要往磁盤上寫數(shù)據(jù)時,CPU也是先往高速緩沖區(qū)中寫,以防隨后還要訪問這些數(shù)據(jù),等到將來不再需要時才真正將數(shù)據(jù)寫回到磁盤上。Linux系統(tǒng)緩沖池塊設(shè)備緩沖池字符設(shè)備緩沖池4.緩沖技術(shù)的應(yīng)用由高速緩沖區(qū)組成,緩沖區(qū)以磁盤物理塊大小為單位。字符緩沖區(qū)的大小以字節(jié)為單位。6.6.1Windows的設(shè)備管理

1.Windows設(shè)備管理的特點2.Windows的注冊表1.Windows設(shè)備管理的特點(1)對即插即用功能的支持。系統(tǒng)將自動為新硬件分配不發(fā)生沖突的I/O、IRQ、DMA等資源,并為其安裝合適的設(shè)備驅(qū)動程序。(2)Windows具有動態(tài)設(shè)備驅(qū)動程序機制,支持動態(tài)加載設(shè)備驅(qū)動程序。支持使用USB接口等設(shè)備的熱插拔技術(shù)。(3)Windows采用了緩沖技術(shù)。Windows還利用Spooling技術(shù),使打印機能實現(xiàn)后臺打印。(4)在Windows中,用戶可通過控制面板調(diào)整系統(tǒng)設(shè)置。2.Windows的注冊表無論對硬件還是軟件的所有管理都可利用注冊表來進(jìn)行。注冊表是Windows中的核心數(shù)據(jù)庫。該注冊表包含計算機中每個用戶的配置文件、有關(guān)系統(tǒng)硬件的信息、安裝的程序及屬性設(shè)置。Windows在其運行中不斷引用這些信息。注冊表由5個樹狀結(jié)構(gòu)的子樹組成每個子樹又可包括二級項、二級子樹下是三級項……,構(gòu)成樹狀層次結(jié)構(gòu)。右邊窗格中則是所選項下的值項,包含名稱與數(shù)據(jù)。HKEY_CURRENT_USER,包含當(dāng)前登錄用戶的配置信息的根目錄。用戶文件夾、屏幕顏色和“控制面板”設(shè)置存儲在此處。該信息被稱為用戶配置文件。HKEY_USERS,包含計算機上所有用戶的配置文件的根目錄。HKEY_CURRENT_USER是HKEY_USERS的子項。HKEY_LOCAL_MACHINE,包含針對該計算機的配置信息。在系統(tǒng)監(jiān)視器上所看到的系統(tǒng)資源使用情況,實際上就是存放在HKEY_LOCAL_MACHINE主鍵中。HKEY_CLASSES_ROOT,是HKEY_LOCAL_MACHINE\Software的子項。此處存儲的信息可以確保當(dāng)使用Windows資源管理器打開文件時,將打開正確的程序。HKEY_CURRENT_CONFIG,包含本地計算機在系統(tǒng)啟動時所用的硬件配置文件信息。注冊表包含了上千個鍵,每個鍵對應(yīng)著系統(tǒng)的不同信息,我們可通過直接修改鍵值來更改整個系統(tǒng)的設(shè)置??梢哉f注冊表將操作系統(tǒng)和軟硬件緊密結(jié)合起來,它包含了操作系統(tǒng)的設(shè)備管理等多種功能。6.6.2Linux的設(shè)備管理(1)設(shè)備文件設(shè)備文件是Linux系統(tǒng)很重要的一個特色。任何設(shè)備都必需通過掛裝點掛裝到目錄樹上才能被訪問。(2)Linux支持一定的即插即用功能,但沒Windows那么完善。(3)Linux的設(shè)備驅(qū)動程序是作為系統(tǒng)內(nèi)核的一部分運行的,它的執(zhí)行效率會從根本上影響系統(tǒng)的整體性能。Linux的設(shè)備驅(qū)動程序具有動態(tài)性、可裝載性,在需要時可作為內(nèi)核模塊裝入,不需要時卸載即可。(4)Linux采用了緩沖技術(shù)來改進(jìn)塊設(shè)備的數(shù)據(jù)傳輸速度和效率,讀、寫塊設(shè)備主要和高速緩存打交道。Linux還采用Spooling技術(shù)提高了打印機的工作效率。(5)Linux是具有設(shè)備獨立性的操作系統(tǒng),它的內(nèi)核具有高度適應(yīng)能力,設(shè)備獨立性的關(guān)鍵在于內(nèi)核的適應(yīng)能力。其他操作系統(tǒng)只允許一定數(shù)量或一定種類的外部設(shè)備連接。而設(shè)備獨立性的操作系統(tǒng)能夠容納任意種類及任意數(shù)量的設(shè)備。另外,由于用戶可以免費得到Linux的內(nèi)核源代碼,因此,用戶可以修改內(nèi)核源代碼,以便適應(yīng)新增加的外部設(shè)備。6.7本章小結(jié)由于外設(shè)的多樣性和復(fù)雜性,設(shè)備管理是操作系統(tǒng)最為繁雜的一個部分。為了方便用戶使用外設(shè),系統(tǒng)通過引入邏輯設(shè)備名和物理設(shè)備名,實現(xiàn)了設(shè)備獨立性,并且根據(jù)一定的算法和策略對設(shè)備進(jìn)行合理分配。在設(shè)備管理中,設(shè)備驅(qū)動程序起了重要的作用。CPU對I/O設(shè)備的輸入/輸出控制方式有四種,發(fā)展過程是盡量減少CPU對外設(shè)的干預(yù)。設(shè)備管理中還引入了中斷、緩沖、Spooling等重要技術(shù)。Windowsxp和Linux的設(shè)備管理功能不僅都很強大,而且還各具特色。本章結(jié)束,可記得做作業(yè)喲!第七章操作系統(tǒng)的整體設(shè)計第七章操作系統(tǒng)的整體設(shè)計操作系統(tǒng)的整體設(shè)計經(jīng)歷了系統(tǒng)開發(fā)和程序設(shè)計的各個階段,它是伴隨著系統(tǒng)工程和程序設(shè)計方法的發(fā)展而成長的。本章的目的是更全面、更深入的了解操作系統(tǒng)的整體設(shè)計。

操作系統(tǒng)的各種模型分布式操作系統(tǒng)網(wǎng)絡(luò)操作系統(tǒng)Windows的網(wǎng)絡(luò)操作系統(tǒng)Linux操作系統(tǒng)7.1操作系統(tǒng)的各種模型由于操作系統(tǒng)是程序的集合,因此,操作系統(tǒng)的模型必然要決定程序之間的相互關(guān)系。

根據(jù)程序之間的調(diào)用關(guān)系可以將操作系統(tǒng)分為:網(wǎng)絡(luò)模型層次模型根據(jù)程序作用范圍及包裝手段可將操作系統(tǒng)分為:面向過程的模型面向?qū)ο蟮哪P?.1.1網(wǎng)狀結(jié)構(gòu)與層次結(jié)構(gòu)

1.??炷K模塊化的方法模塊的獨立性高內(nèi)聚低耦合將整個操作系統(tǒng)根據(jù)設(shè)計所要求的子功能劃分成單獨命名、獨立編址的程序部分,這些程序部分被稱為模塊。采用模塊化的方法可以使設(shè)計者更清晰的了解整個系統(tǒng)的結(jié)構(gòu),并且可以采用分而治之的方法來完成每一個程序段的設(shè)計。所謂獨立性是指每個模塊只涉及操作系統(tǒng)所要求的某一個或某幾個具體的子功能,并且有唯一的入口和出口,模塊與模塊之間的接口簡單明了。在模塊內(nèi)部,各個功能部分的聯(lián)系代表模塊的內(nèi)聚性,聯(lián)系越緊密,內(nèi)聚程度越高。而在模塊之間,相互交流信息與控制的程度代表耦合性,模塊間的聯(lián)系越高,耦合程度越高。模塊之間的調(diào)用關(guān)系可以有不同的組織方式,最典型的有網(wǎng)狀結(jié)構(gòu)和層次結(jié)構(gòu)。2.網(wǎng)狀結(jié)構(gòu)如果任意兩個模塊之間可以相互調(diào)用,并且系統(tǒng)沒有明確的上級模塊和下級模塊的區(qū)別,該系統(tǒng)的結(jié)構(gòu)稱為網(wǎng)狀結(jié)構(gòu)。7.1.1網(wǎng)狀結(jié)構(gòu)與層次結(jié)構(gòu)

系統(tǒng)服務(wù)代表操作系統(tǒng)所提供的面向用戶的功能和界面。中間的模塊代表各種操作系統(tǒng)的子功能。各個子功能之間根據(jù)需要可以形成相互的調(diào)用關(guān)系,既可以橫向調(diào)用,也可以上下調(diào)用。網(wǎng)狀結(jié)構(gòu)的好處是:可以很輕松地從一個子功能轉(zhuǎn)向另一個子功能,這給系統(tǒng)的運行帶來了靈活性。

如果對網(wǎng)狀結(jié)構(gòu)不加限制,有可能形成循環(huán)調(diào)用的情況,安全的隱患隨時可能導(dǎo)致系統(tǒng)的崩潰。

3.層次結(jié)構(gòu)依據(jù)操作系統(tǒng)各子功能與計算機系統(tǒng)不同種類的資源之間的相互關(guān)系,將操作系統(tǒng)程序模塊劃歸于不同的層次,層次之間形成單向調(diào)用關(guān)系。7.1.1網(wǎng)狀結(jié)構(gòu)與層次結(jié)構(gòu)

系統(tǒng)服務(wù)處于最上層,它通過調(diào)用下層的作業(yè)管理來實現(xiàn)對用戶的交互和控制。當(dāng)需要使用信息資源時,由作業(yè)管理調(diào)用文件系統(tǒng)來實現(xiàn)數(shù)據(jù)的存儲與流動;文件存儲與流動所涉及的存儲介質(zhì)的使用需調(diào)用內(nèi)存管理和I/O設(shè)備管理模塊;上層各個模塊的實現(xiàn)又必然是不同進(jìn)程的實現(xiàn),因此,需要調(diào)用處理機調(diào)度模塊。處理機調(diào)度處于系統(tǒng)的底層,它只能被上層的各個模塊調(diào)用而不能調(diào)用上層模塊。調(diào)用只能朝一個方向進(jìn)行,因此不會產(chǎn)生循環(huán)調(diào)用的情況。如果按層次對模塊賦予對應(yīng)的權(quán)限,就很容易實現(xiàn)對資源的保護。Windows和Linux都采用了層次結(jié)構(gòu)進(jìn)行設(shè)計。

某些操作系統(tǒng)的設(shè)計者經(jīng)過權(quán)衡以后,在同層模塊之間使用少量的網(wǎng)狀結(jié)構(gòu)。比如UNIX系統(tǒng)的有些底層模塊之間可以相互調(diào)用。7.1.2面向過程與面向?qū)ο?/p>

1.面向過程的操作系統(tǒng)

早期的操作系統(tǒng)都是采用的面向過程的設(shè)計方法。在面向過程的操作系統(tǒng)中,要查看資源的使用狀況非常容易,只需要找到代表該資源的數(shù)據(jù)結(jié)構(gòu)就可以對資源的情況一目了然。如果想實現(xiàn)對某個資源的新的動作,只需要針對該數(shù)據(jù)結(jié)構(gòu)再編制一段程序就可以完成了。

什么是面向過程的程序設(shè)計?問題:只要任何一個程序操作發(fā)生失誤,對應(yīng)的數(shù)據(jù)就可能出錯,隨著程序之間的相互調(diào)用不斷擴大,最后擴展到整個系統(tǒng),導(dǎo)致整個系統(tǒng)錯誤的發(fā)生。另外,大量的全局變量使系統(tǒng)安全性受到威脅。2.面向?qū)ο蟮牟僮飨到y(tǒng)

(1)對象(2)消息(3)類(4)繼承7.1.2面向過程與面向?qū)ο?/p>

讓我們來回憶一下過去學(xué)過的內(nèi)容?。?)對象2.面向?qū)ο蟮牟僮飨到y(tǒng)對象是一組屬性和一組針對該屬性的操作。屬性和操作在對象內(nèi)部相互作用,對象的狀態(tài)通過屬性的值來體現(xiàn),每一次對操作的調(diào)用都可能改變對象的狀態(tài)。而在對象外部,如果不經(jīng)特許無法了解對象的內(nèi)部結(jié)構(gòu),只能通過對象所提供的外部接口來獲知對象的狀態(tài)。(2)消息2.面向?qū)ο蟮牟僮飨到y(tǒng)消息是對象之間的通信單元。當(dāng)一個對象接收來自外部的消息時,可根據(jù)消息中指定的操作與傳遞的參數(shù)來對對象中的屬性進(jìn)行操作,從而改變對象的屬性。由用戶U向文件B發(fā)送消息,從而啟動文件B的打開操作。消息發(fā)送的主體也可以是任意對象,接收消息的對象必須含有消息所對應(yīng)的操作,否則消息發(fā)送失敗。

(3)類2.面向?qū)ο蟮牟僮飨到y(tǒng)類是一組具有相同數(shù)據(jù)結(jié)構(gòu)和相同操作的對象的集合,因此,它是對對象的抽象。類中同樣定義了一組屬性和針對該屬性的一組操作。一般情況下類中的屬性沒有具體的值來代表,而只是一個數(shù)據(jù)結(jié)構(gòu)框架。類的實例被稱為對象,因此,對象是類的實現(xiàn)。(4)繼承2.面向?qū)ο蟮牟僮飨到y(tǒng)在某一個既存類的基礎(chǔ)上經(jīng)過添加新的屬性或操作生成一個新類,新類直接繼承既存類的屬性和操作,因此被稱為對既存類的繼承。使用類與類之間的繼承特性,可以極大地簡化對屬性和操作的設(shè)計工作量。同時一個新類并不會對既存類產(chǎn)生影響,因此,操作系統(tǒng)的擴展將不會影響原有系統(tǒng)的功能。2.面向?qū)ο蟮牟僮飨到y(tǒng)

(5)面向?qū)ο蟛僮飨到y(tǒng)的設(shè)計方法設(shè)計操作系統(tǒng)將經(jīng)過如下幾個步驟:分析設(shè)計類的設(shè)計與實現(xiàn)對類進(jìn)行實例化系統(tǒng)組裝與測試維護7.1.2面向過程與面向?qū)ο?/p>

分析所要設(shè)計的操作系統(tǒng)的類型、應(yīng)用范圍和要達(dá)到的系統(tǒng)目標(biāo)等,確定了操作系統(tǒng)的邏輯模型。

進(jìn)行系統(tǒng)結(jié)構(gòu)設(shè)計,根據(jù)資源的分類將系統(tǒng)分層,確定每層要完成的任務(wù),確定對類進(jìn)行描述所依據(jù)的模型。對類進(jìn)行定義與設(shè)計,包括類的設(shè)計、復(fù)用、繼承,確定類與類之間要傳送的消息格式與時機。它主要是依據(jù)不同計算機的硬件資源的規(guī)格、型號以及其他參數(shù)將類實例化為對象,由這些對象來代表具體的資源。以類和對象為部件按操作系統(tǒng)的設(shè)計要求組裝完整的系統(tǒng),并根據(jù)預(yù)先設(shè)計好的測試流程進(jìn)行系統(tǒng)測試,測試通過以后操作系統(tǒng)完全生成。在操作系統(tǒng)的運行過程中針對發(fā)現(xiàn)問題進(jìn)行修正、補丁、擴展等。維護往往只針對指定的類或者對象,因此涉及范圍很小。7.2分布式操作系統(tǒng)計算機的發(fā)展并不局限于稱為集中式系統(tǒng)的單處理機和單存儲器的形式。為了達(dá)到更大程度的并行,系統(tǒng)可能使用多個處理機甚至多臺主機。因此,我們必須了解分布式系統(tǒng)。7.2分布式操作系統(tǒng)分布式系統(tǒng)定義分布式系統(tǒng)是由多個物理上分布的處理機或計算機經(jīng)過連接構(gòu)成的計算機系統(tǒng),這些組成部件可以合作完成一個共同的任務(wù),以透明的方式在用戶面前呈現(xiàn)出一個整體形象。分布式操作系統(tǒng)是建立于分布式系統(tǒng)基礎(chǔ)之上的,對所有分布式資源進(jìn)行管理和控制的操作系統(tǒng)。由于增加了分布特性,操作系統(tǒng)需要增加進(jìn)程間的數(shù)據(jù)交換、全局性的保護機制、各個物理位置上的數(shù)據(jù)一致性、任務(wù)分布與協(xié)調(diào)等功能,以實現(xiàn)資源共享、開放性、并發(fā)性、容錯性和透明性。7.2分布式操作系統(tǒng)分布式操作系統(tǒng)的設(shè)計目標(biāo)1.資源共享2.開放性3.并發(fā)性4.可靠性5.數(shù)據(jù)一致性6.透明性分布式系統(tǒng)的資源共享指的是對分布式資源的共享。分布式操作系統(tǒng)需要解決如下問題:采用何種管理手段來記錄分布于不同地理位置上的資源?當(dāng)多進(jìn)程同時需要對同類資源使用時,由誰及采用何種調(diào)度策略來對進(jìn)程與資源進(jìn)行連接?如何實現(xiàn)遠(yuǎn)程資源與用戶的交互?目前討論得比較多的有兩種模型:客戶機╱服務(wù)器模型和面向?qū)ο竽P?。由于分布式系統(tǒng)是通過對不同地理位置上的計算機的連接來構(gòu)成的,它應(yīng)該能夠允許連接數(shù)量的變化、軟件功能的增減、服務(wù)分布的變化、節(jié)點之間的溝通等,而不導(dǎo)致系統(tǒng)功能的削弱或破壞。如果能夠?qū)崿F(xiàn)上述要求,則稱該分布式系統(tǒng)是開放的。要實現(xiàn)開放系統(tǒng)必須有標(biāo)準(zhǔn)的數(shù)據(jù)通信格式、可移植的系統(tǒng)軟件、統(tǒng)一的用戶界面。在分布式系統(tǒng)中,存在著許多進(jìn)程,這些進(jìn)程既存在物理上的并行,也存在邏輯上的并行;在節(jié)點與節(jié)點之間又存在大量的數(shù)據(jù)并發(fā)流動。這一切對操作系統(tǒng)的并發(fā)控制能力提出了要求,要盡量減少并發(fā)行為之間可能發(fā)生的沖突,保證資源的安全使用,實現(xiàn)各進(jìn)程之間的協(xié)調(diào)運作。相對于傳統(tǒng)的計算機系統(tǒng),分布式系統(tǒng)具有較高的可靠性。硬件的可靠性可以利用相同部件的相互替代來保證,數(shù)據(jù)的可靠性可以通過一定程度的冗余與備份來實現(xiàn)。另外,對于整個系統(tǒng)的容錯能力,需要操作系統(tǒng)具有錯誤檢測和恢復(fù)功能。相同的數(shù)據(jù)可能分布于不同的節(jié)點上,保證數(shù)據(jù)一致性的辦法通常是保證事務(wù)處理的原子性,即在事務(wù)處理過程中如果發(fā)生中斷,則取消該事務(wù)的處理,并讓系統(tǒng)恢復(fù)到處理之前的狀態(tài)。原子性避免了事務(wù)在處理過程中產(chǎn)生的錯誤。另外,對分布于不同位置的相同數(shù)據(jù)定期刷新也可以保證一定程度上的數(shù)據(jù)一致性。透明性指用戶在使用分布式系統(tǒng)時,不需要了解系統(tǒng)的資源、進(jìn)程、動作、服務(wù)等任何數(shù)據(jù)與行為所處的位置。與集中式操作系統(tǒng)相比,分布式系統(tǒng)集中了各部分資源的優(yōu)勢,因此,運行速度更快、系統(tǒng)處理能力更強、資源共享范圍更廣、更易于進(jìn)行功能擴充并且有更高的可靠性。分布式系統(tǒng)管理復(fù)雜、系統(tǒng)安全保密實現(xiàn)困難、軟件太少等都對分布式系統(tǒng)的發(fā)展與應(yīng)用有影響。

7.3網(wǎng)絡(luò)操作系統(tǒng)什么是網(wǎng)絡(luò)網(wǎng)絡(luò)的結(jié)構(gòu)網(wǎng)絡(luò)操作系統(tǒng)7.3.1什么是網(wǎng)絡(luò)

計算機網(wǎng)絡(luò)是按照網(wǎng)絡(luò)協(xié)議通信,以共享資源為目的,將地理上分散且自主的計算機互相連接的集合。網(wǎng)絡(luò)的構(gòu)成包含三個要素網(wǎng)絡(luò)的主要功能計算機網(wǎng)絡(luò)主要分為三類

網(wǎng)絡(luò)的物理架構(gòu) 通信協(xié)議 一系列獨立的計算機(1)在計算機與計算機之間進(jìn)行通信或數(shù)據(jù)傳輸。(2)實現(xiàn)對數(shù)據(jù)、軟件和硬件資源的共享。(3)提高計算機的可靠性和可用性。(4)便于進(jìn)行分布式處理。

局域網(wǎng)廣域網(wǎng)城域網(wǎng)7.3.2網(wǎng)絡(luò)的結(jié)構(gòu)

1.網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)網(wǎng)絡(luò)在物理上表現(xiàn)為通信子網(wǎng)對網(wǎng)絡(luò)節(jié)點的連接,其中通信子網(wǎng)的結(jié)構(gòu)稱為網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。星形結(jié)構(gòu)一般是通過一個中央交換機實現(xiàn)對網(wǎng)絡(luò)各節(jié)點的連接,所有的數(shù)據(jù)通信都必須經(jīng)過交換機的控制與轉(zhuǎn)接來實現(xiàn)??偩€形結(jié)構(gòu)中的所有節(jié)點都連接到一條公用的數(shù)據(jù)通路上(稱為總線),接點之間的數(shù)據(jù)通信靠各節(jié)點對總線信息的分辨與獲取來實現(xiàn)。環(huán)形結(jié)構(gòu)是將各節(jié)點連接成環(huán),通過節(jié)點爭取環(huán)路使用權(quán)來完成信息通信的。目前使用較多的還有樹形結(jié)構(gòu),它往往采用星形的連接方式與總線形的通信手段來實現(xiàn)通信。7.3.2網(wǎng)絡(luò)的結(jié)構(gòu)2.網(wǎng)絡(luò)體系結(jié)構(gòu)之一——OSI參考模型

物理層提供為建立、維護和拆除物理鏈路所需的機械的、電氣的、功能的和規(guī)程的特性;提供有關(guān)在傳輸介質(zhì)上傳輸二進(jìn)制位流及物理鏈路故障檢測指示。

數(shù)據(jù)鏈路層為網(wǎng)絡(luò)層實體提供點到點無差錯幀傳輸功能,并進(jìn)行流量控制及鏈路管理。

網(wǎng)絡(luò)層接受來自數(shù)據(jù)鏈路層的服務(wù),并為傳輸層建立、保持及釋放連接和數(shù)據(jù)傳送提供數(shù)據(jù)交換、流量控制、擁擠控制、差錯控制及恢復(fù)、路由選擇等功能。傳輸層為會話層實體提供透明的、可靠的數(shù)據(jù)傳輸服務(wù),保證端到端的數(shù)據(jù)完整性;按本層需要選擇網(wǎng)絡(luò)層能提供的服務(wù);提供建立、維護和拆除傳輸連接功能。會話層提供面向用戶的連接服務(wù),對不同系統(tǒng)會話層實體提供組織和同步所必需的手段,以便對數(shù)據(jù)的傳送提供控制和管理。表示層為應(yīng)用層進(jìn)程提供能解釋所交換信息含義的一組服務(wù),如代碼轉(zhuǎn)換、格式轉(zhuǎn)換、文本壓縮、文本加密與解密等。應(yīng)用層為OSI進(jìn)程提供服務(wù),如文件傳送、電子郵件、EDI等,保證網(wǎng)絡(luò)的完整透明性。7.3.3網(wǎng)絡(luò)操作系統(tǒng)

網(wǎng)絡(luò)操作系統(tǒng)是針對網(wǎng)絡(luò)環(huán)境設(shè)計的、具有OSI上層功能的、能同時對網(wǎng)絡(luò)服務(wù)器及工作站進(jìn)行管理的并實現(xiàn)網(wǎng)絡(luò)節(jié)點之間通信功能的操作系統(tǒng)。因為網(wǎng)絡(luò)的目的是實現(xiàn)資源共享與數(shù)據(jù)通信,在文件共享和進(jìn)程通信方面有許多工作要做。

7.3.3網(wǎng)絡(luò)操作系統(tǒng)網(wǎng)絡(luò)操作系統(tǒng)必須具有如下功能:(1)用戶管理功能。(2)系統(tǒng)容錯措施。(3)服務(wù)連接維護和數(shù)據(jù)訪問同步。(4)文件、目錄服務(wù),除基本文件及目錄管理外,還包括文件傳輸協(xié)議、遠(yuǎn)程通信等。(5)網(wǎng)絡(luò)計費、安全與維護。(6)提供開放的軟件開發(fā)環(huán)境。7.3.3網(wǎng)絡(luò)操作系統(tǒng)

分布式OS網(wǎng)絡(luò)OS表現(xiàn)形式功能強大的單機系統(tǒng)

若干分立的計算機及其連接

操作系統(tǒng)部件上運行相同的操作系統(tǒng)各計算機可運行獨立的操作系統(tǒng)通信進(jìn)程之間傳遞消息來實現(xiàn)通信采用文件共享的形式文件組織文件有統(tǒng)一的組織與形式允許文件的多樣化7.4Windows的網(wǎng)絡(luò)操作系統(tǒng)Windows系列逐漸分化為三類產(chǎn)品:以Windows9x/Me為代表的是面向家庭計算機用戶的操作系統(tǒng),其最新的版本是WindowsXPHomeEdition;以WindowsNTWorksation/2000Professional為代表的是面向商業(yè)辦公的操作系統(tǒng),其最新的版本是WindowsXPProfessional;以WindowsNTServer/2000Server為代表的是面向高端應(yīng)用的操作系統(tǒng),其最新版本是Windows2003Server。

7.4Windows的網(wǎng)絡(luò)操作系統(tǒng)網(wǎng)絡(luò)構(gòu)成Windows的結(jié)構(gòu)Windows的管理職能WindowsServer的安全與監(jiān)視7.4.1網(wǎng)絡(luò)構(gòu)成

常見的Windows網(wǎng)絡(luò)構(gòu)造

7.4.2Windows的結(jié)構(gòu)

Windows操作系統(tǒng)結(jié)構(gòu)

劃分成用戶模式和核心模式兩大部分

用戶模式中有:環(huán)境子系統(tǒng)集成子系統(tǒng)每個環(huán)境子系統(tǒng)代表一個用戶態(tài)服務(wù)器

每個集成子系統(tǒng)是完成操作系統(tǒng)功能的服務(wù)器

核心模式被稱為執(zhí)行體對象(資源)管理器,擁有內(nèi)核對象,這些對象具有獲得創(chuàng)建應(yīng)用程序所需要的核心服務(wù)的手段;安全引用監(jiān)視器,為系統(tǒng)資源提供一致的安全檢查和實施;進(jìn)程管理器,管理線程和進(jìn)程的壽命,承擔(dān)安排執(zhí)行時間的責(zé)任;虛擬內(nèi)存管理器(VMM),為每個進(jìn)程提供統(tǒng)一的、私有的地址空間;本地過程調(diào)用工具,向同一計算機上的客戶和服務(wù)器提供簡單的消息傳送手段;I╱O管理器,為所有的進(jìn)程提供訪問硬件驅(qū)動程序、文件系統(tǒng)和網(wǎng)絡(luò)的方法;窗口管理器,創(chuàng)建用戶熟悉的界面并為進(jìn)程提供訪問圖形設(shè)備接口的方法。微內(nèi)核和硬件抽象層采用了層次操作系統(tǒng)模型,提供了線程調(diào)度、中斷、異常調(diào)度及多處理機同步。7.4.3Windows的管理職能

WindowsServer對網(wǎng)絡(luò)的管理是通過活動目錄來進(jìn)行的?;顒幽夸浭且环N目錄服務(wù),它存儲有關(guān)網(wǎng)絡(luò)對象的信息,這些對象是用戶、域、組織單元、樹和森林,網(wǎng)絡(luò)上的所有可用資源信息都被集成于這些對象之中,利于管理員和用戶方便地查找和使用。域是對計算機及用戶的一種組織,任何用戶只要在域中有一個帳戶,就擁有了網(wǎng)絡(luò)資源的使用權(quán)利。一個域作為一個完整的目錄,域之間能夠通過信任關(guān)系建立起樹狀連接,使單一帳戶可享用該樹狀結(jié)構(gòu)中的任何信息?;顒幽夸浄?wù)把域又詳細(xì)劃分成組織單元,組織單元是一個邏輯單位,它是域中一些用戶和組、文件與打印機等資源對象的集合。

7.4.3Windows的管理職能

活動目錄完全采用了Internet標(biāo)準(zhǔn)協(xié)議,進(jìn)行網(wǎng)絡(luò)登錄時,可用“用戶名@域名”的用戶帳號。Windows活動目錄把DNS作為其定位服務(wù),因此是直接面向Internet的。域中有許多平等的域控制器,Windows任何一個域控制器上的目錄庫的變更都會自動復(fù)制到其他域控制器上的副本中。7.4.3Windows的管理職能

域安全策略7.4.3Windows的管理職能

用戶和計算機帳戶管理7.4.3Windows的管理職能

活動目錄的特性(1)信息安全性(2)基于策略的管理(3)擴展性(4)可調(diào)整性(5)信息復(fù)制(6)與

DNS集成(7)與其他目錄服務(wù)的內(nèi)部操作(8)靈活的查詢

安全性與活動目錄完全集成在一起。不僅可以針對目錄中的每個對象定義訪問控制,還可對其每種屬性進(jìn)行操作?;顒幽夸浀哪夸浄?wù)包括數(shù)據(jù)存儲以及邏輯、分層結(jié)構(gòu)。作為邏輯結(jié)構(gòu),它為策略應(yīng)用程序提供上下文分層結(jié)構(gòu)。作為目錄,它存儲指定給特定上下文的策略(稱為組策略)?;顒幽夸浭强蓴U展的,這意味著管理員可以將對象的新類添加到規(guī)劃中,而且還可以將新屬性添加到已現(xiàn)有的對象類中?;顒幽夸浛砂ㄒ粋€或多個域,每個又都帶有一個或多個域控制器,這使得可調(diào)整目錄以便滿足任何網(wǎng)絡(luò)的要求。多域可組合成域目錄樹或林?;顒幽夸浭褂枚嘀鲝?fù)制。目錄存儲在初始域控制器中,其內(nèi)容可復(fù)制到域、域目錄樹或林的每個域中。對目錄數(shù)據(jù)所做的更改將復(fù)制到所有域控制器中?;顒幽夸浭褂糜蛎馕鱿到y(tǒng)DNS(DomainNameSystem)。

DNS是一個Internet的標(biāo)準(zhǔn)服務(wù),它可以很容易地將可讀主機名稱翻譯成數(shù)字的IP地址。這可以在TCP/IP網(wǎng)絡(luò)上啟用與計算機和用戶的標(biāo)識和連接。

由于活動目錄是基于工業(yè)標(biāo)準(zhǔn)的目錄訪問協(xié)議,它可以與使用這些協(xié)議的其他目錄服務(wù)實現(xiàn)內(nèi)部操作。用戶和管理員可在搜索功能中指定網(wǎng)絡(luò)鄰居、活動目錄用戶和計算機來快速查找網(wǎng)絡(luò)上的對象,使用對象屬性??赏ㄟ^使用活動目錄生成的全局目錄優(yōu)化查找信息。

7.4.4WindowsServer的安全與監(jiān)視

WindowsServer提供了許多安全機制,如:備份事件查看性能監(jiān)視系統(tǒng)監(jiān)視網(wǎng)絡(luò)監(jiān)視等

7.5Linux操作系統(tǒng)Linux體系結(jié)構(gòu)Linux模塊化加載核心數(shù)據(jù)結(jié)構(gòu)設(shè)備驅(qū)動文件系統(tǒng)

Linux特性

7.5.1Linux體系結(jié)構(gòu)

內(nèi)核是系統(tǒng)的心臟,是運行程序和管理計算機硬件的核心程序。它接受shell傳來的系統(tǒng)調(diào)用命令并把命令送給內(nèi)核去執(zhí)行。Shell是系統(tǒng)的用戶界面,提供了用戶與內(nèi)核進(jìn)行交互操作的一種接口。它接收用戶輸入的命令并把它送入內(nèi)核去執(zhí)行。實際上Shell是一個命令解釋器,它解釋由用戶輸入的命令并且把它們送到內(nèi)核。Shell有自己的編程語言,用這種編程語言編寫的Shell程序與其他應(yīng)用程序具有同樣的效果。內(nèi)核、Shell和文件結(jié)構(gòu)一起形成了基本的操作系統(tǒng)結(jié)構(gòu)。標(biāo)準(zhǔn)的Linux系統(tǒng)都有一套叫做實用工具的程序,它們是專門的程序,例如編輯器、執(zhí)行標(biāo)準(zhǔn)的計算操作等。用戶也可以產(chǎn)生自己的工具。7.5.2Linux模塊化加載

Linux的核心(Kernel)可以認(rèn)為是一個單一的巨大的程序,核心的功能組件可以訪問它的所

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論