




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、操作系統碩士研究生入學考試模擬試題參考答案一、 填空題 1. 中斷優先級是由硬件規定的,若要調整中斷響應次序可通過中斷屏蔽實現。(北京大學1997)2. 多道程序設計的特點是多道、宏觀上并行和微觀上串行。(西安電子科大2001)3. 多道運行的特征之一是宏觀上并行,它的含義是同時進入主存的程序都處于運行過程中,但都未運行完畢。(華中理工2000)4. 操作系統的基本類型主要有批處理操作系統、分時操作系統和實時操作系統。(哈工大2002)5. 批處理系統主要解決吞吐量問題,分時系統主要解決交互性問題。(華中理工2001)6. 操作系統具備處理同時性活動的能力,其最重要的硬件支持是中斷機構。(華中
2、科技2001)7. 為了實現處理器與外部設備的并行工作,系統引入了中斷硬件機制。(北大1997)8. 操作系統向用戶提供了兩類接口,一類是命令級接口,另一類是程序級接口。(西安電子科大 2001)(中科大1998)9. 現代操作系統的兩個最基本的特征是 (程序執行的) 并發性和 (資源的) 共享性。(中科院1997) (北交大2000)10. 多道程序設計的引入給存儲管理提出了新的課題,應考慮的三個問題是存儲分配、存儲保護和存儲擴充。(西安電子科大2000)11. 在操作系統中,一種用空間換取時間的資源轉換技術是SPOOLing。(北京大學1997)12. 如果系統中有 n 個進程,則在等待隊
3、列中進程的個數最多為 n 個。(北京大學1997)13. 若使當前運行進程總是優先級最高的進程,應選擇剝奪式進程調度算法。(北京大學1997)14. 實現一個管程時必須考慮的 3 個主要問題包括互斥、同步、條件變量。(西安電子科大1996)15. 在采用請求分頁式存儲管理的系統中,地址變換過程可能會因為缺頁、地址越界和訪問權限錯等原因而產生中斷。(中科大1998)16. 存儲管理應實現的功能是:主存空間的分配和保護、地址重定位、主存空間的共享和擴充。 (西安電子科大2002)17. 分區存儲管理方案不能實現虛存的原因是作業地址空間大小不能超過存儲空間大小。(西交大1999)18. 設有 8 頁
4、的邏輯空間,每頁 1024 字下,它們被映射到 32 塊的物理存儲區中。那么,邏輯地址的有效位是 13 位,物理地址至少是 15 位。(西北工大2000)19. 采用交換技術獲得的好處是以犧牲處理器時間為代價的。(西交大1999)20. 通道技術的引入,實現了處理器與設備的并行、設備與設備的并行、進程 與進程的并行。(中科院1998)21. 設備管理中引入緩沖機制的主要原因是為了改善處理器與輸入輸出設備之間速度不匹配的矛盾、實現輸入輸出設備之間的并行操作和有效減少輸入輸出操作次數。(中科院1999)22. 設備驅動程序是一種低級的系統例程,它通常分為驅動輸入輸出設備工作程序 和設備中斷處理程序
5、兩部分。(中科院1998)23. 在通道進行輸入輸出操作期間,要訪問兩個內存的固定單元CAW和 CSW 。(西安理工2000)24. 利用符號鏈接實現文件共享時,對文件主刪除了共享文件后造成的指針懸空問題,解決的方法是文件的擁有者才具有指向索引結點的指針,共享文件的其他用戶中只有該文件的路徑名而無指向索引結點指針。(中科院1999)25. 使用位示圖 (20 行、 30 列) 表示空閑盤塊狀態。如當分配一個盤塊號為 132 時,其在位示圖中的行、列數為 4 、 11 。當釋放一個盤塊號為 318 時,其所在位示圖中的行、列數為 10 、 17 。(注:行為 019 、列為 029 ,首盤塊號為
6、 1)(北京郵電大學1997)26. 每個索引文件都至少有一張索引表,其中,每一個表項應包括能標識該記錄的記錄鍵和物理地址。(西安電子科大2002)27. 文件系統中若文件的物理結構采用連續結構,則文件控制塊中關于文件的物理位置應包括起始塊號和總塊數。(西北工大2000)28. 采用直接存取法存取文件時,對索引文件效率最高,對串聯文件效率最低。29. 在 UNIX 文件管理系統中,為了對磁盤空間的空閑塊進行有效管理,采用的方法是成組鏈接法。(西安電子科大2000)30. 在 UNIX 系統中,如果一個盤塊的大小為 1KB,每個盤號占 4 個字節,那么,一個進程要訪問偏移量為 263168B處的
7、數據時,需要經過 1 次間接。(中科大1998)31. 在請求分頁系統中,引用位標識 該頁最近是否被訪問過,它的用途是 為淘汰算法選頁提供參考。(華中理工2001)32. 進程的目標代碼在虛擬存儲器中不考慮 物理空間大小和 信息存放的物理位置,只規定 進程中互相關聯的信息的相對位置。(南開2001)33. 多用戶環境中為了實現多用戶之間的隔離,必須采取 存儲保護 措施。(華中科技2001)34. 請求分頁式虛存系統必須至少具有三種硬件支持,即 一定量內存和較大外存 、地址轉換機構與缺頁中斷機構。(中科院2000)35. 在頁面替換算法中,目前有多種方法被提出以防止抖動現象,它們的共同點是通過
8、程序的局部性原理 耒實現的。(中科院2000)36. 虛擬設備是操作系統利用某種I/O技術,將某個 獨占 設備改造為多個用戶可以同時共享的設備。(北京理2002)37. I/O設備處理進程平時處于 睡眠 狀態,當 I/O請求 和 I/O操作結束出現時,被喚醒。(西安電子科大2000)38. 文件目錄中用 盤塊號記錄文件的一維地址,而實際讀寫磁盤需用 柱面號 , 磁頭號與 扇區號 三維地址。(南開大學2000) 39. UNIX的文件目錄項由兩部分組成,即文件名和 索引節點 ;后者在文件被打開后又有兩種形式,即 外存索引節點和 內存索引節點 。(中科院2000)40. UNIX能與其他操作系統組
9、網是由于它支持 TCP/IP 協議。(中科院2000)41. 在一個請求分頁存儲管理系統中,某程序的頁面走向為:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1。假設分得的頁框數是3,并且開始時頁框中是空的,則分別采用最佳轉換算法和LRU頁面轉換算法,在訪問過程中發生缺頁中斷的次數分別是 9 和 13 。(南京航空2001)42. 一臺計算機有十臺磁帶機被m個進程競爭,每個進程最多需要三臺磁帶機,那么m為 4 時,系統沒有死鎖的危險。(南京航空2001)43. 某系統中有11臺打印機,N個進程共享打印機資源,每個進程要求3臺。當N的取值不超過 5 時,系統不會發生
10、死鎖。(上海交大2002) 44. 在分頁虛擬存儲管理中,“二次機會”調度策略和“時鐘”調度策略在決定淘汰哪一頁時,都用到了引用位 。 (上海交大2002) 45. 虛擬存儲器實現的基礎是程序局部性原理理論。實現虛擬存儲器是現代計算機操作系統 擴充主存 的主要方法。操作系統實現虛擬存儲器需要 地址轉換機構、 存儲保護機構 和 中斷機構 等軟硬件支持。 (四川大學2000) 46. 在微型計算機中,當I/O控制方式采用DMA時,數據傳輸的基本單位是 數據塊 ,而且在外設和 內存 之間直接建立數據通路,在I/O過程中,不需要 CPU 的干預,完全由DMA控制器控制。(四川大學2000) 47. 進
11、程映像的三個組成部分是 程序塊 、 數據塊 、 PCB ,其中后者是進程存在的惟一標志。(合肥工大2000)48. 進程的基本狀態有執行、就緒和等待。批處理作業的基本狀態有運行、輸入 后備 和完成。其中,運行 狀態包含了進程的等待狀態。作業調度程序實現了作業從 后備 狀態到執行狀態的轉換,而進程調度 程序實現了進程從就緒狀態到執行狀態的轉換。處于等待狀態的進程是不會獲得CPU的。(大連理工2002)49. SPOOLing技術是在共享設備上模擬獨占設備的技術 。由預輸入程序將作業執行中需要訪問的數據預先讀入輸入井中。緩沖輸出程序則負責將輸出井中的信息在輸出設備上輸出。(大連理工2002)50.
12、 文件在文件存儲空間的組織方式,稱為文件的 物理 結構。 (電子科大2001) 51. 所謂操作系統虛擬機的概念,是指 OS屏蔽硬件細節,為用戶提供使用方便、功能擴展、效率提高的計算機 。(華中科技2002)52. 程序并發執行時失去程序的封閉性和可再現性的主要原因是 運行程序相互制約 。(華中理工2001)53. 最佳適應算法是將作業放置到能滿足作業長度空閑區中最小的一個空閑區中。(華中理工2000)54. 分區存儲管理方案不能實現虛存的原因是 存儲空間連續性要求 。(西交大1999)55. UNIX系統的核心結構由 進程控制 子系統和文件子系統兩個部分組成的。(華中科技2001) 二、 術
13、語/名詞解釋1. 西北大學2000并行與并發、對換與切換、管道與通信、直接通信與間接通信、死鎖與饑餓(1)并發與并行;若干個事件在同一時刻發生稱為并行;若干個事件在同一時間間隔內發生稱為并發。并行是并發的特例,并發是并行的拓展。(2)對換與切換;對換是指把內存中暫時不能運行的進程或暫時不用的程序和數據,換出到外存上,以騰出足夠的內存空間,把已具備運行條件的進程或進程所需的程序和數據換入內存。切換是指將CPU的使用權從一個進程轉到另一個進程。在某些系統中,進程切換往往伴隨著信息的對換。(3)管道與通道;管道(Pipe)是連接兩個進程的一個共享文件,進程通過對該文件的讀、寫實現進程間的通信。管道文
14、件實際上是一個臨時文件,它以磁盤為中介實現進程間的通信,與內存相比,其通信速度較慢。通道(I/O處理機)是實現I/O操作的硬件裝置。通道對管道的實現提供子硬件支持。 (4)直接通信與間接通信;消息系統有直接通信和間接通信之分。 1)直接通信。直接通信方式有一個基本原則:進程在發送和接收消息時,必須指明接收者或發送者的名字。這種通信方式中Send和Receive原語定義如下: Send(P,message),將消息發送給進程P; Receive(Q,message),接收來自進程Q的消息。 這種通信方式中通信鏈路具有如下特征:每一對欲通信的進程間自動建立了一條雙向通信鏈,只需知道對方的標識信息便
15、可進行通信;每條通信鏈路嚴格地對應兩個進程;相互通信的一對進程之間存在一條通信鏈路。 2)間接通信。進程間通過信箱進行消息傳遞的通信方式稱為間接通信,又稱為“信箱通信”;信箱(Mailbox)可以抽象地看成是一個虛設備,進程可以把消息(也稱信件)放入信箱,也可以從中取出一條消息。信箱必須有唯一的標識符。在這種通信方式中,某個進程可以通過一組不同的信箱同時與其他多個進程通信。兩個進程之間只有當它們有一個可共享的信箱時才可進行通信。 間接通信方式中的通信鏈路具有如下特征:只有當兩個進程有了一個可共享的信箱時,通信鏈路才在兩者之間建立;一條通信鏈路可以連接兩個以上的進程;每一對通信進程之間可以有多條
16、不同的通信鏈路,每一條鏈路對應一個信箱;通信鏈路可以是單向的,也可以是雙向的。(5) 死鎖與“餓死”。 死鎖是因競爭資源而引起的一種具有普遍性的現象,在多道程序系統中,由于多個并發進程共享系統的資源,如使用不當有可能造成一種僵局,即系統中兩個或多個進程無限期地等待永遠不會發生的條件,在無外力的干預下,這些進程都不能向前推進,我們稱之為死鎖。死鎖不僅在兩個進程之間發生,也可能在多個進程之間,甚至在系統全部進程之間發生。當死鎖發生時,一定有一個資源被無限期地占用而得不到釋放。 “餓死”是指系統中的每個資源占用者都在有限的時間內釋放它所占用的資源,但是仍然存在申請者永遠得不到資源的現象。因此,在操作
17、系統中,不僅要考慮如:何防止“死鎖”,還要考慮如何避免“餓死”。2. 西安理工大學2000系統調用、多道程序設計、周轉時間、碎片、系統抖動(1)系統調用系統調用是用戶在程序中能用“訪管指令”調用的由操作系統提供的子功能的集合。每一個子功能稱為一條系統調用命令(或廣義指令)。系統調用是操作系統在程序級給用戶提供的接口。(2)多道程序設計多道程序設計是指在主存中同時存放多道用戶作業,它們都處于執行的開始點和結束點之間。(3)周轉時間所謂周轉時間是指作業從進入系統到處理完成所經歷的時間。(4)碎片所謂碎片是指存儲器上不能利用的空閑區。(5)系統抖動在分頁存儲系統中,將某一頁從實存移到輔存為“出頁”,
18、從輔存調入主存為“入頁”。剛“出頁”的頁又要“入頁”,或剛“入頁”的頁又要“出頁”。這種反復出入頁的現象稱為“抖動現象”或者“系統顛簸”。3. 西安交通大學1999/2000線程、分時系統、系統調用、地址再定位、多道程序設計、地址空間和存儲空間、通道(1) 線程所謂線程(thread),從操作系統管理角度看線程是指“進程的一個可調度實體”,是處理機調度的基本單位;從編程邏輯看線程是指“程序內部的一個單一的順序控制流”。線程是進程的一個組成部分。 (2) 分時系統 所謂分時系統就是在一臺計算機上,連接多個終端,用戶通過各自的終端和終端命令把作業送人計算機,計算機又通過終端向各用戶報告其作業的運行
19、情況,這種計算機能分時輪流地為各終端用戶服務并能與時對用戶服務請求予以響應,這就構成了分時系統。分時系統設計的主要目標是使用戶能與系統交互作用,對用戶的請求與時響應,并在可能條件下盡量提高系統資源的利用率。分時系統的主要特征是: 1)同時性:若干個終端用戶按照系統提供的各種服務,在各自終端進行操作,同時使用一臺計算機資源。宏觀上看是各用戶在并行工作,微觀上看是各用戶輪流使用計算機。 2)獨立性:用戶間可以相互獨立操作,互不干涉,系統保證各用戶程序運行的完整性,不會發生相互混淆或破壞現象。 3)與時性:系統可對用戶的輸入與時作出響應。分時系統性能的主要指標之一是響應時間,它是指從終端發出命令到系
20、統予以應答所需的時間。4)交互性:用戶可根據系統對請求的響應結果,進一步向系統提出新的請求,即能使用戶和系統進行人 機對話的工作方式,所以分時系統也稱之為交互式系統。 (3) 系統調用系統調用是用戶在程序中能用“訪管指令”調用的由操作系統提供的子功能的集合。每一個子功能稱為一條系統調用命令(或廣義指令)。系統調用是操作系統在程序級給用戶提供的接口。 (4) 地址再定位所謂地址再定位,就是當一個程序裝入到與其地址空間不一致的存儲空間而進行的地址變換過程,即將地址空間給出的邏輯地址映射到內存的物理地址。地址重定位有靜態重定位和動態重定位兩種方式。 (5)多道程度設計多道程序設計是指在主存中同時存放
21、多道用戶作業,它們都處于執行的開始點和結束點之間。多道程序設計的特點如下: 1)多道。主存中有多道程序,它們在任一時刻必須處于就緒、運行、阻塞三種狀態之一。 2)宏觀上并行。從宏觀上看,它們在同時執行。 3)微觀上串行。從微觀上看,它們在交替、穿插地執行。采用多道程序設計后,減少了CPU時間的浪費。尤其對計算題的作業,由于I/O操作較少,CPU浪費的時間很少。(6) .地址空間和存儲空間地址空間指用戶編程使用的全部地址,其中,每個地址單元又稱邏輯地址,由于它常相對于程序的起始地址編號,故又叫相對地址。存儲空間指內存中可直接尋址的物理單元的集合,物理單元又稱物理地址或絕對地址。(7) 通道又稱I
22、/O處理器,它在接受CPU的I/O命令后,能相對獨立地完成主存儲器和外圍設備之間的信息傳送,并與中央處理器并行地執行操作,I/O結束后又能發點I/O中斷請求CPU干予,具有上述一系到邏輯功能的部件就是通道。采用通道技術主要解決輸入輸出操作的獨立性和各部件工作的并行性,減少外圍設備和中央處理器的邏輯聯系,實現外圍設備和中央處理器之間的并行操作;通道和通道之間的并行操作;各通道上的外圍設備之間的并行操作,以達到提高整個系統效率的目的。4. 清華大學2001多道程序、多重處理、進程、線程、虛存存儲器(1)多道程序 多個用戶程序(作業)同時進入主存,并啟動它們同時運行的程序設計技術。在單CPU上這些程
23、序在宏觀上是同時運行的,而微觀上看它們交替執行。(2)多重處理 系統配置多個CPU,能真正同時執行多道程序。要有效使用多重處理,必須采用多道程序設計技術,而多道程序設計并不定要求多重處理系統支持。(3) 進程 進程是一個可并發執行的具有獨立功能的程序關于某個數據集合的一次執行過程,也是操作系統進行資源分配和保護的基本單位。(4)線程 多線程環境中進程是操作系統中進行保護和資源分配的基本單位。線程是操作系統進程中能夠獨立執行的實體(控制流),是處理器調度和分派的基本單位。線程是進程的組成部分,每個進程內允許包含多個并發執行的控制流,這就是多線程。(5)虛擬存儲器 在具有層次結構存儲器的計算機系統
24、中,采用自動實現部分裝入和部分對換功能,為用戶提供一個比物理主存容量大得多的,可尋址的一種“主存儲器”。5. 南京大學2001線程、目錄、 死鎖、窗口(1)線程:線程又稱輕量級進程,是指進程中的一條執行路徑。(2)目錄:文件系統中的所有文件控制的有序集合稱為目錄。(3)死鎖:若一個進程集合中的每一個進程都在等待只能由本集合中的另一個進程才能引發的事件,則稱這組進程處于死鎖。(4)窗口:把用戶的工作顯示在計算機屏幕的一個矩形區域中,允許用戶在矩形區域中操作應用軟件和文件,該矩形區域就稱為“窗口”。6. 南京大學2003寫出操作系統中常用縮寫字的英文全稱:(1) RAID (2) LWP (3)
25、IPC (4)IPT(1)Reundant Array of Independent Disks(2)Light Weight Process(3)Interprocess Communication(4)Inverted Page Table解釋下列概念與說明關系或區別:(1)計算機系統的安全性、計算機系統的可靠性(2)死鎖、饑餓(3)同步、互斥(4)文件目錄、目錄文件(1)計算機系統的安全性和可靠性是兩個概念,可靠性指硬件系統正常持續運行的程度,目標為反故障;安全性是指不因人為疏漏和蓄謀作案而導致信息資源被泄露、篡改和破壞,目標是反泄露。關系:可靠性是安全性的基礎,安全性比可靠性更為復雜。
26、(2)死鎖是因進程競爭資源,但系統擁有資源的數量有限,或并發進程推進的順序不當而造成的一種永遠等待資源的僵局。而饑餓是指每個資源占用者都在有限時間內釋放占用的資源,但申請進程仍然長時間得不到資源的現象。關系:產生饑餓現象并不意味著一定產生死鎖。(3)并發進程的執行會產生相互制約關系:一種是進程之間競爭使用獨占型資源,只能讓它們逐個使用,這種現象稱互斥,是一種競爭關系,也稱間接的制的關系。另一種是進程之間協同完成任務,在關鍵點上等待另一進程發來的消息,以便協同一致,是一種協作關系,也稱直接的制的關系。關系:本質上,互斥是一種特殊的同步,因為它也是進程之間的執行次序上的一種協調。(4)文件目錄記錄
27、文件的管理和說明信息,如文件名字、長度、屬性、外存位置等信息,用于對單個文件的控制。把同一個卷上的若干文件的文件目錄組成一個單獨的文件,由于它是由文件目錄組成的,故稱目錄文件,它用于對整個文件系統的管理。7. 南京航空航天大學2001 多道程序設計、計算機操作系統、用戶態與核心態、進程控制塊、SPOOLing、邏輯文件和物理文件、進程映象、臨界資源和臨界區(1)多道程序設計 見清華大學2001(1)/西安交大2000(5)(2)計算機操作系統 操作系統是管理系統資源、控制程序執行、改善人機界面、提供各種服務,合理組織計算機工作流程和為用戶有效使用計算機提供良好運行環境的一種系統軟件。(3) 用
28、戶態與核心態 硬件處理器的不同狀態(或模式),用于加強系統的安全性。多數系統把處理器狀態簡單的劃分為核心態(又稱特權狀態、系統模式、特態或管態)和用戶態(又稱目標狀態、用戶模式、常態或目態)。當處理器處于管理狀態時,程序可以執行全部機器指令,訪問所有資源,并具有改變處理器狀態的能力;當處理器處于用戶狀態時,程序只能執行非特權指令。(4)進程控制塊 標識進程存在和記錄、刻畫進程狀態與有關信息的數據結構。它是操作系統掌握進程的唯一資料結構,是操作系統控制和管理進程的主要依據。它包括了進程執行時的情況,以與進程讓出處理器后所處的狀態、斷點等的標識信息、現埸信息和控制信息。(5)SPOOLing、 是
29、外圍設備同時聯機操作的簡稱假脫機系統。其思路是:利用多道程序設計技術,在運行用戶作業的同時,將大批新的作業信息從輸入設備上預先輸入到輔助存儲器磁盤的輸入緩沖區域中暫時保存,稱為“預輸入”。此后,由作業調度程序調出作業執行。作業使用數據時不必再啟動輸入設備,而只要從磁盤的輸入緩沖區域中讀入。類似地,作業執行中不必直接啟動輸出設備輸出數據,而只要將作業的輸出數據暫時保存到磁盤的輸出緩沖區域中,在作業執行完畢后,由操作系統組織信息成批輸出。稱為“緩輸出”。這樣能帶耒縮短作業執行時間、增加多道程序道數、加強詐作業調度靈活性的優點。Spooling技術是用一類物理設備模擬另一類物理設備技術,是使獨占使用
30、的設備變成可共享設備的技術,也是一種速度匹配技術。(6)邏輯文件和物理文件 邏輯文件是從用戶觀點出發,從方便使用的角度考慮文件信息的組織與配置方式,這種文件叫邏輯文件,它分為流式文件和記錄式文件。物理文件-從系統觀點出發,考慮文件在物理介質上的組織和存放方式,這種文件叫物理文件,它分串連文件、連續文件、索引文件和哈希文件。(7)進程映象 UNIX SVR4中,進程由三部分組成:proc結構、數據段和正文段,它們合稱為進程映像,而把進程定義為映像的執行。(8) 臨界資源和臨界區 進程中涉與共享變量的程序段稱臨界區。臨界區中共享變量代表的資源稱臨界資諒,這些資源一次僅能被一個進程使用。8. 復旦大
31、學2000 用戶級線程和系統級線程(1) 用戶級線程ULT線程管理的全部工作都由應用程序來做,在用戶空間內實現,內核是不知道線程的存在的。用戶級多線程由用戶空間運行的線程庫來實現,任何應用程序均需通過線程庫進行程序設計,再與線程庫連接后運行來實現多線程。線程庫是一個ULT管理的例行程序包,在這種情況下,線程庫是線程的運行支撐環境。當一個應用程序提交給系統后,系統為它建立一個由內核管理的進程,該進程在線程庫環境下開始運行時,只有一個由線程庫為進程建立的線程。首先,運行這個線程,當應用進程處于運行狀態時,線程通過調用線程庫中的“孵化”過程,可以孵化出運行在同一進程中的新線程。上述活動均發生在用戶空
32、間,且在單個進程中,內核并不知道這些活動。內核按進程為單位調度,并賦予一個進程狀態(就緒、運行、阻塞)。(2) 系統級線程內核級KLT線程設施中,線程管理的所有工作由操作系統內核來做。內核專門提供了一個KLT應用程序設計接口(API),供開發者使用,應用程序區不需要有線程管理的代碼。Windows 2000/XP和OS/2都是采用這種方法的例子。任何應用都可以被程序設計成多個線程,當提交給操作系統執行時,內核為它創建一個進程和一個線程,線程在執行中可以通過內核創建線程原語來創建其他線程,這個應用的所有線程均在一個進程中獲得支持。內核要為整個進程與進程中的單個線程維護現場信息,所以,應在內核空間
33、中建立和維護進程控制塊PCB與線程控制塊TCB,內核的調度是在線程的基礎上進行的。9. 北京郵電大學1998 進程、線程、管程(1) 進程和線程 見清華大學2001 (2) 管程 管程是管理進程同步的一種同步機制,它保證進程互斥地訪問共享變置(代表共享資源),并提供了一個阻塞和喚醒進程的設施-條件變量。它有三部分組成:(1)局部于管程的數據結構-共享變量,該共享變量表示了共享資源的狀態。(2)局部于管程對上述數據結構進行規定操作的若干過程。(3)數據結構的初始化操作。10. 北京理工1999 /2000 臨界區、并發、不可剝奪資源、地址空間、工作集、抖動、程序局部性原理、設備獨立性、虛擬設備(
34、1) 臨界區 進程中涉與代表共享資源的共享變量的程序段稱臨界區。(2) 并發 是指兩個或兩個以上的事件或活動在同一時間間隔內發生。操作系統是一個并發系統,操作系統的并發性指計算機系統中同時存在若干個運行著的程序,因此,它應該具有處理和調度多個程序同時執行的能力。(3)不可剝奪資源 除非擁有該資源的進程主動放棄,系統不得強行取回的一類資源。(4) 地址空間 地址空間指用戶編程使用的全部地址,其中,每個地址單元又稱邏輯地址,由于它常相對于程序的起始地址編號,故又叫相對地址。存儲空間指內存中可直接尋址的物理單元的集合,物理單元又稱物理地址或絕對地址。(5) 工作集 Denning提出的工作集概念是:
35、“為確保每個進程每一時刻能夠執行下去,在物理存儲器中必須有的最少頁面數”。但也有的文獻所用工作集概念稍有不同是指:“在未來的時間間隔內,一個進程運行時所需訪問的頁面集”。(6) 抖動 頁面淘汰中的一種現象,剛被淘汰的頁面又立即要用,因而,又要把它調入,而調入不久再被淘汰,淘汰不久再被調入。如此反復,使得整個系統的頁面調度非常頻繁以至于大部時間都花在來回調度頁面上。處理器花費大量時間用于對換頁面而不是執行計算任務的現象叫做“抖動”(Thrashing),又稱“顛簸”。(7) 程序局部性原理 發現的程序和數據的訪問都有聚集成群的傾向,在一個時間段內,僅使用其中一小部分(稱空間局部性),或者最近訪問
36、過的程序代碼和數據,很快又被訪問(稱時間局部性)。(8) 設備獨立性、虛擬設備 見相關詞條。11. 武漢大學1999 原語、特權指令、順序進程與并發進程、死鎖與饑餓(1)原語 是在管態下執行、完成操作系統特定功能的過程。原語和機器指令類似,其特點是執行過程中不允許被中斷,是一個不可分割的基本單位,原語的執行是順序的而不可能是并發的。(2)特權指令 僅當處理器運行在核心態時,程序中才能正常執行的機器指令。(3)順序進程與并發進程 前者指在處理器上獨占全部資源,按嚴格順序執行指令的進程,其程序執行的結果與它的執行速度無關,且初始環境一定時,執行結果可再現。后者指的執行在時間上是可重迭的一組進程,由
37、于打破了封閉性和可再現性,并發執行中進程的執行具有間斷性。(4)鎖與饑餓 見問答題1。12. 大連理工1999 CPU利用率、臨界區、重定位、抖動、死鎖、虛擬設備見有關條目。13. 北京工業大2000 死鎖、管態、目態、PCB、低級調度、響應比、進程、臨界區(1) 死鎖 見問答題1。(2) 管態、目態 、PCB 見南京航空2001。(3) 低級調度 負責動態地按一定算法把處理器分配給進程或內核級線程的過程稱低級調度。操作系統中實現低級調度的程序稱為低級調度程序,或分派程序(dispatcher)。(4) 響應比 作業進入系統后的等待時間與估計計算時間之和稱為作業的響應時間,作業的響應時間除以作
38、業估計計算時間稱作響應比,定義為:響應比作業響應時間/作業估計計算時間=1+作業等待時間/作業估計計算時間(5) 進程、臨界區 見有關詞條。14. 哈工大2000 進程、線程、臨界區、同步機構(1) 進程、線程、臨界區 見有關詞條(2) 同步機構 操作系統實現進程同步的機構稱同步機構或同步機制,它由同步原語組成。不同的同步機制采用不同的同步方法,迄今己設計出許多種同步機制,最常用的同步機制有:信號量與PV操作,管程和消息傳遞。15. 南開大學1999 /2000 抖動、進程調度、虛擬設備、SPOOLing、動態地址變換、磁盤緩沖區、中斷與異常(1) 抖動、進程調度、虛擬設備、SPOOLing
39、見有關詞條。(2) 動態地址變換 為保證程序的正確運行,必須把程序和數據的邏輯地址轉換為物理地址,這一工作稱為地址變換或重定位。如果是在程序執行過程中,CPU訪問程序和數據之前實現地址轉換,稱為動態重定位,動態重定位必須借助于硬件的地址轉換機構實現。(3) 磁盤緩沖區 開劈的用于磁盤I/O暫存信息的內存緩沖區,使用它的優點是匹配CPU和磁盤速度的差異,減少內外交換次數。(4) 中斷與異常 中斷是指來自處理器和主存儲器之外的中斷信號引起的中斷,又叫外中斷。包括:電源故障中斷、時鐘中斷、控制臺中斷、它機中斷和I/O中斷等。每個不同的中斷具有不同的中斷優先級,在處理高一級中斷時,往往會屏蔽部分或全部
40、低級中斷。異常是指來自處理器和主存內部的中斷信號引起的中斷,又叫內中斷。包括:通路校驗錯、主存奇偶錯、非法操作碼、地址越界、頁面失效、調試指令、訪管中斷、算術操作溢出等各種程序性中斷。其中訪管中斷是由機器指令提供的特殊指令,該指令執行時將會引起內中斷。異常是不能被屏蔽的,一旦出現應立即響應并加以處理。16. 四川大學2000臨界資源 、原語 、重定位 、驅動調度 、 FCB(1) 臨界資源 、原語 、重定位 見有關詞條。(2) 驅動調度 作為操作系統的輔助存儲器,用來存放文件的磁盤一類高速大容量旋轉型存儲設備,在繁重的輸入輸出負載之下,同時會有若干個輸入輸出請求來到并等待處理。系統必須采用一種
41、調度策略,使能按最佳次序執行要求訪問的諸請求,這就叫驅動調度,使用的算法叫驅動調度算法。驅動調度能減少為若干個輸入輸出請求服務所需的總時間,從而,提高系統效率。(3) FCB 文件控制塊-文件系統依靠文件目錄實現文件的“按名存取”。每一個文件在文件目錄中登記一項,實質上文件目錄是文件系統建立和維護的它所包含的文件的清單,每個文件的文件目錄項又稱文件控制塊FCB( Block),一般應該包括以下內容:1) 有關文件存取控制的信息:如文件名、用戶名、文件主存取權限、授權者存取權限:文件類型和文件屬性,如讀寫文件、執行文件、只讀文件等。2) 有關文件結構的信息:文件的邏輯結構,如記錄類型、記錄個數、
42、記錄長度、成組因子數等。文件的物理結構,如文件所在設備名,文件物理結構類型,記錄存放在外存的相對位置或文件第一塊的物理塊號,也可指出文件索引的所在位置等。3) 有關文件使用的信息:已打開該文件的進程數,文件被修改的情況,文件最大和當前大小等。4) 有關文件管理的信息:如文件建立日期、文件最近修改日期、文件訪問日期、文件保留期限、記帳信息等。17. 中山大學2001臨界區、掛起、快表(1) 臨界區 見有關詞條。(2) 掛起 為達到平滑系統操作負荷,或滿足用戶程序調試等目的,而新引入的一種進程狀態稱”掛起”態。被掛起的進程,對換到磁盤鏡像區中,釋放它所占有的某些資源,不難看出,可以把一個掛起進程等
43、同于不在主存的進程,因此,掛起的進程將不參與低級調度直到系統資源充裕厲它們被對換進主存。(3) 快表 存分頁式存儲管理中,為了提高運算速度,通常都在MMU中設置一個專用的高速緩沖存儲器,用來存放最近訪問的部分頁表,這種高速存儲器稱為相聯存儲器,也稱TLB(Translation Lookaside Buffer),它成為分頁式存儲管理的一個重要組成部分。存放在相聯存儲器中的頁表稱快表。三、 問答題 1. 簡述死鎖與饑餓。(西北工大2000) 答:如果在一個進程集合中的每個進程都在等待只能由該集合中的其他一個進程才能引發的事件,則稱一組進程或系統此時發生了死鎖。產生死鎖的原因是因諸進程競爭資源或
44、進程推進順序不當而造成。饑餓也是進程間競爭資源產生的一種狀況,一個進程由于其他進程總是優先于它而被無限期拖延獲得資源或接受服務,陷入了饑餓狀態,但此時系統并未發生死鎖。2.剝奪式與非剝奪式優先級調度算法各有什么優缺點?設計一種調度算法,使該調度算法能保留以上兩種算法的各自優點并克服它們的缺點。(西北工大2000)答:非剝奪式優先級調度算法優點是實現簡單、系統開銷小、貌似公正,但可能使系統性能惡化。如后到的緊急任務不能立即投入遠行,使緊急任務的響應時間延長;后到的多個短進程必須等長進程運行完畢,使得周轉時間增加而系統吞吐率降低。剝奪式剝奪式優先級調度算法能保證高優先級進程立即投入運行,減少進程平
45、均周轉時間,提高系統吞吐率,但系統開銷較大,系統的復雜性也隨之增加。 采用多級反饋隊列調度算法能結合兩種算法的各自優點。算法的基本思路如下:設置多個就緒隊列,并賦予各隊列不同的優先權。就緒隊列的設置按時間片大小劃分,優先權越高的隊列,其進程運行時獲得的時間片越小。系統總是把新創建的進程首先排入優先級最高的隊列,若它執行一個時間片后尚未完成,系統便把它放入下一級隊伍的末尾、即進程的優先級動態地逐步降低。非最低優先級隊列均采用時間片輪轉的FCFS調度算法,而最低優先級隊列可采用輪轉法或其他調度算法。3.一個分層結構的操作系統由裸機、用戶、CPU調度和PV操作、文件管理、作業管理、內存管理、設備管理
46、、命令管理等部分組成。試按層次結構原則從內到外將各部分重新排列。(中科院1997)答:試按層次結構原則從內到外依次為:裸機、CPU調度和PV操作、內存管理、設備管理、文件管理、作業管理、命令管理、用戶。4. 計算機系統采用通道部件后,己能實現CPU與外設的并行工作,為什么進要引入多道程序設計?(北大1996)答:是機器部件能并行工作僅僅有了提高效率的可能性,而機器部件并行工作的實現還需要軟件技術去利用和發揮,這就是要引入多道程序設計技術的原因之一。二是多個程序同時進入主存工作時,它們將共享系統的資源,會發生直接或間接的制約關系,即程序不再在封閉環境中運行,會出現程序執行順序、完成時間與運行結果
47、的不確定性,必須要引入多道程序設計技術來解決這個問題。5. 關于處理機調度,試問:(1)什么是處理機三級調度?(2)處理機三級調度分別在什么情況下發生?(3)各級調度分別完成什么工作? 答:處理機三級調度發生的情況是:(1)高級調度。高級調度是根據系統內所有資源的使用情況,一旦可能便從后備作業中選擇一道作業進入系統,并創建相應的進程,分配必要的系統資源,然后,將進程“就緒”。(2)低級調度。低級調度即為CPU調度,它是根據CPU資源的使用情況與時分配CPU。即從“就緒”的進程中選擇一個進程在CPU上“運行”。(3)中級調度。在內存中常常有許多進程處于某種等待狀態,這些進程在“等待”期間無謂地占
48、用著內存資源。如將它們暫時換至外存,則所節省出來的內存空間可用以接納新的進程,一旦換出外存的進程,具備運行條件時再將其重新換入內存。為此,在邏輯上將主存延伸,用一部分外存空間(稱為交換區)替代主存,并且實施交換調度(中級調度)。 高級調度完成作業調度,使“后備”狀態的作業變為“執行”狀態;中級調度完成內存和外存信息的交換調度;低級調度完成進程調度,使“就緒”的進程在CPU上“運行”。6. 系統調用是操作系統和用戶程序的接口,庫函數也是操作系統和用戶程序的接口,這句話對么?(清華1995)答:不對。系統調用是操作系統為了擴充機器功能、增強系統能力、方便用戶使用而在內核中建立的系統程序(過程),通
49、常運行在系統態。用戶程序或其他系統程序通過系統調用就可以訪問系統資源,調用操作系統功能,它是用戶程序或其他系統程序獲得操作系統服務的唯一途徑。庫函數是程序設計語言中,把常用的功能編寫成函數。放在函數庫中供用戶編程時使用。庫函數仍屬用戶程序而非系統程序,運行時仍在用戶態而非系統態。 7. 現有兩道作業同時執行,一道以計算為主,另一道以輸入輸出為主,你將怎樣賦予作業進程占有處理器的優先級?為什么?(南大2000)答:優先級調度的基本原則是:照顧時間緊迫的作業使其得到與時處理、照顧會話型作業使其快速響應、照顧I/O繁忙型作業,使外設充分保持忙碌。故I/O為主的作業對應的進程優先級高,而以計算為主的作
50、業對應的進程優先級低。8. 操作系統中為什么要引入進程概念?為了實現并發進程間的合作和協調工作,以與保證系統的安全性,系統在進程管理方面應做哪些工作?(南大1997)答:在多道程序環境下,程序可以并發執行,一個程序的任意兩條指令之間都可能發生隨機事件而引發程序切換。因而,每個程序的執行都可能不是連續的。此外,程序的并發執行又引起了資源共享和競爭的問題,造成了各并發執行的程序間可能存在制約關系,程序和計算不再一一對應。系統需要一個既能描述程序動態執行過程,又能用來共享資源的一個單位,操作系統引入的這個單位就是進程。 操作系統在進程管理方面應做:進程控制、進程調度、進程同步與互斥、進程通信等工作。
51、 9.試比較進程和程序的區別。(哈工大2000)答:進程是程序在數據集合上的一次執行過程,是動態概念,它有生命周期,由創建而產生,由調度而執行,由撤銷而消亡;而程序是一組有序指令序列,是靜態概念,程序作為一種系統資源是永久存在的。進程和程序之間無一一對應關系,不同進程可對應同一程序,同一程序運行中也可產生不同進程。進程是系統進行資源分配與運行調度的獨立單位,程序無此概念。10. 進程和線程的主要區別是什么?(西北工大1999)答:(1)線程是進程的組成部分,一個進程可包含有多個線程 ; (2)進程是資源分配與保護的基本單位,擁有自己的地址空間和各種資源。線程是處理器調度的基本單位,自己不具有資
52、源,只能和其他線程共享進程的資源;(3)以進程為單位進行處理器調度和切換和進程通信時,涉與改變地址空間、資源轉移與現埸保護等問題,時空開銷大,系統效率低;但進程內的多線程均在同一地址空間活動,因而,線程切換、通信效率高,共享數據也很方便;(4)進程的調度和控制大多由操作系統的內核完成,而線程控制既可由操作系統的內核完成,也可由用戶程序控制完成。11.進程之間存在哪幾種相互制約關系?各是什么原因引起的?下列活動分別屬于哪種制約關系?(1)若干同學去圖書館借書;(2)兩隊舉行籃球賽;(3)流水線生產的各道工序;(4)商品生產和社會消費。(北理工1996)答:進程之間相互制約關系分同步(直接制約關系
53、)和互斥(間接制約關系)。前者是因合作進程之間協調彼此工作而控制自己的執行速度,即因進程間相互合作而等待產生的制約關系。后者是因進程間競爭臨界資源而禁止兩個以上進程同時進入臨界區所發生的制約關系。(1)互斥;(2) 互斥;(2) 同步;(4) 同步。12.Dijkstra1965年提出的銀行家算法其主要思想是什么?它能夠用來解決實際中的死鎖問題嗎?為什么?(中科院1996)答:銀行家算法是解決死鎖的一種策略,其主要思想是:在每次實施資源分配前,先進行試探性分配,以確保系統始終處于安全狀態,即查找試探性分配中是否存在某種進程執行順序,按此順序進行資源分配和回收使全部進程能正常運行結束,如果是則正
54、常分配,否則拒絕本次資源分配。銀行家行算法雖有很好理論意義,但該算法要預先獲得有關信息,如進程所需的最大資源量,系統中進程的總數等,這是難以做到的,所以,銀行家算法缺乏實用價值。13. 按序分配是防止死鎖的一種策略。什么是按序分配?為什么按序分配可以防止死鎖?(南大2000)答:按序分配策略把系統的所有資源安排一個順序,按順序給每個資源一個編號,規定每個進程申請兩個以上資源時,總是先申請編號小的再申請編號大的資源。這樣,在進程集合中總存在某個進程,它占有了己申請資源中編號最大的資源,因而,它不再能申請其他資源,當它運行結束,就可以釋放占用的全部資源。剩余的進程集合中又會有一個進程此時占有己申請
55、資源中編號最大的資源,那么,它也能運行結束。以此類推,最終所有進程都能運行結束,故系統不會發生死鎖。實質上,按序分配通過破壞死鎖的循環等待條件而防止死鎖。14. 什么是進程控制塊?試從進程管理、進程通信、中斷處理、文件管理、存儲管理、設備管理的角度設計進程控制塊應包含的項目。(北大1999)答:進程控制塊PCB是操作系統為每個進程建立的,用于記錄和刻畫進程狀態與有關信息的數據結構,也是操作系統掌握進程的唯一資料結構,是操作系統控制和管理進程的主要依據。PCB是進程存在的唯標志,系統根據PCB而感知進程的存在,創建進程時為其分配PCB,撤銷進程時回收PUB。 從進程管理角度,應有:進程標識、進程
56、狀態、進程優先級、隊列指針等。 從進程通信角度,應有:消息隊列首指針、訪問消息隊列互斥信號量、消息計數等。 從中斷處理角度,應有:現埸信息(上下文)、中斷源與類型等。 從文件管理角度,應有:保存進程使用文件的文件控制塊(FCB)等。 從存儲管理角度,應有:保存進程使用的程序和數據的內外存地址或頁表位置等。從設備管理角度,應有:保存進程分配到的資源與所需資源情況等。15. 有一OS以如下方法定義P、V掠操作:P(S): S:=S-1; If S<0 then 本進程進入相應隊列尾等待;V(S): S:=S+1; If S=0 then 喚醒相應隊列尾進程,并進就緒隊列;這與傳統的P、V操作
57、的定義有什么缺點?答:與傳統的P、V操作的定義相比缺點為: (1)V操作中,僅當S=0、即隊列中只有一個進程阻塞時才喚醒,否則不預喚醒,這是錯誤的。(2)V操作喚醒的是隊尾進程,不是先進入等待的進程,會造成饑餓現象。(3)傳統的V操作在喚醒阻塞進程后,執行進程將繼續運行。而此處卻轉入就緒隊列,在執行進程能夠繼續執行的情況下無故使其進入就緒隊列的做法只會增加CPU調度的開銷,降低系統效率。16. 分頁存儲管理有效地解決了什么問題?試敘述其實現原理。(中科院1995)答:分頁存儲管理有效地解決了存儲器碎片(零頭)問題。其實現原理如下:(1)以同樣大小的塊為單位劃分存儲器,塊(頁框)是內存分配的單位,其大小為2的冪次。(2) 以同樣大小的頁(頁面)劃分作業地址空間,頁與塊的大小相等。(3)作業的頁面在存儲器中可存放在不連續的頁框中,并建立頁表記錄每個頁面所對應的頁框。(4)邏輯地址由頁面號與頁
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 玉米逆境生理與抗性提升考核試卷
- 電阻器表面貼裝技術考核試卷
- 2025年街道清潔服務承包合同新版樣式
- 2025標準車輛租賃合同范本
- 2025版員工試用期合同協議書范本
- 2025商業類贈與合同模板
- 物業管理基礎知識培訓資料
- 隧道工程項目實施性總體施工組織設計
- 蘇教版國標本二年級下冊數學教案
- 二零二五版汽車無償借給合同
- 義務兵家庭優待金審核登記表
- GA 255-2022警服長袖制式襯衣
- GB/T 5202-2008輻射防護儀器α、β和α/β(β能量大于60keV)污染測量儀與監測儀
- GB/T 39560.4-2021電子電氣產品中某些物質的測定第4部分:CV-AAS、CV-AFS、ICP-OES和ICP-MS測定聚合物、金屬和電子件中的汞
- GB/T 3452.4-2020液壓氣動用O形橡膠密封圈第4部分:抗擠壓環(擋環)
- 計劃生育協會基礎知識課件
- 【教材解讀】語篇研讀-Sailing the oceans
- 抗腫瘤藥物過敏反應和過敏性休克
- 排水管道非開挖預防性修復可行性研究報告
- 交通工程基礎習習題及參考答案
- 線路送出工程質量創優項目策劃書
評論
0/150
提交評論