《網絡操做系統》課後習題答案

 

第一章 網絡操做系統引論html

  1. ①操做系統的定義:操做系統是控制和管理計算機系統的硬件和軟件資源、合理地組織工做流程以及方便用戶的程序集合。程序員

  ②現代操做系統的基本特徵:一、併發性二、共享性三、虛擬性四、不肯定性算法

  2. 操做系統在計算機系統中處於何種地位:是硬件層的第一次擴充,是計算機系統軟件的重要組成部分。計算機系統的層次結構:硬件層—操做系統層—語言處理程序層—應用程序層。操做系統的做用:提升計算機系統的效率,加強系統的處理能力,充分發揮系統資源的利用率,方便用戶使用。shell

  3. 多道程序設計的硬件基礎:①中斷系統②通道技術③CPU與通道的通訊數據庫

  4. ①多道程序設計的基本原理:多道程序設計的主要目的是充分利用系統中全部資源且儘量地讓它們並行操做。採用通道技術後使CPU從繁瑣的I/O操做中解放出來,它不只能實現CPU與通道並行工做,並且也能實現通道與通道之間、各通道與外設之間的並行。編程

  ②多道程序設計的主要特色:①多道②宏觀上並行③微觀上串行。瀏覽器

  5. 實現多道程序設計要解決的幾個問題:①存儲保護和地址重定位。(幾道程序共享同一主存)②處理機的管理和調度。(共享同一處理機)③資源的管理與分配。(共享系統資源)安全

  6. 虛擬處理機:邏輯上的處理機稱爲虛擬處理機。虛擬計算機:在一臺計算機上配置操做系統後,比原來的計算機的功能加強了。這種是概念上的、邏輯上的計算機,而不是真正的物理計算機,這樣的計算機稱爲虛擬計算機。服務器

  7.網絡

        8. 處理機的運行現場:就是指處理機在執行程序過程當中任一時刻的狀態信息的集合。處理機運行現場包括的內容:①指令計數器(程序計數器)②程序狀態寄存器③通用寄存器④特殊控制寄存器。處理機的運行狀態有兩種:核心態(00)和用戶態(11)。程序分爲系統程序和用戶程序。程序狀態分爲三種:①就緒②運行③阻塞。程序狀態的做用:程序狀態能夠互相轉換,便於處理機按照某種規則進行調度。

  9. 訪管指令、特權指令、系統調用之間的區別和聯繫:

  10. ①系統調用:用戶在程序中能用訪管指令調用的,由操做系統提供的子功能集合,其中每個子功能稱爲一個系統調用命令。②用戶程序使用系統調用後,爲何能從算態進入管態,返回用戶程序後又從管態回到算態(系統調用的實現原理):系統調用中的訪管指令的地址碼可做爲系統調用的功能號,它對應一個操做系統爲用戶提供的子功能或函數。當用戶程序須要調用系統功能時,就在其程序的適當位置安排一條系統調用命令,當執行到該指令時便產生訪管中斷,中斷的硬件裝置開始響應中斷,保存原來的PSW到內存的固定單元,再從內存的另外一個固定單元中取出新的PSW送入PSW寄存器。因爲新PSW中已事先設置了系統狀態爲管態,從而使處理機進入管態,在管態下執行中斷處理程序。因爲在管態下可使用特權指令,因此用戶要求操做系統提供的服務就很容易地被完成。中斷處理程序結束後,經過恢復舊的PSW到PSW寄存器,因而又可返回到被中斷的用戶程序,即從管態又回到算態。

  11. UNIX的系統調用的兩種方式:①直接系統調用②間接系統調用。它們各是怎樣處理:①直接系統調用除可以使寄存器傳遞參數外,其它參數都跟在trap指令的後面②間接系統調用跟隨trap指令的是一個指向程序數據區的指針。該程序數據區內有一個直接系統調用trap指令,其後跟以除r0外的參數。

  12. ①分時:兩個或兩個以上的事件按時間劃分輪流地使用計算機系統中的某一資源。 ②分時系統(又稱交互做用系統):在一個系統中,若是多個用戶經過本身的終端分時地使用同一個計算機,這樣的系統就稱爲分時系統,其上的操做系通通稱爲分時操做系統。UNIX屬分時系統。③分時系統的特色:①同時性(可同時操做,共同使用該系統)②獨立性(獨佔感)③及時性(及時響應)④交互性(人機對話)。

  調進/調出是實現分時系統的一種主要方式(分時系統實現原理)。(多流調進調出方式)

  13. 實時系統分爲兩類:①實時控制系統(×××發射)②實時處理系統(預訂飛機票)。

  設計實時系統要考慮的問題:①實時時鐘管理(實時任務、延遲任務)②連續人機對話③過載的防禦(任務的隨機性)④高可靠性和保證(故障引發的嚴重後果)。

  14. 分佈式計算機系統:是一個由多臺計算機組成的系統,在用戶看來,他所擁有的計算機是一臺單獨的計算機,而這臺計算機是一臺功能擴大了的虛擬機。分佈式系統的三個基本功能:①通訊②資源共享③並行計算。分佈式系統最爲突出的特色是透明性。

  分佈式計算機系統具備如下主要特色:

  ①任意兩臺計算機之間能夠利用通訊交換信息。②各計算機具備相對的自主性或自治性。③具備透明性④具備總體性或協同性。⑤具備堅決性。(任一臺故障不會使系統癱瘓。)

  分佈式計算機系統與集中式計算機系統的主要區別:

  ①利用消息傳遞進行通訊(沒有共享存儲器)

  ②系統中各臺計算機是自治的(沒有主從之分,沒有分級控制,沒有公用時鐘)

  ③透明性(系統中全部資源爲全部用戶共享,用戶無需知道資源位於何處)

  ④協同性(可相互協做完成任務或做業,可實現並行計算。)

  15. 分佈式系統對資源的管理與集中式系統有何不一樣?

  答:分佈式系統對資源的管理採用一類資源有多個管理者的分佈式管理方式。分佈式管理方式又可分爲集中分佈管理和徹底分佈管理兩種方式。集中式系統對資源的管理採用一個管理者的方式。

  16. 在分佈式系統中創建邏輯時鐘的緣由:在分佈式系統中,因爲沒有共享存儲器和公用時鐘,雖然在分佈式系統中每臺計算機都有本身的時鐘,儘管每一個時鐘工做得都很是穩定,但並不能保證它們的頻率徹底相同。爲了實現分佈式系統中進程同步,須要給系統中的每一個事件指定一個時間值,即打上時間戳,用這一方法來肯定系統全局的事件順序。

  在對分佈式系統中的全部事件賦予時間戳時應知足的條件是:

  ① 在同一節點上,若A→B,則C(A)


  ② 若A和B分別是發送消息和接收消息的兩個事件,則C(A)


  ③ 對任何事件A和B,一定C(A)≠C(B)。

  17. 舉例說明:對任何事件A和B,若是C(A)


  答:設有相互通訊的兩個進程P1和P2,它們是位於兩個節點機上的進程。假定P1發一消息給P2,稱爲事件B,且C(B)=200,而P2接收該消息,稱爲事件A,且C(A)=195.(由於P2的處理機比P1的處理機慢,因此P2的邏輯時鐘信號也比P1的慢。)在這種狀況下,C(A)


  18. 緊耦合與鬆耦合多處理機系統有何區別?

  答:主要區別在於有無共享存儲器。①緊耦合多處理機系統有共享存儲器,因此也稱其爲共享存儲結構多處理機系統。

  ②鬆耦合處理機系統中沒有共享存儲器,每臺處理機都有一個容量較大的局部存儲器,因此也稱其爲分佈存儲結構多處理機系統。

  19. 網絡操做系統:就是在計算機網絡系統中,管理一臺或多臺主機的硬軟件資源,支持網絡通訊,提供網絡服務的軟件集合。

  通用操做系統的基本功能:①處理機(進程)管理②存儲管理③文件管理④設備管理。網絡操做系統還具備的主要功能:①實現網絡中各點機之間的通訊。②實現網絡中的資源共享③提供多種網絡服務(硬盤共享;打印機共享;提供電文、語音、圖像的加密和傳輸;文件的傳遞、存取和管理;做業的傳輸和操做服務)④提供網絡用戶的應用程序接口。

  網絡操做系統的主要特色:①複雜性(管理全網資源;機間通訊與同步;網絡文件管理)②並行性(多處理機實現真正並行)③節點機間的通訊與同步(OSI/RM的七層協議中第四層(傳輸層)到第七層(應用層)進入了網絡操做系統的領域,低三層(N、D、P)M則提供了網絡傳輸的支持)④安全性(表現:網絡操做的安全性,系統規定不一樣用戶有不一樣的權限(系統管理員、高級用戶、通常用戶);用戶身份驗證;資源的存儲控制;網絡傳輸的安全。)

  20. 在多處理機系統中①加速比定義:它表示一個做業在單機上的執行時間與花在多處理機上執行時間的比值。公式:SP=ET1/ET2 其中SP爲做業J的加速比,ET1爲做業J在單機上的執行時間,ET2爲做業J在多處理機上的執行時間。做業J的加速比不能超過處理機數P,即0≤Sp≤P .②處理機利用率的定義:它表示P臺處理機實際執行時間(扣除空閒時間)與P臺處理機被佔用時間(空閒時間與P臺處理機執行時間之和)的比值。0≤Up≤1 .

  21. 多處理機系統中的通訊方式:①基於共享變量的通訊方式(主要適用於緊耦合多處理機)②基於消息傳遞的通訊方式(主要適用於鬆耦合多處理機)

  22. 中斷的分類:①I/O中斷②程序中斷③硬件故障中斷④外中斷⑤訪管中斷

  (其中①④稱爲中斷,②③⑤稱爲「陷入」,又稱捕俘。)

  23. 計算機安全級從D級(最不嚴格)到A級(最嚴格)。Windows當前支持C2安全級。

  24. UNIX強內核;Windows NT微內核。

