第3章 習題解答
1.解釋下列術語
邏輯地址;絕對地址;地址轉換
答:邏輯地址:對于用戶來說,他無須知道自己的作業究竟是在主存的什么位置,他們可以認為自己的程序和數據就是放在從0地址開始一組連續的地址空間中,這個地址空間是程序用來訪問信息所用的一系列連續地址單元的集合,該地址空間就是邏輯地址空間。邏輯地址空間中,地址單元的編號稱為邏輯地址。
絕對地址:主存也被按照連續的存儲單元進行編號,絕對地址空間就是主存中一系列連續存儲信息的物理單元的集合,也稱絕對地址空間為存儲地址空間或物理地址空間。絕對地址空間中物理單元的編號稱為絕對地址。 地址轉換:由于一個作業裝入到與其邏輯地址空間不一致的絕對地址空間,使得邏輯地址與絕對地址不同,而引起的對有關地址部分的調整,即邏輯地址轉換成絕對地址的過程稱為重定位,也稱為地址轉換。
2.存儲保護的目的是什么?怎樣實現存儲保護?
答:存儲保護的目的就是為了保護主存中各區域內的信息不被破壞,它包括存儲的權限,存儲不可跨越區域等等。為實現存儲保護,必須由硬件和軟件配合實現。比如在頁式管理中,要由操作系統提供頁表,硬件機構確定頁的使用必須是安全的,如不能訪問不屬于自己的頁等。
3.什么叫重定位?重定位的方式有哪兩種?比較它們的不同。
答:由于一個作業裝入到與其邏輯地址空間不一致的絕對地址空間,使得邏輯地址與絕對地址不同,而引起的對有關地址部分的調整,即邏輯地址轉換成絕對地址的過程稱為重定位,也稱為地址轉換。
重定位有靜態和動態兩種情況。
所謂靜態重定位是在裝入一個作業的時候,把作業中的指令地址和數據地址全部一次性地轉換成絕對地址。
所謂動態重定位是由軟件和硬件相配合來實現的。地址重定位不再是裝入的時候一次完成了,而是設置一個基址寄存器,裝入作業的時候,將作業在主存區域的首地址放入到基址寄存器中。作業執行的時候,由硬件的地址轉換機構動態地對地址進行轉換,執行指令的時候,只要將邏輯地址加上基址寄存器的內容,就得到了絕對地址。
靜態重定位和動態重定位的不同在于:①靜態重定位是在作業裝入的時候一次完成,動態重定位是在作業執行時再實現的。②靜態重定位是軟件支持的,動態重定位是硬件和軟件合作實現的。③靜態重定位不能實現主存的移動,而動態重定位可以。④動態重定位還可能提供虛擬存儲空間。
4.比較固定分區、可變分區和頁式存儲管理的優缺點。
答:固定分區優點:
①能支持多道程序設計。
②無需專門的硬件地址轉換機構。
缺點:
①主存利用率不算太高,分配中出現內部零頭問題。
②分區大小固定不靈活,不能為程序動態申請內存。
③不具備虛擬存儲能力。
可變分區優點:
①支持多道程序設計。
②沒有內部零頭問題,主存利用率比固定分區高。
③采用移動技術后可以滿足正在執行的作業的主存擴充的要求。
缺點:
①動態重定位和保護措施需要硬件機構支持,成本高。
②由于有外部零頭,所以主存利用率依然不算很高。
③移動技術開銷很大。
④每次必須將作業完整調入并連續存放,主存利用率不高。
⑤不具備虛擬存儲能力。
頁式存儲管理優點:
①支持多道程序設計
②解決了外部零頭問題,內部零頭大大減少(一個作業平均只有50%頁面大小的內部零頭)主存利用率比較高。
③用戶作業無需在主存中連續存放,提高主存的利用率。
④如果是分頁虛擬存儲管理,可以提供大容量的多個虛擬存儲器,主存利用率更高了。
缺點:
①動態重定位和保護措施需要硬件機構支持,成本高;
②采用頁表,占用了一部分主存空間和處理機時間。
③分頁虛擬存儲管理中,增加了缺頁中斷的處理,增加了系統開銷。
5.采用可變分區方式管理主存時,為什么要引人移動技術?
答:采用移動技術可以使分散的主存空閑區集中以滿足分配要求,采用移動技術后可允許作業執行時動態擴充主存區域。
6.頁式存儲管理中為什么要設置頁表?
答:因為頁式管理時把作業分散在主存中的不連續塊中存放,必須通過頁表來建立邏輯地址中的頁號到絕對地址中的塊號的映射,作為硬件進行地址轉換的依據。
7.頁式存儲管理中頁面大小是根據什么決定的?頁表的長度又是根據什么決定的?
答:頁面的大小是由地址結構決定的。頁表的長度是由作業的信息量決定的,作業有多少頁,頁表中就有多少個記錄項。
8.敘述頁式存儲管理中地址轉換過程。
答:首先,操作系統為每個作業創建一張頁表,它建立了邏輯地址中的頁號到絕對地址中的塊號的映射。然后,借助于硬件地址轉換機構,在作業執行過程中,每執行一條指令時,按邏輯地址中的頁號查頁表得到對應的塊號,再根據公式“絕對地址=塊號×塊長+頁內地址”換算出欲訪問的主存單元的絕對地址。
9.什么叫虛擬存儲器?
答:根據程序執行的互斥性和局部性兩個特點,我們允許作業裝入的時候只裝入一部分,另一部分放在磁盤上,當需要的時候再裝入到主存,這樣以來,在一個小的主存空間就可以運行一個比它大的作業。同時,用戶編程的時候也擺脫了一定要編寫小于主存容量的作業的限制。也就是說,用戶的邏輯地址空間可以比主存的絕對地址空間要大。對用戶來說,好象計算機系統具有一個容量很大的主存儲器,稱為“虛擬存儲器”。
10.敘述頁式存儲管理實現虛擬存儲器的基本思想。
答:基本思想是:只需將作業的全部信息作為副本存放在磁盤上,作業被調度投入到運行時,至少把第一頁信息裝入主存儲器,在作業執行過程中訪問到不在主存儲器的頁的時候,再把它們裝入到主存。
11.采用可變分區方式管理主存時,能實現虛擬存儲器嗎?為什么?
答:不可以,因為可變分區每次必須將作業完整調入并連續存放,這不適合虛擬存儲的要求。同時,可變分區的硬件地址轉換機構把絕對地址超出限定范圍時作地址錯處理,而不是產生“缺分區中斷”。
12.什么叫“抖動”?怎樣衡量頁面調度算法的好壞?
答:如果選用了一個不合適的調度算法,就會出現這樣的現象:剛被淘汰了的頁面又立即要用,又要把它調入進來,而調入不久又被調出,調出不久再次被調入,如此反復,使得調度非常頻繁,以至于大部分時間都花費在來回調度上。這種現象叫“抖動”。一個好的調度算法應減少和避免抖動現象。
13.假定某計算機系統的主存容量為32K,對主存采用動態定位可變分區分配算法。現在已經有3個作業在主存儲器中(如圖),當作業J2執行時,要求擴充3K作業,為了滿足作業J2這一要求,應移動幾道作業的信息?寫出它們的次序、方向和距離。
答:因為采用可變分區的管理方式,要求作業的邏輯地址空間是連續的,并且主存空間也是連續的。因此,作業J2要求擴充的主存區域應該在原占有區域之后,于是必須通過移動來集中空閑區以供J2擴充之需。移動的方法有兩種:
①先把J1向上移動1K再把J2向上移動2K.
②J3向下移動2K.
顯然,第二種方法只要進行一次移動,明顯比第一種方法好。
14.某采用頁式存儲管理的系統,接收了一共7頁的作業,作業執行時依次訪問的頁為:l、2、3、4、2、1、5、6、2、1、2、3、7.若把開始4頁先裝入主存,若分別用先進先出(FIFO)調度算法和最近最少用(LRU)調度算法,作業執行時回產生多少次缺頁中斷?寫出依次產生缺頁中斷后應淘汰的頁。
答:采用先進先出調度算法會產生 6次缺頁中斷,依次淘汰的頁是 1、2、3、4、5、6.
采用最近最少用調度算法會產生4次缺頁中斷,依次淘汰的頁是3、4、5、6.
15.某采用頁式存儲管理的系統,把主頁分成大小為128的相等長度的塊。有一個用戶要把一個 128 × 128的數組置成初值“0”,在分頁時把數組中的元素每一行放在一頁中,假定分給用戶可用來存放數組信息的工作區只有一塊(既只能放數組中的一行元素)。用戶編制了如下兩個不同的程序來實現數組的初始化:
l)var A:array[ 1.。128]of array[l.。128」of integer;
for j :=1 to 128
do for i:=1 to 128
do A[j:]=0;
2)var A:array[1.。128」of array[1.。128」Of integer;
for i:=1 to 128
do for j:=1 to 128
do A[j]:=0;
當分別運行這兩個程序時,在實現數組初始化的過程中各會產生多少次缺頁中斷?
答:假定數組的第一行元素已經存放在了一個主存塊中,由于分頁進把數組中的元數每一行放在一頁中,所以每次i+1的時候都會產生缺頁中斷。這樣一來,按1)編制的程序,每執行一次A[j]:=0 就會產生一次缺頁中 斷,于是總共產生(128×128-1)次缺頁中斷。而2)編制的程序執行時產生(128-1)次缺頁中斷。
聲明:
(一)由于考試政策等各方面情況的不斷調整與變化,本網站所提供的考試信息僅供參考,請以權威部門公布的正式信息為準。
(二)本網站在文章內容來源出處標注為其他平臺的稿件均為轉載稿,免費轉載出于非商業性學習目的,版權歸原作者所有。如您對內容、版權等問題存在異議請與本站聯系,我們會及時進行處理解決。
相關推薦
2023年4月浙江自考高級英語課文翻譯復習資料十二
11-262022年浙江自考英語(二)語法及翻譯復習資料(8)
10-092023年4月浙江自考英語(二)串講筆記:lesson10-13
02-102024年4月浙江自考溫病學復習資料:第八章
12-22自考輔導資料:2021年10月《馬克思主義哲學原理》—感性認識和理性認識的辯證關系
06-172022年浙江自考市政學復習筆記第十二章:城市經濟管理
09-162023年4月浙江自考中國現代文學作品選復習資料十四
11-292022年浙江自考《高級英語》復習資料(13)
09-282022年浙江自考《科技檔案管理》串講筆記(11)
10-102023年4月浙江自考中外新聞作品研究復習資料:華陽礁上補給忙
02-04