




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第一章1.1在多道程序和分時環境中,多個用戶同時共享一個系統,這種情況導致多種安全問題。a.列出此類的問題b?在一個分時機器中,能否確保像在專用機器上一樣的安全度?并解釋之。Answer:a.竊取或者復制某用戶的程序或數據;沒有合理的預算來使用資源(CPU,內存,磁盤空間,外圍設備)b.應該不行,因為人類設計的任何保護機制都會不可避免的被另外的人所破譯,而且很自信的認為程序本身的實現是正確的是一件困難的事。1.4在下面舉出的三個功能中,哪個功能在下列兩種環境下,(a)手持裝置0)實時系統需要操作系統的支持?(a)批處理程序(b)虛擬存儲器(c)分時Answer:對于實時系統來說,操作系統需要以一種公平的方式支持虛擬存儲器和分時系統。對于手持系統,操作系統需要提供虛擬存儲器,但是不需要提供分時系統。批處理程序在兩種環境中都是非必需的。1.10中斷(interupt)的目的是什么?陷阱(trap)與中斷的區別是什么?陷阱可以被用戶程序(質£「program)有意地的產生嗎?如果可以,那目的是什么?Answer:中斷是一種在系統內硬件產生的流量變化。中斷操作裝置是用來處理中斷請求;然后返回控制中斷的上下文和指令。陷阱是軟件產生的中斷。中斷可以被用來標志I/O的完成,從而排除設備投票站(devicepolling)的需要。陷阱可以被用來調用操作系統的程序或者捕捉到算術錯誤。1.13給出緩存(caches)十分有用的兩個理由。他們解決了什么問題?他們引起了什么問題?如果緩存可以被做成裝備想要緩存的容量(例如,緩存像磁盤那么大),為什么不把它做的那么大,其限制的原因是什么?Answer:當兩個或者更多的部件需要交換數據,以及組成部件以不同的速度完成轉換時,緩存是十分有用的。緩存通過在個組成部件之間提供一個中間速度的緩沖區來解決轉換問題。如果速度較快的設備在緩存中發現它所要的數據,它就不需要再等待速度較慢的設備了。緩存中的數據必須與組成部件中的要一致。如果一個組成部件中的數據值改變了,緩存中的這個數據也必須更新。在多進程系統中,當有不止一個進程可能進入同一個數據時,這就成了一個顯著的問題。一個組成部件將會被一個同等大小的組成部件所消除,但是只有當;(a)緩存和組成部件有相同狀態存儲能力(也就是,當斷電的時候,組成部件還能保存它的數據,緩存也一樣能保存它的數據),(b)緩存是可以負擔的起的,因為速度更快的存儲器意味著更高的價格。第二章2.1操作系統提供的服務和功能可以分為兩個類別。簡單的描述一下這兩個類別并討論他們的不同點。Answer:第一種操作系統提供的服務是用來保護在系統中同時運行的不同進程。進程只被允許獲得與它們地址空間有聯系的內存位置。同樣,進程不允許破壞和其他用戶有關的文件。一個進程同樣不允許在沒有操作系統的干預下直接進入設備。第二種服務由操作系統提供的服務是提供一種新的功能,而這種功能并不直接被底層的硬件支持。虛擬存儲器和文件系統就是由操作系統提供的這種新服務的實例。2.9為什么要把機制和策略區分開來?Answer:機制和策略必須區分開來,來保證系統能夠被很容易的修改。沒有兩個系統的裝置是完全相同的,所以每一個裝置都想要把操作系統改為適合自己的。當機制和政策分開時,政策可以隨意的改變但機制還是不能改變。這種安排提供了一個更靈活的制度2.14操作系統設計員采用虛擬機結構的主要優點是什么?對用戶來說主要有什么好處?Answer:系統是容易被調試的,此外,安全問題也是容易解決的。虛擬機同樣為運作體系提供了一個很好的平臺,因為許多不同的操作系統只可以在一個物理系統中運行。第三章3.2問:描述一下內核在兩個進程間進行上下文功換的動作.Answer:總的來說,操作系統必須保存正在運行的進程的狀態,恢復進程的狀態。保存進程的狀態主要包括CPU寄存器的值以及內存分配,上下文切換還必須執行一些確切體系結構的操作,包括刷新數據和指令緩存。(書中答案)進程關聯是由進程的PCB來表示的,它包括CPU寄存器的值和內存管理信息等。當發生上下文切換時,內核會將舊進程的關聯狀態保存在其PCB中,然后裝入經調度要執行的新進程的已保存的關聯狀態。3.4圖表3.24里顯示的程序,說明A行將會輸出什么?Answer:當控制回到父進程時,它的值會保持在5,而子進程將更新并拷貝這個值。第四章4.3在哪些情況下使用多內核線程的多線程方案比單處理器系統的單個線程方案提供更好的性能。答:當一個內核線程的頁面發生錯誤時,另外的內核線程會用一種有效的方法被轉換成使用交錯時間。另一方面,當頁面發生錯誤時,一個單一線程進程將不能夠發揮有效性能。因此,在一個程序可能有頻繁的頁面錯誤或不得不等待其他系統的事件的情況下,多線程方案會有比單處理器系統更好的性能。4.4以下程序中的哪些組成部分在多線程程序中是被線程共享的?a寄存值b城內存c全局變量d棧內存答:一個線程程序的線程共享堆內存和全局變量,但每個線程都有屬于自己的一組寄存值和棧內存。第五章5.1為什么對調度來說,區分I/0限制的程序和CPU限制的程序是重要的?答:I/0限制的程序有在運行I/O操作前只運行很少數量的計算機操作的性質。這種程序一般來說不會使用很多的CPU。另一方面,CPU限制的程序利用整個的時間片,且不做任何阻礙I/O操作的工作。因此,通過給I/O限制的程序優先權和允許在CPU限制的程序之前運行,可以很好的利用計算機資源。5.2討論以下各對調度標準在某種背景下會有的沖突CPU利用率和響應時間]0.平均周轉時間和最大等待時間c.I/O設備利用率和CPU利用率答:a.CPU利用率和響應時間:當經常性的上下文切換減少到最低時,CPU利用率增加。通過減少使用上下文切換程序來降低經常性的上下文切換。但這樣可能會導致進程響應時間的增加。b平均周轉時間和最大等待時間:通過最先執行最短任務可以使平均周轉時間最短。然而,這種調度策略可能會使長時間運行的任務永遠得不到調度且會增加他們的等待時間。c.I/設備利用率和CPU利用率:CPU利用率的最大化可以通過長時間運行CPU限制的任務和同時不實行上下文切換。I/O設備利用率的最大化可以通過盡可能調度已經準備好的I/O限制的任務。因此,導致上下文切換。5.4考慮下列進程集,進程占用的CPU區間長度以毫秒來計算:假設在時刻0以進程P],P2,P3,P4,P5的順序到達。a.畫出4個Gantt圖分別演示用FCFS、SJF、非搶占優先級(數字小代表優先級高)和RR(時間片=1)算法調度時進程的執行過程。在a里每個進程在每種調度算法下的周轉時間是多少?在a里每個進程在每種調度算法下的等待時間是多少?在a里哪一種調度算法的平均等待時間對所有進程而言最小?答:a.甘特圖略b.周轉時間FCFSRRSJF非搶占優先級P110191916P211211P3137418P4144219P5191496c.等待時間FCFSRRSJF非搶占優先級P10996P210100P3115216P4133118P514942d.SJF5.5下面哪些算法會引起饑餓先來先服務最短工作優先調度輪換法調度優先級調度答:最短工作優先調度和優先級調度算法會引起饑餓5.10解釋下面調度算法對短進程編程度上的區別:FCFSRR多級反饋隊列答:a.FCFS 區別短任務是因為任何在長任務后到達的短任務都將會有很長的等待時間。RR——對所有的任務都是能夠相同的(給它們相同的CPU時間區間),所以,短任務可以很快的離開系統,只要它們可以先完成。多級反饋隊列和RR調度算法相似一一它們不會先選擇短任務。第六章6.4解釋為什么自旋鎖不適合在單處理器系統,而經常在多處理器系統下使用?答:自旋鎖不適合在單處理器系統是因為從自旋鎖中打破一個進程的條件只有在執行一個不同的進程時才能獲得。如果這個進程沒有閑置處理器,其他進程不能夠得到這個機會去設定一個第一個進程進展需要的程序條件。在一個多處理器系統中,其他進程在其他處理器上執行,從而為了讓第一個進程從自旋鎖中釋放修改程序狀態。6.15討論在讀者-作者問題中的公平和吞吐量的權衡問題。提出一種解決讀者-作者問題而不引起饑餓的方法答:在讀者-作者問題中吞吐量是由利益多的讀者增加的,而不是讓一個作家獨占式地獲得共同的價值觀。另一個方面,有利于讀者可能會導致饑餓的作者。在讀者-作者問題中的借能夠通過保持和等待進程有關的時間戳來避免。當作者完成他的任務,那么喚醒那些已經等了最長期限的進程。當讀者到達和注意到另一個讀者正在訪問數據庫,那么它只有在沒有等待的作者時才能進入臨界區域。這些限制保證公平。第七章7.1假設有如圖7.1所示的交通死鎖。?證明這個例子中實際上包括了死鎖的四個必要條件。?給出一個簡單的規則用來在這個系統中避免死鎖。?死鎖的四個必要條件:(1)互斥;(2)占有并等待;(3)非搶占;(4)循環等待。互斥的條件是只有一輛車占據道路上的一個空間位置。占有并等待表示一輛車占據道路上的位置并且等待前進。一輛車不能從道路上當前的位置移動開(就是非搶占)。最后就是循環等待,因為每個車正等待著隨后的汽車向前發展。循環等待的條件也很容易從圖形中觀察到。?一個簡單的避免這種的交通死鎖的規則是,汽車不得進入一個十字路口如果明確地規定,這樣就不會產生相交。7.2考慮如下的死鎖可能發生在哲學家進餐中,哲學家在同個時間獲得筷子。討論此種情況下死鎖的四個必要條件的設置。討論如何在消除其中任一條件來避免死鎖的發生。死鎖是可能的,因為哲學家進餐問題是以以下的方式滿足四個必要條件:1)相斥所需的筷子,2)哲學家守住的筷子在手,而他們等待其他筷子,3)沒有非搶占的筷子,一個筷子分配給一個哲學家不能被強行拿走,4)有可能循環等待。死鎖可避免克服的條件方式如下:1)允許同時分享筷子,2)有哲學家放棄第一雙筷子如果他們無法獲得其他筷子,3)允許筷子被強行拿走如果筷子已經被一位哲學家了占有了很長一段時間4)實施編號筷子,總是獲得較低編號的筷子,之后才能獲得較高的編號的筷子。7.6假設系統中有四個相同類型的資源被三個進程共享。每個進程最多需要兩個資源。證明這個系統不會死鎖。假設該系統陷入死鎖。這意味著,每一個進程持有一個資源,并且正等待另一個資源。因為
有三個進程和四個資源,一個進程就必須獲取兩個資源。這一進程并不需要更多的資源,因此當其完成時會返回其資源。7.7假設一個系統有m個資源被n個進程共享,進程每次只請求和釋放一個資源。證明只要系統符合下面兩個條件,就不會發生死鎖:a?每個進程需要資源的最大值在1到m之間b.所有進程需要資源的最大值的和小于m+nAnswer:使用Section7.6.2的術語,可以有:_ni=1Maxj<m_ni=1Maxj<m+nb.MaxiN1foralliProof:Neeci=MaxiAllocationIfthereexistsadeadlockstatethen:c._ni=1Allocation=mUsea.toget:_Neec^+_Allocation=_Maxi<m+nUsec.toget:_Nee%+m<m+nRewritetoget:_ni=1Neeci<n /符號打不出來,大家自己看答案這意味著存在一個Pi的進程,其Needi=0.如果Maxi>=1,那么Pi進程至少有一個資源可以釋放。從而系統就不會進入死鎖狀態。7.11考慮下面的一個系統在某一時刻的狀態:AllocationMaxAvailableABCDABCDABCDP0001200121520P110001750P213542356P306320652P400140656使用銀行家算法回答下面問題:Need矩陣的內容是怎樣的?系統是否處于安全狀態?c?如果從進程P1發出一個請求(0420),這個請求能否被滿足?Answer:a.Need矩陣的內容是P0(0000)P1(0750)P2(1002)P3(0020)P4(0640)。.系統處于安全狀態,因為Available矩陣等于(1520),進程P0和P3都可以運行,當進程P3運行完時,它釋放它的資源,而允許其它進程運行。可以被滿足,滿足以后,Available矩陣等于(1100),當以次序P0,P2,P3,P1,P4運行時候,可以完成運行。第八章8.5比較在主存組織方案中,連續內存分配,純段式分配和純頁式分配在下面問題中的關系。a?外部碎片b?內部碎片c?通過進程分享代碼的能力Answer:連續內存分配會產生外部碎片,因為地址空間是被連續分配的,當舊進程結束,新進程初始化的時候,洞會擴大。連續內存分配也不允許進程共享代碼,因為一個進程的虛擬內存段是不被允許闖入不連續的段的。純段式分配也會產生外部碎片,因為在物理內存中,一個進程的段是被連續放置的,以及當死進程的段被新進程的段所替代時,碎片也將會產生。然而,段式分配可以使進程共享代碼;比如,兩個不同的進程可以共享一個代碼段,但是有不同的數據段。純頁式分配不會產生外部碎片,但會產生內部碎片。進程可以在頁granularity中被分配,以及如果一頁沒有被完全利用,它就會產生內部碎片并且會產生一個相當的空間浪費。在頁granularity,頁式分配也允許進程共享代碼。8?9考慮一個分頁系統在內存中存儲著一張頁表。a?如果內存的查詢需要200毫秒,那么一個分頁內存的查詢需要多長時間?b.如果我們加上相關聯的寄存器,75%的頁表查詢可以在相關聯的寄存器中找到,那么有效的查詢時間是多少?(假設如果入口存在的話,在相關的寄存器中找到頁表入口不花費時間)Answer:a.400毫秒:200毫秒進入頁表,200毫秒進入內存中的字b.有效進入時間=0.75*200毫秒+0.25*400毫秒=250毫秒第九章9.5假設有一個請求調頁存儲器,頁表放在寄存器中:處理一個頁錯誤,當有空的幀或被置換的頁設有被修改過時要用8ms,當被置換的頁被修改過明用20ms,存儲器訪問時間為100ns。假設被置換的頁中有70%被修改過,有效訪問時間不超過200ns時最大可接受的頁錯誤率是多少?(第六版有翻譯)答:0.2_sec=(1-P)X0.1_sec+(0.2P)X8millisec+(0.初X20millisec0.1=-0.1P+2400P+14000P0.1_16,400PP_0.0000069.10問:假設一個具有下面時間度量利用率的請求調頁系統:CPU利用率20%,分頁磁盤97.7%,其他I/O設備,5%說明下面哪一個(可)能提高CPU的利用率,為什么?A安裝一個更快的CPUB安裝一個更大的分頁磁盤C提高多道程序設計程序D降低多道程序設計程度E安裝更多內存F安裝一個更快的硬盤,或對多個硬盤使用多個控制器G對頁面調度算法添加預取頁H增加頁面大小。答:該系統顯然花費了許多時間進行分頁,顯示過度分配的內存,如果多級程序水平減少駐地進程,將頁面錯誤變少和提高CPU利用率。另一種方式來提高利用率是獲得更多的物理內存或更快的分頁鼓。ABC都不行,D可以可能提高CPU利用率為更多頁面保持駐地,而不需要分頁或磁盤。另一個改進,因為磁盤的瓶頸是刪除更快的響應,和更多的磁盤容量,CPU將會獲得更多的數據傳輸速度CPU將獲得更快的數據傳輸率,所以更多地被使用。如果分頁服從預調(即一些訪問順序)這只是一個方面。增加頁面大小將導致減少頁面錯誤,如果數據進行是隨機的,則分頁可以隨之,因為較少頁面可保存在內存上,更多的數據轉移到頁面錯誤上,這種變化可以減少CPU利用率或者增加CPU利用率。9.14假設一個請求調頁系統具有一個平均訪問和傳輸時間為20ms的分頁磁盤。地址轉換是通過在主存中的頁表來進行的,每次內存訪問時間為1四。這樣,每個通過頁表進行的內存引用都要訪問內存兩次。為了提高性能,加入一個相關內存,當頁表項在相關內存中時,可以減少內存引用的訪問次數。假設80%的訪問發生在相關內存中,而且剩下中的10%(總量的2%)會導致頁錯誤。內存的有效訪問時間是多少?Answer:有效訪問時間=(0.8)x(1psec)+(0.1)x(2psec)+(0.1)x(5002psec)=501.2psec=0.5millisec9.15顛簸的原因是什么?系統怎樣檢測顛簸?一旦系統檢測到顛簸,系統怎樣做來消除這個問題?Answer:分配的頁數少于進程所需的最小頁數時發生顛簸,并迫使它不斷地頁錯誤。該系統可通過對比多道程序的程度來估計CPU利用率的程度,以此來檢測顛簸。降低多道程序的程度可以消除顛簸。第十章10.3一個提供強制鎖,而非使用由用戶決定的咨詢鎖的進程有何優點和缺點?Answer:在許多情況下,單獨的程序可能愿意容忍同時訪問一個文件,而不需要獲得鎖,從而確保文件的相互排斥。其他程序結構也可以確保相互排斥,如內存鎖;或其他同步的形式。在這種情況下,強制鎖將限制訪問文件的靈活性,也可能增加與訪問文件相關的開銷。10.7舉一個應用程序的例子,它能夠受益于操作系統支持的隨機存取,以建立索引的檔案。答:一個應用程序,它維持的一個數據庫的條目可以受益于這種一種支持:舉個列子如果某程序是維護一個學生數據庫,則訪問的數據庫不能被任何預先確定的訪問模式模擬,這種獲得記錄是隨機的,而且該記錄的定位,如果作業系統是提供某種形式的樹為基礎的指數,將會更有效。第~章11.2使用FAT鏈合作區塊的檔案來進行變化相聯系的分配有哪些優勢?答:它的優勢是,在訪問塊是儲存在中間的文件時候,在FAT里跟蹤指針可以決定它的位置,而不是訪問所有個別區塊中的檔案順序的方式找到指針的目標塊。通常情況下,大多數的FAT可緩存在存儲器里,因此,指針可以通過記憶體確定,而不用通過磁盤塊。11.4有些檔案系統允許磁盤存儲將分配在不同級別的粒度。舉例來說,一個文件系統可以分配4KB的磁盤空間作為單一的一個4字節的塊或8個512字節的塊。我們如何能利用這種靈活性來提高性能?對自由空間管理做出哪些修改以支持這一功能?答:此項計劃將減少內部分裂。如果文件是5字節,然后可以分配4踴的區塊和兩個毗連的512字節的塊。除了維持一個位圖的自由塊,一個目前正在使用的區塊內也將保持額外的狀態。當所有的分塊成為空閑時候,該分配器將不得不審查這筆額外分配狀態分塊和凝聚的分塊,以獲取更大的塊。第十二章12.2假設一個錯哦盤驅動器有5000個柱面,從0到4999,驅動器正在為柱面143的一個請求提供服務,且前面的一個服務請求是在柱面125,按FIFO順序,即將到來的請求隊列是86,1470,913,1774,948,1509,1022,1750,130從現在磁頭位置開始,按照下面的磁盤調度算法,要滿足隊列中即將到來的請求要求磁頭總的移動距離(按柱面數計)是多少?FCFSSSTFSCANLOOKC-SCAN【答】a. FCFS的調度是143,86,1470,913,1774,948,1509,1022,1750,130。總尋求距離是7081。b. SSTF的調度是143,130,86,913,948,1022,1470,1509,1750,1774。總尋求距離是1745。c.130SCAN的調度是143,913,,86。總尋求距離是9769。948,1022,1470,1509,1750,1774,4999,d.86。LOOK的調度是143,913,總尋求距離是3319。948,1022,1470,1509,1750,1774,130,e.4999C-SCAN的調度是143,913,948,86,130。總尋求距離是9813,1022。,1470,1509,1750,1774,f.C-LOOK的調度是143,913,948,1022,1470,1509,1750,1774,86,130。總尋求距離是3363。12.8一個RAID1組織讀取請求是否可以比RAID0組織
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高頻開關直流電源柜項目投資可行性研究分析報告(2024-2030版)
- 電子產品制造技術專業教學標準(高等職業教育專科)2025修訂
- 2025年中國DLP光顯屏行業市場調查研究及發展趨勢預測報告
- 采掘知識培訓課件
- 2025年中國柑桔行業市場全景評估及發展戰略規劃報告
- 2024-2030年中國云VR行業發展運行現狀及投資潛力預測報告
- 2025年中國制糖行業發展運行現狀及投資潛力預測報告
- 2025年中國藍寶石長晶爐行業發展趨勢預測及投資戰略咨詢報告
- 2025年 云南省化工儀表操作證理論考試練習題附答案
- 2025年 特種設備作業人員-叉車證理論考試練習題附答案
- 國開電大2023年春季期末考試《機械CAD、CAM》試題及答案(試卷代號1119)
- 審計 第7版 課件 第10章采購與付款循環審計
- (高清版)DZT 0145-2017 土壤地球化學測量規程
- 口腔科醫師職責
- 四年級語文 囊螢夜讀微課-“江南聯賽”一等獎
- 八年級親子共評
- 國際財務報告準則
- 初中數學-專項24 圓內最大張角米勒角問題
- 行政單位酒店住宿合同
- 手術器械的識別和使用方法
- 醫共體信息系統(HIS)需求說明
評論
0/150
提交評論