該文章轉載自無憂考網:http://www.51test.net/show.asp?id=746722&Page=2

該文章轉載自無憂考網:http://www.51test.net/show/746722.html

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第二章 網絡操做系統的結構

1. 在信息處理系統中,客戶/服務器計算模式和對等模式有何區別:

  ①對等模式中,各節點機處於平等地位,沒有主次之分。網上任壹節點所擁有的資源均可做爲網絡公用資源,可被其餘節點的網絡用戶共享。對等模式具備靈活的資源共享方式和均衡的通訊方式,壹般適合小型網絡。

  ②客戶/服務器模式,壹些節點做爲客戶機,另壹些節點做爲服務器機。客戶/服務器模式是壹種主從方式。採用這種模式,可高效地實現資源共享。同時它具備很好的可移植性,互操做性和規模的可伸縮性。

  2. 操做系統結構設計的結構模式:①客戶/服務器模式。特色:簡化了基本操做系統,縮小了內核,並容易增長新的API;提升了可靠性;適合分佈式計算環境。②對象模式。特色:這種方法減小了在系統整個生存期中所作修改的影響。③對稱多處理模式。特色:主要支持多處理機操做系統的設計。

  3. 客戶/服務器計算模式中,客戶與服務器之間如何交互(工做過程):P36

  ①客戶方以一般方式發出服務請求,由客戶機上的網絡軟件把它裝配成請求包,再經過傳輸協議軟件把請求包發送給服務器方。

  ②服務器傳輸軟件收到請求包後,對其檢查,無誤後把它提交給服務器方的網絡軟件。

  ③服務器網絡軟件根據請求包的請求,完成相應的處理和服務,並將其結果裝配成響應包,由傳輸協議軟件將其發送給客戶。

  ④由客戶的傳輸協議軟件把收到的響應包轉交給客戶的網絡軟件,由網絡軟件做適當處理後交給客戶。

  客戶/服務器模式的優勢是:高效地實現了網絡資源共享,具備很好的互操做性和軟件的可移植性,提升了系統的可靠性,適合分佈式計算環境。

  4. 計算機網絡系統中,工做站操做系統包括的軟件:①重定向程序②傳輸協議軟件。服務器操做系統包括的軟件:①服務器操做系統的內核程序②傳輸協議軟件③網絡服務軟件④網絡安全管理軟件。

  5. 網絡操做系統與網絡用戶有哪兩級接口:①操做命令接口。做用:用戶經過鍵盤或鼠標鍵入或點擊各類操做命令來控制、操縱、管理和使用網絡。這種接口採用交互式。②編程接口。經過網絡操做系統提供的壹組系統調用來實現。此外網絡操做系統還爲用戶提供了壹系列應用程序接口。

  6. 網絡操做系統的命令接口應爲用戶提供哪些類型的操做命令:①系統訪問命令;②文件與目錄管理命令;③信息處理類命令;④網絡通訊類命令;⑤打印輸出類命令;⑥進程控制類命令;⑦Internet類命令;⑧其它。

  7. Shell程序的做用是什麼:①做爲Shell命令解釋程序。Shell接收、識別並執行用戶鍵入的各類命令。②做爲高級程序設計語言。什麼是Shell過程:用shell編寫的程序稱爲shell過程。如何創建和執行Shell過程:創建shell過程的步驟同創建普通文本文件的方式相同,可利用編輯器(例如vi)進行程序輸入和編輯加工。Shell過程的執行可採用以下方法:①輸入重定向到shell過程,其壹般形式爲:$ sh<過程名 ②將shell過程改成可執行文件,其壹般形式爲:$ chmod a + x 過程名 $ 過程名

  8. 如何理解微內核的概念:微內核結構是壹種新型結構,它體現了操做系統結構設計的新思想,微內核的設計目標是使操做系統的內核儘量小,使其餘的全部操做系統服務壹般都放在覈外用戶級完成。採用微內核結構有何優勢:①靈活性。微內核短小精幹,僅提供最基本最必要的服務。②開放性。操做系統除內核之外的功能均可用服務器的形式創建在內核之上,能夠方便地設計、開發、集成本身的新系統。③可擴充性。加入和修改壹個服務不須要中止系統和從新引導內核,安裝、調試壹個新系統很容易。

  9. 什麼叫進程:進程是程序的壹次執行,該程序可與其它程序併發執行。

  爲何要引入進程的概念:①順序程序的特色:具備封閉性和可再現性。可是,程序的順序執行是低效的。②程序的併發執行和資源共享。多道程序設計出現後,實現了程序的併發執行和資源共享,提升了系統的效率和系統的資源利用率,但卻帶來了新的問題。③程序的併發執行的特色:破壞了程序的封閉性和可再現性,程序和機器執行程序的活動再也不壹壹對應,併發程序之間有可能存在相互制約關係。

  併發程序的這些特性:獨立性、併發性、動態性和相互制約性,反映了併發程序的本質,程序的概念已不能反映程序併發找執行的實質,所以,人們引進了進程的概念。

  10. 進程由哪幾部分組成:①程序。做用:描述進程要完成的功能。②數據集合。做用:程序在執行時所須要的數據和工做區。③程序控制塊。做用:包含進程的描述信息和控制信息。它是進程存在的惟壹標誌。

  11. 進程的基本調度狀態有哪些:①運行②就緒③阻塞。進程調度程序從處於就緒狀態的進程中選擇壹個投入運行。運行進程因等待某壹事件而進入阻塞,因時間片到達而回到就緒。處於阻塞狀態的進程當所等待的事件發生時,便進入就緒狀態。P50

  12. 簡述經常使用的進程調度算法:①靜態優先級算法:系統在調度進程時按優先級從高到低進行調度,在進程運行過程當中優先級再也不動態地改變。②動態優先級算法:系統在調度進程時按優先級從高到低進行調度,在進程運行過程當中能按變化狀況對優先級進行適當調整。③時間片輪轉法:系統把全部就緒進程按先來先服務規則排成壹個隊列,就緒隊列中的全部進程,能夠依次輪流得到壹個時間片的處理時間,而後系統又回到隊列的開始部分,如此不斷循環。

  13. 什麼叫原語:原語是由若干機器指令構成的並用於完成特定功能的壹段程序,而這些程序在執行期間是不可分割的。有哪些進程控制原語:①建立原語②撤銷原語③掛起原語④激活原語⑤阻塞原語⑥喚醒原語。

  14. 什麼叫線程:「進程內的壹個可執行單元」、「進程內的壹個可調度的實體」。爲何要引入線程的概念:在引入線程概念以前,僅用進程的概念。在進程的調度過程當中,因爲常常要進行進程的切換,在切換時,既要保留現運行進程的運行環境,又要設置新選中的進程的運行環境,爲此要花費很多處理機的時間和主存的空間。所以,把進程做爲系統調度的基本單位要付出較大的時空開銷,從而也限制了系統中進程的數量和進程的切換頻率。另壹方面,爲了提升系統的並行能力,把並行粒度進壹步減少,在進程的內部引入線程,線程做爲系統的調度單位,而進程做爲系統的資源分配單位。這樣,對擁有資源的基本單位再也不頻繁切換,而對調度的基本單位又不增長時空開銷。引進線程的好處是:①減小了系統的時空開銷。②加強了系統的並行能力。

  15. 存儲管理研究哪些內容:①地址再定位問題②存儲空間的分配③存儲的保護問題④存儲擴充問題。

  16. 爲何要引入虛擬存儲器的概念:在計算機系統中,主存的容量有壹定的限制,不可能太大知足各類用戶的須要,而在技術上輔助存儲器卻能夠作得至關大。爲了給大做業提供方便,使它們再也不承擔對主存和輔存的具體分配和管理工做,而由操做系統把主存和輔存統壹管理起來。虛存的最大容量由什麼決定:虛存實際上就是做業地址空間,做業地址空間的大小取決於計算機系統的地址機構。所以,虛存的最大容量取決於地址寄存器的位數。例如地址寄存器的位數爲32位時,其虛存的最大容量可達4GB.

  17. 什麼叫聯想儲存器:在分頁和請求分頁存儲管理系統中,爲了加速查表過程,採用壹組高速硬件寄存器,這些寄存器連同管理它們的硬件構成了壹個容量較小的存儲器,稱爲聯想存儲器,也叫快表。

  試說明利用聯想存儲器實現動態地址變換的過程:聯想存儲器具備快速並行查詢能力。例如CPU給出有效地址爲(P,W),它把頁號P送入輸入寄存器,隨後當即和聯想存儲器各單元的頁號進行比較,如與某個單元中頁號相匹配,則把該單元中的塊號B送入輸出寄存器。這樣,就能夠用(B,W)訪問相應的主存單元。(P爲頁號,W爲頁內地址;B爲塊號)。

  18. 請求分頁與分頁存儲管理有何不一樣:請求分頁是在分頁的基礎上實現。它們之間的根本區別在因而否將壹做業的所有地址空間同時裝入主存。請求分頁存儲管理不要求將做業所有地址空間同時裝入主存。基於這壹點,請求分頁存儲管理能夠提供虛存,而分頁存儲管理卻不能提供虛存。缺頁中斷是如何發生:因爲壹個做業的地址空間不一樣時所有裝入主存,在做業執行過程當中,當所需頁面不在主存時,便引發缺頁中斷。缺頁中斷髮生後如何處理:缺頁不斷髮生後,轉中斷處理程序。中斷處理程序的主要工做是將所需的頁面調入主存。當主存無空閒塊時,按系統採用的頁面置換算法將某頁淘汰,而後裝入所需頁面。裝入後修改頁面變換表。

  19. 試給出幾種頁面置換算法,並比較其優缺點。①先進先出算法(FIFO):這種算法實現簡單,這種算法只是在對線性順序訪問地址空間的狀況下才是最理想,不然效率不高。②最近最久未用算法(LRU):這種算法能比較廣泛地適用於各類類型的程序,但實現起來比較困難,由於要對先前的訪問的歷史時時加以記錄和更新。③LRU近似算法:這種算法比較簡單,易於實現,其缺點是週期T的大小不易肯定。

  20. 什麼是文件邏輯結構和物理結構:邏輯結構:指壹個文件在用戶面前所呈現的形式。物理結構:指文件在文件存儲器上的存儲形式。它們各有哪幾種結構形式:邏輯結構有兩種形式:①記錄式文件。②無結構的流式文件。物理結構:①連續結構②串聯結構③索引結構。

  21. 畫圖說明串聯、連續、索引結構文件的形式(P64),並說明用直接存取法它們的不一樣效果:採用直接存取法,則索引文件效率最高,連續文件效率居中,串聯文件效率最低。

  22. 文件目錄的做用:計算機系統中的文件種類繁多,數量龐大,爲了使用戶方便地找到所需的文件,須要在系統中創建壹個目錄機構。壹個文件目錄項應包括哪些信息:①文件的標識信息(文件名)②文件的結構信息③文件的存取控制信息④文件的管理信息。

  23. 文件存儲空間的管理有哪幾種經常使用方法: ①空白文件目錄:這種方法將盤空間的壹個未分配區域稱爲壹個空白文件,系統爲全部的空白文件創建壹個目錄,每一個空白文件在這個目錄中創建壹個表目。②空白塊鏈:這種方法將盤上的全部空白塊用連接指針或索引結構組織成壹個空白文件。③位示圖:它將文件存儲器的存儲空間創建壹張位示圖,用以反映整個盤空間的分配狀況。

  24. 設備管理的目標是什麼:①方便性。使用戶在使用各類設備時感到方便。②並行性。提升系統中各類設備工做的並行性。③均衡性。使系統中各類設備的分配具備均衡性。④獨立性。使得用戶所要求的輸入輸出與實際設備無關。設備管理包括哪些功能:①動態地記錄管理設備的狀態。在有通道的系統中,還應掌握通道、控制器的工做狀態。②爲知足進程的I/O請求,按某種調度算法將壹設備分配給要求設備的進程。(實施設備的分配)③完成實際的I/O操做。

  25. 在配置有通道的計算機系統中,試利用UCB、CUCB、CCB找出從主存到設備的壹條可用通路:根據所請求的I/O設備,由系統狀態表可找到該設備的UCB,再由UCB的「與此設備相連的控制器表」項找到CUCB,再由CUCB的「與此控制器相連的通道表」找到CCB,從而可能構成壹條從主存到I/O設備的通路。若是有壹條可用通路,則在UCB、CUCB、CCB中將進程名登記在「正在使用該設備」的狀態表目內;若是暫時沒有壹條可用通路,則進行排隊等候。

  26. 試給出兩種I/O調度算法:①先來先服務。②優先級高者優先。並說明爲何在I/O調度中不能採用時間片輪轉法:在進程調度中一般採用時間片輪轉法,但這種方法不適合I/O調度。由於I/O操做有壹特色,即壹個通道程序壹經啓動便壹直進行下去直至完成,在它完成以前,不會產生中斷。

  27. 試畫出在單通路I/O系統中爲進程分配壹臺I/O設備的流程圖(P72):①分配設備②分配控制器③分配通道。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第三章 網絡操做系統的通訊

  1. 什麼叫同步:相互合做的兩個進程之間須要在某個(些)肯定點協調它們的工做,壹個進程到達了該點後,除非另壹進程已經完成了某些操做,不然就不得不停下來,等待這些操做的完成。這就是進程間的同步。什麼叫互斥:兩個進程因爲不能同時使用同壹臨界資源,只能在壹個進程使用完了,另壹進程才能使用,這種現象稱爲進程間的互斥。試舉例說明進程間同步和互斥的區別:①同步的主要特徵是:壹個進程在某壹點上等待另壹進程提供信息,兩進程之間存在直接制約關係,其表現形式爲進程—進程。②互斥的主要特徵是爭用資源,兩進程間存在間接制約關係,其表現形式是進程—資源—進程。

  2. 試給出P、V操做的定義:P、V操做是定義在信號量S上的兩個操做,其定義以下:

  P(S):

  ① S:=S-1;

  ② 若S≥0,則調用P(S)的進程繼續運行;

  ③ 若S<0,則調用P(S)的進程被阻塞,並把它插入到等待信號量S的阻塞隊列中。

  V(S):

  ① S:=S+1;

  ② 若S>0,則調用V(S)的進程繼續運行;

  ③ 若S≤0,則從等待信號量S的阻塞隊列中喚醒頭壹個進程,而後調用V(S)的進程繼續運行。

  如何利用P、V操做實現進程間的互斥:P、V操做是解決同步與互斥問題的有力工具。爲解決互斥問題,應採起以下步驟:首先根據給定問題的描述,列出各進程要執行的程序。其次,設置信號量。互斥問題中,在臨界區前面加P(S),臨界區後面加V(S)。最後肯定信號量的初值。在互斥問題中,信號量一般取爲互斥資源的個數。並說明信號量的物理意義:信號量S>0時,S的數值表示某類可用資源的數目,執行P操做意味着申請分配壹個單位的資源;當S≤0時,表示無資源可用,此時S的絕對值表示信號量S的阻塞隊列中的進程數。執行V操做意味着釋放壹個單位的資源。

  3. 如何利用P、V操做實現進程間的同步:P、V操做是解決同步與互斥問題的有力工具。爲解決同步問題,應採起以下步驟:首先根據給定問題的描述,列出各進程要執行的程序。其次,設置信號量。同步問題中有幾個同步點就設置幾個信號量,等待的地方加P(S),發信號(解除等待)的地方加V(S)。最後肯定信號量的初值。在同步問題中,信號量的初值壹般取0.在同步和互斥中,信號量初值的設置有何不一樣:在同步問題中,信號量的初值壹般取爲0,在互斥問題中,信號量一般取爲互斥資源的個數。

  4. 高級通訊原語有何優勢:可以實如今進程之間傳遞大量的信息。在消息緩衝通訊方式中,發送原語和接收原語的主要功能是什麼:發送原語的做用:將欲發送的消息從發送區複製到消息緩衝區,並把它掛起在接收進程的消息緩衝隊列末尾。若是該接收進程因等待消息而處於阻塞狀態,則將其喚醒。接收原語的做用:把發送者發來的消息從消息緩衝區複製到接收區,而後將消息緩衝區從消息隊列中消去,若是沒有消息能夠接收,則進入阻塞狀態。

  5. 什麼是信箱:信箱用於存放信件,而信件是壹個進程發送給另壹進程的消息。信箱的數據結構:信箱頭和信箱體。信箱頭是信箱的描述部分,信箱體由若干格子組成,每一個格子可存放壹個信件。信箱頭包括的信息:①信箱名②信箱大小③已存信件數④空的格子數。如何用信箱實現兩個進程之間的通訊:進程A想向進程B發送消息前,先把消息組成壹封信件,而後調用send原語向進程B發送信件,並將信件投入進程B的信箱中。進程B爲獲得進程A的消息,只要調用receive原語就能夠從信箱中索取來自進程A的信件。這就完成了壹次進程A到進程B的通訊過程。

  6. 在網絡操做系統中,爲何要採用消息傳遞的通訊機制:基於共享變量的通訊方式適用於網絡中各節點內部諸進程之間的通訊,而基於消息傳遞的通訊方式適用於網絡中各節點之間的進程通訊。在消息傳遞的通訊機制中有哪些通訊方式:①通訊原語②遠程過程調用③組通訊。

  7. 什麼是同步原語:當壹個進程調用壹個send原語時,在消息開始發送後,發送進程便處於阻塞狀態,直至消息徹底發送完畢,send原語的後繼語句才能繼續執行。當壹個進程調用壹個receive原語時,並不當即返回控制,而是等到把消息實際接收下來,並把它放入指定的接收區,才返回控制,繼續執行該原語的後繼指令。在這段時間它壹直處於阻塞狀態。上述的send和receive被稱爲同步通訊原語或阻塞通訊原語。異步原語:發送進程在調用send原語後,並不進入阻塞狀態,它不等消息發送完就繼續執行其後繼語句。在使用異步通訊原語時,發送者在消息發送完成前爲何不能使用緩衝區:由於假若發送進程在消息發送完成以前,即在消息發送期間使用或修改原來的緩衝區,將會形成錯誤。如何解決?有兩種辦法(應採用異步原語):①採用帶拷貝的非阻塞原語,即讓內核把消息拷貝到內核緩衝區,容許調用進程繼續運行。②帶中斷的非阻塞發送,即當消息發送完成後,中斷髮送進程,通知發送進程此時緩衝區可用。

  8. 在進程間通訊如何保證消息不會丟失:爲了保證消息被對方收到,可採用可靠原語。具體做法是:客戶向服務器方發壹請求後,服務器對這壹請求,由其內核向客戶內核返回壹個確認ACK,當客戶內核收到這壹消息後,就喚醒客戶進程。在客戶與服務器之間的請求/應答共需肆個消息:①從客戶向服務器的請求②從服務器內核向客戶內核返回壹個確認③從服務器到客戶的應答④從客戶的內核向服務器內核返回壹個確認。

  9. 遠程過程調用:在網絡或分佈式系統中,設有任意兩個節點A、B,節點A上的進程調用節點B上的壹個進程時,節點A上的進程被掛起,在節點B上執行被調用的過程,消息以參數的形式從調用進程傳送到被調用進程,並將被調用過程執行的結果返回給調用進程。這種通訊方式稱爲遠程過程調用。其基本原理是什麼:容許某壹節點上的程序調用其餘節點上的過程或函數。例如節點機A上的進程調用節點機B上的過程,節點機A的調用進程被掛起,在節點機B上執行被調用過程。消息以參數的形式從調用過程傳到被調用過程,被調用過程執行的結果再返回給調用過程。對程序員來講,他看不到消息傳遞過程和I/O處理過程。

  10. RPC的透明性指的是什麼:指的是要使得遠程過程調用盡量像本地調用壹樣。調用過程應該不知道被調用過程是在另外壹臺計算機上執行,反過來也是如此,被調用過程也不該該知道是由哪一個機器上的進程調用的。如何保證這壹透明性:遠程過程調用爲實現其透明性,在客戶機上設置壹個客戶代理,一樣在服務器機上設置壹個服務器代理。

  11. 簡述遠程過程調用的步驟:①客戶過程以一般方式調用客戶代理。②客戶代理構造壹個消息並陷入內核。③本地內核發送消息給遠程內核。④遠程內核把消息送給服務器代理。⑤服務器代理從消息包中取出參數並調用服務器。⑥服務器完成相應的服務,將結果送給服務代理。⑦服務代理將結果打包造成壹個消息並陷入內核。⑧遠程內核發送消息給客戶機內核。⑨客戶機內核把消息傳送給客戶代理。⑩客戶代理取出結果,返回給客戶的調用程序。並以實例說明。

  12. 試說明遠程過程調用的優缺點:優勢:格式化好、使用方便、透明性好;缺點:缺少靈活性。在具體實現上尚有哪些難點須要解決:①遠程過程調用的參數在系統內不一樣機型之間的通用能力有所不足。②缺少在壹次調用過程當中屢次接收返回結果的能力。③遠程過程調用缺少傳送大量數據的能力。

  13. 什麼叫組通訊:在網絡系統中,壹個相互做用的進程集合稱爲組。壹個發送者在壹次操做中將壹個消息發送給多個接收者的通訊,稱爲組通訊。它應用於何種場合:在網絡系統中能夠採用組通訊方式。組通訊的主要特徵是:當壹個消息發送給這個組時,該組的全部成員均可以接收,組通訊具備「壹對多」的形式,即壹個發送者,多個接收者。組通訊的實現:組通訊的實如今很大程度上依賴於硬件。在壹些網絡系統中,能夠爲組指定壹個特殊的網絡地址。可採用多播式、廣播式、單播式。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第四章 網絡系統中的資源共享

  1. 什麼是用戶帳號:定義了工做站上的壹個用戶,它包括用戶名、口令、組所屬關係和壹些權限列表。用戶名錶示工做站內和網絡上的用戶別名。用戶組帳號:組是壹個包含壹組用戶或成員的帳戶,這些成員或用戶享有類似的權限。它們之間的關係:分組是按用戶對網絡的訪問需求將全部用戶分紅邏輯上的若干組。用戶基於用戶組得到必要的資源訪問許可權。每一個用戶組成員都享有所在用戶組的資源訪問權限。每一個用戶多是幾個不一樣的用戶組的成員。

  2. 網絡操做系統的資源管理主要包含那些部分:①硬件資源②文件和目錄③網絡打印。

  3. 硬盤資源的共享主要分爲哪幾種形式:①以虛擬軟盤方式實現硬盤共享②以文件服務方式進行硬盤共享。爲了實現硬盤的共享,共享硬盤的軟件必須具備的功能:①用戶管理。②盤卷管理。③安裝管理。④信號量管理。

  4. 網絡文件系統有哪幾種實現方法:①對等方式。特色:在網絡中的每一個系統中都配置有本身的文件系統,每一個系統都容許其餘系統訪問本身的文件系統,基於這種方式實現的文件系統稱爲分佈式文件系統。②客戶/服務器方式。特色:在每一個用戶的系統中,都有本身的文件系統,管理本地文件的訪問;共享文件保留在文件服務器中。

  5. 在網絡環境下,可採用哪幾種文件和數據的共享方式:①數據移動共享方式②計算移動共享方式。

  6. 什麼是文件服務器:網絡中最爲重要的服務器,配有大容量磁盤存儲器和內部存儲器,配有壹塊或多塊網絡接口卡。其主要功能爲向用戶提供網絡信息;實施文件管理;用戶訪問控制。

  7. 共享打印服務主要有哪幾種實現方法:①客戶服務器方式。特色:在共享硬盤的基礎上,配置共享打印軟件,網絡操做系統爲用戶提供共享打印服務。②對等方式。特色:在網絡中壹個或多個工做站配置打印機,將它們的打印機共享給全網用戶使用;這些工做站既做爲用戶工做站,又起打印服務器的做用。

  8. 網絡操做系統中文件主要有哪些屬性:①只讀②存檔③隱藏④壓縮⑤系統。它們對文件資源的共享有何影響:經過設置文件屬性能夠控制其餘用戶對本身共享目錄下的文件的訪問。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第五章 網絡系統中的服務軟件

  1.什麼是網絡服務軟件:在計算機網絡的高層爲用戶提供多種網絡應用服務的軟件。都有哪些經常使用的服務軟件:一、工具類:①電子郵件(E-mail)②文件傳輸協議(FTP)③遠程登陸(Telnet);二、討論類:①電子公告系統(BBS)②電子信息和新聞(NetNews);三、信息查詢類:①萬維網(WWW)②分散式文件查詢系統(Gopher)③廣域網上信息的檢索查詢(WAIS)

  2. DNS的做用是什麼:DNS即域名系統,也叫名字服務器。它的做用主要是把主機名和電子郵件地址映射爲IP地址。爲何要進行IP地址和網絡物理地址之間的轉換:若是壹個以太局域網由使用TCP/IP協議的主機組成,網中會出現兩種形式地址:32位的Internet地址和48位的以太網地址。若是有某個具備Internet地址的主機與以太局域網進行通訊,爲了讓IP地址知道哪一個以太網地址對應哪一個主機節點,就必須進行地址轉換。這個地址轉換由Internet地址轉換協議ARP完成。反之,則由Internet逆向地址轉換協議將以太網的鏈路層地址映射爲IP地址。

  3. Internet地址格式:IP地址是壹個32位的貳進制無符號數,國際通行壹種點分十進制表示法。IP地址一般劃分紅兩部分或叄部分,第壹部分指定網絡的地址(網絡號),第貳部分指定子網的地址,第叄部分指定主機的地址(主機號)。

  4.電子郵件:電子郵件簡稱爲E-mail,它是Internet上使用最頻繁、應用最普遍的壹種服務。電子郵件是壹種軟件。電子郵件E-mail的主要功能:在Internet上的兩個主機之間發送和接收消息,這些消息稱爲郵件。即利用E-mail能夠實現郵件的發送和接收。電子郵件工做原理:使用電子郵件發送的郵件相似於經過郵局發送的信件。電子郵件的信息頭至關於信封上的地址,它包括髮送者和接收者的地址。舉例說明:用戶1要將郵件發送給用戶2,其發送的具體過程爲:Internet上的計算機A接收到該郵件,通過地址識別後,選擇適當的網絡路徑,將該郵件發送給計算機B……,該郵件依次轉發,最終轉發給用戶2,從而完成郵件的傳送過程。

  5. 什麼叫URL:它是Uniform Resource Locator的縮寫,即統壹資源定位器。它的功能是什麼:找到並定位所指定的信息。URL的組成:①協議②頁面所在機器的DNS名字③文件路徑和文件名。常見:Http、File、FTP、News、Telnet、Gopher、Mailto.

  6.什麼叫文件的上載:從遠程計算機拷貝文件到本地計算機,稱之文件的上載。下載:將本地計算機的文件拷貝到遠程計算機上,稱之文件的下載。

  7.文件傳輸協議FTP的主要功能:①瀏覽Internet上其餘遠程機的文件系統。②在Internet上的主機之間進行文件傳輸。③使用FTP提供的內部使命能夠實現壹些特殊功能,例如改變文件傳輸模式、實現多文件傳輸。

  使用FTP的步驟:① 肯定須要訪問的主機,瞭解其主機名或其IP地址。② 經過註冊在遠程主機和本地主機之間創建壹個FTP鏈接。③ 把遠程主機上所須要的文件傳輸到本地主機上,或者把本地機上的文件傳輸到遠程主機上。④ 當文件傳輸結束後,拆除已創建的鏈接,並退出FTP.

  8. 什麼是WWW:便是World Wide Web的縮寫,也稱Web或萬維網,它是壹種特殊的結構框架,它的目的是爲了訪問遍及在Internet上數以萬計的計算機的鏈接文件。什麼是超文本:超文本是壹些和其餘數據具備鏈接關係的數據。這種鏈接關係就是壹種超文本連接。超文本連接將前壹頁文本和後壹頁文件鏈接起來。超文本與普通文本的最大區別在於普通文本是線性組織,而超文本是以網狀結構組織的。在超文本中,能夠方便地在文檔中來回切換。它們之間的關係:Web是超文本信息系統,分佈於Internet上的WWW服務器都有超文本數據庫,經過WWW服務器之間的相互鏈接,使全球Internet上的信息均以超文本方式鏈接在壹起。當用戶從任意壹個WWW服務器進入Internet時,都可以方便地從超文本數據庫找到所需的信息。

  9. Web具備的壹些特色:①Web是超文本信息系統。②Web是跨平臺的。③Web是分佈式的。④Web是動態的和交互。Web的工做原理:Web採用客戶/服務器模式,它是由分佈在Internet上的成千成萬的Web服務器和Web瀏覽器構成的。瀏覽器是用戶爲查閱Web上信息而在本機上運行的壹個程序,是用戶通向WWW網的窗口。Web服務器存儲和管理超文本文檔和超文本連接,並響應Web瀏覽器的鏈接請求。服務器負責向瀏覽器提供所須要的服務。Web上的信息主要以超文本的方式組織。Web採用HTML描述超文本信息,並以網頁的方式組織信息。在Web網絡的運做過程當中,用戶首先獲取第壹個網頁,瀏覽後跟隨壹條感興趣的線索轉到其餘網頁上。Web採用HTTP超文本傳輸協議。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第六章 網絡系統中的應用程序接口

  1.什麼叫應用程序編程接口(API):是指用戶經過網絡操做系統提供的系統功能調用編寫應用程序,達到使用網絡、操縱網絡的目的。(它是程序員用來開發特定計算機環境下應用程序的壹組函數)。它的做用:爲了便於用戶使用網絡和開發網絡應用程序提供方便靈活的編程接口。

  2. TCP與用戶的編程接口有哪兩種形式:①管套Socket接口②傳輸層TLI接口。它們各自的特色是什麼:①Socket接口特色:管套具備管套描述符,但沒有與之相連的設備文件;只要進程保存管套的文件描述符,管套就壹直存在,直到沒有進程打開其描述符爲止,這時管套才被撤消;既能夠產生壹個管套,也能夠同時產生壹對管套。②TLI接口特色:它是壹組函數的集合,爲用戶提供傳輸層接口,包括創建通訊、管理鏈接和傳送數據。還可實現同TCP、UDP的接口。

  3. TLI提供了哪兩種服務模式:①面向鏈接的服務。②面向非鏈接的服務。畫圖說明這兩種模式下的客戶、服務器之間的通訊過程。P147

  4.什麼叫管套:管套也叫套接字或套接口,網絡對話的每壹端稱爲壹個端點,管套是網絡通訊的壹個端點,管套是網絡通訊過程當中端點的抽象表示。畫圖說明管套在虛電路服務中的應用:在提供虛電路服務的信道上,使用管套實現客戶與服務器間的通訊。P150

  客戶→產生管套→地址與管套鏈接→申請壹個鏈接請求→網上信息服務器→產生管套→地址與管套鏈接→管套處於Listen狀態→等待並接收請求→網上信息

  5.試說明管套在數據報服務中的應用(P151):在提供數據報服務的信道上使用管套相似於發送與接收郵件。客戶方的應用就像壹我的的發信動做,服務器方的應用就像壹我的的收信動做。在通訊開始之間,兩方必須設置管套,就像通訊雙方必須有信箱壹樣。

  通訊過程:客戶→產生管套→管套與地址鏈接→申請與服務器的鏈接→發送數據報→網上信息→等待數據報到達服務器→產生管套→管套與地址鏈接→等待數據服到達→發送數據報→網上信息

  6.什麼叫WinSock:Windows環境下的TCP/IP編程接口叫作WinSock.如何用WinSock實現網絡通訊:基於TCP/IP協議的網絡通訊,其主要模式是客戶/服務器模式。在該模式下,利用Socket進行通訊的過程是:(1)服務器方:①申請套接字,打開通訊信道,通知本地主機在壹端口上接受客戶機的請求。②等待客戶機請求到達指定端口。③接收到客戶機的請求後,啓動壹個新進程處理來自客戶機的用戶請求,同時釋放舊進程以響應新的客戶請求。當服務器完成時,關閉服務器進程。④繼續等待客戶機的請求。⑤若是服務器不想響應客戶機請求,則關閉服務進程。(2)客戶方:①申請壹套接字,打開通訊信道,並將其鏈接到服務機上的保留端口,該端口對應服務器的TCP/IP進程。②向服務器發出請求消息(報文),等待接收應答。③接受服務來的應答,當再也不請求時關閉信道並終止客戶進程。

  7. API所採用的基本構造技術就是分層。

  8. 利用管套通訊實際上就是利用管套函數通訊。

  9. 基於WinSock的TCP/IP通訊方式有兩種:①點-點通訊。採用流方式。②廣播通訊。採用數據報方式。

  10. Socket接口使用符號常量標識支持的協議族:①PF_INET②PF_UNIX③PF_NS

  Socket接口使用與協議相關的地址族:①AF_INET②AF_UNIX③AF_NS

  11.定義壹個支持TCP/IP協議族、有鏈接的流管套,管套採用TCP協議:fd=socked(PF_INET,SOCK_Stream,0);

  12.每壹個Socket用壹個叄無組半相關表示壹個進程:<協議,本地地址,本地端口號>;用壹個伍元組全相關表示壹個完整的Socket鏈接,即表示兩個進程之間的通訊:<協議,本地地址,本地端口,遠程地址,遠程端口>

  13. Windows API提供了壹組完成特定任務的函數,Winsock規範將API庫分紅叄類:①Berkeley Socket函數。②檢索有關域名、通訊服務和協議等Internet信息的數據庫函數。③Berkeley Windows專用擴展函數。

  14. TLI接口支持的兩種釋放鏈接方法:①終止釋放。②順序釋放。它們的區別是:終止釋放不保證任何傳出數據的傳遞;順序釋放保證數據的傳遞。全部的協議執行體必須支持的釋放方法是:終止釋放。能夠選擇提供的釋放方法是:順序釋放。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第七章 NetWare(Novell網絡操做系統的總稱)

  1.爲構建壹個局域網,在硬件上和軟件上應具有哪些條件:硬件:①網卡和媒體②網絡工做站③網絡服務器④網絡鏈接器。軟件:①服務器操做系統②網絡服務軟件③工做站重定向軟件④傳輸協議軟件。

  2.試爲壹個局域網安裝NetWare3.11,並寫出實際安裝的步驟:

  (壹)文件服務器的安裝:安裝準備:一、文件服務器的硬件要求。二、網絡接口卡的選擇與設置。三、軟件的準備:①DOS系統②NetWare3.11網絡軟件。NetWare3.11網絡軟件安裝的初始操做:硬盤啓動的初始操做:①啓動DOS系統②對硬盤做低級格式化③用FDISK創建DOS分區 ④用Format C:/S格式化 ⑤拷貝必要的系統文件到C盤。運行SERVER程序。安裝磁盤驅動程序。創建文件系統。安裝網絡軟件(安裝網卡驅動程序;創建通訊協議與網絡驅動程序的鏈接;安裝其餘可加載模塊)。創建文件服務器啓動文件。

  (貳)DOS工做站的安裝:準備工做:微機選擇等;網卡的安裝;生成IPX.COM程序(它是DOS工做站上運行的通訊協議程序)。創建工做站母盤和工做啓動盤。DOS工做站的啓動。

  3.將NetWare與OS/RM比較,NetWare可劃分爲哪幾個層次(P163):①傳輸介質層(對應OS/RM的物理層和數據鏈路層),主要協議有:Ethernet、TokenRing、LocalTalk、ARCNET.②網絡層(對應OS/RM的網絡層),主要協議有:IPX(網間包交換協議)。③傳輸層(對應OS/RM的傳輸層),主要協議有:PXP(包交換協議:不可靠的端到端無鏈接的數據傳輸服務)、SPX(順序包交換協議:面向鏈接。)、SAP(服務通告協議)、回聲協議、差錯協議。④應用層(對應OS/RM的會話層、表示層、應用層),主要協議有:NetBIOS協議、NCP協議(NetWare核心協議)。

  4.試簡述NetWare的工做原理:當工做站上的應用程序發出文件訪問請求時,因爲該請求是採用DOS系統調用提出的,而工做站Shell首先截獲這壹請求,工做站Shell中的DOS/網絡解釋器判斷是DOS請求仍是網絡請求。若是是DOS請求,則在本機上進行處理;若是是網絡請求,則通過Shell將其轉換成對網絡服務器的請求。這些請求與所帶的參數經SPX、IPX通訊驅動程序、網卡在網上進行傳輸,到達文件服務器所在的計算機。在文件服務器上,從網絡傳來的信息再通過網卡、通訊驅動程序、IPX、SPX,到達文件服務器軟件,並接受文件服務器的處理。一樣工做站Shell也接收並解釋來自文件服務器的結果信息,並把它轉換成用戶所須要的格式。

  5.試描述在NetWare中,從工做站發出壹個服務請求到取得服務器的服務響應所通過的處理過程:當DOS工做站上的應用程序發送壹個請求時,在NetWare環境下,NetWare的Shell截獲了這壹請求,判斷這壹請求是由本地處理仍是由服務器處理。若是是由本地處理,則由DOS進行處理後返回結果給應用程序。若是該請求是請求服務器的,則Shell將DOS請求轉換成NetWare核心協議NCP請求,IPX將該請求造成壹個IPX包,並經網卡驅動程序將該包以幀的形式經傳輸介質發送到服務器。服務器方網卡接收幀並傳送它們到驅動程序,驅動程序將IPX包拆幀傳送到IPX,再由IPX傳送到服務器。若是服務器是應用程序要找的節點地址,則交給服務器的NCP執行這壹請求。當服務器處理完成後,即進行響應。服務器的響應按反方向從服務器傳到DOS工做站上的應用程序。

  6. 從操做系統的角度看,NetWare的主要構件有哪些:①裝載程序:對服務器硬件進行初始化,爲NetWare內核的執行作好準備。②NetWare內核:是服務器操做系統的基本代碼。內核包括:文件系統、進程調度、內存管理和網絡服務等例程。③NLM環境 :是NetWare向可安裝模塊(NLM)提供的壹組服務。④應用程序:提供基本的網絡功能。各構件之間的關係如何:從層次上看,應用服務處於最高層(外層),裝載程序處於最低層,離硬件最近,中間層是NLM環境和內核。

  7.什麼是NLM模塊:便可安裝模塊。NetWare可安裝模塊是在NetWare操做系統下運行在文件服務器內存的程序。當文件服務器運行時,可向文件服務器內存裝載NLM,壹旦完成,NLM就成爲NetWare的組成部分,若有必要也可從服務器內存將其卸出。NLM分爲肆類:①網絡實用工具和功能模塊(*.NLM)②LAN驅動程序(*.LAN)③硬盤驅動程序(*.DSK)④文件系統名空間模塊(*.NAM)。採用NLM模塊方法有什麼好處:NLM模塊能動態地與NetWare網絡操做系統進行鏈接。利用這技術能夠擴充系統的功能,並且隨時可被用戶調用。

  8. 爲何說NetWare 386具備開放性的體系結構:①支持多種流行的工做站平臺。②支持多種協議(SPX/IPX、TCP/IP、AppleTalk)。③支持多種網卡。④使用NetWare的可安裝模塊NLM能夠創建和擴充壹個文件服務器。⑤在NetWare的結構中,支持NetWare傳輸層協議自主性的是兩個重要模塊:ODI(開放的數據鏈路接口:爲多種傳輸協議提供了壹個標準接口。)和Streams模塊(爲其低層那些須要向NetWare傳輸數據的協議提供了壹個通用接口;爲NetWare自己提供壹個接口,容許NetWare核心與Streams所支持的傳輸協議之間進行通訊)。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第八章 Windows NT

  1. Windows NT 的設計目標:①可擴充性②可移植性③可靠性④兼容性⑤性能

  2. Windows NT的結構:①系統用戶態部分(Windows NT保護子系統)②系統核心態部分(NT執行體)

  3. 對象:對象是個抽象數據結構,在Windows NT中用以表示全部資源。對象用來表示資源。對象類:具備相同特性的對象可歸爲壹個對象類,對象是對象類中的壹個實例。對象類是描述資源類型的。對象的組成結構:對象頭和對象體。對象管理程序控制對象頭,其餘執行體部件控制它們本身建立的對象體。

  4. Windows NT進程的定義:壹個程序的動態調用。Windows NT進程的組成:①壹個可執行的程序②壹個私用的地址空間③系統資源④至少有壹個執行線程。Windows NT進程的特色:④ 進程是做爲對象來實現的。⑤ 進程要求至少有壹個執行線程。⑥ 進程沒設進程控制塊PCB,進程的控制和管理信息被放在進程對象的對象體中以及侷限於進程的對象表中。⑦ Windows NT中的進程,不是處理機調度的基本單位,因此沒有必要區分進程的狀態。⑧當系統啓動時,系統爲每壹環境子系統創建壹個服務器進程。每當用戶的應用程序啓動時,相應的環境子系統進程調用執行體的進程管理程序爲之創建壹個進程,而後進程管理程序又調用對象管理程序爲之創建壹個進程對象。⑨ 進程管理程序不維護進程的父子或其餘關係。⑩ 進程有內含的同步機制。

  5. Windows NT線程的定義:進程內的壹個可調度實體。線程的組成:①壹個惟壹的標識符,即客戶ID.②描述處理機狀態的壹組寄存器內容。③兩個棧:用戶棧和核心棧。④壹個私用存儲區。引進線程目的:主要目的是要有效地實現並行性。多進程的方式雖然也能夠實現並行性,但採用線程比採用進程實現並行性更方便、更有效。以UNIX爲例,當壹個進程建立壹個子進程時,系統必須把父進程地址空間的全部內容拷貝到子進程的地址空間中去。對大地址空間來講,這樣的操做是很費時的,更況且兩進程還要創建共享數據。若是採用多線程要好得多,由於這些線程共享進程的同壹地址空間、對象句柄及其餘資源。

  6. 進程和線程之間的區別和聯繫:

  ①線程是進程的壹個組成部分。每一個NT進程在建立時只有壹個線程,須要時這個線程能夠再建立其餘線程。

  ②壹個進程的多個線程都在這個進程的地址空間內活動。

  ③進程是資源的基本分配單位。這就是資源是分配給進程的,而不是分配給線程的,而且系統還爲分配給進程的資源規定了配額。

  ④處理機調度的基本單位是線程,在線程之間競爭處理機。真正在處理機上執行的是線程,線程在執行中須要資源時,系統從進程的配額中扣除並分配給它。

  ⑤線程在執行過程當中,須要同步,在不一樣的進程的線程之間的同步要用消息傳遞機制。消息傳遞要用到進程的資源——端口(端口也是對象,端口上有消息隊列)。所以,能夠這們說,通訊的是線程,使用的資源倒是進程的(服務器進程能夠建立多端口,以利於多線程通訊。)

  7. Windows NT內核的特色:Windows NT內核的特色是採用微內核技術。它提供了壹組精心設計的操做系統原語和機制,經過使用這些原語和機制,執行體能夠構造更多高級的操做系統功能。內核與其它執行體不一樣的是,內核永久駐留內存,內核的執行是不可搶佔的,並總運行在覈心態。內核的基本(主要)功能:①調度線程的執行②中斷和異常的處理③完成低級的多處理機間的同步④電源故障的排除(實現系統的恢復過程)。

  8. 畫圖說明線程的調度狀態及其轉換條件。(P191)

  9. 線程調度採用的調度算法是什麼?線程調度採用的調度算法是可搶佔的動態優先級調度算法。線程調度程序按線程的優先級進行調度,高優先級的線程先被調度。線程在執行過程當中優先級能夠變化,調度程序調度時所依據的要主數據結構是多優先級就緒隊列。

  10. 中斷:Windows NT中,中斷是異步事件,主要由硬件如I/O設備、處理機、時鐘或定時器引發的,是隨機發生的中斷處理機的事件。異常:異常是同步事件,是某些特定指令執行的結果,如主存存取錯、浮點數被零除等,Windows NT還把系統服務調用看做是異常。Windows NT如何處理中斷與異常:當中斷或異常發生被系統捕捉後,系統將執行的線程從用戶態轉換到核心態,將處理機的控制權轉交給其首地址存放在主存固定單元的陷阱處理程序。陷阱處理程序被調用後,它首先保護執行線程被中斷的斷點現場,在此期間屏蔽中斷,其次根據中斷/異常的緣由決定將控制權交給相應的處理程序:①若是是中斷,根據中斷源將控制權轉交給相應的處理程序。②若是是異常,對於處理簡單的異常由陷阱程序解決,其他由異常調度程序處理。根據異常的緣由轉入異常處理程序。③若是是系統服務,陷阱處理程序由系統服務調度程序去查找系統服務調度表,轉入相應的系統服務程序。④若是是虛地址異常,則轉入VM管理器頁面調度程序。

  11. Windows NT如何實現處理機之間的同步:Windows NT中對內核全局數據結構的修改必須互斥地執行。解決內核臨界區的互斥,採用的主要方法是:①提升臨界區代碼執行的中斷優先級。②使用轉鎖。

  12. 畫圖說明Windows NT虛擬地址空間的劃分:Windows NT爲每一個進程提供了壹個4GB在的虛擬地址空間。高地址的2GB保留給系統使用(系統存儲區:①非頁交換區0.5GB;②頁交換區0.5GB;③直接映射地址1GB),低地址的2GB是用戶的存儲區(用戶存儲區:頁面交換區),這個存儲區可被用戶態和核心態的線程訪問。P197

  13. 舉例說明Windows NT虛擬地址到物理地址的變換過程:

  14. Windows NT的存儲管理所採用的頁面淘汰算法是什麼:採用先進先出(FIFO)頁面轉換算法,即把在主存中駐留時間最長的頁面淘汰出去。

  15. Windows NT的I/O系統組成部件:①I/O管理程序②文件系統③設備驅動程序④緩衝存儲管理程序⑤網絡驅動程序(網絡轉發程序和網絡服務程序)。Windows NT在I/O系統的設計方面,創建了壹個統壹、壹致的高層界面——I/O設備的虛擬界面,即把全部的讀寫數據都當作是直接送往虛擬文件的字節流。P202

  16. 舉例說明Windows NT中的同步I/O過程:P205 當應用程序調用壹個I/O服務,例如應用程序WriteFile(file_handle,datd,…)調用Win32的API,Win32子系統調用NT的寫文件服務,由用戶態進入核心態。在覈心態下,I/O管理程序檢查調用參數並創建I/O請求包IRP,而後調用設備驅動程序。設備驅動程序接收IRP,負責排隊I/O請求,再由設備執行I/O數據轉換,當I/O完成產生I/O中斷。由設備驅動程序處理中斷,再交I/O管理程序完成IRP的處理並返回,由核心態回到用戶態。最後將返回的狀態傳送給應用程序,應用程序能夠當即存取這些已轉換的數據。①按用戶要求,I/O管理程序爲之造成IRP,並把它傳送給設備驅動程序,由驅動程序完成I/O操做。②設備完成I/O操做後,發中斷請求,設備驅動程序的中斷處理程序進行相應中斷處理。③I/O管理程序完成I/O請求。

  17. 試說明Windows NT中異步I/O操做的特色:異步I/O相對於同步I/O有壹重要特色:具備提升應用程序執行速度的潛力。當設備在忙於讀寫的同時,應用程序可繼續其餘的工做。爲了使用異步I/O,應用程序必須在其參數中指出異步I/O,在Win32中使用參數overlapped表示異步I/O.在發出異步I/O操做後,線程要當心,不要在設備驅動程序完成數據讀寫前再去讀寫I/O操做中的數據。也就是說,線程的執行必須經過等待壹個句柄,和I/O請求的完成保持同步。

  18. 內裝網絡:Windows NT網絡是內裝網絡,它把網絡軟件做爲NT執行體的I/O系統中的壹個組件嵌入系統內部(即網絡功能包含於操做系統中),這使得Windows NT無需安裝其餘網絡軟件,便可爲用戶提供資源共享和各類網絡功能。其特色:①Windows NT的網絡軟件不是做爲操做系統的壹個附加層來運行,而是做爲NT執行體的I/O系統中的壹個組件而嵌入系統內部,這使得Windows NT無需安裝其餘網絡軟件,便可爲用戶提供資源共享和各類網絡功能。②Windows NT中的網絡組件能夠直接利用NT內部的系統功能。

  Windows NT網絡具備如下特色:

  ①NT網絡是內裝,從而Windows NT是真正的網絡操做系統。

  ②NT網絡與其它網絡系統的互操做性。

  ③提供方便的創建和運行分佈式應用程序的機制。

  ④系統開放性好。

  19. 畫圖說明Windows NT網絡的體系結構(P207):低肆層統稱爲通訊子網,駐留在高叄層的軟件稱爲通訊子網的用戶。

  20. Windows NT網絡中做爲內裝網絡的兩個主要部件是:轉發程序和服務程序。轉發程序,也稱重定向程序,用於客戶方。轉發程序的主要功能是:解釋網絡I/O請求並生成對下層協議的調用,以實現網絡的I/O功能。轉發程序做爲客戶方,執行SMB(Server Message Block)協議,與服務器方的服務程序同處於會話層。轉發程序能夠訪問遠程節點上的文件,命名管道和打印機,以實現網絡的資源共享。服務程序的主要功能:接收網絡傳輸驅動程序來的I/O請求,執行這些請求,而後將結果經過網絡送回。服務程序做爲驅動程序能夠存在於NT執行體內,並可調用高速緩衝管理程序直接優化它所要傳送的數據。

  21. 爲何說Windows NT具備開放式的結構?

  ①Windows NT網絡是壹個內裝網絡,而不是像其餘網絡操做系統那樣,在壹個多任務傳統的操做系統上附加壹層網絡軟件。NT網絡操做系統把網絡功能包含在操做系統中,並可直接使用Windows NT內部的系統功能。NT網絡軟件包含有將其內部網絡軟件裝入和卸出的機制,一樣的機制也可將其餘網絡軟件裝入和卸出操做系統。

  ②Windows NT考慮到應用程序如何網絡,Windows NT提供了多種訪問方法:Win32 I/O API、Win32 Wnet API、Windows Sockets API、NetBIOS API、RPC API、Win32命令管道與郵件槽 API

  ③Windows NT的供應者接口:多供應者路由器MPR,當應用程序利用Win32 Wnet瀏覽遠程文件系統時,能肯定存取哪一個網絡。多UNC供應者MUP,當應用程序利用Win32 I/O API打開遠程文件時,能肯定存取哪一個網絡。

  ④Windows NT提供了傳輸驅動程序接口TDI,它使得轉發程序和服務程序可保持獨立於網絡。Windows NT網絡上可使用的傳輸協議有:NetBEUI、TCP/IP、IPX/SPX、DECnet、Apple Talk、XNS.有了上述協議,Windows NT網絡就能夠與其餘廠商的網絡產呂互連。

  ⑤網絡驅動程序的NDIS環境。使得任何協議驅動程序能夠經過調用NDIS接口將網絡請求引導到網卡。於是,用戶使用壹個網卡或單壹的網絡驅動程序即可在TCP/IP網絡和NetBEUI上通訊。

轉自:http://www.800933.com.cn/article/show.asp?id=3286