Tải bản đầy đủ (.ppt) (43 trang)

Hệ điều hành - Chương IV: Định thời CPU ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (638.91 KB, 43 trang )

1
Khoa KTMT
Chöông IV:
Chöông IV:
Ñònh thôøi CPU
Ñònh thôøi CPU




















!"# "

$%

$&%


2
Khoa KTMT
Khaùi nieäm cô baûn

 

'()'*+,)*-./.
/0

(1*,234.!,'*('(05,4
)!667//,)!8'((!'(
,'*(.76/→/'*(,9*:0

!

(.!'7'(0

;*4.&.,9*:<(
&,'*(/:0
3
Khoa KTMT
Caùc boä ñònh thôøi
ready
ready
running
running
suspended
ready
suspended
ready

suspended
blocked
suspended
blocked
new
new
terminated
terminated
blocked
blocked
Long-term
scheduling
Long-term
scheduling
Medium-term
scheduling
Medium-term
scheduling
Short-term
scheduling
4
Khoa KTMT
Caùc boä ñònh thôøi

"#$

=4,9'*+,'*(/!.(!./,2
'(

>)&2'4,.!6./


?'*/@+#1:
AB<!

%$#$

,'*(,'C!,'&6C!.*4
D

>'*('(.*6!)764.*4,'*(6.
*6!)764.*40
5
Khoa KTMT
Các bộ đònh thời (tt)

&$

'($)*+,-,- 
(.,--/$0

&$,--1 $(

2#,--3 ,- 4(
5)6

"E*&!

"@(AB<!

?*(./!




Chương này sẽ tập trung vào đònh thời ngắn hạn
6
Khoa KTMT
Dispatcher

7(+)*)88 18
(,--9-

286

2'F6'6(8'F6G

2/,.'*

"6,/9DD*(!'*+'4(,2&*6
,.('*+D!G

1))(:

7()H*!'.!&*6
,..!&4
7
Khoa KTMT
Caùc tieâu chuaån ñònh thôøi CPU

#$


(,.;(06&6*!.
8),/&8),)8,'*(,4!'4
→'(2

*)1.0.$06&6*
'4.!,'*((!./,/&!,4
&/4→'(2

.<062*.!,*(
7→'(2

&)#$

&,$-.(=06,9*:.
/→'(,(

>.?06/6!!6,'*(,/#'6'

,-.(06/!/8..
,*9*→'(,(0
8
Khoa KTMT
Hai yếu tố của giải thuật đònh thời

@-,-.?06$-(
$)*,-,-.,$,-
,/)818)/A,-
(/B0/1:$-

CI2*,*(./


I*,F,'*(!((

I2*'(6!)6JK
9
Khoa KTMT
Hai yếu tố của giải thuật đònh thời (tt)

*).$$06-,-
-,-C

L8'("!!

Khi ở trạng thái running, process sẽ thực thi cho
đến khi kết thúc hoặc bò blocked do yêu cầu I/O

'(!

Process đang thực thi (trạng thái running) có thể bò
ngắt nửa chừng và chuyển về trạng thái ready bởi
hệ điều hành

Chi phí cao hơn non-preemptive nhưng đánh đổi lại
bằng thời gian đáp ứng tốt hơn vì không có trường
hợp một process độc chiếm CPU quá lâu.
10
Khoa KTMT
Preemptive vaø Non-preemptive

@8DEFDGHIJ 

MNOP/C
QNOP/
RNOP/CC
SLTUV
M)S&*WVXPYZ[NQ)RW

GFH(K/LDGHM8DEF((1

GFH(N/ODGHM8DEF((1
IJPQ8 RPSTS
11
Khoa KTMT
Khảo sát giải thuật đònh thời

&1U(8 )#
V4W

1#$(
Process
Arrival
Time
Service
Time
1 0 3
2 2 6
3 4 4
4 6 5
5 8 2
load store
add store

read from file
wait for I/O
inc store
write to file
load store
add store
read from file
wait for I/O
wait for I/O

I/O burst
CPU burst
CPU burst
CPU burst
I/O burst
I/O burst
một chu kỳ
CPU-I/O
12
Khoa KTMT
1. First-Come First-Served (FCFS)

@,--6X)8,+,-(
(,Y+,-  A $$V4W

*)6#((1

@,-6,$--ZVZW.ZVZW*0

/+,,'*(8/,*(


/+,'*('((,2#'64,'*(/',)67
0
5
10
15
20
P1
P2
P3
P4
P5
add
run
13
Khoa KTMT
FCFS Scheduling

[:$-6
Process Burst Time
P1 24
P2 3
P3 3

\,,,-1
X

MQR




MI\]

QIQS]

RIQ^]

X

\_QS_Q^BRIM^
0
24 27 30
P1 P2 P3
Gantt Chart for Schedule
14
Khoa KTMT


[:$-6
Process Burst Time
P1 24
P2 3
P3 3

\,1
X

P2, P3, P1

6


P1 = 6; P2 = 0; P3 = 3;

X

(6+0+3)/3 = 3 , toát hôn
0 3 6
30
P1P2 P3
Gantt Chart for Schedule
15
Khoa KTMT
2. Shortest-Job-First(SJF) Scheduling

!19,

,-,-$/+((X)8:
 .X90

"*8$,$-8(
3XC&,$-,+8$)
(X19C
16
Khoa KTMT
2. Shortest-Job-First(SJF) Scheduling

@X,.&06

&K6]#((1/+,.7):


Khi CPU được trao cho quá trình nó không nhường cho đến
khi nó kết thúc chu kỳ xử lý của nó

&N6(1/+&8,.7)

Nếu một tiến trình CPU mới được đưa vào danh sách với
chiều dài sử dụng CPU cho lần tiếp theo nhỏ hơn thời gian
còn lại của tiến trình đang xử lý nó sẽ dừng hoạt động tiến
trình hiện hành (hình thức này còn gọi là Shortest-
Remaining-Time-First (SRTF).)

/'`**,*(+/2*4.
.!/+'*4
17
Khoa KTMT
Non-Preemptive SJF Scheduling

[:$-6
Process
Arrival Time
Burst Time
P1 0 7
P2 2 4
P3 4 1
P4 5 4
0
8 16
P1 P2P3
Gantt Chart for Schedule
P4

127
Average waiting time =
(0+6+3+7)/4 = 4
18
Khoa KTMT
Preemptive SJF Scheduling(SRTF)

[:$-K6
0 7
16
P1 P2P3
Gantt Chart for Schedule
P4
115
Average waiting time =
(9+1+0+2)/4 = 3
P2 P1
2 4
VD2:
19
Khoa KTMT
Nhaọn xeựt ve giaỷi thuaọt SJF

5)X-^_.101
(# 8(1#
C

#((1 (-(
.10


\&`Z8,

#$(,(1V4W#
$(/, ( ,-V4W
,-,-X
20
Khoa KTMT
Nhaọn xeựt ve giaỷi thuaọt SJF

GPa1bc(dRDe$8fQ(

@8IM6M(RDe$8gh

aDGH6&`ZiG1JjFDH
X

]GHDk6d(jGbGHFdQ(
f(

\j((1hDl8)S
21
Khoa KTMT
Nhaọn xeựt ve giaỷi thuaọt SJF

.Fm$n:8De$8f0

XhjDDGH* a

]GGFo8b8(j
Dp81f(GP


%e qrGF$8m$nX8s
.5(10
`
a
_M
I

_Ma

\M
`
a
_M
I

_M
M
_b_M
c
a
c
_b_M
_M
a
\

`
"TXId+ef)ZYYgh


)ZVY/a


Ygh#7Xg0
22
Khoa KTMT
5VY/[ij:
dài CPU burstĐộ
o cđ đượ
dài CPU burst d oán,Độ ự đ
v i ớ a = ½ và τ
0
= 10
23
Khoa KTMT
3. Priority Scheduling

%3(+,-,

+,-((,

!,$-,6

!k

"!!
24
Khoa KTMT
Gaùn ñoä öu tieân


&`Z,$-,1
,##,#$-##$,-#

\,$,-16

l8)).*4

/'*(m,'*(*6

3.*AB<8*'6(:

48)8D('H/)'*6&
'(8.
25
Khoa KTMT
3. Priority Scheduling

[86X+1-t(,
( ,-,-

\((6.0t,(+
u

[$6

×