1. Trang chủ
  2. » Công Nghệ Thông Tin

Tai lieu on thi giua ky HDH

18 348 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 0,9 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ÔN THI GIỮA KÌ HỆ ĐIỀU HÀNH Vấn đề 1: Các phương pháp điều phối thời gian ngắn 1. Độ ưu tiên (Priorities). Mỗi Process có 1 độ ưu tiên. Process nào có độ ưu tiên cao nhất được thực thi.  Process có độ ưu tiên thấp có thể chờ mãi mãi (không có bài tập) Đề: Bảng số liệu Process Thời điểm xuất hiện Thời gian thực thi P1 0 3 P2 2 6 P3 4 4 P4 6 5 P5 8 2 2. First – In – First – Out (FIFO) Dạng NonPreemptive 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 P1 X P2 X P3 X P4 X P5 X Thời gian thực thi hiện thực: ( tính từ dấu X đến khi kết thúc ) P1: 3 P2: 7 P3: 9 P4: 12 P5: 12 Tổng thời gian: 43 Thời gian trung bình: 8.5 Dấu X là chỉ thời điểm xuất hiện mà đề bài cho, em ko cần quan tâm cái này, chỉ cần đề cho lúc nào thì em đánh dấu vào lúc đó. FIFO thực hiện theo thứ tự, P1 thực hiện 3 ( 012), xong đến P2 thực hiện 6 ( 345678), tuần tự cho đến hết.

Trang 1

ÔN THI GIỮA KÌ HỆ ĐIỀU HÀNH Vấn đề 1: Các phương pháp điều phối thời gian ngắn

1 Độ ưu tiên (Priorities).

Mỗi Process có 1 độ ưu tiên Process nào có độ ưu tiên cao nhất được thực thi Process có độ

ưu tiên thấp có thể chờ mãi mãi (không có bài tập)

Đề: Bảng số liệu

Process Thời điểm xuất hiện Thời gian thực thi

2 First – In – First – Out (FIFO)

Dạng Non-Preemptive

P1 X

Thời gian thực thi hiện thực: ( tính từ dấu X đến khi kết thúc )

Tổng thời gian: 43

Thời gian trung bình: 8.5

Dấu X là chỉ thời điểm xuất hiện mà đề bài cho, em ko cần quan tâm cái này, chỉ cần đề cho

FIFO thực hiện theo thứ tự, P1 thực hiện 3 ( 0-1-2), xong đến P2 thực hiện 6 ( 3-4-5-6-7-8), tuần tự cho đến hết

3 Round Robin (RR)

Dạng Preemptive

quantum (q) = 1 ( tức mỗi lần 1process chỉ được thực thi 1 thời gian)

Trang 2

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 P1 X

1 2 3 2 43 32 254 543 432 325 254 543 432 32 24 4

Hàng cuối cùng ghi chỉ số process đợi, tức hàng đợi

- Ở thời điểm 0, (a viết tắt thời điểm = t nhé), P0 vào, ko có p (process) nào đợi, nên hàng đợi

ko có

- Kết thúc t1, ko có p nào vào t2, p1 tiếp tục hiện hiện t1, ở thời điểm này, ko có p nào đợi, queue = rỗng

- Đến t2, do hàng đợi ở t1 ko có process nào đợi, nên đến t2 phải ưu tiên p2 vào, do thứ tự xuất hiện của p2 là ở t2, p1 vào hàng đợi, do thời gian thực thi của p1 là 3, trong khi mới thực hiện 2

- Đến t3, p1 ra khỏi hàng đợi, thực thi, p2 chưa thực thi xong, p2 vào hàng đợi của t3

- Đến t4, lẽ ra p3 phải vào thực thi, nhưng trong hàng đợi còn p2, nên p2 vào thực thi, p3 vào hàng đợi

- Đến t5, trong queue có p3, p3 thực thi, p2 vào hàng đợi

- Đến t6, lẽ ra p4 phải thực thi, nhưng p2 ở hàng đợi dc ưu tiên thực thi, p4 đợi, trong khi p3 chưa thực thi, nên thứ tự đợi là p4 đến p3 ( viết là 43)

- Đến t7, p4 vào thực thi, p3 đợi, p2 mới vừa thực thi ở p6, nên p2 phải đợi cuối, thứ tự đợi là 32

