考研學習筆記 《計算機操作系統(tǒng)》(第4版)筆記和課后習題(含考研真題)詳解-279-417_第1頁
考研學習筆記 《計算機操作系統(tǒng)》(第4版)筆記和課后習題(含考研真題)詳解-279-417_第2頁
考研學習筆記 《計算機操作系統(tǒng)》(第4版)筆記和課后習題(含考研真題)詳解-279-417_第3頁
考研學習筆記 《計算機操作系統(tǒng)》(第4版)筆記和課后習題(含考研真題)詳解-279-417_第4頁
考研學習筆記 《計算機操作系統(tǒng)》(第4版)筆記和課后習題(含考研真題)詳解-279-417_第5頁
已閱讀5頁,還剩260頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

圖8-7空閑盤塊表空閑盤區(qū)的分配與內存的分區(qū)(動態(tài))分配類似,同樣是采用首次適應算法和最佳適應算法(2)空閑鏈表法這種方法的優(yōu)點是用于分配和回收一個盤塊的過程非常簡單.c.缺點這是將磁盤上的所有空閑盤區(qū)(每個盤區(qū)可包含若干個盤塊)拉成一條鏈。在每個盤區(qū)上除含有用于指示下一個空閑盤區(qū)的指針外,還應有能指明本盤區(qū)大小(盤塊數(shù))的信息。c.缺點2.位示圖法(1)位示圖由所有盤塊所對應的位構成一個集合,稱為位示圖。如圖8-8所示。圖8-8位示圖(2)盤塊的分配制位位于位示圖的第i行、第J列,則其相應的盤塊號應按下式計算:③修改位示圖,令map[i,j]=1。(3)盤塊的回收j=(b-1)MODn+1(4)優(yōu)點3.成組鏈接法(1)空閑盤塊的組織用來存放當前可用的一組空閑盤塊的盤塊號(最多含100個號),以及棧中尚有的空閑盤塊(號)數(shù)N。順便指出,N還兼作棧頂指針用。圖8-9左部示出了空圖8-9空閑盤塊的成組鏈接法②文件區(qū)中的所有空閑盤塊被分成若干個組,如圖8-11所示。③將每一組含有的盤塊總數(shù)N和該組所有的盤塊號記入其前一組的第一個盤塊的S.free(0)~S.free(99)中。這樣,由各組的第一個盤塊可鏈成一條鏈。⑤最末一組只有99個可用盤塊,其盤塊號分別記入其前一組的S.free(1)~S.free(99)注意:最后一組的盤塊數(shù)仍為100,但實際可供使用的空閑盤塊數(shù)卻是99,對應的編號應為(1~99),0號中放空閑盤塊鏈的結尾標志,而不再是空閑盤塊號。(2)空閑盤塊的分配與回收a.該過程首先檢查空閑盤塊號棧是否上鎖,如未上鎖,便從棧頂取出一空閑盤塊號,將與b.若該盤塊號已是棧底,調用磁盤讀過程將棧底盤塊號所對應盤塊的內容讀入棧中,作為新的盤塊號棧的內容,并把原棧底對應的盤塊分配出去。然后,再為該盤塊的緩沖區(qū))。c.最后,把棧中的空閑盤塊數(shù)減1并返回。盤塊號棧的頂部,并執(zhí)行空閑盤塊數(shù)加1操作。當棧中空閑盤塊號數(shù)目已達100時,表示棧已滿,便將現(xiàn)有棧中的100個盤塊號記入新回收的盤塊中,再將其盤塊號作為新棧底。三、提高磁盤I/O速度的途徑1.磁盤高速緩存(DiskCache)(1)數(shù)據(jù)交付(DataDelivery)方式如果I/0請求所需要的數(shù)據(jù)能從磁盤高速緩存中獲取,此時就需要將磁盤高速緩存中的數(shù)(2)置換算法由于請求調頁中的聯(lián)想存儲器與高速緩存(磁盤I/0中)的工作情況不同,因而使得在置存中的數(shù)據(jù)將會丟失;而其中有些盤塊(如索引結點盤塊)中的數(shù)據(jù)己被修改,但尚未拷回(3)周期性地寫回磁盤根據(jù)LRU算法,那些經(jīng)常要被訪問的盤塊數(shù)據(jù)可能會一直保留在高速緩存中,長期不會被寫回磁盤。為了解決這一問題,在UNIX系統(tǒng)中專門增設了一個修改(update)程序,使之2.提高磁盤I/O速度的其它方法(1)提前讀(2)延遲寫(3)優(yōu)化物理塊的分布(4)虛擬盤所謂虛擬盤,又稱為RAM盤。該盤的設備驅動程序也可以接受所有標準的磁盤操作,但這②主要問題虛擬盤中的內容完全由用戶控制,而磁盤高速緩存中的內容則是由OS3.廉價磁盤冗余陣列(RAID)RAID系統(tǒng)是利用一臺磁盤陣列控制器來統(tǒng)一管理和控制一組磁盤驅動器,組成一個大型磁(1)并行交叉存取以提高對磁盤的I/O速度。圖8-10示出了磁盤并行交叉存取方式。圖8-10磁盤并行交叉存取方式(2)RAID的分級②優(yōu)點RAID0級的主要優(yōu)點是,它能夠實現(xiàn)高效的傳輸,并能實現(xiàn)高速的I/O請求。③缺點RAIDO級的主要缺點是無冗余校驗功能,致使磁盤系統(tǒng)的可靠性并不是很高。只要陣列中②優(yōu)點RAID1級的主要優(yōu)點是可靠性好,且從故障中恢復很簡單。③缺點RAID1級的主要缺點是磁盤容量的利用率只有50%,它的優(yōu)點是以犧牲磁盤容量為代價的。這是具有并行傳輸功能的磁盤陣列。它只利用一臺奇行讀/寫,且無專門的校驗盤。用來進行糾錯的校驗信息是以螺旋(Spiral)方式散布在所⑤RAID6級和RAID7級在RAID6級的陣列中,設置了一個專用的、可快速訪問的異步校驗盤。該盤具有獨立的數(shù)據(jù)訪問通路,具有比RAID3級及RAID5級更好的性能,但其性能改進得很RAID7級是對RAID6級的改進,在該陣列中的所有磁盤都具有較高的傳輸速率和優(yōu)異的(3)RAID的優(yōu)點除了RAID0級外,其余各級都采用了容錯技術。當陣列中某一磁盤損壞時,并不會造成數(shù)②磁盤I/O速度高由于采取了并行交叉存取方式,可使磁盤I/0速度提高N-1倍。RAID的體積與具有相同容量和速度的大型磁盤系統(tǒng)相比,只是后者的1/3,價格也只是后者的1/3,且可靠性高。換言之,它僅以犧牲1/N的容量為代價,換取了高可靠性。1.第一級容錯技術SFT-I第一級容錯技術(SFT-I)是最基本的一種磁盤容錯技術,主要用于防止因磁盤表面缺陷所(1)雙份目錄和雙份文件分配表可在不同的磁盤上或在磁盤的不同區(qū)域中分別建立(雙份)目錄表和FAT。其中一份為主目錄及主FAT,另一份為備份目錄及備份FAT。一旦由于磁盤表面缺陷而造成主文件目錄或主FAT的損壞時,系統(tǒng)便自動啟用備份文件目錄及備份FAT,從而可以保證磁盤上的數(shù)(2)熱修復重定向和寫后讀校驗2.第二級容錯技術SFT-IⅡ③缺點(1)磁盤鏡像(DiskMirroring)一磁盤控制器下,再增設一個完全相同的磁盤驅動器,如圖8-11所示。圖8-11磁盤鏡像示意圖(2)磁盤雙工(DiskDuplexing)器上,同樣使這兩臺磁盤機鏡像成對,如圖8-12所示,在磁盤雙工時,每一個磁盤都有自圖8-12磁盤雙工示意圖3.基于集群技術的容錯功能(1)雙機熱備份模式如圖8-13所示,在這種模式的系統(tǒng)中,備有兩臺服務器,兩者的處理能力通常是完全相同圖8-13雙機熱備份模式②優(yōu)點從服務器處于被動等待狀態(tài),整個系統(tǒng)的使用效率只有50%。(2)雙機互為備份模式圖8-14雙機互為備份系統(tǒng)的示意圖②優(yōu)點兩臺服務器都可用于處理任務,因而系統(tǒng)效率較高,現(xiàn)在已將這種模式從兩臺機器擴大到4臺、8臺、16臺甚至更多。系統(tǒng)中所有的機器都可用于處理任務,當其中一臺發(fā)生故障時,(3)公用磁盤模式②優(yōu)點4.后備系統(tǒng)(1)配置后備系統(tǒng)的原因(2)后備系統(tǒng)的設備磁盤機的主要優(yōu)點是容量大,一般可達數(shù)GB至數(shù)十GB,且價格便宜,故在許多大、中型c.缺點①原子性②硬盤a.移動磁盤保存方便,而且保存時間也較長,可比磁帶機長出3~5年。但單位容量的費用較高。近年b.固定硬盤驅動器硬盤系統(tǒng)。每個硬盤都被劃分為兩個分區(qū):一個數(shù)據(jù)區(qū),一個備份區(qū),如圖8-15所示。這圖8-15利用大容量硬盤兼做后備系統(tǒng)a.只讀光盤驅動器CD-ROM和DVD-ROM這兩種驅動器主要用于播放音頻和視頻信號。但由于它們都只能播放(讀)不能寫,故難于b.可讀寫光盤驅動器又把它稱為刻錄機。它們既能播放(讀)又能刻錄(寫),故可將它們作為后備設備,存儲第二,COMBO刻錄機,它能播放DVD光盤,但只能刻錄CD、VCD光盤;(1)事務的定義(2)事務的屬性一個事務在對一批數(shù)據(jù)執(zhí)行修改操作時,應該是要么全部完成,并用修改后的數(shù)據(jù)去代替原來的數(shù)據(jù),要么一個也不修改。即事務在完成時,必須使所有的數(shù)據(jù)都保持一致狀態(tài);即對一個事務對數(shù)據(jù)所作的修改,必須與任何其它與之并發(fā)事務相隔離,換言之,一個事務查看數(shù)據(jù)時數(shù)據(jù)所處的狀態(tài),要么是另一并發(fā)事務修改它之前的狀態(tài),要么是另一事務修改它之后的狀態(tài),而不會是任何中間狀態(tài)的數(shù)據(jù);即事務完成之后,它對于系統(tǒng)的影響是永久性的。(3)事務記錄(TransactionRecord)為了實現(xiàn)上述的原子修改,通常須借助于稱為事務記錄的數(shù)據(jù)結構來實現(xiàn)。該記錄中包括有①事務名:用于標識該事務的唯名字;②數(shù)據(jù)項名:它是被修改數(shù)據(jù)項的唯一名字:③舊值:修改前數(shù)據(jù)項的值;④新值:修改后數(shù)據(jù)項將具有的值。在事務記錄表中的每一記錄描述了在事務運行中的重要事務操作,如修改操作、開始事務、托付事務或夭折事務等。利用事務記錄表系統(tǒng)能處理任何故障而不致使故障造成非易失性存儲器中信息的丟失。恢復算法可利用以下兩個過程:①undo<T;>。該過程把所有被事務Ti修改過的數(shù)據(jù)恢復為修改前的值。②redo<Ti>。該過程能把所有被事務Ti修改過的數(shù)據(jù)設置為新值。2.檢查點(1)檢查點(CheckPoints)的作用引入檢查點的主要目的是,使對事務記錄表中事務記錄的清理工作經(jīng)常化,即每隔一定時間便做一次下述工作:①首先是將駐留在易失性存儲器(內存)中的當前事務記錄表中的所有記錄輸出到穩(wěn)定存儲器中;其次是將駐留在易失性存儲器中的所有已修改數(shù)據(jù)輸出到穩(wěn)定存儲器中;②然后是將事務記錄表中的(檢查點)記錄輸出到穩(wěn)定存儲器中;③最后是每當出現(xiàn)一個(檢查點)記錄時,系統(tǒng)便執(zhí)行上小節(jié)所介紹的恢復操作,即利用redo和undo過程實現(xiàn)恢復功能。(2)新的恢復算法在引入檢查點后,可以大大減少恢復處理的開銷。因為在發(fā)生故障后,并不需要對事務記錄表中的所有事務記錄進行處理,而只需對最后一個檢查點之后的事務記錄進行處理。如果把所有在事務Ti以后開始執(zhí)行的事務表示為事務集T則新的恢復操作要求如下①對所有在T中的事務TK,如果在事務記錄表中出現(xiàn)了<Tk托付>記錄,則執(zhí)行redo(Tk)②如果在事務記錄表中并未出現(xiàn),<Tk托付>記錄,則執(zhí)行undo(Tk)操作。3.并發(fā)控制(ConcurrentControl)(1)利用互斥鎖實現(xiàn)“順序性”實現(xiàn)順序性的一種最簡單的方法,是設置一種用于實現(xiàn)互斥的鎖,簡稱為互斥鎖(ExclusiveLock)。在利用互斥鎖實現(xiàn)順序性時,應為每一個共享對象設置一把互斥鎖。當某一事務Ti要去訪問某對象時,應先獲得該對象的互斥鎖。若成功,便用該鎖將該對象鎖住,于是事務Ti便可對該對象執(zhí)行讀或寫操作;而其它事務由于未能獲得該鎖,因而不能訪問該對(2)利用互斥鎖和共享鎖實現(xiàn)順序性為了提高運行效率而又引入了另一種形式的鎖—共享鎖(SharedLock)。a.互斥鎖僅允許一個事務對相應對象執(zhí)行讀或b.共享鎖則允許多個事務對相應對象執(zhí)行讀操作,但不允許其中任何一個事務對對象執(zhí)行4.重復數(shù)據(jù)的數(shù)據(jù)一致性問題(1)重復文件的一致性對于通常的UNIX文件目錄,其每個目錄項中含有一個ASCLL碼的文件名和一個索引結點點號組成,每個索引結點號都是指向各自的索引結點。圖8-16示出了UNIX類型的目錄和圖8-16UNIX類型的目錄a.當一個文件被修改后可查找文件目錄,以得到其它幾個拷貝的索引結點號,再從這些索b.為新修改的文件建立幾個拷貝,并用新拷貝去取代原來的文件拷貝。(2)鏈接數(shù)一致性檢查點中有一個鏈接計數(shù)count,用來指出共享本文件的用戶(進程)數(shù)。在正常情況下這兩個1.目前常用的外存有哪幾種組織方式?答:(1)連續(xù)組織方式(2)鏈接組織方式(3)索引組織方式2.由連續(xù)組織方式所形成的順序文件的主要優(yōu)缺點是什么?它主要應用于何種場合?答:(1)連續(xù)組織方式所形成的順序文件的主要優(yōu)點(2)連續(xù)組織方式所形成的順序文件的主要缺點(3)主要適用場合3.在鏈接式文件中常用哪種鏈接方式?為什么?答:(1)鏈接方式的分類在整個磁盤僅設置一張,表的序號是物理盤塊號,從0開始,直至N-1,N為總塊數(shù)。在每或者說是每一條鏈的鏈首指針所對應的盤塊(2)在鏈接式文件中常用顯式鏈接的原因為了適應磁盤容量不斷增大的需要,在進行盤塊分配時,不再以盤塊而是以簇(Cluste(2)以簇作為基本分配單位的好處表的項數(shù)是與簇的大小成反比),使FAT表占用更少的存儲空間,并減少訪問FAT表的存FAT12表中的表項有限制,亦即最多只允許4096個。這樣,隨著磁盤容量的增加,必定會位數(shù)(寬度)。如果我們將FAT表項位數(shù)增至16位,最大表項數(shù)將增至65536(216)個,此時便能將一個磁盤分區(qū)分為65536(216)個簇。由于FAT16表的長度只有65535項,隨著磁盤容量的增加,簇的大小也必然會隨之增加,為了減少簇內零,也就應當增加FAT表的長度,為此需要再增加FAT表的寬度,這樣也就由FAT16演變?yōu)镕AT32。6.試解釋邏輯簇號和虛擬簇號這兩個名詞,NTF答:(1)邏輯簇號的定義邏輯簇號(LCN)是對卷進行管理的工具,使用邏輯簇號可對卷的第一個簇到最后一個簇進(2)虛擬簇號的定義虛擬簇號(VCN)也是對卷進行管理的工具,使用虛擬簇號可對特定文件的簇從頭到尾進行編號。它不要求物理上是連續(xù)的,要確定VCN的磁盤上的定位需先將其轉換為LCN。NTFS在進行地址映射時,可以通過卷因子與LCN的乘積,算出卷上的物理字節(jié)偏移量,從而得到文件數(shù)據(jù)所在的物理磁盤地址。為了方便文件中數(shù)據(jù)的引用,NVCN,以文件為單位,將屬于某個文件的簇按順序進行編號。只要知道了文件開始的簇地址,便可將VCN映射到LCN。7.在MS-DOS中有兩個文件A和B,A占用11、12、16和14四個盤塊;B占用13、18和20三個盤塊。試畫出在文件A和B中各盤塊間的鏈接情況及FAT的情況。圖8-1文件A、B盤塊間的鏈接情況和FAT情況8.NTFS文件系統(tǒng)中的文件所采用的是什么樣的物理結構?一個簇只屬于一個文件。通過簇來間接管理磁盤,可以不需要知道盤塊(扇區(qū))的大小,使NTFS具有了與磁盤物理扇區(qū)大小無關的獨立性,很容易支持扇區(qū)大小不是512字節(jié)的非標的,其大小同F(xiàn)AT一樣,也是物理磁盤扇區(qū)的整數(shù)倍,即一個簇包含2n(n為整數(shù))個盤目錄信息以及可用的未分配空間信息,都以文件記錄的方式記錄在一張主控文件表9.假定一個文件系統(tǒng)的組織方式與MS.DOS相似,在FAT中可有64K個指針,磁盤的盤塊大小為5128,試問該文件系統(tǒng)能否指引一個512MB的磁盤?答:該文件系統(tǒng)不能指引一個512MB的磁盤。因為該系統(tǒng)中的盤塊個數(shù)為個,而每個盤塊都應有一個指針來指示,所以應該有1M個指針,因為64K<1M,所以若有64K指針則該文件系統(tǒng)不能指引一個512MB的磁盤。10.為了快速訪問,又易于更新,當數(shù)據(jù)為以下形式時,應選用何種文件組織方式?(1)不經(jīng)常更新,經(jīng)常隨機訪問;(2)經(jīng)常更新,經(jīng)常按一定順序訪問;(3)經(jīng)常更新,經(jīng)常隨機訪問。答:(1)順序結構的文件組織形式便于隨機訪問,但更新困難,因此對于不經(jīng)常更新,經(jīng)(2)索引順序結構在順序結構的基礎上增加了索引項,使得數(shù)據(jù)容易更新,并且易于按一(3)索引結構的文件組織形式容易更新且便于隨機訪問,因此經(jīng)常更新,經(jīng)常隨機訪問的11.在UNIX中,如果一個盤塊的大小為1KB,每個盤塊號占4個字節(jié),即每塊可放256商為邏輯塊號,余數(shù)是塊內偏移量。在UNIX的FCB中,第0~9個地址為直接地址,第10個為一次間接地址,第11個地址為二次間接地址,第12個地址為三次間接地址。在將(1)9999/1024=9余783,則邏輯塊號為9,直接索引第9個地址得到物理塊號,塊內偏移地址為783;(2)18000/1024=17余592,則邏輯塊號為10<17<10+256,通過一次間接索引在第10個地址可得到物理塊號,塊內偏移地址為592;(3)420000/1024=410余160,則邏輯塊號為10+256<410,通過二次間接索引在第11個地址中可得到一次間址,再由此得到二次間址,再找到物理塊號,其塊內偏移地址160。12.什么是索引文件?為什么要引入多級索引?答:(1)索引文件的定義相應的表項,用于記錄該記錄的長度L及指向該記錄的指針(指向該記錄在邏輯地址空間的首址),以加快對記錄檢索的速度。(2)引入多級索引的目的13.試說明增量式索引組織方式。答:(1)為了能較全面地照顧到小、中、大及特大型作業(yè),可以采取多種組織方式來構成文件的物理結構。如果盤塊的大小為1KB或4KB,對于小文件(如1KB~10KB或4KB~40KB)而言,最多只會占用10個盤塊,為了能提高對數(shù)量眾多的小型作業(yè)的訪問速度,最好能將它們的每一個盤塊地址都直接放入文件控制塊FCB(或索引結點)中,這樣就可以(2)一般把這種尋址方式又稱為直接尋址。對于中等文件(如11KB~256KB或5KB~4MB),可以采用單級索引組織方式。此時為獲得該文件的盤塊地址,只需先從FCB中找到又采用了單級和多級索引組織方式(間接尋址)。通常又可將這種組織方式稱為混合組織方式。在UNIX系統(tǒng)中所采用的就是這種組織方式。14.有一計算機系統(tǒng)利用圖8-2所示的位示圖來管理空閑盤塊。盤塊的大小為1KB,現(xiàn)要為圖8-2某計算機系統(tǒng)的位示圖(1)順序掃描位示圖,找到第一個值為0的二進制位,得到行號i=3,列號j=3;(2)將找到的二進制位轉換成對應的盤塊號。盤塊號b=(3-1)*16+3=35;(3)修改位示圖,令map[3,3]=1,并將該盤塊分配出去。類似地,可使用相同的方法找到第二個值為0的二進制位,得到行號i=4,列號j=7,其對應的盤塊號為55,令map[i,j]=1,并將該盤塊分配出去。15.某操作系統(tǒng)的磁盤文件空間共有500塊,若用字長為32位的位示圖管理盤空間,試問:(1)位示圖需多少個字?(3)給出申請,歸還一塊的工作流程。答:(1)位示圖需要的字數(shù)為500/32(向上取整)=16個字;(2)第i字第j位對應的塊號為b=(i-1)*32+j;16.對空閑磁盤空間的管理常采用哪幾種分配方式?在UNIX系統(tǒng)中是采用何種分配方式?答:(1)空閑磁盤空間的管理采用的分配方式17.可從哪幾方面來提高對文件的訪問速度?(1)改進文件的目錄結構以及檢索目錄的方法來減少對目錄的查找時間:(2)選取好的文件存儲結構,以提高對文件的訪問速度;(3)提高磁盤的I/O速度,能將文件中的數(shù)據(jù)快速地從磁盤傳送到內存中,或者相反。18.何謂磁盤高速緩存?在設計磁盤高速緩存時需要考慮哪些問題?答:(1)磁盤高速緩存的定義(2)在設計磁盤高速緩存時需要考慮的問題19.可以采取哪幾種方式將磁盤高速緩存中的數(shù)據(jù)傳送給請求者進程?(1)數(shù)據(jù)交付,這是直接將高速緩存中的數(shù)據(jù)傳送到請求者進程的內存工作區(qū)中:(2)指針交付,只將指向高速緩存中某區(qū)域的指針交付給請求者進程。后一種方式由于所20.何謂提前讀和廷遲寫?答:(1)提前讀的定義提前讀是指用戶(進程)對文件進行訪問時,經(jīng)常采用順序訪問方式,即順序地訪問文件各先讀方式,即在讀當前塊的同時,還要求將下一個盤塊(提前讀的塊)中的數(shù)據(jù)也讀入緩沖可直接從緩沖區(qū)中取得下一盤塊的數(shù)據(jù),而不需再去啟動磁盤I/O,從而大大減少了讀數(shù)據(jù)的時間。這也就等效于提高了磁盤I/O的速度。(2)延遲寫的定義可能還會再被本進程或其它進程訪問(共享資源),因而并不立即將該緩沖區(qū)中的數(shù)據(jù)寫入I/O時間。21.試說明廉價磁盤冗余陣列RAID的主要優(yōu)點。答:(1)可靠性高除了RAID0級外,其余各級都采用了容錯技術。當陣列中某一磁盤損壞時,并不會造成數(shù)(2)磁盤I/O速度高由于采取了并行交叉存取方式,可使磁盤I/O速度提高N-I倍。(3)性能,價格比高RAID的體積與具有相同容量和速度的大型磁盤系統(tǒng)相比,只是后者的1/3,價格也只是后者的1/3,且可靠性高。換言之,它僅以犧牲1/N的容量為代價,換取了高可靠性。22.在第一級系統(tǒng)容錯技術中,包括哪些容錯措施?什么是寫后讀校驗?答:(1)第一級容錯技術包含的容錯措施①雙份目錄和雙份文件分配表:在磁盤上存放的文件目錄和文件分配表FAT,是文件管理分別建立(雙份)目錄表和FAT;②優(yōu)點(2)寫后讀校驗的定義23.在第二級系統(tǒng)容錯技術中,包括哪些容錯措施?請畫圖說明之。答:(1)第二件容錯技術包含的容錯措施(2)第二級容錯技術的圖示說明如圖8-3所示。圖8-3磁盤鏡像和磁盤雙工示意圖24.具有容錯功能的集群系統(tǒng)的主要工作模式有哪幾種?請簡要說明之。答:(1)雙機熱備份模式該模式的缺點是從服務器處于被動等待狀態(tài),整個系統(tǒng)的使用效率只有50%。(2)雙機互為備份模式②優(yōu)點兩臺機器擴大到4臺、8臺、16臺甚至更多。系統(tǒng)中所有的機器都可用于處理任務,當其中(3)公用磁盤模式②優(yōu)點25.為什么要在系統(tǒng)中配置后備系統(tǒng)?目前常用做后備系統(tǒng)的設備有哪幾種?答:(1)在系統(tǒng)中配置后備系統(tǒng)的目的(2)常用的后備系統(tǒng)設備26.何謂事務?如何保證事務的原子性?答:(1)事務的定義對分布在不同位置的同一數(shù)據(jù)所進行的讀和寫(含修改)操作全部完成時,才能再以托付操(2)保證事務原子性的方法27.引入撿查點的目的是什么?引入檢查點后又如何進行恢復處理?答:(1)引入檢查點的目的次下述工作:首先是將駐留在易失性存儲器(內存)中的當前事務記錄表中的所有記錄輸出然后是將事務記錄表中的(檢查點)記錄輸出到穩(wěn)定存儲器中;最后是每當出現(xiàn)一個(檢查點)記錄時,系統(tǒng)便執(zhí)行恢復操作,利用redo和undo過程實現(xiàn)恢復功能。(2)引入檢查點后恢復處理的方法的事務Ti。在找到這樣的事務后再返回去搜索事務記錄表,便找到第一個檢查點記錄,恢28.為何引入共享鎖?如何用互斥鎖或共享鎖來實現(xiàn)事務的順序性?答:(1)引入共享鎖的目的(2)用互斥鎖或共享鎖實現(xiàn)事務順序性的方法在為一個對象設置了互斥鎖和共享鎖的情況下,如果事務Ti要對Q執(zhí)行讀操作,則只得對象Q的共享鎖。如果對象Q已被互斥鎖鎖住,則Ti必須等待;否則便獲得共享鎖,對Q執(zhí)行讀操作。如果Ti要對Q執(zhí)行寫操作,則Ti還需獲得Q的互斥鎖。若失敗則等待;否則,可獲得互斥鎖并對Q執(zhí)行寫操作。29.當系統(tǒng)中有重復文件時,如何保證它們的一致性?(1)當一個文件被修改后,可查找文件目錄,以得到其它幾個拷貝的索引結點號,再從這(2)為新修改的文件建立幾個拷貝,并用新拷貝去取代原來的文件拷貝。答:(1)檢查盤塊號一致性的方法表中的表項數(shù)目等于盤塊數(shù)N。③在對盤塊的數(shù)據(jù)結構進行檢查時,應該先將計數(shù)器表中的所有表項初始化為0,然后用N(2)檢查時可能出現(xiàn)的情況②空閑盤塊號計數(shù)器中盤塊K的計數(shù)值為2,則空閑盤塊號重復出現(xiàn),應刪除一個空閑盤塊號K;③空閑盤塊號計數(shù)器中盤塊號K的計數(shù)值為0,而數(shù)據(jù)盤塊號計數(shù)器中盤塊號K的計數(shù)值8.3考研真題與典型題詳解(略)第9章操作系統(tǒng)接口1.字符顯示式聯(lián)機用戶接口(1)命令行方式該方式是以行為單位,輸入和顯示不同的命令。每行長度一般不超過256個字符,一般情況其中Command是命令名,又稱命令動詞,其余為該命令所帶的執(zhí)行參數(shù),有些命令可以沒(2)批命令方式如MS-DOS系統(tǒng)的.BAT文件。2.圖形化聯(lián)機用戶接口(1)圖形用戶接口GUI(GraphicsUserInterface)的引入(2)使用WIMP技術GUI采用了圖形化的操作界面,使用WIMP技菜單(Menu)、鼠標(Pointingdevice)和面向對象技術等集成在一起,引入形象的各種圖在Windows系統(tǒng)中,采用的是事件驅動控制方式,用戶通過動作來產(chǎn)生事件,以驅動程序3.聯(lián)機命令的類型(1)系統(tǒng)訪問類在多用戶系統(tǒng)中,為了保證系統(tǒng)的安全性,都毫無例外地設置注冊命令Login。凡要在多用(2)文件操作命令①顯示文件命令type,用于將指定文件內容顯示在屏幕上。②拷貝文件命令copy,用于實現(xiàn)文件的拷貝。③文件比較命令comp,該命令用于對兩個指定文件進行比較,兩文件可以在同一個或不同④重新命名命令Rename,該命令用于將以第一參數(shù)命名的文件改成用第二參數(shù)給定的⑤刪除文件命令erase,該命令用于刪除一個或一組文件,例如,當參數(shù)路徑名為*.BAK時,表示刪除指定目錄下的所有其擴展名為.Bak的文件。(3)目錄操作命令①建立子目錄命令mkdir,用于建立指定名字的新目錄。②顯示目錄命令dir,顯示指定磁盤中的目錄項。③刪除子目錄命令rmdir,用于刪除指定的子目錄文件,但不能刪除普通文件,而且一次只能刪除一個空目錄(其中僅含“.”和“..”兩個文件),不能刪除根及當前目錄。④顯示目錄結構命令tree,顯示指定盤上的所有目錄路徑及其層次關系。⑤改變當前目錄命令chdir,將當前目錄改變?yōu)橛陕窂矫麉?shù)給定的目錄。用“..”作參數(shù)①輸入輸出重定向命令在有的OS中定義了兩個標準I/O設備。通常,命令的輸入取自標準輸入設備,即鍵盤;其后接文件名或設備名,表示將命令的輸出改向,送到指定文件或設備上。類似地,若在命令中設置輸入重定向“<”符,則不再是從鍵盤而是從重定向符左邊參數(shù)所指定的文件或設備上取得輸入信息。②管道連接這是指把第一條命令的輸出信息作為第二條命令的輸入信息;類似地,又可把第二條命令的輸出信息作為第三條命令的輸入信息。這樣,由兩個(含兩條)以上的命令可形成一條管道。③過濾命令在UNIX及MS-DOS中,都有過濾命令,用于讀取指定文件或標準輸入,從中找出由參數(shù)指定的模式,然后把所有包含該模式的行都打印出來。④批命令為了能連續(xù)地使用多條鍵盤命令,或多次反復地執(zhí)行指定的若干條命令,而又免去每次重敲這些命令的麻煩,可以提供一個特定文件。在MS-DOS中提供了一種特殊文件,其后綴名用“.BAT”;在UNIX系統(tǒng)中稱為命令文件。它們都是利用一些鍵盤命令構成一個程序,一次建立供多次使用。在MS-DOS中用batch命令去執(zhí)行由指定或默認驅動器的工作目錄上指定文件中所包含的一些命令。二、Shell命令語言1.簡單命令簡介(1)簡單命令的格式簡單命令的格式比較自由,包括命令名字符的個數(shù)及用于分隔命令名、選項、各參數(shù)間的空格數(shù)等,都是任意的。一條命令可有多個選項,用于改變命令執(zhí)行動作的類型。命令的格式(2)簡單命令的分類①根據(jù)創(chuàng)建者分類a.系統(tǒng)提供的標準命令包括調用各種語言處理程序、實用程序等,其數(shù)量隨系統(tǒng)版本的不同而有所差異,系統(tǒng)管理員可以增添新的系統(tǒng)標準命令。b.用戶自定義的命令系統(tǒng)管理員和用戶自行定義的命令的執(zhí)行方式與系統(tǒng)標準命令的執(zhí)行方式相同。②根據(jù)命令是否包含在Shell內部分類Shell中少數(shù)標準命令,如改變工作目錄命令cd等,是包含在Shell內部的,作為內部命令常駐內存。b.外部命令Shell中大多數(shù)的命令如拷貝命令cp和移動命令rm等,均保存于外存(盤)上,即每個命令是存在于文件系統(tǒng)中某個目錄下的單獨程序。這樣做的好處在于,可以很大程度地節(jié)省內存空間。(3)Shell的種類在UNIX中,最初使用的Shell就是BourneShell,簡稱為BShell,可以通用于多種UNIXCShell是一種比BShell更適于編程的Shell,是標準BSD(BerkeleySystemDistribution)命令解釋。其語法與c語言很相似,用%作為提示符。隨著UNIX系統(tǒng)標準化的發(fā)展,使用示符兼容,而且還提供比BShell更多的提示符KomShell集合了CShell和BShell的優(yōu)點,并且和BShell完全兼容,它的名字是Ksh。對應地,Linux系統(tǒng)提供了Pdksh,也是對KomShell的擴展,它支持任務控制,可以在命2.簡單命令的類型(1)進入與退出系統(tǒng)②退出系統(tǒng)的使用環(huán)境。如果用戶使用的是多終端中的一個終端,為了退出,用戶只須按鍵即可,系統(tǒng)會重新給出提示符即Login,以表明該終端可供另一新用戶使用。用戶的進入與退出過程是由系統(tǒng)直接調用Login及Logout程序完成的。(2)文件操作命令②復制文件副本的命令cp,其格式為:③對已有文件改名的命令mv,其格式為:⑤確定文件類型的命令file該命令帶有一個參數(shù)表,用于給出想了解其(文件)類型的文件名清單。命令執(zhí)行的結果,(3)目錄操作命令用戶可以自己的注冊名作為根結點,建立一棵子目錄樹。可用③改變工作目錄的命令cdcd命令將使用戶來到由該路徑名確定的結點上:若用當前目錄的子目錄名作參數(shù),將把用(4)系統(tǒng)詢問命令①訪問當前日期和時間命令date例如,使用命令$date②詢問系統(tǒng)當前用戶的命令who③顯示當前目錄路徑名的命令pwd3.重定向與管道命令(1)重定向命令在用戶程序執(zhí)行時,隱含的標準輸入是鍵盤輸入,標準輸出即屏幕(輸出)顯示。但用戶程表示把文件filel的內容打印輸出到表示對標準輸入中的行中字和字符進行計數(shù)。若則表示把從文件file3中讀出的行中的字和字符進(2)管道命令將使命令cat把文件file中的數(shù)據(jù)作為wc命令的計數(shù)輸入。a.單向性b.同步性4.通信命令(1)信箱通信命令mail信箱通信是作為在UNIX的各用戶之間進行非交互式通信的退出mail程序但不改變信箱的內容;一次性顯示信箱全部內容而不帶詢問;把指定文件當(2)對話通信命令write一個用戶同時在幾個終端上注冊,故在用此命(3)允許或拒絕接收消息的mesg命令選項n表示拒絕對方的寫許可(即拒絕接收消息);選項y指示恢復對方的寫許可,僅在此拒絕對方的寫許可。編輯完畢,再用帶有y選項的mesg命令來恢復對方的寫許可,不帶自變量的mesg命令只報告當前狀態(tài)而不改變它。5.后臺命令有些命令需要執(zhí)行很長的時間,UNIX系統(tǒng)提供了一種機制,用戶可以在這種命令被送到Shell進程。用戶可使用ps、wait及Kill命令去了解和控制后臺進程的運行。1.鍵盤終端處理程序(1)字符接收功能碼(簡稱鍵碼),而不是ASCII碼。(2)字符緩沖功能系統(tǒng)為每個終端設置一個緩沖區(qū),暫存用戶鍵入的一批字符。專用緩沖方式如圖9-1(a)所示。a.工作原理如圖9-1(b)所示。系統(tǒng)只設置一個由多個緩沖區(qū)構成的公用緩沖池,其中的每個緩沖區(qū)b.優(yōu)點圖9-1兩種緩沖方式(3)回送顯示回送顯示(回顯)是指每當用戶從鍵盤輸入一個字符后,終端處理程序便將該字符送往屏幕a.硬件實現(xiàn)b.軟件實現(xiàn)(4)屏幕編輯它允許將用戶剛鍵入的字符刪除。在有的系統(tǒng)中是利用退格鍵即Backspace(Ctrl+H)鍵。②刪除一行鍵(5)特殊字符處理容。在有的系統(tǒng)中,是利用Ctrl+S鍵來停止屏幕上有的系統(tǒng)利用Ctrl+Q鍵使停止上卷的屏幕恢復上卷。終端處理程序收到該字符后,便恢復2.MS-DOS解釋程序(1)命令解釋程序的作用(2)命令解釋程序的組成這部分包括一些中斷服務子程序。例如,正常退出中斷INT20,它用于在用戶程序執(zhí)行完它跟隨在常駐內存部分之后,在啟動時獲得控制權。(3)命令解釋程序的工作流程執(zhí)行AUTOEXECBAT文件,之后便把控制權交給暫存部分。④最后把控制權交給該程序去執(zhí)行相應的命令。如圖9-2所示。3.Shell解釋程序②具有不同的分隔符(2)二叉樹結構的命令行樹①命令表型結點例如Command1;Command2:&Command3命令行所構成的命令樹如圖9-3所示:圖9-3命令表型結點及其左、右子樹b.執(zhí)行過程圖9-4管道文件型結點及其左、右子樹進程執(zhí)行,直到子進程運行完畢,又恢復Shell運行。(3)Linux命令解釋程序的工作流程將其他參數(shù)改造為系統(tǒng)調用execve內部處理所要終端進程調用fork,為二叉樹結構命令行中的每一條命令建立相應的子進程。如圖9-5所示。圖9-5Shell基本執(zhí)行過程及父子進程之間的關系1.系統(tǒng)調用的基本概念(1)系統(tǒng)態(tài)和用戶態(tài)戶空間,也能訪問系統(tǒng)空間。特權指令只允許OS使用,不允許應用程序使用。(2)系統(tǒng)調用②狀態(tài)的轉換在采用了搶占式(剝奪)調度方式的系統(tǒng)中,在被調用過程執(zhí)行完后,要對系統(tǒng)中所有要求沒有嵌套及有嵌套的兩種系統(tǒng)調用情況如圖9-6所示。圖9-6系統(tǒng)功能的調用(3)中斷機制口來實現(xiàn)。如MS-DOS提供了INT21H,應用程序通過該中斷獲取操作系統(tǒng)的服務。對于OS來說,中斷機制本身是受保護的,只有授權給應用程序保護等級的中斷號,才是可2.系統(tǒng)調用的類型(1)進程控制類系統(tǒng)調用統(tǒng)調用來了解某進程的屬性,利用設置進程屬性的系統(tǒng)進程在運行過程中,需要等待某事件(條件)出現(xiàn)后方可繼續(xù)執(zhí)行。此時進件)的系統(tǒng)調用,使自己處于等待狀態(tài),一旦等待的事件出現(xiàn),便可將等待進程喚醒。(2)文件操縱類系統(tǒng)調用(3)進程通信類系統(tǒng)調用POSIX定義了標準應用程序接口(API),用于保證編制的應用程序可以在源代碼一級上在POSIX標準定義了一組過程,這組過程是構造系統(tǒng)調用所必須的,通過調用這些過程所提注意:POSIX標準所定義的一組過程雖然指定了系統(tǒng)UNIX/Linux系統(tǒng)程序、庫函數(shù)、系統(tǒng)調用的分層關系如圖9-7所示。圖9-7UNIX/Linux系統(tǒng)程序、庫函數(shù)、系統(tǒng)調用的分層關系1.進程控制(1)進程的創(chuàng)建和終止①創(chuàng)建進程(fork)一個進程可以利用fork系統(tǒng)調用來創(chuàng)建一個新進程。新進程作為調用者的子進程,它繼承②終止進程(exit)②文件的寫exit系統(tǒng)調用。子進程在完成規(guī)定的任務(2)改變進程映像和等待①執(zhí)行一個文件(exec)exec可使調用者進程的進程映像(包括用戶程序和數(shù)據(jù)等)被一個可執(zhí)行的文件覆蓋,此②等待子進程結束(wait)wait用于將調用者進程自身掛起,直至它的某一子進程終止(3)其它進程調用比如,可利用getp-id系統(tǒng)調用來獲得調用進程的標識符,利用getp-grp系統(tǒng)調用來獲得調用進程的進程組ID,以及利用getp-pid系統(tǒng)調用來獲得調用進程的父進程ID等。②獲得用戶ID比如getuid可用于獲得真正的用戶ID,geteuid用于獲得有效用戶ID,getgid用于獲得真正2.文件操縱(1)文件的創(chuàng)建和刪除系統(tǒng)調用creat的功能是根據(jù)用戶提供的文件名和許(2)文件的打開和關閉①打開文件(open)open的功能是把有關的文件屬性從磁盤拷貝到內存中,以及在用戶和指名文件之間建立一條快捷的通路,并給用戶返回一個文件描述符fd。文件被打開后,用戶對文件的任何操作都只需使用fd,而非路徑名。②關閉文件(close)當把一個文件用畢且暫不訪問時,可調用close將此文件關閉。在UNIX系統(tǒng)中,只有在無減1操作后其值為0,表示已無進程再訪問該文件時,才能真正關閉該文件。(3)文件的讀和寫①文件的讀讀文件的系統(tǒng)調用是read,它的功能是試圖從并將它們送至由指針buf所指示的緩沖區(qū)中。寫文件的系統(tǒng)調用是write,它的功能是試圖把nbyte個字節(jié)數(shù)據(jù)從指針buf所指示的緩沖區(qū)中寫到由fd所指向的文件中。僅當用戶利用open打開指定文件后,方可調用read或write對文件執(zhí)行讀或寫操作。兩個系統(tǒng)調用都要求用戶提供三個輸入?yún)?shù):a.文件描述符fd;b.buf緩沖區(qū)首址。對讀要求傳送的字節(jié)數(shù)nbyte。(4)建立與文件的連接和去連接①連接(link)在該文件的索引結點中設置了一個連接計數(shù)i.link。每當有一用戶要共享某文件時,須利用系統(tǒng)調用link來建立該用戶(進程)與此文件之間的連接,并對i.link做加1操作。當i.link減1后結果為0時,表示已無用戶需要此文件,此時才能將該文件從文件系統(tǒng)中刪3.進程通信和信息保護(1)進程通信用戶(進程)在利用消息機制進行通信時,必須先利用msgget系統(tǒng)調用來建立一個消息隊列。若成功,便返回消息隊列描述符msgid,以后用戶便可利用msgid去訪問該消息隊列。用戶(進程)可利用發(fā)送消息的系統(tǒng)調用msgsend向用戶指定的消息隊列發(fā)送消息;利用msgrcv系統(tǒng)調用從指定的消息隊列中接收指定類型的消息。當用戶(進程)要利用共享存儲器機制進行通信時,必須先利用shmget系統(tǒng)調用來建立一個共享存儲區(qū),若成功,便返回該共享存儲區(qū)描述符shmid。以后,用戶便可利用shmid去再需要該共享存儲區(qū)時,可利用shmdt系統(tǒng)調用來拆除進程與共享存儲區(qū)間的連接。(2)信息維護超級用戶可利用設置時間的系統(tǒng)調用(stime)來設置系統(tǒng)的日期和時間;一般用戶可利用②獲得進程和子進程時間(times)利用該系統(tǒng)調用可獲得進程及其子進程所使用的CPU時③設置文件訪問和修改時間(utime)如果該系統(tǒng)調用的參數(shù)times為NULL,則文件主和對該文件具有寫權限的用戶可將對該文結構的指針,此時,文件主和超級用戶能將訪問時間和修④獲得當前UNIX系統(tǒng)的名稱(uname)利用該系統(tǒng)調用可將有關UNIX系統(tǒng)的信息存儲在utsname結構中。這些信息包括UNIX系1.系統(tǒng)調用的實現(xiàn)方法(1)系統(tǒng)調用號和參數(shù)的設置賦予每條系統(tǒng)調用一個唯一的系統(tǒng)調用號。在系統(tǒng)調用命令(陷入指令)中把相應的系統(tǒng)調命令(陷入指令)中,在另一些系統(tǒng)中,則將系統(tǒng)調用號裝入某指定寄存器或內存單元中。a.陷入指令自帶方式b.直接將參數(shù)送入相應的寄存器中c.參數(shù)表方式的參數(shù)值和參數(shù)的個數(shù)N都放入一張參數(shù)表中;而在間接參數(shù)方式中,則在參數(shù)表中僅存圖9-8系統(tǒng)調用的參數(shù)形式(2)系統(tǒng)調用的處理步驟即首先保護被中斷進程的CPU環(huán)境,將處理機狀態(tài)字PSW、程序計數(shù)器PC、系統(tǒng)調用號、③在系統(tǒng)調用處理子程序執(zhí)行完后,應恢復被中斷的或設置新進程的CPU現(xiàn)場,然后返回(3)系統(tǒng)調用處理子程序的處理過程進入Creat的處理子程序后,核心將根據(jù)用戶給定的文查找指定文件的目錄項。查找目錄的方式可以用順序查找法,也可用Hash查找法。如果在如果在該已有(存)文件的屬性中有不允許寫屬性,或者創(chuàng)建者不具有對該文件進行修改的2.UNIX系統(tǒng)調用的實現(xiàn)(1)CPU環(huán)境保護當用戶程序處在用戶態(tài),且在執(zhí)行系統(tǒng)調用命令(即CHMK命令)之前,應在用戶空間提供系統(tǒng)調用所需的參數(shù)表,并將該參數(shù)表的地址送入R0寄存器。在執(zhí)行CHMK命令后,和代碼操作數(shù)(code)壓入用戶核心棧,繼而從中斷和陷入向量表中取出trap.S的入口地址,然后便轉入中斷和陷入總控程序trap.S中執(zhí)行。為了實現(xiàn)系統(tǒng)調用的嵌套使用,在系統(tǒng)中還設置了兩個指針,AP,用于指示正在執(zhí)行的系統(tǒng)調用所需參數(shù)表的地址;其二是調用棧幀指針FP,用于指示本次系統(tǒng)調用所保存的數(shù)據(jù)項。每當出現(xiàn)新的系統(tǒng)調用時,還須將AP和FP壓入棧中,圖圖9-9用戶核心棧(3)確定系統(tǒng)調用號系統(tǒng)調用號包含在代碼操作數(shù)中,故可利用code來確定系統(tǒng)調用號i。其方法是:令i=code&0377若0<i<64,此i便是系統(tǒng)調用號,可根據(jù)系統(tǒng)調用號i和系統(tǒng)調用定義表,轉向相應的處理子程序。若i=0,則表示系統(tǒng)調用號并未包含在代碼操作數(shù)中,此時應采用間接參數(shù)方式,利用間接參數(shù)指針來找到系統(tǒng)調用號。(4)參數(shù)傳送參數(shù)傳送是指由trap.C程序將系統(tǒng)調用參數(shù)表中的內容從用戶區(qū)傳送到User結構的U.U-arg中,供系統(tǒng)調用處理程序使用。(5)利用系統(tǒng)調用定義表轉入相應的處理程序在UNIX系統(tǒng)中,對于不同(編號)的系統(tǒng)調用,都設置了與之相應的處理子程序。為使不同的系統(tǒng)調用能方便地轉入其相應的處理子程序,也將各處理子程序的入口地址放入了系統(tǒng)調用定義表即Sysent[]中。在系統(tǒng)中設置了該表之后,便可根據(jù)系統(tǒng)調用號i從系統(tǒng)調用定義表中找出相應的表目,再按照表目中的入口地址轉入相應的處理子程序,由該程序去完成相應系統(tǒng)調用的特定功能。在該子程序執(zhí)行完后,仍返回到中斷和陷入總控程序中的trap.C程序中,去完成返回到斷點前的公共處理部分。(6)系統(tǒng)調用返回前的公共處理在UNIX系統(tǒng)中,進程調度的主要依據(jù)是進程的動態(tài)優(yōu)先級。隨著進程執(zhí)行時間的加長,其優(yōu)先級將逐步降低。每當執(zhí)行了系統(tǒng)調用命令并由系統(tǒng)調用處理子程序返回到trap.C后,都將重新計算該進程的優(yōu)先級;另外,在系統(tǒng)調用執(zhí)行過程中,若發(fā)生了錯誤使進程無法繼續(xù)運行時,系統(tǒng)會設置再調度標志。處理子程序在計算了進程的優(yōu)先級后,又去檢查該再調度標志是否己又被設置。若已設置,便調用switch調度程序,再去從所有的就緒進程中選擇優(yōu)先級最高的進程,把處理機讓給該進程去運行。3.Linux系統(tǒng)調用(1)系統(tǒng)調用組成Linux最多可以有190個系統(tǒng)調用。應用程序和Shell需要通過系統(tǒng)調用機制訪問Linux內核(功能)。每個系統(tǒng)調用由兩部分組成:①內核函數(shù)是實現(xiàn)系統(tǒng)調用功能的(內核)代碼,作為操作系統(tǒng)的核心駐留在內存中,是一種共享代碼,用C語言書寫。它運行在內核態(tài),數(shù)據(jù)也存放在內核空間,通常它不能再使用系統(tǒng)調用,也不能使用應用程序可用的庫函數(shù)。②接口函數(shù)是提供給應用程序的API,以庫函數(shù)形式存在Linux的lib.a中,該庫中存放了所有系統(tǒng)調用的接口函數(shù)的目標代碼,用匯編語言書寫。其主要功能是:把系統(tǒng)調用號、入口參數(shù)地址傳送給相應的核心函數(shù),并使用戶態(tài)下運行的應用程序陷入核心態(tài)。(2)工作流程①取系統(tǒng)調用號,檢驗合法性;③進行地址空間的轉換,以及堆棧的切換,進入內核態(tài);④進行中斷處理,根據(jù)系統(tǒng)調用號定位內核函數(shù)地址;⑤根據(jù)通用寄存器內容,從用戶棧中取入口參數(shù);⑥核心函數(shù)執(zhí)行,把結果返回應用程序。4.Win32的應用程序接口在Windows系統(tǒng)中,定義了一系列的程序,稱為Win32API(ApplicationProgramminginterface),用來提供操作系統(tǒng)的服務。通過對Win32API的調用,可以創(chuàng)建各種核心對象,如文件、進程、線程、管道等。每次1.操作系統(tǒng)用戶接口中包括哪幾種接口?它們分別適用于哪種情況?(1)聯(lián)機用戶接口:終端用戶利用該接口可以調用操作系統(tǒng)的功能,獲得操作系統(tǒng)提供的(2)脫機用戶接口:該接口是專為批處理作業(yè)的用戶提供的,也稱批處理用戶接口。操作系統(tǒng)提供了一個作業(yè)控制語言JCL(JobControlLanguage),用戶使用JCL語言預先寫好作2.什么是WIMP技術?它被應用到何種場合?GUI采用了圖形化的操作界面,使用WIMP技術。在有了GUI后,在桌面上顯示了許多常3.聯(lián)機命令通常有哪幾種類型?每種類型中包括哪些主要命令?(1)系統(tǒng)訪問類。包括注冊名命令Login、口令命令Password;(2)磁盤操作類。包括磁盤格式化命令Format、復制整個軟盤命令Diskcopy、軟盤比較命令Diskcomp及備份命令Backup;(3)文件操作類。包括顯示文件命令type、拷貝文件命令copy、文件比較命令comp、重新命名命令Rename、刪除文件命令erase;(4)目錄操作類。包括建立子目錄命令mkdir、顯示目錄命令dir、刪除子目錄命令rmdir、顯示目錄結構命令tree、改變當前目錄命令chdir;(5)其它命令。包括輸入輸出重定向命令、管道連接命令、過濾命令、批命令。4.什么是輸入輸出重定向?舉例說明之。定向,用重定向符<和>分別表示輸入轉向和輸出轉向。通常,命令的輸入取自標準輸入設如果使用輸入重定向<,則不從鍵盤而是從重定向符右邊的指定文件或設備上取得輸入信息。5.何謂管道聯(lián)接?舉例說明之。commandl|command2|….|commandn,表示把command1的輸出作為command2的輸入,6.為了將已存文件改名,應用什么UNIX命令?7.要想將工作目錄移到目錄樹的某指定結點上,應使用什么命令?8.如果希望把file1的內容附加到原有的文件file2的末尾,應用什么命令?9.試比較mail和write命令的作用有何不同。答:mail命令被作為在UNIX的各用戶之間進行非交互式通信的工具。mail采用信箱通信用各自的注冊名命名,即它是目錄/usr/spool/mail中的一個文件,而文件名又是用接收注冊名來命名的。信箱中的信件可以一直保留到被信箱所有者消除為止。因而,用mail進一個用戶同時在幾個終端上注冊,故在用此命writeusername[termina10.聯(lián)機命令接口由哪幾部分組成?答:(1)鍵盤終端處理程序(2)MS-DOS解釋程序(3)Shell解釋程序在UNIX或Linux系統(tǒng)中,Shell是作為操作系統(tǒng)的最外層(也稱為外殼),是用戶及應用11.終端設備處理程序的主要作用是什么?它具有哪些功能?(1)接收用戶從終端上鍵入的字符;(2)字符緩沖,用于暫存所接收的字符;(3)回送顯示;(4)屏幕編輯;(5)特殊字符處理。12.命令解釋程序的主要功能是什么?13.試說明MS-DOS的命令處理程序COMMAND.COM的工作流程。則暫存部分還須為之建立命令行,再通過執(zhí)行系統(tǒng)圖9-10COMMAND.COM的工作流程答:(1)一條命令行中含有多個命令。如果在一條命令行中僅有一個命令,那么命令解釋程序便可以利用簡單的命令表找到該命令的命令處理程序。然而在Shell的一條命令行中,釋后,應產(chǎn)生多個命令處理程序(進程)。(2)具有不同的分隔符。在一條命令行中的每個命令之間都采取不同的分隔符。在后臺執(zhí)行;如利用"I"分隔符時,要求把前一條命令的輸出作為后一條命令的輸入。換言15.試舉例說明如何建立二又樹結構的命令行樹。答:(1)命令表型結點如下面的命令行所構成的命令樹如圖9-11所示:圖9-11命令表型結點及其左、右子樹(2)管道文件型結點圖9-12所示:圖9-12管道文件型結點及其左、右子樹(3)簡單命令型結點部命令也非特殊命令,Shell將認為該命令是一個可執(zhí)行文件,于是將為它創(chuàng)建一個新進程,并作為Shell的子進程執(zhí)行,直到子進程運行完畢,又恢復Shell運行。16.試比較一般的過程調用與系統(tǒng)調用。答:系統(tǒng)調用在本質上是應用程序請求OS內核完成某功能時的一種過程調用,但它是一種特殊的過程調用,它與一般的過程調用有下述幾方面的明顯差別:(1)運行在不同的系統(tǒng)狀態(tài)。一般的過程調用,其調用程序和被調用程序都運行在相同的狀態(tài)-系統(tǒng)態(tài)或用戶態(tài);而系統(tǒng)調用與一般調用的最大區(qū)別就在于:調用程序是運行在用戶態(tài),而被調用程序是運行在系統(tǒng)態(tài);(2)狀態(tài)的轉換通過軟中斷進入。由于一般的過程調用并不涉及到系統(tǒng)狀態(tài)的轉換,可直接由調用過程轉向被調用過程。但在運行系統(tǒng)調用時,由于調用和被調用過程是工作在不同的系統(tǒng)狀態(tài),因而不允許由調用過程直接轉向被調用過程。通常都是通過軟中斷機制,先由用戶態(tài)轉換為系統(tǒng)態(tài),經(jīng)核心分析后,才能轉向相應的系統(tǒng)調用處理子程序;(3)返回問題。在采用了搶占式(剝奪)調度方式的系統(tǒng)中,在被調用過程執(zhí)行完后,要對系統(tǒng)中所有要求運行的進程做優(yōu)先權分析。當調用進程仍具有最高優(yōu)先級時,才返回到調用進程繼續(xù)執(zhí)行;否則,將調用進程掛起,以便讓優(yōu)先權最高的進程優(yōu)先執(zhí)行。此時,將把調用進程放入就緒隊列;(4)嵌套調用。像一般過程一樣,系統(tǒng)調用也可以嵌套進行,即在一個被調用過程的執(zhí)行期間,還可以利用系統(tǒng)調用命令去調用另一個系統(tǒng)調用。當然,每個系統(tǒng)調用對嵌套調用的深度都有一定的限制,例如最大深度為6。但一般的過程調用對嵌套的深度則沒有什么限制。17.系統(tǒng)調用有哪幾種類型?答:對于一般通用的OS而言,可將其所提供的系統(tǒng)調用分為:進程控制、文件操縱、通信管理、信息維護和設備管理等幾大類:(1)進程控制類系統(tǒng)調用主要用于對進程的控制,如創(chuàng)建一個新的進程和終止一個進程的運行,獲得和設置進程屬性等;(2)文件操縱類系統(tǒng)調用有創(chuàng)建文件、打開文件、關閉文件、讀/寫文件、建立目錄、移動文件的讀/寫指針、改變文件的屬性等;(3)進程通信類系統(tǒng)調用主要用于實現(xiàn)通信機制如消息傳遞、共享存儲區(qū)及信息量集機制(4)信息維護類系統(tǒng)調用主要用于獲得有關系統(tǒng)和文件的時間、日期信息、操作系統(tǒng)版本、當前用戶以及有關空閑內存和磁盤空間大小等多方面的信息;(5)設備管理類系統(tǒng)調用主要用于實現(xiàn)申請設備、釋放設備、設備I/O和重定向、獲得和設置設備屬性、邏輯上連接和釋放設備等功能。18.如何設置系統(tǒng)調用所需的參數(shù)?答:每一條系統(tǒng)調用都含有若干個參數(shù),在執(zhí)行系統(tǒng)調用時,將這些參數(shù)傳遞給陷入處理機構和系統(tǒng)內部的子程序(過程),常用的實現(xiàn)方式有以下幾種:(1)陷入指令自帶方式。陷入指令除了攜帶一個系統(tǒng)調用號外,還要自帶幾個參數(shù)進入系統(tǒng)內部,由于一條陷入指令的長度是有限的,因此自帶的只能是少量的、有限的參數(shù);(2)直接將參數(shù)送入相應的寄存器中。MS-DOS便是采用的這種方式,即用MOV指令將各個參數(shù)送入相應的寄存器中。系統(tǒng)程序和應用程序顯然都可以訪問這種寄存器。這種方式的主要問題是由于這種寄存器數(shù)量有限,因而限制了所設置參數(shù)的數(shù)目;(3)參數(shù)表方式。將系統(tǒng)調用所需的參數(shù)放入一張參數(shù)表中,再將指向該參數(shù)表的指針放在某個指定的寄存器中。19.試說明系統(tǒng)調用的處理步驟。答:系統(tǒng)調用的處理步驟:(1)在設置了系統(tǒng)調用號和參數(shù)后,便可執(zhí)行一條系統(tǒng)調用命令。不同的系統(tǒng)可采用不同的執(zhí)行方式。在UNIX系統(tǒng)中,是執(zhí)行CHMK命令,而在MS-DOS中則是執(zhí)行INT21軟(2)系統(tǒng)調用的處理過程可分成以下三步:首先將處理機狀態(tài)由用戶態(tài)轉為系統(tǒng)態(tài),之后由硬件和內核程序進行系統(tǒng)調用的一般性處理,即首先保護被中斷進程的CPU環(huán)境,將處理機狀態(tài)字PSW、程序計數(shù)器PC、系統(tǒng)調用號、用戶棧指針以及通用寄存器內容等,壓入(3)分析系統(tǒng)調用類型,轉入相應的系統(tǒng)調用處理子程序;(4)在系統(tǒng)調用處理子程序執(zhí)行完后,應恢復被中斷的或設置新進程的CPU現(xiàn)場,然后返20.為什么在訪問文件之前,要用Open系統(tǒng)調用先打開該文件?戶返回一個文件描述符fd。文件被打開后,用戶對文件的任何操作都只須使用fd而非路徑21.在UNIX系統(tǒng)中是否設置了專門用來刪除文件的系統(tǒng)調用?為什么?與此文件之間的連接,并對i.link做加1操作。當用戶不再使用此文件時,應利用系統(tǒng)調用unlink去斷開此連接,同時對i.link做減1操作。當i.link減1后結果為0,表示已無用戶需22.在IPC軟件包中包含哪幾種通信機制?在每種通信機制中設置了哪些系統(tǒng)調用?(1)消息機制。用戶(進程)在利用消息機制進行通信時,必須先利用msgget系統(tǒng)調用來建立一個消息隊列。若成功,便返回消息隊列描述符msgid,以后用戶便可利用msgid去訪問該消息隊列。用戶(進程)可利用發(fā)送消息的系統(tǒng)調用msgsend向用戶指定的消息隊列發(fā)送消息;利用msgrcv系統(tǒng)調用從指定的消息隊列中接收指定系統(tǒng)調用來建立一個共享存儲區(qū),若成功,便返回該共享存儲區(qū)便可利用shmid去訪問該共享存儲區(qū)。進程在建立了共享存儲區(qū)之后,還必須再利用shrnat(3)信號量機制。在UNIX系統(tǒng)中所采用的信號量機制,與一般信號量機制相似,允許將23.trap.S是什么程序?它完成哪些主要功能?24.在UNIX系統(tǒng)內,被保護的CPU環(huán)境中包含哪些數(shù)據(jù)項?答:當用戶程序處在用戶態(tài),且在執(zhí)行系統(tǒng)調用命令即CHMK命令之前,應在用戶空間提供系統(tǒng)調用所需的參數(shù)表,并將參數(shù)表的地址送入RO寄存器。執(zhí)行CHMK命令后,處理機將由用戶態(tài)轉為系統(tǒng)態(tài),并由硬件自動地將處理機狀態(tài)長字(PSL)、程序計數(shù)器(PC)和trap.S程序執(zhí)行后,繼續(xù)將陷入類型type和用戶棧指針usp壓入用戶核心棧,接著還中斷進程的CPU環(huán)境中的一系列寄存器如R0~R11的部分或全部壓入棧中,這取決于特定寄存器中的屏蔽碼,該屏蔽碼的每一位都與R0~R11中的一個寄存器相為1時,表示對應寄存器的內容壓入棧中。25.trap.C是什么程序?它將完成哪些處理?答:trap.C程序是一個處理各種陷入情況的C語言文件,共有12種陷入的處理要調用trap.C程序(如因系統(tǒng)調用、進程調度中斷、跟蹤自陷非法指令、訪問違章、算術自陷等)。用于26.為方便轉入系統(tǒng)調用處理程序,在UNIX系統(tǒng)中配置了什么樣的數(shù)據(jù)結構?相應系統(tǒng)調用所需參數(shù)的個數(shù);(2)系統(tǒng)調用經(jīng)寄存器傳送的參數(shù)個數(shù);(3)相應系統(tǒng)調用處理子程序的入口地址。在系統(tǒng)中設置了該表之后,便可根據(jù)系統(tǒng)調用號1.下列選項中,不可能在用戶態(tài)發(fā)生的事件是()。[2012年統(tǒng)考]A.系統(tǒng)調用B.外部中斷C.進程切換D.缺頁【答案】C查看答案【解析】判斷能否在用戶態(tài)執(zhí)行的關鍵在于事件是否會執(zhí)行特權指令。首先看A項,系統(tǒng)調用是系統(tǒng)提供給用戶程序調用內核函數(shù)的,當用戶程序執(zhí)行系統(tǒng)調用時,會使CPU狀態(tài)從用戶態(tài)切換至系統(tǒng)態(tài)并執(zhí)行內核函數(shù),執(zhí)行結束之后將控制權還給用戶程序,并且CPU狀態(tài)從系統(tǒng)態(tài)切換至用戶態(tài)。從這個過程可以看出,雖然系統(tǒng)調用的執(zhí)B項為外部中斷,很多考生會被中斷二字影響,認為涉及中斷的都應該是系統(tǒng)態(tài)的事情,而不能在用戶態(tài)執(zhí)行,因此選錯。中斷在系統(tǒng)中經(jīng)常發(fā)生,如鍵中斷是指由外部事件引起的中斷,比如鼠標單擊和鍵盤輸入等操作引起的中斷);進程缺頁輸入舉例,一個用戶進程需要用戶輸入一串命令,當用戶用鍵盤輸入時完成對應功能,然后返回至用戶態(tài)。系統(tǒng)調用和中斷的看D項,缺頁與B項類似,用戶態(tài)執(zhí)行進程缺頁時會產(chǎn)生缺頁中斷(中斷發(fā)生在用戶態(tài)),此D項也可以發(fā)生在用戶態(tài)。根據(jù)排除法知道答案是C項,進程切換實際上是對于程序狀態(tài)的修改,因此要修改程序狀2.中斷處理和子程序調用都需要壓棧以保護現(xiàn)場。中斷處理一定會保存而子程序調用不需要保存其內容的是()。[2012年統(tǒng)考]A.程序計數(shù)器B.程序狀態(tài)字寄存器C.通用數(shù)據(jù)寄存器D.通用地址寄存器【答案】B查看答案斷處理程序,處理完之后要返回到發(fā)生中斷時的指令處繼續(xù)執(zhí)行,由于能會切換狀態(tài)(如果在系統(tǒng)態(tài)發(fā)生中斷則始終為系統(tǒng)理時一定要將PSW壓棧保存。需要保護和恢復。因此,子程序調用主要保存局部參數(shù)信息等,不需要將PSW壓棧。中斷處理和子程序調用對其他3個選項的操作都是相同的。3.下列選項中,在用戶態(tài)執(zhí)行的是()。[2011年統(tǒng)考]A.命令解釋程序B.缺頁處理程序C.進程調度程序D.時鐘中斷處理程序【答案】A查看答案【解析】CPU狀態(tài)分為管態(tài)和目態(tài),管態(tài)又稱為特權狀態(tài)、系統(tǒng)態(tài)或核心態(tài)。通常,操作CPU將指令分為特權指令和非特權指令,對于那些危險的指令,只允許操作系統(tǒng)及其相關是操作系統(tǒng)提供給用戶所使用的接口,因此可以用在用戶態(tài)執(zhí)行。因此選A項。4.本地用戶通過鍵盤登錄系統(tǒng),首先獲得鍵盤輸入信息的程序是()。[2010年統(tǒng)考]A.命令解釋程序B.中斷處理程序C.系統(tǒng)調用服務程序D.用戶登錄程序【答案】B查看答案5.下列選項中,操作系統(tǒng)提供給應用程序的接口是()。[2010年統(tǒng)考]A.系統(tǒng)調用B.中斷C.庫函數(shù)【答案】A查看答案【解析】操作系統(tǒng)提供兩類接口,一類是命令接口(圖形接口是命系統(tǒng)調用(SystemCall)作為呈現(xiàn)給用戶的接口,包含了內核提供的一系列具備預定功6.在UNIX系統(tǒng)中,請求調用是采用下列算法中的()算法。【答案】C查看答案【解析】最近最久未使用算法(LRU)。該算法選擇在最近一段時間內最久沒有使用過的頁第10章多處理機操作系統(tǒng)10.1復習筆記1.多處理機系統(tǒng)的引入(1)CPU的時鐘頻率問題時鐘頻率來提高計算機運算速度(系統(tǒng)性能)的方法,已經(jīng)接近了極限。(2)增加系統(tǒng)吞吐量(3)節(jié)省投資(4)提高系統(tǒng)可靠性在MPS中,通常都具有系統(tǒng)重構的功能,即當其中任何一個處理機發(fā)生故障時,系統(tǒng)可以2.多處理機系統(tǒng)的類型(1)緊密耦合MPS和松散耦合MPS①緊密耦合(TightlyCoupled)MPSa.多處理器共享主存儲器系統(tǒng)和I/O設備,每臺處理器都可以對整個存儲器進行訪問,訪問時間一般需要10~50ns;b.將多處理器與多個存儲器分別相連,或將主存儲器劃分為若干個能被獨立訪問的存儲器②松散耦合(LooselyCoupled)MPS在松散耦合MPS中,通常是通過通道或通信線路來實現(xiàn)多臺計算機之間的互連。每臺計算機都有自己的存儲器和I/0設備,并配置了OS來管理本地資源和在本地運行的進程。因(2)對稱多處理器系統(tǒng)和非對稱多處理器系統(tǒng)①對稱多處理器系統(tǒng)SMPS(SymmetricMul在系統(tǒng)中所包含的各處理器單元,在功能和結構上都是相同的,當前的絕大多于SMP系統(tǒng)。例如,IBM公司的SR/6000ModelF50,便是利用4片PowerPC處理器構②非對稱多處理器系統(tǒng)ASMPS(AsymmetricMultiprocessorSystem)1.UMA多處理機系統(tǒng)的結構(1)基于單總線的SMP結構如圖10-1(a)所示,在這種結構的系統(tǒng)中,把多個處理器與一個集中的存儲器相連,所有顯然這種結構的缺點在于可伸縮性有限。系統(tǒng)中所有CPU對存儲器的訪問,都需要通過總線進行。可以通過為每個CPU配置一個高速緩存的方法解決此問題。如圖10-1(b)所示,這些高速緩存可以可以很大程度地減少該CPU對總線的訪問頻率,極大地減少總線上的數(shù)據(jù)流量,以支持更多的CPU。圖10-1基于總線的SMP結構(2)使用多層總線的SMP結構 (c)所示。各CPU與本地的私有存儲器、I/O設備通過本地總線連接,系統(tǒng)再使用系統(tǒng)(3)使用單級交叉開關的系統(tǒng)結構示,將系統(tǒng)中所有的CPU與存儲器結點,通過交叉開關陣列相互連接。每個交叉開關均為其中兩個結點(CPU與存儲器模塊)之間提供一條專用連接通路,從而避免了在多個CPU圖10-2使用交叉開關的LIMA多處理機系統(tǒng)交叉開關一般是構成一個N×N的陣列,但在每一行和每一列中,都同時只能有一個交叉點開關處于“開”(即閉合)狀態(tài),從而它同時只能接通N對結點。每個存儲器模塊同時只允許一個CPU結點訪問,故每一列只能接通一個交叉點開關,但是③交叉開關的成本為N2,N為端口數(shù),限制了它在大規(guī)模系統(tǒng)中的應用,如1000個CPU與1000個存儲器模塊連接,就需要1百萬個交叉點,這在現(xiàn)實中是不可行的。一般只適合于8~16個處理器的中等規(guī)模系統(tǒng)。(4)使用多級交換網(wǎng)絡的系統(tǒng)結構圖10-3(a)是一個最簡單的2×2交叉開關,它有兩個輸入和兩個輸出。送入任一輸入的信關網(wǎng)絡,如圖10-3(b)所示。圖10-3使用多級交換網(wǎng)絡的SMP結構示意圖如前所述,以上四種SMP體系結構的多處理機系統(tǒng)具有一個共同的特征,就是共享,每一個處理機對系統(tǒng)中所有資源(內存、I/O等)都是共享的。也正是由于這種特征,決定了2.NUMA多處理機系統(tǒng)結構(1)NUMA結構和特點①概述NUMA(Nonuniform-Memory-Access)即非統(tǒng)一內存訪問(也稱非一致存儲訪問)。在這種圖10-4所示,NUMA擁有多個處理機模塊(也稱為節(jié)點),各節(jié)點之間通過一條公用總線(2)分布性圖10-4NUMA結構的多處理機系統(tǒng)地址空間,系統(tǒng)中的每一個CPU都可以訪問整個系統(tǒng)的內存,但訪問時所使用的指令卻不c.全局共享存儲器或其它節(jié)點存儲器。顯然,每一個CPU訪問本地存儲器的速度遠遠高于訪問全局共享存儲器或遠程訪問其它節(jié)點存儲器(遠地內存)的速度。(2)CC—NUMA構造方法對于系統(tǒng)中每一個CPU所擁有的若干高速緩存單元,都以一定數(shù)量的單元為一組,構成一個高速緩存塊,為每個CPU配置一張高速緩存塊目錄表(下簡稱目錄表),對每一個高速緩存塊的位置和狀態(tài)進行記錄和維護。每個CPU的每條訪問存儲器單元的指令都必須首先遠程內存訪問由于訪問遠地內存的延時遠遠超過本地內存,因此當CPU數(shù)量增加時,系統(tǒng)1.多處理機操作系統(tǒng)的特征(1)并行性(3)機間的通信和同步性(4)可重構性2.多處理機操作系統(tǒng)的功能(1)進程管理(2)存儲器管理續(xù)的地址方式進行描述,即一個處理機無需專門去識別①概述③數(shù)據(jù)一致性機制當共享主存中的某個數(shù)據(jù)在多個處理機的局部(本地)存儲器中出現(xiàn)時,操作系統(tǒng)應保證這(3)文件管理(4)系統(tǒng)重構3.多處理機操作系統(tǒng)的類型(1)主從式(master-slave)①概述在這種類型的操作系統(tǒng)中,有一臺特定的處理機被稱為主處理機(MasterProcessor),其它a.易于實現(xiàn)b.資源利用率低c.安全性較差(2)獨立監(jiān)督式(separatesupervisorSystem)有自己的管理程序(操作系統(tǒng)內核),并擁有各自的專用資源,如/J0設備和文件系統(tǒng)。a.自主性強b.可靠性高c.實現(xiàn)復雜理程序副本。此外,雖然每個處理機都有其專用的管理d.存儲空間開銷大一般地,這類操作系統(tǒng)適用于松散耦合型多處理機系統(tǒng),由于部)存儲器,用來存放管理程序副本,即每臺處理機中都駐留了e.處理機負載不平衡(3)浮動監(jiān)督式(f10atingsupervisorControlMode)中,所有的處理機組成一個處理機池,每臺處理機都可對整個系統(tǒng)中的任何一臺I/O設備a.高靈活性任一臺I/O設備和訪問任一存儲塊,因此大多數(shù)任務可在任何一臺處理機上運行,使系統(tǒng)b.高可靠性失效,也只需將操作系統(tǒng)浮動(切換)到另一臺處理機上運行,從而保證系統(tǒng)仍能繼續(xù)正常c.負載均衡專門的操作(如I/O中斷),分配給那些在特定時段內最不忙的處理機去執(zhí)行,使系統(tǒng)的d.實現(xiàn)復雜1.集中式與分布式同步方式(1)中心同步實體(2)集中式同步機構(3)集中式與分布式同步算法a.特征b.缺點b.所有結點僅基于本地信息做出判斷;(4)中心進程方式該方式是在系統(tǒng)中設置一個中心進程(或稱為協(xié)調進程),該進程保存了所有用戶的存取權限、沖突圖(conflictgraph)等信息。每一個要求訪問共享資源的進程,都先向中心進程發(fā)2.自旋鎖(spinlock)(1)自旋鎖的引入某CPU在執(zhí)行原語的過程中由其它CPU爭得了總線,就可能會導致該CPU與其它CPU對(2

溫馨提示

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

評論

0/150

提交評論