作業系統習題(1)

2021-10-12 13:23:01 字數 2261 閱讀 6583

頁號0

1234

5678

9101112

1314

15塊號21

6043

–––5

–7––

––狀態位111

1110

0010

1000

0問:1.cpu給出有效位址是多少位?位址變換機構(記憶體管理部件mmu)給出的實體地址是多少位?

2.虛位址(1)5587h對應的實體地址是多少(用十六進製制表示)。(2)16400對應的實體地址為多少(用十進位制表示)。(3)e253h對應的實體地址是多少(用十六進製制表示)?如訪問的頁面不在主存,註明頁面失效。

頁式儲存管理的邏輯位址分為兩部分:頁號+頁內位址。頁面數為 64k / 4k = 16頁 ,頁號部分佔4位;每頁4k = 2 ^12,頁內位址佔12位。

答: cpu給出有效位址是 64k =2 ^16 共16位,實體地址為32k = 2 ^15 共15位

(1)5587h 對應的二進位制為:0101 0101 1000 0111 ,「01010101 1000 0111 」為頁號,表示該邏輯位址對應的頁號為5,查表得塊號為3(十進位制),即物理塊位址為:0011,拼接塊內位址「0101 0101 1000 0111」得     0011 0101 1000 0111即3587(h)

(2)p = 16400 / 4096 = 4

w = 16400 mod 4096 = 16

mr = 4*4096 + 16 = 16400

虛位址16400的記憶體位址為16400。

(3)e253h = 1110 0010 0101 0011b 頁號14不在主存中,頁面失效。

2.假設某系統中有五個程序,每個程序的執行時間(單位ms)和優先數如下(優先數越小,其優先順序越高)

程序執行時間

優先數p1103

p211p3

25p41

4p552

如果在0時刻,各程序按p1,p2,p3,p4,p5的順序同時到達,試說明,當系統分別採用先來先服務的排程演算法(fcfs)、可剝奪的優先順序排程演算法、時間片輪轉法(時間片為1ms時),各程序在系統中的執**況,並計算在上述每種情況下程序的平均周轉時間。

(1)先來先服務的排程演算法(fcfs)

程序執行時間(/ms)

開始時間

完成時間

周轉時間

p110010

10p2110

1111p32

1113

13p4113

1414p55

1419

19平均周轉時間 (10+11+13+14+19)/5 = 13.4

(2)可剝奪的優先順序排程演算法

程序執行時間(/ms)

開始時間

完成時間

周轉時間

p110616

16p210

11p32

1719

19p4116

1717p55

166平均周轉時間 (16+1+19+17+6)/5 = 11.8

(3)時間片輪轉演算法

程序執行時間(/ms)

開始時間

完成時間

周轉時間

p110019

19p211

22p32

277p4

1344

p55414

14平均周轉時間(19+2+7+4+14)/5 = 9.2

3.三個程序p1、p2、p3互斥使用乙個包含n(n>0)個單元的緩衝區。p1每次用「produce()」生成乙個正整數並用「put()」送入緩衝區某一空單元中;p2每次用「getodd()」從該緩衝區中取出乙個奇數並用「countodd()」統計奇數個數;p3每次用「geteven()」從該緩衝區中取出乙個偶數並用「countieven()」統計偶數個數。請用訊號量機制實現這三個程序的同步與互斥活動,並說明所定義的訊號量的含義。要求用偽**描述。

[解析] 本題目考查程序的同步與互斥。本題目是蘋果一橘子問題的變形。程序p1可以看做是生產者,程序p2和p3可看做是消費者,程序p1和p2、p3共享大小為n的緩衝區。程序p1、p2和p3需互斥使用緩衝區,p1程序需要與p2程序、p3程序同步。定義訊號量s1控制p1與p2之間的同步;s2控制p1與p3之間的同步;empty控制生產者與消費者之間的同步;mutex控制程序間互斥使用緩衝區。

semaphore sa=0,sb=0,empty=n, mutex=a;

main()

pa()

pb()

pc()

(以上解答純屬個人解法,如有紕漏忘大佬指正)

作業系統習題(1)

在乙個單cpu的計算機系統中,有兩台外部裝置r1 r2和三個程序p1 p2 p3。系統採用可剝奪方式優先順序的程序排程方案,且所有程序可以並行使用i o裝置,三個程序的優先順序 使用裝置的先後順序和占用裝置時間如表3 7所示。表3 7 裝置的先後順序和占用裝置時間 假設作業系統的開銷忽略不計,三個程...

《作業系統》習題1

習題1 1.計算機系統主要由哪些部分組成?計算機系統是一種可以按使用者的要求接收和儲存資訊 自動進行資料處理並輸出結果資訊的系統。計算機系統包括硬體子系統和軟體子系統。2.什麼是作業系統 os 它的主要功能是什麼?作業系統是計算機系統中的乙個系統軟體,該軟體由若干程式模組組成,它的作用是有效地組織和...

作業系統(部分習題)

今天課不多,昨天聽作業系統老師說下週考還是下下週考試有點慌張。整理整理習題迎接考試周。一 1.作業系統中採用多道程式設計技術提高了cpu和外部裝置的 利用率 2.在單處理機系統中,可並行的是 程序與程序 處理機與裝置 處理機與通道 裝置與裝置 3.批處理系統的主要缺點是 缺少互動性 4.從使用者的觀...