- Đến t8, lẽ ra đến thời đến xuất hiện của p5, nhưng do p3 ở hàng đợi, nên p3 thực thi trước, trong hàng đợi trước đó đã có p2, nên p5 phải vào sau p2, sau đó là đến p4, thứ tự đợi là 254 (

em cần phân biệt chỗ này với t6, do trước t6, là t5 hàng đợi chỉ có p2, nên khi đến p2 thực hiện, thì hàng đợi ở t6 ko có process nào, rồi mới có p4 đợi, và p3 đợi Còn ở t8 này, do trước đó là t7, hàng đợi có p3 và p2, nên p3 thực thi thì còn lại p2, p5 ko chen trước p2 dc)

- Cứ thế em làm cho đến hết

Thời gian thực thi hiện thực:

Tổng thời gian: 54

Thời gian trung bình: 10.8

Process Thời điểm xuất hiện Thời gian thực thi

quantum (q) = 2

P1 X

Trang 3

P4 X

1 1 32 2 24 43 435 352 352 524 524 24 24 4 4

Phần này giống trên, nhưng chỉ khác quantum = 2, tức mỗi lần process thực thi 2 đơn vị thời gian Nhưng em chú ý kĩ ở t4, do p1 thời gian thực thi chỉ có 3, nên tới t4 còn 1 thời gian thực thi, nên

nó chỉ có 1

Thời gian thực thi hiện thực:

Tổng thời gian: 50

Thời gian trung bình: 10

4 Shortest Job First (SJF)

Process Thời điểm xuất hiện Thời gian thực thi

Dạng Non-Preemptive

P1 X

Shortest Job First – tức là ở thời điểm đó, cái nào có thời gian thực thi ngắn nhất thì thực thi trước

Dạng non-preemptive, tức là ko ưu tiên, cái nào thực thi, thì 1 lần sẽ thực thi tất cả, ngược lại với

- Ở t0, chỉ có p1 vào, nên p1 thực thi (0-1-2)

- Đến tới t2, chỉ có p2 vào, p2 thực thi (3-4-5-6-7-8)

- Tới t9, lúc này theo thời điểm xuất hiện thì p3 ở thời điểm 6, p4 ở thời điểm 6, p5 ở thời điểm t8 Tức là tới t9, thì p3,p4,p5 đều có quyền xuất hiện, nhưng p5 có thời gian thực thi ngắn nhất (2 đơn vị), nên p5 thực thi trước, tương tự đến p3 rồi p4

Thời gian thực thi hiện thực:

Tổng thời gian: 38

Thời gian trung bình: 7.6

Trang 4

5 Shortest Remaining Time (SRT)

Process Thời điểm xuất hiện Thời gian thực thi

6.

Dạng Preemptive

P1 X

Shortest remaining time – tức process nào còn thời gian thực thi còn lại ngắn nhất, dc ưu tiên thực thi trước, và dc ngắt quãng do đây là dạng preemptive

- Ở thời điểm t0, p1 vào thực hiện đến t1 Đến t2 thì p2 cũng vào, lúc này p1 còn 1 đv time

- Ở t3, chỉ có p2 thực thi

- Đến t4, có p3 vào, p2 cũng còn thời gian thực thi So sánh, p2 còn 5, p3 còn 4, p3 thực thi t4

- T5, chỉ có p2 và p3, so sánh, p3 thực thi trước Tương tự cho đến hết

Thời gian thực thi hiện thực:

Tổng thời gian: 36

Thời gian trung bình: 7.2

7 Multi-level Feedback Queues (MFQ)

Dạng Preemptive

2 queue: q0 = 1, q1 = 1( tức khi rơi vào q0, thì tới phiên thực hiện nó sẽ thực thi 1 đơn vị, sau q0 mà chưa xong, nó sẽ rơi xuống q1, tới phiên thực hiện, nó cũng sẽ thực thi 1 đơn vị ).

(Q0)

Em chú ý ở dưới p5 cũng là 1 hàng đợi là q0, tuy nhiên do ko có process nào đợi nên e thấy nó rỗng

- Ở t0, p1 dc đưa vào q0, ko có process nào cạnh tranh, p1 thực thi luôn

Trang 5

- Kết thúc t0, p1 sau khi thực hiện ở Q0, thì bị giáng xuống Q1 Tuy nhiên tới t1, ko có process cạnh tranh, p1 đưa vào thực thi tiếp

- Kết thúc t1, t2 bắt đầu, p1 được đưa lại vào Q1 ( do ko có queue cấp thấp hơn, nên sau khi đã giáng nó xuống thấp nhất, thì mỗi lượt thực thi xong, nếu chưa hoàn thành, nó sẽ tiếp tục nằm ở đó),lúc này p2 xuất hiện, p2 dc đựa vào Q0, và ko có process nào nằm ở Q0, p1 thì nằm ở Q1 có mức ưu tiên thấp hơn, nên p2 dc thực thi ngay Lúc này e thấy có p1 đang đợi

Kết thúc t2, t3 bắt đầu, p2 sau khi đưa vào Q0 và đưa vào thực hiện ở t2, p2 giáng xuống Q1 ở t3 Lúc này p1 ra khỏi Q1, thực thi và kết thúc

- Kết thúc t3, t4 bắt đầu, lúc này p2 đang nằm ở Q1, p3 tới thời điểm xuất hiện, được đưa vào Q0,

có mức độ ưu tiên cao hơn nên thực thi ngay

- Kết thúc t4, t5 bắt đầu, p3 bị giáng xuống Q1, tới p2 từ Q1 ra thực thi

- Kết thúc t5, t6 bắt đầu, lúc này ở Q1 đang có p3, p2 sau khi thực hiện xong, bị giáng xuống Q1, nên em sẽ thấy thứ tự là 3-2 Lúc này p4 vào Q0, và thực thi

- Kết thúc t6,t7 bắt đầu, p4 giáng xuống Q1, do trước đó đang có p2 đang đợi, nên p4 phải đứng sau (thứ tự 24), p3 ra thực thi

- Kết thúc t7, t8 bắt đầu, lúc này Q1 đang có 24, p3 vừa thực thi trước đó, nên khi quay lại Q1 phải đứng sau 24, ( thứ tự lúc này là 243), và có p5 vào Q0, ko có tranh chấp với process khác, p5 thực thi

- Tuần tự cho đến hết

Thời gian thực thi hiện thực:

Tổng thời gian: 52

Thời gian trung bình: 10.4

3 queue: q0=1, q1=2, q2=4 ( thời gian thực thi khi vào q0 là 1 đơn vị thời gian, ở q1 là 2 đơn vị thời gian, ở q2 là 4 đơn vị thời gian )

- Ở t0, p1 vào Q0, ko có tranh chấp, p1 thực thi 1đv

- Kết thúc t0, bắt đầu t1,P1 xuống Q1, ko có process nào vào Q0, p1 thực thi 1 lúc 2 đơn vị ( do q1=2)

- Kết thúc t2, p1 cũng đã hoàn thành, tuy nhiên ở thời điểm t2, p2 vào q0, và bị vướng p1, do t1

từ q1 thực thi 1 lúc 2 đơn vị time (2-3), nên lúc đó P2 phải đợi ở Q0 Bắt đầu t3, P2 ko có cạnh tranh, p2 thực thi 1 đơn vị (q0 =1)

- Kết thúc t3, bắt đầu t4, p2 bị giáng xuong1 Q1, lúc này p3 vào Q0, ko có tranh chấp , nên thực thi 1 đơn vị

- Kết thúc t4, bắt đầu t5, p3 bị giáng xuống Q1, p2 từ Q1 thực thi 2 đơn vị (5-6) Trong lúc ở t6,

có P4 vào Q0, nhưng bị vướng p2 đang thực thi, nên phải đợi ở Q0, cùng thời gian đó cũng có p3 đang ở Q1 Bắt đầu t7, p2 sau khi thực thi từ Q1, bị giáng xuống Q2,p4 từ Q0 thực thi 1 đơn vị

- Cứ tuần tự làm như thế, nhưng em chú ý cái nào ở Q2, thì mỗi lần được thực hiện, nó dc phép

Trang 6

thực hiện 4 đơn vị, nhưng tùy theo còn bào nhiêu thời gian hoàn thành, thì nó thực hiện nhiêu đó Giả sử ở t14, p2 được thực thi 4 đơn vị, nhưng nó chỉ cần 3 đơn vị là hoàn tất, nên nó sẽ thực thi

3 và hoàn thành

Thời gian thực thi hiện thực:

Tổng thời gian: 52

Thời gian trung bình: 10.4

Vấn đề 2: Giải thuật ngân hàng

Dạng 1 Kiểm tra xem trạng thái có an toàn hay không?

Cách giải: phải tìm cho được ít nhất C, R, A

Vd1: E=(6,3,4,2) A=(1,0,2,0)

C = R =

Kiểm tra xem trạng thái có an toàn hay không?

Bài làm:

R4 A

 Đáp ứng yêu cầu của P4

 P4 thực thi hoàn tất và giao trả tài nguyên

 A=A+C4=(2,1,2,1)

 Mark(P4)

R1 A

 Đáp ứng yêu cầu của P1

 P1 thực thi hoàn tất và giao trả tài nguyên

 A=A+C1=(5,1,3,2)

 Mark(P1)

R 2 A

 Đáp ứng yêu cầu của P2

 P2 thực thi hoàn tất và giao trả tài nguyên

 A=A+C2=(5,2,3,2)

 Mark(P2)

R 3 A

 Đáp ứng yêu cầu của P3

Trang 7

 P3 thực thi hoàn tất và giao trả tài nguyên

 A=A+C3=(6,3,4,2)

 Mark(P3)

R 5 A

 Đáp ứng yêu cầu của P5

 P5 thực thi hoàn tất và giao trả tài nguyên

 A=A+C5=(6,3,4,2)

 Mark(P5)

Nhận xét: A = E

 Tồn tại một trình tự điều khiển để các process thực thi hoàn tất <P4,P1,P2,P3,P5>

Kết luận: hệ thống ở trạng thái an toàn

Vd2: 1 hệ thống có 12 ổ băng từ và 3 tiến trình với bảng cấp phát tài nguyên như sau:

Tiến trình Đã được cấp (số ổ băng) Tối đa cần (số ổ băng)

Dùng giải thuật nhà băng xác định trạng thái có an toàn hay không?

Bài làm

Max =

C =

 R =Max – C =

E = (12)

 A = E – C = (12) – ( 5 + 2 + 2 ) = (3)

R 2 A

 Đáp ứng yêu cầu của P2

 P2 thực thi hoàn tất và giao trả tài nguyên

 A=A+C2=(5)

 Mark(P2)

R 1 A

 Đáp ứng yêu cầu của P1

 P1 thực thi hoàn tất và giao trả tài nguyên

 A=A+C1=(10)

Trang 8

 Mark(P1)

R 3 A

 Đáp ứng yêu cầu của P3

 P3 thực thi hoàn tất và giao trả tài nguyên

 A=A+C3=(12)

 Mark(P3)

Vậy tồn tại một trình tự điều khiển để các process thực thi hoàn tất <P2, P1, P3>

Kết luận: hệ thống ở trạng thái an toàn

Cách trình bày khác: miêu tả trạng thái theo thời gian

A R Proces

s

C

Vd3: Một hệ thống có 5 tiến trình với tình trạng tài nguyên như sau:

Trạng thái có an toàn hay không?

Bài làm:

R = Max – C =

Vậy tồn tại một trình tự điều khiển để các process thực thi hoàn tất <P0, P2, P1, P3, P4>

Kết luận: hệ thống ở trạng thái an toàn

t

Trang 9

Dạng 2: Cấp phát tài nguyên cho 1 process nào đó được hay không?

Cách giải: giả định đã cấp phát, quy về dạng 1, nếu an toàn thì cấp được

Vd1: Cho bảng số liệu.

Loại tài nguyên Được các process yêu cầu Đã cấp cho các process

Với tình trạng này thì có cấp phát R2 cho P2 hay không?

Bài làm:

Thông tin hệ thống khi giả định đã cấp R2 cho P2

E = (1, 1)

A = (0, 0)

C =

R =

Nhận xét:

Kết luận: Hệ thống ở trạng thái không an toàn, nên không cấp R2 cho P2 được

Dạng 3: Bài toán trên RAG (đồ thị cấp phát/phân phối tài nguyên)

Cách giải: Vẽ hình và nhận xét

Vd1: Cho bảng số liệu:

Loại tài nguyên Số phiên bản Được các process yêu cầu Đã cấp cho các process

Hãy thể hiện trạng thái này bằng Đồ thị cấp phát tài nguyên

Bài làm:

Trang 10

Vd2: Cho bảng số liệu:

Loại tài nguyên Số phiên bản Được các process yêu cầu Đã cấp cho các process

Có deadlock hay không? Vì sao?

Bài làm:

RAG bị deadlock do tồn tại các chu trình và không có process nào có thể kết thúc

Vấn đề 3: Thay thế trang trong bộ nhớ ảo dạng phân trang - Chọn phần tử thay thế

Vd: Cho trình tự các trang: 2 3 2 1 5 2 4 5 3 2 5 2

 Optimal

Trang 11

2 3 2 1 5 2 4 5 3 2 5 2

6 lỗi trang

 FIFO

20 21 22 23 50 50 51 52 30 31 32 33

30 31 32 33 20 21 22 23 24 50 51

10 11 12 40 41 42 43 44 20

9 lỗi trang

 LRU

20 21 20 21 22 20 21 22 30 31 32 33

30 31 32 50 51 52 50 51 52 50 51

10 11 12 40 41 42 20 21 20

7 lỗi trang

 Second Chance

 Clock

Vấn đề 4: Sơ đồ chuyển đổi địa chỉ

1 Bộ nhớ ảo dạng phân trang

Trang 12

2 Tổ chức bảng trang dạng nhiều cấp

3 Tổ chức bảng trang dạng bảng băm

Trang 13

4 Bảng trang nghịch đảo

Trang 14

5 Sơ đồ chuyển đổi địa chỉ với TLB

6 Bộ nhớ ảo dạng phân đoạn

7 Bộ nhớ ảo dạng phân đoạn có phân trang

Trang 15

8 Bộ nhớ ảo trên MULTICS

9 Bộ nhớ ảo trên Pentium

Trang 16

Vấn đề 5: Chuyển đổi địa chỉ

Dạng 1: Cho dung lượng bộ nhớ ảo, kích thước trang, dung lượng bộ nhớ thực, cho số liệu 1 bảng trang Xác định địa chỉ vật lí (nếu có) ứng với địa chỉ ảo

Cách giải: Tìm cấu trúc địa chỉ ảo, cấu trúc địa chỉ vật lí, dựa theo cấu trúc tìm các thành phần

Tìm page# đối chiếu bảng trang để lấy ra frame# điều kiện làm tiếp là present bit = 1 Ghép frame# với offset

Vd:

Dung lượng bộ nhớ ảo Kích thước trong Dung lượng bộ nhớ thực

Page# Frame# Present bit

Trang 17

… … … …

Áp dụng sơ đồ trình bày trên để xác định địa chỉ vật lí (nếu có) ứng với địa chỉ ảo

Câu a 0x0A0A0A

Câu b 0x1A2B3C

Bài làm:

- Cấu trúc địa chỉ ảo:

Tìm kích thước địa chỉ ảo

Ta có dung lượng bộ nhớ ảo là 16MB = 224 Byte

 Địa chỉ ảo dài 24 bit

Tìm kích thước phần offset

Ta có kích thước 1 trang là 1KB = 210 Byte

 Phần offset dài 10 bit

Địa chỉ ảo dài 24 bit, offset dài 10 bit  Phần page# dài 24 – 10 = 14 bit

Cấu trúc: page# | offset

14 bit 10 bit

- Cấu trúc địa chỉ vật lí:

Tìm kích thước địa chỉ vật lí

Ta có dung lượng bộ nhớ vật lí là 4MB = 222 Byte

 Địa chỉ vật lí dài 22 bit

 Phần frame# dài: 22 – 10 = 12 bit

Cấu trúc: frame# | offset

12 bit 10 bit

Trang 18

- Chuyển đổi địa chỉ:

Câu a.

Địa chỉ ảo:0x0A0A0A = 0000 1010 0000 1010 0000 10102

 offset: 1000001010

 page#: 00001010000010 = 0x282

Đối chiếu với bảng trang, ta có được frame# = 0x1FE , present bit = 1

Frame# = 0x1FE = 1111111102

Địa chỉ vật lí của 0x0A0A0A là : 1111111101000001010 = 0x7FA0A

Câu b.

Địa chỉ ảo: 0x1A2B3C = 0001101000101011001111002

 offset: 1100111100

 page#: 00011010001010 = 0x68A

Đối chiếu với bảng trang, ta có được frame# = 0x2FE, present bit = 0

Vậy trang chưa được nạp vào bộ nhớ nên không tồn tại địa chỉ vật lí của 0x1A2B3C

Ngày đăng: 09/06/2017, 12:32

HÌNH ẢNH LIÊN QUAN

Vấn đề 4: Sơ đồ chuyển đổi địa chỉ - Tai lieu on thi giua ky HDH
n đề 4: Sơ đồ chuyển đổi địa chỉ (Trang 11)
4. Bảng trang nghịch đảo - Tai lieu on thi giua ky HDH
4. Bảng trang nghịch đảo (Trang 13)
5. Sơ đồ chuyển đổi địa chỉ với TLB - Tai lieu on thi giua ky HDH
5. Sơ đồ chuyển đổi địa chỉ với TLB (Trang 14)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w