Professional Documents
Culture Documents
GiaoTrinhHdh THUA
GiaoTrinhHdh THUA
THONG
C S THANH PHO HO CH MINH
KHOA CNG NGH THNG TIN
GIO TRNH
H IU HNH
(OPERATING SYSTEM)
BIN SON
NINH XUN HI ! HU"NH TR#NG TH$A
N%M &''(
)*I M+ ,U
H iu Hnh (Operating Systems) l mt thnh phn khng th thiu trong mt h thng m!y
t"nh# $t m!y t"nh m%& '( )*t tin+ &,u h-nh &ao nh.ng nu khng &/ h )iu hnh th- hu nh.
khng th s0 '1ng ).2&# H )iu hnh )iu khin m3i ho4t )ng &5a m!y t"nh+ gi6p 7i& s0 '1ng
m!y t"nh tr8 n9n ):n gi;n+ '< 'ng 7 hiu =5a h:n r,t nhiu# >o 7?y mn h3& @H )iu hnhA l
mn h3& =uan tr3ng 7 r,t &n thit trong &h.:ng tr-nh )o t4o &huy9n nghnh tin h3& 8 h &ao
)Bng 7 kC s.#
Di!o tr-nh @H )iu hnhA ).2& Ei9n so4n theo &h.:ng tr-nh )o t4o &huy9n nghnh tin h3& 8 h
&ao )Bng 7 kC s. &5a F gi!o '1& 7 )o t4o# Di!o tr-nh ).2& &hia thnh G &h.:ng+ &h.:ng H+ I+
J+ K 'o gi;ng 7i9n Linh MuNn H;i Ei9n so4n+ &h.:ng O+ G 'o gi;ng 7i9n HuPnh Qr3ng Qh.a Ei9n
so4n# Quy rRng &h6ng ti )S &/ nhiu & g*ng trong &ng t!& Ei9n so4n nh.ng &h*& &h*n gi!o tr-nh
7Tn &Un nhiu thiu s/t+ n9n r,t mong ).2& E4n )3& &Vng nh. &!& )Wng nghip )/ng g/p X kin )
gi!o tr-nh ngy &ng hon thin+ nhRm m1& )"&h ph1& 71 tt h:n &ho 7i& '4y 7 h3& tin h3& )ang
ngy &ng ph!t trin 8 n.Y& ta#
$3i sZ g/p X ho%& th*& m*& [in g8i 7 )\a &h] ^mail_ hain[`ptith&m#e'u#7n ho%&
htthua`ptith&m#e'u#7n#
Lgy IH Qh!ng HH Lam Ibbc
Dd# Ei9n so4n
Linh MuNn H;i e HuPnh Qr3ng Qh.a
I
fHghLD i
GI-I THIU H IU HNH
fh.:ng @Diji QHikl dm Hk iml HnLH A so giYi thiu 7 gi;i th"&h &!& 7,n ) sau_
H#H H )iu hnh l g-+ &!& kh!i nim &5a h )iu hnh#
H#I p\&h s0 ph!t trin &5a h )iu hnh
H#J f!& lo4i h )iu hnh
H#K f!& '\&h 71 &5a h )iu hnh#
H#O f,u tr6& &5a h )iu hnh
H#G Lguy9n lX thit k h )iu hnh
./. CC KHI NIM
././. H0 1234 5675 86 9:;
H )iu hnh (operating systems) l &h.:ng tr-nh )/ng 7ai trU trung gian giqa ng.ri s0
'1ng 7 phn &sng &5a m!y t"nh# H )iu hnh &he ',u sZ phs& t4p+ )a '4ng &5a phn &sng+
gi6p 7i& s0 '1ng m!y t"nh tr8 n9n ):n gi;n+ hiu =u;# Lhim 71 &5a h )iu hnh l =u;n lX ti
nguy9n &5a m!y t"nh+ thZ& thi &!& &h.:ng tr-nh sng '1ng+ ht tr2 &!& &hs& nang m4ng+ 77 u
././& C<= >5675 ?5@7 =AB CD> 50 >5E79 C<F >G75
$t h thng m!y t"nh ).2& &hia thnh K thnh phn sau_ phn &sng+ h )iu hnh+
&h.:ng tr-nh sng '1ngv&h.:ng tr-nh h thng+ ng.ri s0 '1ng#
w xhn &sng (har'yare) _ fxl+ E nhY+ &!& thit E\ nh?pv[u,t+u
w H )iu hnh (operating systems)_ )iu khin 7 phi h2p 7i& s0 '1ng phn &sng &ho nhiu
sng '1ng 7Yi nhiu ng.ri s0 '1ng kh!& nhau#
w fh.:ng tr-nh sng '1ng 7 &h.:ng tr-nh h thng (system an' appli&ations programs)_ l &!&
&h.:ng tr-nh gi;i =uyt nhqng 7,n ) &5a ng.ri s0 '1ng nh. l &h.:ng tr-nh '\&h+ h =u;n tr\ &:
s8 'q liu+ &h.:ng tr-nh trU &h:i+ &h.:ng tr-nh th.:ng m4i+u
w Lg.ri s0 '1ng (user)_ ng.ri s0 '1ng ho%& m!y t"nh#
H-nh H#H_ f!& thnh phn &5a mt h thng m!y t"nh
J
././H C<= >5675 ?5@7 =AB CD> 50 >5E79 75I?JK4L>
$t h thng nh?pv[u,t gWm Ea thnh phn sau_
w H thng E nhY )m (Euzzere&a&hing system)
w fh.:ng tr-nh )iu khin thit E\ (>ri7ers zor spe&izi& har'yare 'e7i&es)#
w fh.:ng tr-nh giao tip 7Yi &h.:ng tr-nh )iu khin thit E\ ({ general 'e7i&ee'ri7er interza&e)#
fh.:ng tr-nh giao tip 7Yi &h.:ng tr-nh )iu khin thit E\
fh.:ng tr-nh )iu khin thit E\ H thng E nhY )m
H-nh H#I_ f!& thnh phn &5a mt h thng nh?pv[u,t
././M C<= >5675 ?5@7 =AB 50 1234 5675
H )iu hnh gWm &/ Ea thnh phn sau_
w F &,p ph!t ti nguy9n (|esour&e allo&ator)_ }u;n lX 7 &,p ph!t ti nguy9n#
w fh.:ng tr-nh kim so!t (fontrol program)_ ~im so!t 7i& thZ& thi &h.:ng tr-nh 7 kim so!t
ho4t )ng &5a &!& thit E\ nh?pv[u,t#
w xhn nhNn (~ernel)_ l &h.:ng tr-nh @liA &5a h )iu hnh+ ).2& thZ& thi tr.Y& ti9n 7 tWn t4i
trong E nhY &ho )n khi t*t m!y (&!& &h.:ng tr-nh kh!& g3i l &h.:ng tr-nh sng '1ng)#
F &,p ph!t ti nguy9n fh.:ng tr-nh kim so!t
xhn nhNn
H-nh H#J_ f!& thnh phn &5a h )iu hnh
./& )NCH SO PHT TRIPN CQA H IU HNH
w Diai )o4n H (HKO HOO)_ )S &/ m!y t"nh lYn nh.ng &h.a &/ h )iu hnh#
w Diai )o4n I (HOG HGO)_ h thng [0 lX theo l (Fat&h systems)
w Diai )o4n J (HGG Hcb)_ h thng [0 lX )a &h.:ng ($ultiprogramming systems) + h thng
[0 lX )a nhim ($ultitasking systems)#
w Diai )o4n K (HcH e Ibb )_ h thng )a [0 lX ($ultipro&essor systems)+ h thng [0 lX phNn t!n
(>istriEute' systems)+ h thng [0 lX thri gian thZ& (|ealetime systems)+ h thng nh6ng
(^mEe''e' systems)#
./H PHN )OI H THRNG MY TSNH
$t h thng m!y t"nh gWm hai phn l h )iu hnh 7 phn &sng t.:ng sng ) thZ& thi h )iu
hnh#
./H/. H0 >5E79 KT 8U >5VW 8X (BB>=5 SFY>VCY)
Ny l h )iu hnh )u ti9n+ th s: nh,t# i 7Yi h )iu hnh ny th- t4i mt thri )im &h] &/
mt &ng 7i& trong E nhY+ khi thZ& hin [ong mt &ng 7i&+ &ng 7i& kh!& so ).2& tZ )ng
n4p 7o 7 &ho thZ& thi# H )iu hnh &/ mt &h.:ng tr-nh+ g3i l E gi!m s!t+ th.rng tr6 trong
E nhY &h"nh+ gi!m s!t 7i& thZ& hin 'Sy &!& &ng 7i& theo ths tZ 7 tZ )ng#
f!&h E tr" E nhY &5a h )iu hnh [0 lX theo l nh. sau_ phn E nhY 8 )\a &h] th,p 'nh &ho
h )iu hnh+ phn &Un l4i 'nh &ho mt &h.:ng tr-nh &5a ng.ri '(ng#
K
H-nh H#K_ m h-nh t &hs& E nhY &5a h )iu hnh [0 lX theo l
Mem mt 7" '1 7 &!&h ths& lm 7i& 7Yi h thng [0 lX theo l_
e p?p tr-nh 7i9n mang phiu ghi &h.:ng tr-nh )n m!y HKbH
e $!y so )3& &h.:ng tr-nh t phiu 7 ghi &h.:ng tr-nh 7o Eang t
e p?p tr-nh 7i9n )em Eang t tYi m!y bK ) thZ& hin t"nh to!n 7 kt =5a ).2& ghi 7o Eang t
e p?p tr-nh 7i9n )em Eang t &hsa kt =5a tYi m!y HKbI ) in
H-nh H#O_ 7" '1 7 &!&h ths& [0 lX &ng 7i& 7Yi h )iu hnh [0 lX theo l
./H/& H0 >5E79 KT 8U 1B =5Z[79 (M48>2P\W9\BCC279 SFY>VCY)
Q4i mt thri )im &/ nhiu &ng 7i& trong E nhY 7 khi mt &ng 7i& )ang thZ& hin+ nu &/
y9u &u nh?pv[u,t th- fxl khng ngh] m h )iu hnh so &huyn sang thZ& hin &ng 7i& kh!&#
d" '1 trong E nhY hin &/ Ea &h.:ng tr-nh thZ& hin Ea &ng 7i&# Lu &ng 7i& H y9u &u
nh?pv[u,t th- &ng 7i& H t4m ngng+ &ng 7i& I (ho%& &ng 7i& J) so ).2& thZ& hin# ~hi thao
t!& nh?pv[u,t &5a &ng 7i& H [ong th- &ng 7i& H so ).2& thZ& hin tip+ &ng 7i& I so t4m
ngng+u
H-nh H#G_ m h-nh t &hs& E nhY &5a h thng [0 lX )a &h.:ng
] C<= =5^= 7_79 =AB 50 1234 5675 >\W79 50 >5E79 KT 8U 1B =5Z[79
+ Lp lch CPU (CPU scheduling)_ &h3n mt trong nhqng &ng 7i& trong E nhY &ho thZ& thi
(&ho s0 '1ng fxl)# ~hi &h3n &n tr!nh tr.rng h2p mt &ng 7i& &hr trong E nhY =u! lNu#
+ Qun l b nh (Memor m!n!gemen")_ &n ph;i =u;n lX phn E nhY no )S &,p ph!t 7 &,p
&ho &ng 7i& no (E nhY &,p ph!t &ho mti &ng 7i& ph;i ri9ng Eit)+ phn E nhY no &h.a &,p+
khi mt &ng 7i& thZ& thi [ong &n thu hWi phn E nhY )S &,p &ho &ng 7i& )/# Lu mt &ng
O
7i& truy [u,t )n phn E nhY )S &,p &ho &ng 7i& kh!& th- ph;i ngan &,m# Lu E nhY E\ phNn
m;nh =u! nhiu+ &n 'Wn E nhY+ 77u
+ C#p ph$" "hi%" b (&lloc!"ion o' de(ices)_ t-nh tr4ng thit E\ r;nh hay khng r;nh+ thit E\ )S &,p
&ho &ng 7i& no+ &ng 7i& no &n ).a 7o hng )2i ) &hr# Qhit E\ no &/ th '(ng &hung 7
ti )a Eao nhi9u &ng 7i& s0 '1ng &hung thit E\ &(ng l6&+ thit E\ no khng th '(ng &hung+u
7 ph;i tr!nh E\ t*& nghon (&!& &ng 7i& &hr 7 h4n ) ).2& &,p ti nguy9n)#
+ Cung c#p c$c h)m *+ l nhp,*u#" (-,. rou"ines)` f!& hm nh?pv[u,t so &he ',u sZ phs& t4p
7 )a '4ng &5a &!& thit E\ nh?pv[u,t+ =u;n lX 7i& s0 '1ng &hung &!& thit E\ nh?pv[u,t#
./H/H H0 >5E79 KT 8U 1B 7520C (M48>2>BYa279 SFY>VCY)
H thng [0 lX )a nhim l h thng m8 rng &5a h thng [0 lX )a &h.:ng# i 7Yi h )iu hnh
trong h thng [0 lX )a nhim+ 7i& &huyn )i &ng 7i& khng &hr &ng 7i& )ang thZ& thi &/
y9u &u nh?pv[u,t+ m khi &ng 7i& )ang thZ& thi ht thri gian =ui )\nh s0 '1ng fxl th- 7i&
&huyn )i &ng 7i& &Vng so [;y ra# $ti &ng 7i& ).2& thZ& hin luNn phi9n =ua &: &h &huyn
)i fxl+ thri gian mti ln &huyn )i 'i<n ra r,t nhanh n9n ng.ri s0 '1ng &/ &;m gi!& l &!&
&ng 7i& )ang ).2& thi hnh &(ng l6&# H thng [0 lX )a nhim &Un g3i l h thng &hia [ thri
gian (QimeeSharing Systems)#
d" '1 h thng &/ mt fxl 7 hin &/ Ea &ng 7i& {+ F+ f trong E nhY# Fa &ng 7i& ny so
).2& thZ& hin luNn phi9n_ &ng 7i& { thZ& hin trong kho;ng thri gian = (=uantum) th- t4m
ngng+ )n l.2t &ng 7i& F thZ& hin trong kho;ng thri gian =+ rWi )n l.2t &ng 7i& f# Sau )/
l4i )n l.2t {+ u l%p l4i 7i& thZ& thi &!& &ng 7i& &ho )n khi t,t &; &!& &ng 7i& hon t,t#
H-nh H#_ &!& &ng 7i& {+F+f s0 '1ng &pu luNn phi9n trong h thng [0 lX )a nhim
./H/M H0 >5E79 1B KT 8U (M48>2?\W=VYYW\ SFY>VCY)
$!y t"nh &/ nhiu E [0 lX &(ng &hia [ h thng ).rng truyn 'q liu+ )Wng hW+ E nhY 7 &!&
thit E\ ngo4i 7i# $ti fxl so thZ& hin mt &ng 7i& 7 khi )/ &!& &ng 7i& so thZ& sZ 'i<n ra
)Wng thri# H thng )a [0 lX &Un g3i l h thng [0 lX song song (xarallel Systems)#
H-nh H#_ m h-nh h thng )a [0 lX_ &/ nhiu &pu nh.ng s0 '1ng &hung E nhY
] $4 12bC =AB 50 >5E79 1B KT 8U
w SZ hng h/& &5a mt E [0 lX so khng ;nh h.8ng )n ton E h thng#
w H thng so thZ& hin r,t nhanh 'o thZ& hin &!& &ng 7i& )Wng thri tr9n &!& E [0 lX kh!&
nhau
w di& li9n l4& giqa &!& &ng 7i& '< 'ng ERng &!&h s0 '1ng E nhY '(ng &hung#
G
time
task
{
F
f
] P5c7 8Wd2 50 >5E79 1B KT 8U
w H thng )a [0 lX )i [sng (Symmetri& $ultixro&essing (S$x))_ mti E [0 lX &h4y 7Yi mt
E;n sao &5a h )iu hnh 7 &!& E [0 lX l ngang &,p# f!& h )iu hnh hin nay )u ht tr2
S$x#
w H thng )a [0 lX E,t )i [sng ({symmetri& multipro&essing)_ f/ mt E [0 lX &h"nh (master
pro&essor) kim so!t+ phNn 7i& &ho &!& E [0 lX kh!& (sla7e pro&essors)#
./H/e H0 >5E79 KT 8U ?5c7 ><7 (f2Y>\2g4>Vh O?V\B>279 SFY>VCY)
Q.:ng tZ nh. h thng )a [0 lX nh.ng mti E [0 lX &/ E nhY ri9ng# f!& E [0 lX li9n l4& 7Yi
nhau thng =ua &!& ).rng truyn 'Tn m4ng# $4ng p{L+ {L 7Yi h )iu hnh in'oys+ lLiM
&h"nh l &!& h thng [0 lX phNn t!n#
] P5c7 8Wd2 50 >5E79 KT 8U ?5c7 ><7` &/ hai lo4i
w xeeretoepeer_ h thng m4ng ngang hng+ &!& m!y t"nh ngang &,p+ khng &/ m!y no )/ng 7ai
trU =u;n lX ti nguy9n '(ng &hung#
w flienteser7er_ &/ mt m!y )/ng 7ai trU =u;n lX &!& ti nguy9n '(ng &hung g3i l m!y ser7er
(m!y &h5)+ &!& m!y kh!& g3i l m!y &lient (m!y kh!&h)# flient mun s0 '1ng ti nguy9n '(ng
&hung ph;i ).2& ser7er &,p =uyn# $ h-nh h thng &lienteser7er_
H-nh H#c_ m h-nh h thng [0 lX phNn t!n
] $4 12bC =AB 50 >5E79 KT 8U ?5c7 ><7
w >(ng &hung ti nguy9n_ m!y in+ t?p tin u
w Qang t& ) t"nh to!n_ phNn &hia &ng 7i& ) t"nh to!n tr9n nhiu 7\ tr" kh!& nhau
w {n ton_ Lu mt 7\ tr" E\ hng+ &!& 7\ tr" kh!& 7Tn tip t1& lm 7i&#
w Qruyn thng tin '< 'ng_ 'oynloa'vuploa' zile+ g8ivnh?n mail+u
./H/i H0 >5E79 KT 8U >5j2 92B7 >5k= (RVB8!T2CV SFY>VCY)
H thng so &ho kt =u; &h"nh [!& trong kho;ng thri gian nhanh nh,t# H thng th.rng '(ng &ho
nhqng sng '1ng &huy9n '1ng nh. l h thng )iu khin trong &ng nghip#
] C<= 8Wd2 50 >5E79 KT 8U >5j2 92B7 >5k=
w H thng [0 lX thri gian thZ& &sng (Har' realetime)_ &!& &ng 7i& ).2& hon t,t )6ng thri
)im =ui )\nh#
w H thng [0 lX thri gian thZ& mm (Sozt realetime)_ mti &ng 7i& &/ mt ) .u ti9n ri9ng 7 so
).2& thi hnh theo ) .u ti9n#
~hi tin tr-nh '(ng lri g3i h thng+ &n &ung &,p tham s &ho lri g3i h thng# f/ Ea ph.:ng
ph!p m tin tr-nh '(ng ) &huyn tham s &ho h )iu hnh_
e fhuyn tham s 7o thanh ghi
e p.u trq tham s trong mt E;ng trong E nhY 7 ghi )\a &h] E;ng 7o thanh ghi
e p.u trq tham s 7o sta&k 7 tham s ).2& l,y ra E8i h )iu hnh #
d" '1 &huyn )\a &h] E;ng M (E;ng &hsa &!& tham s) 7o thanh ghi+ g3i ng*t HJ# Lg*t HJ l lri
g3i h thng 'o h )iu hnh &ung &,p#
H-nh H#_ truyn tham s '4ng E;ng &ho ng*t HJ
y4t7 8U >2u7 >\:75
pri g3i hm $ t;
xi'zork() Q4o mt tin tr-nh &on ging tin tr-nh &ha
xi'yaitpi'(pi'+ statlo&+ options) 2i mt tin tr-nh &on kt th6&
^[it(status) ~t th6& 7i& thZ& thi tin tr-nh 7 tr; 7 tr4ng th!i
y4t7 8U TI? >27
pri g3i hm $ t;
'open(zile+hoy+u) $8 mt zile ) )3&+ ghi ho%& &; hai
S&lose(z') /ng mt zile )S m8 tr.Y& )/
Lrea'(z'+Euzzer+nEytes) 3& 'q liu t zile 7o 7(ng )m
L yrite(z'+Euzzer+nEytes) Dhi 'q liu t Euzzer 7o zile
xositionlseek(z'+ozzset+yhen&e) >i &huyn &on tr zile
Sstat(name+Euz) p,y thng tin tr4ng th!i &5a zile
y4t7 8U H0 >5E79 z28V q6 >5Z Cr=
pri g3i hm $ t;
Smk'ir(name+mo'e) Q4o th. m1& mYi
Srm'ir(name) M/a th. m1& rtng
Slink(nameH+nameI) Q4o mt )i t.2ng mYi nameI tr 7o )i t.2ng nameH tr.Y& )/
Sunlink(name) M/a )i t.2ng th. m1&
Smount(spe&ial+name+zlag) ~"&h ho4t h thng zile
Sunmount(spe&ial) Lgng k"&h ho4t h thng zile
H-nh H#Hb_ $t s lri g3i h thng
./M/( H0 >5E79 >5X79 hp=5 h{79 8075 (CWCCB7h!I7>V\?\V>V\ SFY>VC)
Hb
p t?p lnh &: E;n &(ng tr-nh thng '\&h lnh ) ng.ri s0 '1ng giao tip 7Yi h )iu hnh# f!&
lnh &: E;n nh. lnh =u;n lX tin tr-nh+ =u;n lX nh?p [u,t+ =u;n lX E nhY &h"nh+ =u;n lX E nhY
ph1+ =u;n lX t?p tin 7 &!& lnh E;o 7 h thngu f!& lnh trong h thng thng '\&h 'Ung lnh
thZ& ra &Vng so g3i &!& &!& lri g3i h thng#
./M/| y4t7 8U Cd79 (NV>}W\a279)
fung &,p &!& &hs& nang phNn =uyn+ &hia [ ti nguy9n m4ng+ li9n l4& giqa &!& tin tr-nh tr9n
m4ng+ u
./e C~U TRC H IU HNH
./e/. CL4 >\m= 1[7 92t7
H )iu hnh khng ).2& &hia thnh nhqng lYp (phn) r rt+ mt lYp &/ th g3i hm thu& E,t kP
lYp no kh!&# H )iu hnh ny ):n gi;n+ '< thit k+ '< &i )%t nh.ng kh/ E;o 7+ kh/ m8 rng+
7 kh/ nNng &,p# d" '1 h )iu hnh $S>OS l h )iu hnh &/ &,u tr6& ):n gi;n_ &h.:ng tr-nh
sng '1ng &/ th truy [u,t trZ& tip &!& hm nh?pv[u,t trong |O$ FiOS ) ghi trZ& tip l9n mn
h-nh hay E )iu khin )a#
H-nh H#HH_ f,u tr6& &5a h )iu hnh $Se>OS (&,u tr6& ):n gi;n)
H )iu hnh lLiM phi9n E;n )u ti9n &Vng &/ &,u tr6& ):n gi;n 7 ).2& &hia thnh hai phn_
phn system &alls 7 phn kernel# xhn kernel &ung &,p t,t &; &!& '\&h 71 &5a h )iu hnh# f!&
phn &/ th g3i lTn nhau#
H-nh H#HI_ &,u tr6& &5a h )iu hnh lLiM phi9n E;n )u ti9n (&,u tr6& ):n gi;n)
./e/& CL4 >\m= ?5c7 8v?
H )iu hnh ).2& &hia thnh nhiu lYp+ mti lYp ).2& [Ny 'Zng 'Za 7o nhqng lYp th,p h:n#
pYp '.Yi &(ng l phn &sng+ lYp tr9n &(ng l lYp giao tip 7Yi ng.ri s0 '1ng# $ti lYp &h] s0
'1ng nhqng hm 'o lYp '.Yi &ung &,p# H4t nhNn 8 lYp k lYp phn &sng+ '(ng &!& lnh &5a phn
&sng ) t4o &!& lri g3i h thng#
HH
Mem m h-nh phNn lYp 8 h-nh H#HI_ pYp $ tha k mt s hm &5a lYp $eH 7 &/ th &/ th9m
mt s hm &5a ri9ng m-nh# Lhqng hm m lYp $eH )%t thu& t"nh n th- lYp $ khng ).2& tha
k#
H-nh H#HJ_ m h-nh &,u tr6& phNn lYp
T@79 C5^= 7_79
O Qhao t!&
K fh.:ng tr-nh ng.ri 'ung
J }u;n lX Mu,tvLh?p
I Qruyn thng Qhao t!&eQin tr-nh
H }u;n lX E nhY
b a &h.:ng
H-nh H#HK_ &,u tr6& phNn lYp &5a h )iu hnh QH^
./e/H CL4 >\m= C<F tW
dYi h )iu hnh m!y ;o+ mt m!y ).2& gi; l?p thnh nhiu m!y+ ti nguy9n &5a h thng nh. l
fxl+ E nhY+ )a+u ).2& &hia [ ) t4o &!& m!y ;o# $ti m!y ;o ).2& & l?p 7Yi m!y ;o kh!&
n9n ti nguy9n '(ng &hung ).2& E;o 7 nh.ng &Vng 'Tn )n 7i& khng ).2& &hia [ ti nguy9n
trZ& tip#
HI
H-nh H#HO_ $ h-nh &,u tr6& m!y ;o
./e/M CL4 >\m= C82V7>!SV\qV\
H )iu hnh ).2& &hia thnh nhiu phn (g3i l &!& tin tr-nh ser7er)+ mti tin tr-nh thZ& hin
mt '\&h 71 nh. l '\&h 71 =u;n lX t?p tin+ =u;n lX tin tr-nh+ =u;n lX E nhY+ u f!& tin tr-nh
y9u &u (g3i l tin tr-nh &lient) so g0i y9u &u )n mt tin tr-nh ser7er+ tin tr-nh ser7er thZ&
hin 7 g0i kt =u; tr8 l4i &ho tin tr-nh &lient# H4t nhNn &h] &/ nhim 71 kim so!t =u! tr-nh li9n
l4& giqa &!& tin tr-nh &lient 7 ser7er#
] $4 12bC =AB =L4 >\m= =82V7>!YV\qV\
w H4t nhNn r,t nh+ &h] gWm &!& lnh &: E;n+ n9n '< E;o 7+ '< nNng &,p#
w $ti '\&h 71 &5a h )iu hnh 'o mt tin tr-nh ser7er );m nh?n+ &!& tin tr-nh ny )& l?p 7Yi
nhau n9n khi mt tin tr-nh ser7er E\ lti+ h thng 7Tn ho4t )ng#
w f!& tin tr-nh ser7er ).2& thZ& hin 8 &h ) ng.ri '(ng (useremo'e)+ khng ph;i 8 &h ) h4t
nhNn (kernelemo'e)+ n9n khng truy [u,t trZ& tip phn &sng#
w f,u tr6& &lienteser7er r,t th"&h h2p 7Yi m h-nh h thng phNn t!n# f!& tin tr-nh ser7er &/ th
thZ& thi 8 &!& m!y kh!& nhau#
H-nh H#H_ $ h-nh h )iu hnh &lienteser7er tr9n mt m!y
HJ
H-nh H#Hc_ $ h-nh h )iu hnh &lienteser7er tr9n nhiu m!y
./ i NGUYN ) THIT K H IU HNH
w H )iu hnh &n '< 7it+ '< s0a lti+ '< nNng &,p (n9n 7it h )iu hnh ERng ngn ngq &,p &ao
7- '< 7it 7 '< s0a lti h:n l 7it ERng ngn ngq assemEly)#
w H )iu hnh &n '< &i )%t+ '< E;o tr-+ khng &/ lti 7 hiu =5a#
w H )iu hnh &n '< s0 '1ng+ '< h3&+ an ton+ &/ ) tin &?y &ao 7 thZ& hin nhanh#
w H )iu hnh &n &/ t"nh kh; &huyn &ao (thZ& hin ).2& tr9n mt nh/m &!& phn &sng kh!&
nhau)#
w H )iu hnh &n &/ &h.:ng tr-nh SSD^L (System Deneration) thu th?p thng tin li9n =uan
)n phn &sng ) thit l?p &,u h-nh h )iu hnh &ho ph( h2p 7Yi mti m!y t"nh#
TM TT
$t h thng m!y t"nh gWm &/ phn &sng+ h )iu hnh 7 &!& &h.:ng tr-nh sng '1ng# H )iu
hnh gi6p &ho 7i& s0 '1ng m!y t"nh hiu =u;+ ):n gi;n h:n# H )iu hnh &/ nhiu lo4i nh.ng
thng '1ng l lo4i h )iu hnh )a nhim+ phNn t!n# H )iu hnh &ung &,p &!& '\&h 71 &: E;n
nh. '\&h 71 =u;n lX tin tr-nh+ '\&h 71 =u;n lX E nhY+ '\&h 71 =u;n lX t?p tin+ '\&h 71 =u;n lX
nh?pv[u,t+u 7 mt t?p &!& lri g3i h thng (ng*t)# H )iu hnh &n thit k sao &ho '< s0a lti+
'< &i )%t+ '< E;o tr-+ khng &/ lti+ '< s0 '1ng+ '< h3&+ ) tin &?y &ao+ thZ& hin nhanh 7 &/ t"nh
kh; &huyn &ao#
CU HI BI TP
H# L9u m1& )"&h &hung &5a h )iu hnh
I# xhNn Eit h thng )a &h.:ng 7 h thng )a nhim
J# L9u &!& 7,n ) m h thng )a &h.:ngv)a nhim &n gi;i =uyt
J# xhNn Eit h thng )a nhim 7 h thng )a [0 lX
K# xhNn Eit h thng )a [0 lX 7 h thng [0 lX phNn t!n
O# L9u m1& )"&h &5a h thng E nhY )m (Euzzere&a&hing system) trong h thng nh?pv[u,t
G# fh.:ng tr-nh )iu khin thit E\ (>ri7ers zor spe&izi& har'yare 'e7i&es) 'o h )iu hnh &ung
&,p hay 'o hSng s;n [u,t thit E\ &ung &,p
# fh.:ng tr-nh giao tip 7Yi &h.:ng tr-nh )iu khin thit E\ (general 'e7i&ee'ri7er interza&e) 'o
h )iu hnh hay 'o hSng s;n [u,t hay 'o ngn ngq l?p tr-nh hay 'o ng.ri l?p tr-nh &ung &,p
HK
c# xhn nhNn (kernel) &5a h )iu hnh $Se>OS gWm nhqng &h.:ng tr-nh no
# L9u khuyt )im &5a h )iu hnh &/ &,u tr6& ):n gi;n#
TI )IU THAM KHO
H# Dary # Lutt+ lni7ersity oz folora'o# fentralie' {n' >istriEute' Operating Systems# Se&on'
^'ition+ Ibbb#
I# |oEert Syiter# Operating Systems+ { xra&ti&al {pproa&h# xrenti&eeHall international+ in&#
HJ#
J# {n'rey S# QanenEaum# $o'ern Operating Systems# xrenti&eeHall international+ in&# Se&on'
^'ition+ IbbH#
K# {Eraham SilEers&hat xeter Faer Dal7in# Operating System &on&epts# ohn iley Sons+
in&# izth ^'ition+ H#
O# H# $# >eitel# Operating Systems# {''isoneesley in&# Se&on' ^'ition+ H#
G fm nang l?p tr-nh h thng &ho m!y 7i t"nh iF$exf t?p H 7 I+ t!& gi; $i&hael Qis&her#
# Qrn H4nh Lhi p9 ~h*& Lhi9n n Hong ~im# Di!o tr-nh h )iu hnh (t?p H I)#
H~HQL Ibbb#
HO
CH$NG II
yUN ) NHPJXU~T n yUN ) H THRNG TP TIN
fh.:ng @}lL p LHxvMlQ dn }lL p Hk QHLD Qx QiLA so giYi thiu 7 gi;i
th"&h &!& 7,n ) sau_
I#H# }u;n lX nh?pv[u,t
I#H#H xhNn lo4i 7 )%& t"nh &5a thit E\ nh?pv[u,t
I#H#I F )iu khin thit E\ nh?pv[u,t
I#H#J f!& &h.:ng tr-nh thZ& hin nh?pv[u,t 7 t &hs& h thng nh?pv[u,t
I#H#K f: &h nh?pv[u,t 7 &: &h >${
I#H#O f!& thu?t to!n l?p l\&h 'i &huyn )u )3&
I#H#G H s )an [en 7 ram 'isk
I#I }u;n lX h thng t?p tin
I#I#H f!& kh!i nim 7 )a &sng+ t?p tin+ th. m1&+ E;ng th. m1&
I#I#I f!& ph.:ng ph!p &i )%t h thng t?p tin#
I#I#J xh.:ng ph!p =u;n lX 'anh s!&h &!& khi trng
I#I#K xh.:ng ph!p =u;n lX sZ an ton &5a h thng t?p tin
I#I#O DiYi thiu mt s h thng t?p tin_ $S>OSvin'oys+ lLiM#
&/./ yUN ) NHPJXU~T
&/./. P5c7 8Wd2 q6 1= >G75 =AB >52u> gp 75I?JK4L>
] P5c7 8Wd2 >52u> gp 75I?JK4L>`
w Qhit E\ khi_ thng tin ).2& )3&vghi theo tng khi &/ k"&h th.Y& & )\nh 7 &/ )\a &h] [!&
)\nh+ 7" '1 )a l mt thit E\ khi#
w Qhit E\ tun tZ_ thng tin ).2& g0ivnh?n theo 'Sy tun tZ &!& Eit+ khng &/ )\a &h]+ 7" '1 mn
h-nh+ En ph"m+ m!y in+ &ar' m4ng+ &hut l thit E\ tun tZ#
w Qhit E\ kh!&_ &/ mt s &!& thit E\ khng ph( h2p 7Yi hai lo4i tr9n+ 7" '1 )Wng hW khng l
thit E\ khi+ &Vng khng l thit E\ tun tZ#
= >G75 =AB >52u> gp 75I?JK4L>`
w Q& ) truyn 'q liu_ 7" '1 En ph"m _ b#bH ~Fvs+ &hut b#bI ~Fvs ###
w >ung l.2ng l.u trq+ thri gian truy [u,t mt ):n 7\ 'q liu#
w fng '1ng_ '(ng ) nh?p hay [u,t
w :n 7\ truyn 'q liu_ truyn theo khi ho%& kX tZ
w Fiu 'i<n 'q liu_ )iu ny t(y thu& 7o tng thit E\ &1 th#
w Q-nh tr4ng lti_ nguy9n nhNn gNy ra lti+ &!&h m thit E\ E!o lti###
HG
H-nh I#H_ thri gian truy [u,t 7 'ung l.2ng &5a mt s thit E\ nh?pv[u,t
&/./& BD 1234 a52b7 >52u> gp 75I?JK4L> (IJO =W7>\W88V\)
p phn &sng )iu khin trZ& tip thit E\ nh?pv[u,t+ fxl khng th truy [u,t trZ& tip thit E\
nh?pv[uNt m ph;i thng =ua E )iu khin thit E\+ '(ng h thng ).rng truyn g3i l Eus# d" '1
E )iu khin mn h-nh )3& &!& kX tZ &n hin th\ trong E nhY 7 )iu khin &!& tia &5a f|Q
(ng ph/ng )in t0 &5a mn h-nh) ) [u,t kX tZ tr9n mn h-nh# Qhit E\ nh?pv[u,t 7 E )iu
khin ph;i tuNn theo &(ng &hun giao tip nh. &hun {LSi+ i^^^ hay iSOu
F )iu khin thit E\ nh?pv[u,t &/ th )iu khin ).2& nhiu thit E\+ 7" '1 mt E )iu khin
mn h-nh (7i'eo &ontroller) &/ th )iu khin nhiu mn h-nh#
H-nh I#I_ fxl truy [u,t &!& thit E\ nh?pv[uNt thng =ua E )iu khin thit E\
$ti E )iu khin &/ mt s thanh ghi ) li9n l4& 7Yi fxl+ &!& thanh ghi ny ).2& g!n mt )\a
&h] [!& )\nh nh. l mt phn &5a E nhY &h"nh+ g3i l !nh [4 E nhY nh?pv[u,t# d" '1_
F )iu khin
nh?pv[u,t
\a &h] nh?pv[u,t
()\a &h] &5a &!& thanh ghi)
de&t: ng*t
Wng hW bKb e bKJ c
Fn ph"m bGb e bGJ
|SIJI ph1 Ic e I HH
a &sng JIb e JI HJ
H
$!y in Jc e J HO
$n h-nh mono Jcb e JF e
$n h-nh mu J>b e J> e
a mm Jb e J HK
|SIJI &h"nh Jc e J HI
H-nh I#J_ E;ng )\a &h] &!& thanh ghi &5a mt s E )iu khin nh?pv[u,t#
fxl thZ& hin nh?pv[u,t ERng &!&h ghi lnh+ &(ng &!& tham s l9n &!& thanh ghi &5a E )iu
khin+ sau )/ fxl so thZ& hin &ng 7i& kh!&# ~hi E )iu khin thZ& hin [ong+ so ph!t sinh
mt ng*t ) E!o hiu &ho fxl Eit 7 )n l,y kt =u; (kt =u; &Vng ).2& E )iu khin l.u trong
&!& thanh ghi)#
&/./H C<= =5Z[79 >\:75 >5k= 5207 75I?JK4L> q6 > =5^= 50 >5E79 75I?JK4L>
] C<= =5Z[79 >\:75 >5k= 5207 75I?JK4L>`
w fh.:ng tr-nh nh?pv[u,t &5a ng.ri '(ng (user program)_ thZ& hin &!& lri g3i )n &h.:ng tr-nh
nh?pv[u,t )& l?p thit E\#
w fh.:ng tr-nh nh?pv[u,t )& l?p thit E\_ &Un g3i l lri g3i h thng nh?pv[u,t ho%& ng*t
nh?pv[u,t+ 'o h )iu hnh &ung &,p+ &h.:ng tr-nh nh?pv[u,t )& l?p thit E\ &ung &,p mt giao
tip )Wng nh,t &ho &h.:ng tr-nh nh?pv[u,t &5a ng.ri '(ng#
w fh.:ng tr-nh )iu khin thit E\ (>e7i&e 'ri7ers)_ 'o h )iu hnh ho%& nh s;n [u,t thit E\
&ung &,p+ &h.:ng tr-nh ny ph1 thu& 7o thit E\+ so nh?n nhqng y9u &u nh?pv[u,t &5a &h.:ng
tr-nh nh?pv[u,t )& l?p thit E\# Lu 'e7i&e 'ri7er )ang E?n+ y9u &u )/ so ).2& ).a 7o hng
)2i+ ng.2& l4i n/ so thZ& hin ngay y9u &u+ ERng &!&h &huyn lnh 7o thanh ghi &5a E )iu
khin thit E\ (ivO &ontroller)#
H-nh I#K_ SZ giao tip giqa &!& &h.:ng tr-nh thZ& hin nh?pv[u,t
Hc
] T =5^= 50 >5E79 75I?JK4L>
H thng =u;n lX nh?pv[u,t ).2& phNn &hia thnh O lYp l_ tin tr-nh ng.ri '(ng (user pro&esses)+
&h.:ng tr-nh nh?pv[u,t )& l?p thit E\ ('e7i&eein'epen'ent soztyare)+ &h.:ng tr-nh )iu khin
thit E\ ('e7i&e 'ri7ers)+ &h.:ng tr-nh kim so!t ng*t (interrupt han'lers)+ phn &sng (har'yare)#
$ti lYp &/ &hs& nang ri9ng 7 &/ th giao tip 7Yi lYp kh!&#
H-nh I#O_ m h-nh phNn lYp &5a h thng =u;n lX nh?pv[u,t
w Qin tr-nh ng.ri '(ng (user pro&esses)_ )\nh '4ng nh?pv[u,t+ thZ& hin lri g3i nh?pv[u,t#
w fh.:ng tr-nh nh?pv[u,t )& l?p thit E\ (>e7i&eein'epen'ent soztyare)_ )%t t9n+ E;o 7+ t &hs&
khi+ t &hs& E )m+ &,p ph!t+u
w fh.:ng tr-nh )iu khin thit E\ (>e7i&e 'ri7er)_ thit l?p gi! tr\ &!& thanh ghi thit E\+ kim tra
tr4ng th!i thit E\+u
w fh.:ng tr-nh kim so!t ng*t (interrupt han'lers)_ thng E!o &ho &h.:ng tr-nh )iu khin thit E\
khi thao t!& nh?pv[u,t hon t,t#
w xhn &sng nh?pv[u,t (ivO Har'yare)_ thZ& hin thao t!& nh?pv[u,t
d" '1 tin tr-nh ng.ri '(ng (user pro&esses) mun )3& mt khi 'q liu tr9n )a+ so g8i y9u &u
nh?pv[u,t )n &h.:ng tr-nh nh?pv[u,t )& l?p thit E\ ('e7i&eein'epen'ent soztyare)+ &h.:ng
tr-nh ny so t-m kim khi trong E )m nh?pv[u,t+ nu khi &n )3& &h.a &/ trong E )m+ n/ so
g3i &h.:ng tr-nh )iu khin thit E\ ('e7i&e 'ri7er)# fh.:ng tr-nh )iu khin thit E\ g0i y9u &u
)n )a &sng 7 tin tr-nh ng.ri '(ng so t4m ng.ng &ho )n khi thao t!& )3& )a hon t,t+ )a so
ph!t sinh mt ng*t thng E!o )S )3& [ong+ g8i t"n hiu ng*t &ho &h.:ng tr-nh kim so!t ng*t#
fh.:ng tr-nh kim so!t ng*t ghi nh?n tr4ng th!i &5a thit E\ 7 )!nh ths& tin tr-nh &5a ng.ri
'(ng ) tip t1& thZ& hin#
H
H-nh I#G_ khi thao t!& )3& )a hon t,t+ E )iu khin )a so ph!t sinh mt ng*t#
&/./M C[ =5u 75I?JK4L> q6 =[ =5u fMA
] C[ =5u 75I?JK4L>`
e F [0 lX ph!t sinh mt lnh ivO )n &!& thit E\ ivO+ sau )/ &hr &ho )n khi thao t!& ivO hon
t,t rWi mYi tip t1& [0 lX+ ho%&_
e F [0 lX ph!t sinh mt lnh ivO )n &!& thit E\ ivO+ sau )/ tip t1& 7i& [0 lX &ho tYi khi nh?n
).2& mt ng*t t thit E\ ivO E!o l )S hon t,t nh?pv[u,t+ E [0 lX t4m ng.ng 7i& [0 lX hin t4i
) &huyn =ua [0 lX ng*t+ ho%&_
e S0 '1ng &: &h >${
] C[ =5u fMA (f2\V=> MVCW\F A==VYY)`
Mt =u! tr-nh )3& )a+ fxl g0i &ho E )iu khin )a ('isk &ontroller) lnh )3& )a 7 &!& thng
s nh. )\a &h] tr9n )a &5a khi+ )\a &h] trong E nhY |{$ n:i so &,t khi )3& ).2&+ s Eyte &n
)3&+ sau )/ fxl tip t1& [0 lX &ng 7i& kh!&# F )iu khin so )3& khi tr9n )a+ tng Eit &ho tYi
khi ton E khi ).2& ).a 7o Euzzer &5a E )iu khin (lo&al Euzzer)# Qip theo E )iu khin
ph!t ra mt ng*t ) E!o &ho fxl Eit l thao t!& )3& )S hon t,t# fxl )n l,y 'q liu trong Euzzer
&huyn 7o E nhY &h"nh (|{$) ERng &!&h t4o mt 7Ung l%p )3& ln l.2t tng Eyte# Qhao t!& ny
lm lSng ph" thri gian &5a fxl#
ti .u+ E )iu khin th.rng ).2& &ung &,p th9m kh; nang truy [u,t E nhY trZ& tip (>${)#
Lgha l sau khi E )iu khin )S )3& ton E 'q liu t thit E\ 7o Euzzer &5a n/+ E )iu khin
&huyn Eyte )u ti9n 7o E nhY &h"nh t4i )\a &h] ).2& m t; E8i )\a &h] E nhY >${# Sau )/ n/
tang )\a &h] >${ 7 gi;m s Eytes ph;i &huyn# }u! tr-nh ny l%p l4i &ho tYi khi s Eytes ph;i
&huyn ERng b+ 7 E )iu khin t4o mt ng*t# Lh. 7?y E )iu khin tZ &huyn khi 7o trong E
nhY &h"nh#
H-nh I#_ f: &h >${
Ib
&/./e C<= >54I> >W<7 8I? 8p=5 h2 =54Fb7 1@4 1x=
truy [u,t &!& khi tr9n )a+ tr.Y& ti9n ph;i 'i &huyn )u )3& )n tra&k th"&h h2p+ thao t!& ny
g3i l seek 7 thri gian ) hon t,t thao t!& ny g3i l seek time# $t khi )S )n )6ng tra&k+ &Un
ph;i &hr &ho )n khi khi &n thit )n '.Yi )u )3&+ thri gian &hr ny g3i l laten&y time# fui
&(ng l &huyn 'q liu t )a 7o E nhY &h"nh+ thri gian ny g3i l transzer time# Qng thri gian
&ho '\&h 71 )a &h"nh l tng &5a Ea kho;ng thri gian tr9n (seek time w laten&y time w transzer
time)# Qrong )/ seek time 7 laten&y time l m,t nhiu thri gian nh,t+ 'o )/ ) gi;m thiu thri
gian truy [u,t+ h )iu hnh &n ).a ra &!& thu?t to!n l?p l\&h 'ri )u )3& sao &ho ti .u#
H-nh I#c_ m h-nh )a &sng
/010201 3hu" "o$n 4C45 ('irs"6come7 'irs"6ser(ed)
Qhu?t to!n so 'ri )u )3& theo ths tZ )6ng 7Yi ths tZ &!& khi &n )3&+ thu?t to!n '< l?p tr-nh
nh.ng &h.a tt# d" '1 &n ph;i )3& &!& khi theo ths tZ nh. sau_ c+ HcJ+ J+ HII+ HK+ HIK+ GO+ 7
G# Di; s0 hin t4i )u )3& )ang 8 7\ tr" OJ+ thu?t to!n so 'ri )u )3& ln l.2t )i =ua &!& khi OJ+
c+ HcJ+ J+ HII+ HK+ HIK+ GO+ 7 G
H-nh I#_ f!& E.Y& 'i &huyn )u )3& theo thu?t to!n fS
/01020/ 3hu" "o$n 5534 (shor"es"6see86"ime6'irs")
Qhu?t to!n so 'i &huyn )u )3& ln l.2t )n &!& khi &n )3& theo 7\ tr" gn 7Yi 7\ tr" hin hnh
&5a )u )3& nh,t# d" '1 &n )3& &!& khi nh. sau_ c+ HcJ+ J+ HII+ HK+ HIK+ GO+ 7 G# Di; s0
hin t4i )u )3& )ang 8 7\ tr" OJ+ thu?t to!n so 'ri )u )3& ln l.2t )i =ua &!& khi OJ+ GO+ G+ J+
HK+ c+ HII+ HIK 7 HcJ#
H-nh I#Hb_ f!& E.Y& 'i &huyn )u )3& theo thu?t to!n SSQ
IH
/010209 3hu" "o$n 5C&:
Qhu?t to!n so 'i &huyn )u )3& 7 mt ph"a &5a )a 7 t )/ 'i &huyn =ua ph"a kia# d" '1 &n
)3& &!& khi nh. sau_ c+ HcJ+ J+ HII+ HK+ HIK+ GO+ 7 G# Di; s0 hin t4i )u )3& )ang 8 7\ tr"
OJ+ )u )3& ln l.2t )i =ua &!& khi_ OJ+ J+ HK+ GO+ G+ c+ HII+ HIK 7 HcJ
H-nh I#HH_ f!& E.Y& 'i &huyn )u )3& theo thu?t to!n Sf{L
/01020; 3hu" "o$n C65C&:
Qhu?t to!n ny t.:ng tZ nh. thu?t to!n Sf{L+ &h] kh!& l khi n/ 'i &huyn )n mt )u no )/
&5a )a+ n/ so l?p ts& tr8 7 )u E*t )u &5a )a# p,y l4i 7" '1 tr9n+ khi )/ ths tZ truy [u,t &!&
khi so l OJ+ GO+ G+ c+ HII+ HIK+ HcJ+ HK+ J
H-nh I#HI_ f!& E.Y& 'i &huyn )u )3& theo thu?t to!n feSf{L
Qhu?t to!n Sf{L 7 feSf{L th"&h h2p &ho nhqng h thng ph;i truy [u,t 'q liu khi l.2ng
lYn# Qhu?t to!n l?p l\&h ph1 thu& 7o s khi 7 kiu khi &n truy [u,t+ 7" '1 nu s khi &n
truy [u,t l li9n t1& th- fS l thu?t to!n tt#
&/./i H0 YE 1B7 KV7 q6 RBC f2YaY
H0 YE 1B7 KV7 (I7>V\8VBqV)
F )iu khin )a ph;i thZ& hin hai &hs& nang l )3&vghi 'q liu 7 &huyn 'q liu 7o h thng#
)Wng E hai &hs& nang ny+ &!& se&tor ).2& )!nh s sao &ho &!& se&tor &/ s hiu li9n tip
nhau khng nRm k E9n nhau m &/ mt kho;ng &!&h+ kho;ng &!&h ny ).2& [!& )\nh E8i =u!
tr-nh zormat )a 7 g3i l h s )an [en#
H-nh I#HJ_ (a) interlea7eb+ (E) interlea7eH+ (&) interlea7eI
II
d" '1 gi; s0 h thng &/ H se&torvtra&k+ 7 interlea7e K th- &!& se&tor ).2& E tr" theo ths tZ
nh. sau_ H+ HK+ Hb+ G+ I+ HO+ HH+ + J+ HG+ HI+ c+ K+ H+ HJ+ + O
f!&h )3& ln l.2t nh. sau _
pn H_ H+ I+ J+ K+ O
pn I_ G+ + c+ + Hb
pn J_ HH+ HI+ HJ+ HK+ HO
pn K_ HG+ H
Lh. 7?y sau En ln ths tZ &!& se&tor )3& ).2& 7Tn l t H )n H
] RBC h2Ya`
H )iu hnh &/ th '(ng mt phn &5a E nhY &h"nh ) l.u trq &!& khi )a+ phn E nhY ny g3i
l |am >isk # |am >isk &Vng ).2& &hia lm nhiu khi+ mti khi &/ k"&h th.Y& ERng k"&h th.Y&
&5a khi tr9n )a# ~hi 'ri7er nh?n ).2& lnh )3&vghi khi+ so t-m trong E nhY |am >isk 7\ tr" &5a
khi+ 7 thZ& hin 7i& )3&v ghi trong )/ thay 7- t )a # |{$ 'isk &/ .u )im l &ho php truy
[u,t nhanh+ khng ph;i &hr =uay hay t-m kim+ th"&h h2p &ho 7i& l.u trq nhqng &h.:ng tr-nh
hay 'q liu ).2& truy [u,t th.rng [uy9n#
&/& yUN ) H THRNG TP TIN
&/&/. B =^79 >I? >27 >5Z Cr=
&/&/./. B =^79 (5B\h h2Ya)
a &sng ).2& )\nh '4ng thnh &!& 7Ung trUn )Wng tNm g3i l rSnh (tra&k)+ mti rSnh ).2& &hia
thnh nhiu phn ERng nhau g3i l &ung (se&tor)# $t khi (&luster) gWm mt ho%& nhiu &ung 7
'q liu ).2& )3&vghi theo ):n 7\ khi# di& s0 '1ng ):n 7\ khi ) tang hiu =u; trong 7i&
)3&vghi 7 gi;m &hi ph" =u;n lX s )\a &h] tr9n )a# Lgoi ra khi )a &sng lYn+ &/ th &hia thnh
nhiu phNn 7(ng (partition)+ mti phNn 7(ng gWm mt s t tr1 (&y&lin'er) li9n tip# $t t tr1 l
t?p h2p &!& rSnh &(ng E!n k"nh#
H-nh I#HK_ m h-nh t &hs& )a
&/&/./& w28V (>I? >27)
ile l mt t?p h2p thng tin ).2& )%t t9n 7 l.u trq tr9n )a# ile l ):n 7\ l.u trq thng tin nh
nh,t tr9n )a &5a h )iu hnh# ile &/ th l.u trq &h.:ng tr-nh hay 'q liu+ zile &/ th l 'Sy tun
tZ &!& Eyte khng &,u tr6& ho%& &/ &,u tr6& 'Ung (kt th6& ERng k" tZ enter)+ ho%& &,u tr6& mTu tin
&/ &hiu 'i & )\nh hay thay )i# f,u tr6& zile 'o h )iu hnh ho%& &h.:ng tr-nh =ui )\nh# ile
&/ th truy [u,t tun tZ ()3& &!& Eyte theo ths tZ t )u zile)+ ho%& truy [u,t ngTu nhi9n ()3&vghi
t4i mt 7\ tr" E,t kP trong zile)#
IJ
se&tor tra&k
] T54D= >G75 z28V (z28V B>>\2g4>VY)
Qhu& t"nh &5a zile l &!& thng tin li9n =uan )n zile+ s thu& t"nh &5a zile t(y theo h )iu hnh+
nh.ng th.rng th- zile &/ &!& thu& t"nh sau_
w Q9n zile (zile name)
Q9n zile '(ng ) phNn Eit zile ny 7Yi zile kh!&+ lLiM phNn Eit t9n zile &hq th.rng 7Yi t9n zile
&hq hoa nh.ng iL>OS th- khng phNn Eit# Qrong lLiM t9n zile &/ th &/ nhiu phNn &!&h
(7" '1 prog#&#)+ iL>OS &h] &/ mt phNn &!&h# H )iu hnh '(ng phn m8 rng ) nh?n
'4ng kiu &5a zile 7 &!& thao t!& &/ th thZ& hin tr9n kiu zile )/+ 7" '1 phn m8 rng l #e[e+
#&om th- h )iu hnh hiu l zile kiu nh\ phNn &/ th thZ& thi nh.ng nu khng thZ& thi ).2&
th- l 'o &,u tr6& zile khng )6ng =ui )\nh &5a zile #e[e+ #&om#
w ~iu zile (zile type)
f/ hai lo4i zile l zile 7an E;n 7 zile nh\ phNn# ile 7an E;n &hsa &!& 'Ung 7an E;n &ui 'Ung &/
kX tZ [ung 'Ung (k" tZ enter)# ile nh\ phNn gWm 'Sy &!& Eyte+ &/ &,u tr6& t(y theo &h.:ng tr-nh
t4o ra zile# d" '1 zile #&om+ #e[e+ #ya7+ #Emp+u# h )iu hnh &h] thZ& thi ).2& zile #&om+ #e[e nu
n/ &/ &,u tr6& )6ng =ui )\nh#
w d\ tr" zile_ >anh s!&h &!& khi (&luster) tr9n )a )S &,p &ho zile#
w ~"&h th.Y& zile_ ~"&h th.Y& hin thri+ k"&h th.Y& ti )a &5a zile t"nh ERng Eytesvyor'svElo&ks+u
w Lgy gir t4o zile+ ng.ri t4o zile_ Lgy+ gir t4o zile ngy+ gir &?p nh?t zile gn nh,t ngy+ gir
s0 '1ng zile sau &(ng+ ng.ri t4o zile#
w poai zile_ zile n+ &h] )3&+ h thng+ l.u trq+ zilevth. m1&
w F;o 7 zile_ >(ng a&&ount (username+ passyor')+ oynerv&reator ho%& '(ng =uyn )S &,p &ho
user+ group tr9n zile hay th. m1&+ gWm &!& =uyn sau_ =uyn )3& (|ea')+ ghi (rite)+ [/a
(>elete)+ thZ& thi (^[e&ute)+ lit k9 (pist)+ th9m ({ppen')###
T54D= >G75 795B
xrote&tion {i &/ th truy [u,t zile 7 ERng &!&h no
xassyor' $?t khu &n &/ ) truy [u,t zile
freator i> &5a ng.ri t4o zile
Oyner Lg.ri s8 hqu hin t4i
|ea'eonly zlag b_ &ho php )3&vghi H_ &h] &ho php )3&
Hi''en zlag b_ E-nh th.rng H_ khng [u,t hin khi lit k9
System zlag b_ zile E-nh th.rng+ H_ zile h thng
{r&hi7e zlag b_ )S Ea&kup+ H_ &n ).2& Ea&kup#
{SfiivEinary zlag b_ zile '(ng mS {Sfii+ H_ zile '(ng mS nh\ phNn
|an'om {&&ess zlag b_ &h] &ho php truy [u,t tun tZ H_ &ho php truy [u,t ngTu
Qemporary zlag b_ E-nh th.rng+ H_ zile E\ h5y khi tin tr-nh kt th6&
po&k zlags b _ khng kh/a+ kh!& b_ kh/a
|e&or' length S Eytes trong mt mTu tin
~ey position ozzset &5a kh/a trong tng mTu tin
~ey length S Eyte &5a kh/a trong mTu tin
freation time Lgy gir t4o zile
Qime oz last a&&ess Lgy gir truy [u,t zile gn nh,t
Qime oz last &hange Lgy gir &?p nh?t ni 'ung zile gn nh,t
furrent sie S Eyte &5a zile
$a[imum sie S Eytes ti )a &ho php &5a zile
H-nh I#HO_ $t s thu& t"nh &5a zilevth. m1&
IK
] C<= >5BW ><= >\7 z28V
H )iu hnh &n &ung &,p &!& &!& lri g3i h thng (system &all) [0 lX zile nh. l_
t4ov[/avm8v)/ngv)3&vghivth9mv'ri &on tr zilevl,y thu& t"nhv)%t thu& t"nhv)i t9n zile+u
w Q4o zile (&reate)_ Dhi mt m1& &hsa thng tin zile 7o &,u tr6& th. m1& 7 t-m mt khi trng
&,p &ho zile#
w M/a zile ('elete)_ Q-m t9n zile trong &,u tr6& th. m1&+ gi;i ph/ng t,t &; khi )a m zile &him
giq+ [o! m1& t.:ng sng trong &,u tr6& th. m1&#
w $8 zile (open)_ ~hi ln )u ti9n zile ).2& truy [u,t+ thng tin 7 zile ).2& )3& t &,u tr6& th.
m1& 7 l.u 7o E;ng openeziles trong E nhY# Lu zile &h.a )/ng+ th- nhqng ln truy [u,t sau so
khng ph;i t-m thng tin 7 zile trong &,u tr6& th. m1& nqa m l,y trong E;ng openeziles# Qhao
t!& m8 zile so tr; 7 &h] m1& trong E;ng openeziles
w /ng zile (&lose)_ Dhi m1& t.:ng sng trong E;ng openeziles 7o &,u tr6& th. m1&+ 7 h5y m1&
ny trong E;ng openeziles#
w 3& zile (rea')_ Q-m t9n zile trong &,u tr6& th. m1&+ Eit ).2& 7\ tr" l.u trq zile+ )3& zile 7o E
nhY+ '(ng mt &on tr )3& (rea' pointer) ) ghi nh?n 7\ tr" &ho ln )3& k tip#
w Dhi zile (yrite)_ Q-m t9n zile trong &,u tr6& th. m1&+ l,y ).2& s hiu khi nhY )u ti9n &,p ph!t
&ho zile+ ghi 'q liu &5a zile 7o 7\ tr" ny+ '(ng mt &on tr ghi (yrite pointer) ) ghi nh?n 7\ tr"
&ho ln ghi k tip#
w Dhi th9m 7o &ui (appen')
w p,y thu& t"nh (get attriEute)
w %t thu& t"nh (set attriEute)
w i t9n zile (rename)
&/&/./H CL4 >\m= >5Z Cr= (f2\V=>W\F S>\4=>4\V)
] K5<2 720C
f,u tr6& th. m1& l &,u tr6& '(ng ) =u;n lX t,t &; &!& zile tr9n )a# f,u tr6& th. m1& &Vng ).2&
ghi tr9n )a 7 gWm nhiu m1& (>ire&tory ^ntry)+ mti m1& l.u thng tin &5a mt zile# Qhng
th.rng thng tin zile gWm &/ thu& t"nh zile 7 'anh s!&h &!& s hiu khi )a l.u trq zile# ~hi mt
zile ).2& truy [u,t+ h )iu hnh t-m t9n zile trong &,u tr6& th. m1&+ nu t-m th,y so l,y thu& t"nh
7 &!& s hiu khi l.u trq zile ).a 7o mt E;ng trong E nhY (E;ng openeziles)+ &!& ln sau khi
truy [u,t zile ho%& thay )i thng tin zile th- khng &n truy [u,t )a m truy [u,t E;ng openeziles
trong E nhY &h"nh 7 so nhanh h:n nhiu# H )iu hnh &Vng &n &ung &,p &!& lri g3i h thng
) thao t!& tr9n th. m1& t.:ng tZ nh. )i 7Yi zile# f!& thao t!& tr9n th. m1& &/ th l_ freate+
>elete+ Open+ flose+ |ea'+ |ename+ pink+ lnlink+u
H-nh I#HG_ m h-nh &,u tr6& th. m1&+ mti m1& trong &,u tr6& th. m1& =u;n lX mt zile ho%& th.
m1& &on
IO
F 1 F 2
F 3
F 4
F n
Dir Structure
Files
m1& b m1& H u#m1& nf,u tr6& th.
m1&
Qenile Qhuo&Qinh
diQripuuQru$t m1& trong &,u
tr6& th. m1&
] CL4 >\m= >5Z Cr=
w Qh. m1& mt &,p_ (Single pe7el >ire&tory)
f,u tr6& th. m1& so &hsa thu& t"nh &5a t,t &; &!& zile &5a t,t &; ng.ri '(ng# f,u tr6& ny ):n
gi;n nh.ng gNy ra kh/ khan 'o )%t t9n zile khng ).2& tr(ng nhau 7 ng.ri s0 '1ng khng th
phNn nh/m &ho zile &Vng nh. t-m kim &h?m khi s l.:ng zile nhiu#
H-nh I#H_ &,u tr6& th. m1& mt &,p
w Qh. m1& hai &,p_ (Qyo pe7el >ire&tory)
SZ E,t tin &h5 yu &5a th. m1& mt &,p l nhm lTn 7 t9n zile giqa nhqng ng.ri '(ng# Di;i
ph!p l t4o th. m1& ri9ng (user zile 'ire&tory_l>) &ho mti user# $ti l> &/ &,u tr6& ging
nhau nh.ng &h] =u;n lX zile &5a mt user+ nh. 7?y &!& user &/ th &/ zile &(ng t9n nh.ng user &h]
).2& truy [u,t &!& zile trong th. m1& &5a user )/# Di;i ph!p ny t-m kim zile nhanh h:n+ nh.ng
7Tn khng &/ kh; nang nh/m zile# Qrong h-nh I#O+ userH mun truy [u,t zile test th- s0 '1ng
).rng 'Tn_ userHvtest#
H-nh I#Hc_ &,u tr6& th. m1& hai &,p
w Qh. m1& )a &,p_ (QreeeStru&ture' >ire&tory)
f/ mt th. m1& g3i l th. m1& g& (root 'ire&tory) 7 trong )/ &/ &!& th. m1& &on# $ti user &/
th t4o nhqng th. m1& &on ri9ng+ trong mti th. m1& &on &hsa zile 7 &/ th &hsa th. m1& &on
kh!&# f,u tr6& ny &ho php user &/ th truy [u,t )n zile &5a user kh!& thng =ua =uyn ).2&
&,p 7 &ho php t-m kim hiu =u; h:n+ &Vng nh. &/ kh; nang phNn nh/m zile#
H-nh I#H_ &,u tr6& th. m1& )a &,p
IG
H )iu hnh &/ th &hia )a &sng thnh nhiu phNn 7(ng (partition)+ mti phNn 7(ng gWm nhiu
t tr1 (&y&lin'er) li9n tip+ ho%& t?p h2p nhiu )a &sng thnh mt phNn 7(ng# $ti phNn 7(ng so
&/ &,u tr6& th. m1& ri9ng ) =u;n lX &!& t?p tin trong phNn 7(ng )/#
H-nh I#Ib_ t &hs& phNn 7(ng )a
] Bt79 >5Z Cr= (f2\V=>W\F TBg8V)
F;ng th. m1& l mt '4ng &i )%t ERng 'Sy mt &hiu &5a &,u tr6& th. m1& (>ire&tory Stru&ture)#
F;ng th. m1& &/ nhiu m1& ('ire&tory entry)+ mti m1& l.u trq thng tin &5a mt zilevth. m1&+
thng tin zile gWm thu& t"nh &5a zile 7 )\a &h] tr9n )a &5a ton E zile ho%& s hiu &5a khi )u
ti9n &hsa zile ho%& l s ieno'e &5a zile# $ti )a &/ mt E;ng th. m1& g3i l E;ng th. m1& g&+
&i )%t 8 phn )u &5a )a 7 &/ th &/ nhiu E;ng th. m1& &on#
d" '1_
w $ti m1& trong E;ng th. m1& &5a h )iu hnh $S>OSviL>OS ({Q) &h] l.u s hiu khi
)u ti9n &5a mti zilevth. m1&# ~hi )/ ) Eit s hiu &!& khi &Un l4i &5a zilevth. m1&+ h )iu
hnh so '(ng E;ng &,p ph!t zile (E;ng {Q)#
H-nh I#IH_ &,u tr6& mt m1& trong E;ng th. m1& &5a $S>OSviL>OS ({Q)
w $ti m1& trong E;ng th. m1& &5a h )iu hnh fxv$ &hsa t,t &; &!& s hiu khi &hsa zilevth.
m1&+ khi )/ khng &n '(ng E;ng &,p ph!t zile (E;ng {Q)
H-nh I#II_ &,u tr6& mt m1& trong E;ng th. m1& &5a fxv$
I
w $ti m1& trong E;ng th. m1& &5a h )iu hnh lLiM l.u s hiu ieno'e
H-nh I#IJ_ &,u tr6& mt m1& trong E;ng th. m1& &5a lLiM
&/&/& C62 1> 50 >5E79 s4t7 8U z28V
di& &i )%t h thng =u;n lX zile ph1 thu& 7o 7i& h )iu hnh &h3n ph.:ng ph!p &,p ph!t
khi nhY &ho zile l li9n t1& hay khng li9n t1&#
&/&/&/. CL? ?5<> a5E2 75v 827 >r=
~hi &,p ph!t khi nhY li9n t1&+ ) &i )%t h thng =u;n lX zile+ h )iu hnh &h] &n '(ng E;ng
th. m1&+ mti m1& trong E;ng th. m1& ngoi nhqng thu& t"nh thng th.rng &5a zile+ &n &/ th9m
thng tin 7 s hiu khi E*t )u (start) 7 s khi )S &,p &ho zile (length)# xh.:ng ph!p ny '<
&i )%t+ '< thao t!& 7- ton E zile ).2& )3& t &!& khi li9n tip tr9n )a khng &n )\nh 7\ l4i+
nh.ng &/ khuyt )im l zile khng th ph!t trin 7 &/ th gNy ra lSng ph" 'o sZ phNn m;nh tr9n
)a#
H-nh I#IK_ F;ng th. m1& trong m h-nh &,p ph!t li9n t1&
&/&/&/& CL? ?5<> a5E2 75v a5X79 827 >r=
~hi &,p ph!t khi nhY li9n t1&+ ) &i )%t h thng =u;n lX zile+ h )iu hnh s0 '1ng E;ng th.
m1& 7 &n ph;i s0 '1ng th9m mt trong &!& &,u tr6& sau_ 'anh s!&h li9n kt+ E;ng &h] m1&+ E;ng
&,p ph!t zile+ E;ng ieLo'es#
/0/0/0/01 <!nh s$ch li=n 8%">
$ti m1& trong E;ng th. m1& &hsa s hiu &5a khi )u ti9n (start) 7 s hiu &5a khi kt th6&
(en')+ mti khi tr9n )a 'nh mt s Eyte )u ho%& &ui (th.rng l K Eytes) ) l.u s hiu khi k
tip &5a zile+ phn &Un l4i &5a khi so l.u 'q liu &5a zile# xh.:ng ph!p ny khng E\ lSng ph" 'o
phNn m;nh ngo4i 7i+ nh.ng truy [u,t ngTu nhi9n &h?m 7 r,t kh/ E;o 7 &!& s hiu khi &5a ile#
Ic
H-nh I#IO_ m h-nh &,p ph!t khng li9n t1&+ s0 '1ng 'anh s!&h li9n kt
/0/0/0/0/ ?ng ch@ mAc (inde* "!ble)>
$ti zile &/ mt E;ng &h] m1& &him mt ho%& 7i khi+ E;ng &h] m1& &hsa t,t &; &!& s hiu khi
&5a mt zile# ~hi )/ mt m1& trong E;ng th. m1& so l.u s hiu khi &hsa E;ng &h] m1& &5a zile#
xh.:ng ph!p ny '< E;o 7 &!& E;ng &h] m1&+ ngha l E;o 7 ).2& &!& s hiu khi &5a zile
nh.ng tn nhiu khi nhY ) l.u &!& E;ng &h] m1&#
d" '1 )a &sng &/ 'ung l.2ng JI DF+ k"&h th.Y& H khi l OHI Fytes# Hi k"&h th.Y& mt E;ng
&h] m1& l Eao nhi9u nu mun =u;n lX zile &/ k"&h th.Y& lYn nh,t l IOG~
JI DFI
O
[ I
Hb
[ I
Hb
~F I
IO
~F I
HG
khi &/ I
HG
)\a &h] tr9n )a mti phn t0 E;ng &h]
m1& &n I Eyte# ile k"&h th.Y& IOG~F IOG [ HbIK Eyte OHI khi E;ng &h] m1& &n &/
OHI phn t0 mt E;ng &h] m1& &him hai khi
H-nh I#IG_ m h-nh &,p ph!t khng li9n t1&+ s0 '1ng E;ng &h] m1&
/0/0/0/09 ?ng c#p ph$" 'ile (4&3> 4ile &lloc!"ion 3!ble)
Lu mti m1& trong E;ng th. m1& &h] &hsa s hiu &5a khi )u ti9n+ th- s hiu &!& khi &Un l4i
&5a zile so ).2& l.u trong mt E;ng g3i l E;ng &,p ph!t zile (E;ng {Q)# xh.:ng ph!p ny '< E;o
7 &!& s hiu khi )S &,p &ho zile+ truy [u,t zile ngTu nhi9n '< 'ng h:n+ k"&h th.Y& zile '< m8
rng nh.ng E;ng {Q E\ giYi h4n E8i k"&h th.Y& E nhY 'nh &ho n/# Ny &h"nh l &!&h m h
)iu hnh $S>OS+ OSvI+ in'oys ({Q) s0 '1ng ) =u;n lX ile#
I
d" '1_ Di; s0 zile test#t[t ).2& l.u trq ln l.2t 8 J khi tr9n )a &/ s hiu l_ IH+ GHc+ JJ# S
hiu khi )u l IH ghi trong mt m1& &5a E;ng th. m1&+ &!& s hiu khi tip theo l GHc+ JJ
ghi trong E;ng &,p ph!t zile#
H-nh I#I_ m h-nh &,p ph!t khng li9n t1&+ s0 '1ng E;ng {Q
d" '1_ Di; s0 zile { 7 zile F ).2& &,p ph!t gWm &!& khi theo ths tZ sau_ zile {_ K+ + I+ Hb+ HI
zile F_ G+ J+ HH+ HK# ~hi )/ trong E;ng th. m1& so &/ mt m1& l.u t9n zile { 7 s hiu khi )u
&5a zile { l K# Q.:ng tZ &/ mt m1& l.u t9n zile F 7 s hiu khi )u &5a zile F l G# f!& s hiu
khi tip theo &5a zile { 7 zile F l.u trong E;ng &,p ph!t zile (zat)
F;ng th. m1&_
u ({+ K) u (F+ G) u
^ntry &5a { ^ntry &5a
F
F;ng {Q _
H-nh I#Ic_ m h-nh &,p ph!t khng li9n t1&+ s0 '1ng E;ng {Q+ &/ hai zile
Jb
/0/0/0/0; ?ng -6nodes>
$ti zile ).2& =u;n lX ERng mt &,u tr6& g3i l ieno'e+ mti ieno'e gWm hai phn_ phn ths nh,t
l.u trq thu& t"nh zile+ phn ths hai gWm HJ phn t0_ Hb phn t0 )u &hsa Hb s hiu khi )u ti9n
&5a zile+ phn t0 ths HH &hsa s hiu khi &hsa E;ng single+ phn t0 ths HI &hsa s hiu khi &hsa
E;ng 'ouEle+ phn t0 ths HJ &hsa s hiu khi &hsa E;ng triple# Qrong )/ mti phn t0 &5a E;ng
triple &hsa s hiu khi &hsa E;ng 'ouEle+ mti phn t0 &5a E;ng 'ouEle &hsa s hiu khi &hsa
E;ng single 7 mti phn t0 &5a E;ng single &hsa s hiu khi 'q liu tip theo &,p &ho zile#
Dhi &h6_ H )iu hnh lni[ s0 '1ng &,u tr6& ny 7 s phn t0 &5a phn ths hai+ khng nh,t thit
l HJ m &/ th thay )i t(y phi9n E;n &5a lLiM
H-nh I#I_ &,u tr6& mt ieno'e trong E;ng ieno'es
B PhCDng ph$p "E chFc Gun l HI! bJng -6nodes>
w $F|($aster Foot |e&or')_ l se&tor )u ti9n &hsa thng tin 7 )a#
w xartion QaEle_ E;ng phNn 7(ng &hsa &!& thng tin 7 mti phNn 7(ng#
$t phNn 7(ng ).2& t &hs& thnh &!& phn sau_ Eoot Elo&k+ super Elo&k+ zree spa&e mgmt+ ie
no'es+ root 'ir+ ziles an' 'ire&tories# Qrong )/ ieno'es l E;ng ieno'es gWm nhiu m1&+ mti m1&
g3i l mt ieno'e+ &hsa mt &,u tr6& ieno'e ghi thng tin &5a mt zile# $ti m1& &5a E;ng th. m1&
g& (root 'ir) ghi t9n zile 7 s hiu ieno'es &5a zile# xh.:ng ph!p ny t.:ng )i linh )ng 7
hiu =u; khi =5an lX nhqng h thng zile lYn#
JH
H-nh I#Jb_ m h-nh &,p ph!t khng li9n t1&+ s0 '1ng E;ng ieno'es tng =u!t
d" '1 h )iu hnh mun )3& zile vusrvastvmEo[+ tr.Y& ti9n t-m t9n th. m1& @usrA trong E;ng th.
m1& g& (root 'ir)+ 7 nh?n th,y th. m1& @usrA &/ ieno'es l G# Qip theo truy [u,t phn t0 ieno'e
ths G trong E;ng ieno'es+ l,y ).2& s hiu khi )u &5a @usrA l HJI+ khi ny so &hsa E;ng th.
m1& &on (suE 'ir) &5a @usrA# Qip theo t-m t9n th. m1& @astA trong E;ng th. m1& &on &5a @usrA+
7 t-m ).2& th. m1& @astA &/ ieno'es l IG# Qip theo truy [u,t phn t0 ieno'e ths IG trong E;ng
ieno'es+ l,y ).2& s hiu khi )u &5a @astA l KbG+ khi ny so &hsa E;ng th. m1& &on &5a @astA#
Qip theo t-m t9n zile @mEo[A trong E;ng th. m1& &on ny+ 7 t-m ).2& zile @mEo[A &/ ieno'es l
Gb# Qruy [u,t phn t0 ieno'e ths Gb trong E;ng ieno'es+ l,y ).2& &!& s hiu khi &5a zile
@mEo[A#
H-nh I#JH_ m h-nh &,p ph!t khng li9n t1&+ s0 '1ng E;ng ieno'es &hi tit
&/&/H/ y4t7 8U =<= a5E2 >\E79
f/ hai ph.:ng ph!p m h )iu hnh th.rng s0 '1ng ) =u;n lX &!& khi trng l s0 '1ng 'anh
s!&h li9n kt ho%& 7e&tor Eit#
&/&/H/. fB75 Y<=5 827 au>
$ti n6t trong 'anh s!&h li9n kt ('slk) l mt khi &hsa mt E;ng gWm &!& s hiu khi trng+
phn t0 &ui &5a E;ng l.u s hiu khi tip theo trong 'anh s!&h#
d" '1_ Di; s0 khi )u ti9n trong 'slk l khi I# Qrong khi I l.u &!& s O+ OJ+ b+ O l &!& s
hiu khi trng+ &!& khi J l khi &hsa E;ng &!& s hiu khi trng tip theouH )iu hnh &h]
&n Eit s hiu khi )u ti9n &5a 'anh s!&h li9n kt#
d" '1_ $t )a Ib$+ '(ng khi &/ k"&h th.Y& H ~# =u;n lX )a ny+ nu )a hon ton trng
th- >Sp~ &n Eao nhi9u khi (s n6t ti )a &5a 'slk)
Di;i_
Ib$ Ib[ I
Hb
khi I
HO
khi &n '(ng HG EitI Eyte ) l.u mt s hiu khi
H khiHbIK Eyte l.u ).2& OHH s hiu khi trng
) =u;n lX )a &/ Ib$
hon ton trng+ 'slk &n Ib[ I
Hb
v OHH Kb khi
JI
bHIJKOOJbOJ~hi
I
bHIJKJOKJK~hi
J
u
Lh?n [t_ Qn kh! nhiu khi nhY &ho 'slk nu )a hon ton trng+ nh.ng so "t tn khi nhY &ho
'slk nu )a gn )y#
H-nh I#JI_ }u;n lX 'anh s!&h &!& khi trng s0 '1ng 'anh s!&h li9n kt#
d" '1_ Di; s0 khi )a H~F 7 mt s hiu khi )a l JI Eit th- mt khi )a &/ th ghi ).2& IOG
eH s hiu khi )a trng
H-nh I#JJ_ }u;n lX 'anh s!&h &!& khi trng s0 '1ng 'anh s!&h li9n kt 7 7e&tor Eit#
&/&/H/& f79 qV=>W\ g2> (hF gG>)
Fit ths i H l khi ths i trng+ Eit ths i b l khi ths i )S s0 '1ng# de&tor Eit ).2& l.u tr9n mt
ho%& nhiu khi )a+ khi &n so )3& 7o E nhY ) [0 lX nhanh# de&tor Eit "t tn khi nhY h:n l
'slk nh.ng k"&h th.Y& 7e&tor Eit l & )\nh 7 h )iu hnh &n )Wng E 7e&tor Eit trong E nhY
7 7e&tor Eit tr9n )a#
d" '1_ [t l4i 7" '1 tr9n+ nu '(ng 7e&tor Eit+ hSy t"nh k"&h ths:& 7e&tor Eit#
H>_ a Ib$ &/ Ib [ I
Hb
khi n9n k"&h th.Y& 7e&tor Eit l Ib [ I
Hb
Eit Ib [ I
Hb
vcv I
Hb
~F J
khi#
JJ
&/&/M/ y4t7 8U Yk B7 >W67 =AB 50 >5E79 >I? >27
&/&/M/. y4t7 8U a5E2 gp 579
w >(ng phn mm_ '(ng mt zile &hsa &!& 'anh s!&h &!& khi hng#
w >(ng phn &sng_ '(ng mt se&tor tr9n )a ) l.u giq 'anh s!&h &!& khi E\ hng#
~hi E kim so!t )a thZ& hin ln )u ti9n+ n/ )3& 'anh s!&h khi E\ hng 7o E nhY+ t )/
khng &ho truy &?p nhqng khi hng#
&/&/M/& SBW 8Z4 z28V (BB=a4?)
ile tr9n )a mm ).2& sao l.u ERng &!&h &hp l4i ton E =ua mt )a kh!&# >q liu tr9n )a
&sng nh th- ).2& sao l.u tr9n &!& Eang t# i 7Yi )a &sng lYn+ 7i& sao l.u &/ th tin hnh
nh. sau_ &hia )a &sng lm hai phn mt phn &hsa 'q liu g& 7 mt phn &hsa E;n sao# $ti
khi thZ& hin sao l.u+ phn 'q liu g& so ).2& &hp sang phn sao l.u#
&/&/e G2v2 >5204 CD> YE 50 >5E79 >I? >27
&/&/e/. H0 >5E79 >I? >27 =AB MSfOSJ27hW}Y (wAT)
H )iu hnh $S>OS ho%& in'oys (s0 '1ng h thng {Q) so =u;n lX h thng t?p tin thng
=ua Ea &,u tr6& sau_ Foot Se&tor+ E;ng {Q+ E;ng |OOQ >i|#
+ ?oo" sec"or
se&tor )u ti9n+ tra&k b+ si'e b &5a )a mm+ )i 7Yi )a &sng th- 7\ tr" ny l E;ng partition+ rWi
mYi tYi Eoot se&tor &5a partition ths nh,t+ )i 7Yi &!& partition kh!&+ Eoot se&tor l se&tor )u ti9n#
Foot se&tor &hsa E;ng tham s )a FxF (Fios xarameter Flo&k) 7 &hsa )o4n mS Eoot '(ng )
n4p &!& zile h thng+ Eoot se&tor h2p l ph;i &/ gi! tr\ {{OO 8 ozzset H^# Qr9n m!y iF$ xf sau
khi thZ& hin thao t!& xOSQ (xoyer On Selz Qest)+ |O$ FiOS t-m Eoot se&tor h2p l+ )3& Eoot
se&tor 7o )\a &h] bMfbb+ g!n fSbbbbh+ ixfbbh 7 &ho thZ& thi lnh )u ti9n trong Eoot
se&tor (lnh $x)# Foot se&tor &/ &,u tr6& nh. sau_
Ozzset(he[) Sie(Eyte
)
fontent Di;i th"&h
bb J $x pnh nh;y )n )u )o4n mS Eoot
bJ c dersion xhi9n E;n h )iu hnh
bF I Se&tSi s Eyte vmt se&tor+ th.rng l OHI ()Ny l E*t )u &5a FxF)
JK
H-nh I#JK_ sao l.u 'q liu
b> H flustSie s se&tor v mt &luster (kh!& b)
b^ I |esSe&s s se&tor 'nh ri9ng tr.Y& E;ng {Q+ t"nh lun Eoot se&tor ()i 7Yi
{QHI+ {QHG H+ {QJIIbh)
Hb H atfnt s E;ng {Q (th.rng l I)
HH I |ootSi S m1& trong E;ng |OOQ >i|
HJ I QotSe&s Qng s se&tor tr9n )a hay tr9n mt partition (GOOJO)
HO H $e'ia>es&riptor Fyte nh?n '4ng )a (c_)a &sng+ b_H#KK $F)
HG I atSie S se&tor vmt E;ng {Q (GOOJO)# {QJIb
Hc I QrkSe&s s se&tor v mt tra&k
H{ I Hea'fnt s )u )3&
Hf K Hi'nSe& s se&tor n (8 giqa E;ng partition 7 partion)
Ib K FigQotSe&s Qng s se&tor tr9n )a hay tr9n mt partition ( GOOJO)
IK K FigatSie S se&tor vmt E;ng {Q (GOOJO)
u u u u
H> (kt th6& FxF)
H^ )u )o4n mS Eoot
u u
H &ui )o4n mS Eoot
H-nh I#JO_ f,u tr6& Eoot se&tor#
+ ?ng 4&3
Sau Eoot se&tor l E;ng {Q (ile {llo&ation QaEle)+ th.rng &/ hai E;ng {Q ) an ton# $ti m1&
&5a {Q =u;n lX mt khi (&luster) 'q liu ( khi 'q liu ).2& )!nh s E*t )u t I)# Hai m1& )u
ti9n &5a E;ng {Q &hsa thng tin m t; lo4i )a# ~"&h th.Y& khi ).2& l.u trong Eoot se&tor thng
th.rng t H )n c se&tor# f/ Ea lo4i {Q l {Q HI 7 {Q HG+ {Q JI# {Q HI (mti m1& trong
E;ng {QHI &/ k"&h th.Y& l HI Eit) &/ th =u;n lX ).2& I
HI
KbG khi+ {Q HG &/ th =u;n lX
I
HG
GK ~ khi+ {Q JI &/ th =u;n lX I
JI
KD khi tr9n mt partition# f!& gi! tr\ &/ th &/ trong
mt entry &5a E;ng {Q#
(b)bbb fluster &Un trng
(b)bbI e ()^ fluster &hsa 'q liu &5a ile+ gi! tr\ ny l s hiu &luster k#
()b e ()G >nh ri9ng+ khng '(ng
() fluster hng
()c e () fluster &ui &(ng &5a &huti (kt th6& zile)
H-nh I#JG_ f,u tr6& mt m1& (entry) trong E;ng zat#
+ ?ng K..3 <-K (bng "hC mAc gLc)
JO
F;ng |OOQ >i| nRm ngay sau {Q+ 7 mti m1& &5a E;ng >i| l JI Eyte# ~hi h thng m8 mt
ilev th. m1&+ $Se>OS t-m t9n ilevth. m1& trong E;ng |OOQ >i|+ l,y s hiu khi )u )S &,p
&ho zilevth. m1& 7 t-m &!& s hiu khi tip theo trong E;ng {Q#
Foot se&tor F;ng {QH F;ng {QI F;ng >i| >{Q{
~"&h th.Y& Qhu& t"nh
c Eyte Q9n ile
J Eyte xhn m8 rng
H Eyte Qhu& t"nh _ { > d S e H e |
Hb Eyte >nh ri9ng ) s0 '1ng sau ny#
I Eyte Dir _ O Eit &ho gir+ G Eit &ho ph6t+ O Eit &ho giNy (thieu H+ n9n l.u ):n 7\ I giNy)
I Eyte Lgy _ Eit &ho nam (t Hcb)+ K Eit &ho th!ng+ O Eit &ho ngy#
I Eyte S hiu khi )u ti9n &5a zile
K Eyte ~"&h th.Y& ile
H-nh I#J_ f,u tr6& mt m1& trong E;ng |OOQ >i|v SlF >i|
Di! tr\ &5a Eyte thu& t"nh_
H _ ile &h] )3& (|ea' Only)
I _ ile n (Hi''en)
K _ ile h thng (System)
c _ nhSn )a (dolume)
HG _ th. m1& &on (>ire&tory)
JI _ ile &h.a ).2& sao l.u ({r&hi7e)
d" '1_ Mt )a H#K$F+ ).2& zormat '.Yi h )iu hnh $Se>OSviL>OS ({QHI) gWm &/
Iccb se&tor (H#K$FH#KHbIKHbIKvOHIIccb se&tor)+ 7 H khi (&luster) H se&tor n9n mti
m1& &5a E;ng {Q &h] &n HI Eit# Se&tor )u ti9n l Eoot se&tor+ Eao gWm E;ng tham s 7?t lX &5a
)a 7 &h.:ng tr-nh kh8i )ng &5a h )iu hnh# Hc se&tor tip theo l {Q ({QHI)+ gWm I E;ng+
mti E;ng se&tor (&/ JbI m1&+ nu c se&tor th- khng )5 ) =u;n lX Iccb khi)# Fa Eytes )u
ti9n &5a mti E;ng {Q l.u s hiu lo4i )a (IKb+ IOO+ IOO)# HK se&tor k tip &hsa E;ng th. m1&
g& (E;ng |OOQ >i|)# f!& se&tor &Un l4i '(ng ) l.u 'q liu+ &luster )!nh s t I#
JG
SE
YV=>W\
H HK fUn l4i
)Z4 >\ Foot se&tor {QHI {QHI >i| >{Q{
C#u "rMc m" mAc "rong bng K..3 <-K
a H#KK$F 8 th. m1& g& &/ ti )a IIK zile ho%& th. m1& &on# Lu zile &/ k"&h ths:& zile b th-
s hiu khi )u b# ~" tZ )u &5a t9n zile &/ gi! tr\ l b (trng)+ ',u &h,m ('nh ri9ng &ho >OS)+
b[^O (zile )S E\ [/a_ khi [/a zile+ >OS so )in k" tZ b[^O 7o k" tZ )u &5a zile)#
+ C#u "rMc bng 4&3
6 NOc,ghi 4&3 1/
d" '1_ ghi 7o entry I gi! tr\ I{h 7 entry J gi! tr\ FfOh# >o Eyte b+H+I l.u s hiu )a+ n9n
entry I so ).2& ghi 7o Eyte ths J+K 7 entry J so ).2& ghi 7o Eyte ths K+O # f!&h ghi nh. sau_
Fyte b H I J K O
Di! tr\ (s hiu )a ) I{ O Ff
unsigne' &har zatOHI vvm;ng &hsa E;ng zat )3& t )a
7oi' riteat (unsigne' neyzat+ unsigne' k) vv ghi gi! tr\ neyzat 7o entry ths k I+J+###+JbH
else vvk l
vv)%t c E"t &ao 7o 7o Eyte ths iwH
zatiwHneyzatK
vv)%t K E"t th,p 7o K E"t &ao &5a Eyte ths i
zati((neyzatb[)K)(zatib[b)
d" '1_ gi; s0 neyzat H{F+ luu 7ao entry k eluu 7ao Eyte iHb 7 iwHHH
J
Fyte b+H+I J+K+O u KGbG+KGb
p.u trq eb+eH (s hiu )a) eI+eJ u eJbb+ eJbH
F;ng {QHI se&tor KGbc Eytes JbI entry (mti entry HI Eit)
Fyte be ceHb HH HIeIH IIeIJ IKeIO IGeI IceJH
p.u
trq
Q9n
ile
xhn m8
rng
{>dSH| >nh
ri9ng
Dir Lgy S hiu
khi )u
~"&h
th.Y& ile
F;ng >i| HK se&tor HGc Eyte IIK entry (mti entry JI Eyte)+ H se&torHG entry
Hb HH
{F f> ^ (tr.Y& khi ghi)
{F F> H{ (sau khi ghi)
unsigne' |ea'at (unsigne' k) vv 3& gi! tr\ &5a entry ths k (kI)
7oi' ntt()
yhile(H)
re&ei7e(ns[+sp) vvntt &hr nh?n sp
ti9uth1(sp)
:hn *j">
f!& tin tr-nh &/ th trao )i 'q liu 8 '4ng &/ &,u tr6&# pi9n kt trZ& tip nh. tr9n &Un g3i l li9n
kt trZ& tip )i [sng (symmetri&)+ ta &/ th &/ li9n kt trZ& tip khng )i [sng (asymmetri&)
nh. sau_
e Sen'(x+ message) _ g8i mt thng )ip )n tin tr-nh x
e |e&ei7e(i'+message)_ nh?n mt thng )ip t tin tr-nh E,t kP &/ mS s i'#
H/H/e )27 8d= s4B YW=aV>
So&ket l k9nh li9n l4& hai &hiu# Hai tin tr-nh mun li9n l4& 7Yi nhau+ mti tin tr-nh &n t4o mt
so&ket ri9ng+ mti so&ket ).2& kt Eu& 7Yi mt &ng kh!& nhau # f!& thao t!& )3&vghi l9n so&ket
GO
&h"nh l sZ trao )i 'q liu giqa hai tin tr-nh# f: &h so&ket &/ th s0 '1ng ) &hun ho! mi
li9n l4& giqa &!& tin tr-nh 7n khng li9n h 7Yi nhau+ 7 &/ th ho4t )ng trong nhqng h thng
kh!& nhau 7 trong mi tr.rng phNn t!n#
] C 5B2 =<=5 827 8d= s4B YW=aV>`
!, Li=n lXc 8iVu "hC "gn (soc8e" Hing (!i "rd bCu cAc)>
Hai tin tr-nh khng &n kt ni+ @tin tr-nh g8iA ghi 'q liu 7o so&ket &5a m-nh+ 'q liu so ).2&
&huyn &ho so&ket &5a @tin tr-nh nh?nA+ @tin tr-nh nh?nA so nh?n 'q liu ERng &!&h )3& 'q liu
t so&ket &5a @tin tr-nh nh?nA# >q liu ).2& g8i theo tng g/i &/ &hsa thng tin ix &5a m!y nh?n
7 port &5a tin tr-nh nh?n (port '(ng ) phNn Eit &!& tin tr-nh tr9n &(ng mt m!y)
:hn *j">
# @tin tr-nh g8iA khng &h*& &h*n thng )ip ).2& g8i )n @tin tr-nh nh?nA
Hai thng )ip ).2& g8i theo mt ths tZ no )/ &/ th )n @tin tr-nh nh?nA theo mt ths tZ
kh!&#
# $t tin tr-nh sau khi )S t4o mt so&ket &/ th s0 '1ng n/ ) li9n l4& 7Yi nhiu tin tr-nh kh!&
nhau#
# Diao ths& l>x s0 '1ng kiu li9n l4& ny
b, Li=n lXc 8iVu HiTn "hoXi (soc8e" Hing (!i "rd "Eng H)i)>
Hai tin tr-nh &n kt ni tr.Y& khi truynvnh?n 'q liu 7 kt ni ).2& 'uy tr- sut =u! tr-nh
truyn nh?n 'q liu#
:hn *j">
# >q liu truyn nh?n E;o );m &h"nh [!& 7 )6ng ths tZ g8i+ nu sai so ).2& g8i l4i#
# Diao ths& Qfx s0 '1ng kiu li9n l4& ny
H/M/ NG B CC TIN TRNH
H/M/./ Y4 =@4 179 gD
Wng E &!& tin tr-nh l E;o );m &!& tin tr-nh [0 lX song song khng t!& )ng sai l&h )n
nhau# di& )Wng E &!& tin tr-nh l 'o &!& y9u &u sau_
!, k=u c^u Hc Guan "ru *u#" (Mu"u!l e*clusion)> t4i mt thri )im+ &h] &/ mt tin tr-nh ).2&
=uyn truy [u,t mt ti nguy9n khng th &hia s#
b, k=u c^u phLi h`p (5nchronil!"ion)> &!& tin tr-nh &n h2p t!& 7Yi nhau ) hon thnh &ng
7i&# d" '1 &h.:ng tr-nh in [u,t k" tZ 7o Euzzer+ k" tZ ).2& l,y 7 in E8i &h.:ng tr-nh )iu khin
m!y in (printer 'ri7er)# Hai tin tr-nh ny ph;i phi h2p 7Yi nhau nh. l &h.:ng tr-nh in khng
).2& [u,t k" tZ 7o Euzzer khi Euzzer )y m ph;i &hr printer 'ri7er l,y EYt 'q liu#
Q hai y9u &u tr9n+ ta &/ hai @Ei to!n )Wng EA &n gi;i =uyt )/ l Ei to!n @)& =uyn truy
[u,tA (hay &Un g3i l @Ei to!n min gangA) 7 Ei to!n @phi h2p thZ& hinA#
GG
H/M/&/ M237 9_79 (=\2>2=B8 YV=>2W7)
o4n mS &5a mt tin tr-nh &/ kh; nang [;y ra lti khi truy [u,t ti nguy9n '(ng &hung (Ein+ t?p
tin+u) ).2& g3i l min gang#
d" '1 gi; s0 &/ hai tin tr-nh xH 7 xI s0 '1ng 7(ng nhY '(ng &hung l.u trq Ein taikhoan# $ti
tin tr-nh mun r6t mt kho;n tin l tienrut t ti kho;n ERng )o4n mS sau_
iz (taikhoan tienrut) taikhoan taikhoan e tienrut
else Qhong Eao @khong the rut tien @
Di; s0 ti kho;n hin &Un cbb+ xH mun r6t Obb 7 xI mun r6t Kbb+ &/ th [;y ra t-nh hung lti
nh. sau_ gi; s0 xH sau khi )S kim tra )iu kin (cbb Obb) l )6ng+ xH ht thri gian s0 '1ng
fxl+ h )iu hnh &,p ph!t fxl &ho xI+ xI kim tra )iu kin (cbbKbb) &Vng 7Tn )6ng+ Ein
taikhoan ).2& &?p nh?t l4i l Kbb# ~hi xH ).2& tip t1& [0 lX+ n/ so khng kim tra l4i )iu kin
(taikhoan tienrut) m thZ& hin r6t tin+ gi! tr\ &5a Ein taikhoan so &?p nh?t thnh eHbb
o4n mS_
iz (taikhoan tienrut ) taikhoan taikhoan e tienrut
g3i l mt min gang#
d" '1 hai tin tr-nh &h4y tr9n hai E [0 lX+ &(ng ghi 'q liu 7o mt hng )2i '(ng &hung+ so [;y
ra lti trong tr.rng h2p sau_ tin tr-nh { th9m 'q liu 7o hng )2i t4i 7\ tr" tail (tail l 7\ tr" &,t 'q
liu) nh.ng &h.a k\p tang tail th- ht =uantum 7 )n l.2t tin tr-nh F [0 lX+ tin tr-nh F th9m 'q
liu t4i 7\ tr" tail 7 nh. 7?y so ghi &hWng l9n 'q liu 'o tin tr-nh { 7a ghi+ lti [;y ra
H-nh J#IG_ hai tin tr-nh { 7 F '(ng &hung mt hng )2i+ &/ th [;y ra lti#
G
f/ th gi;i =uyt lti nu E;o );m t4i mt thri )im &h] &/ mt tin tr-nh ).2& [0 lX lnh trong
min gang+ ngha l t4i mt thri )im &h] &/ mt tin tr-nh truy [u,t ti nguy9n '(ng &hung#
H-nh J#I_ ~hi { trong min gang th- nu F mun 7o min gang + F so E\ kho! &hr { ra khi
min gang+ F mYi ).2& 7o min gang#
] K52 92t2 s4Fu> g62 >W<7 C237 9_79 =@7 =5m U M 1234 a207 YB4`
av ~hng &/ hai tin tr-nh &(ng 8 trong min gang &(ng l6&#
Ev ~hng &/ gi; thit 7 t& ) &5a &!& tin tr-nh+ &Vng nh. 7 s l.2ng E [0 lX#
&v $t tin tr-nh E9n ngoi min gang khng ).2& ngan &;n &!& tin tr-nh kh!& 7o min gang#
'v ~hng &/ tin tr-nh no ph;i &hr 7 h4n ) ).2& 7o min gang#
H/M/H C<= 92t2 ?5<? 179 gD
f/ O nh/m gi;i ph!p ) gi;i =uyt @Ei to!n )Wng EA l_ Fusy aiting+ Sleep {n' akeup+
Semaphore+ $onitor+ $essage#
H/M/H/. N5C 92t2 ?5<? B4YF B2>279 (gI7 >5: 12)
Lh/m gi;i ph!p @Fusy aitingA l4i &hia thnh hai lo4i_ &!& gi;i ph!p @s0 '(ng phn mmA 7 &!&
gi;i ph!p @s0 '(ng phn &sngA#
AJ G2t2 ?5<? ?5@7 C3C`
di& )Wng E l 'o &h.:ng tr-nh thZ& hin+ gi;i ph!p ny l kh/ 7- l?p tr-nh 7i9n khng l.rng
tr.Y& ).2& m3i t-nh hung &/ th [;y ra# QhZ& 7?y+ &h6ng ta th0 [t mt s thu?t to!n )Wng E sai
sau )Ny_
!) 3hu" "o$n 1_ S0 '1ng Ein &r hiu+ thu?t to!n mong )2i '(ng &ho nhiu tin tr-nh nh.ng 7Tn
&Un tr.rng h2p sai# t.8ng nh. sau_
f!& tin tr-nh '(ng &hung Ein &r hiu lo&k + 7Yi X ngha lo&kb l khng &/ tin tr-nh trong min
gang+ lo&kH l &/ mt tin tr-nh trong min gang# lo&k ).2& g!n tr\ Ean )u l b# $t tin tr-nh
mun 7o min gang tr.Y& ti9n kim tra gi! tr\ &5a Ein lo&k# Lu lo&k b+ tin tr-nh )%t l4i gi!
tr\ &ho lo&k H 7 )i 7o min gang# Lu lo&k )ang &/ gi! tr\ H+ tin tr-nh ph;i &hr E9n ngoi
min gang &ho )n khi lo&k &/ gi! tr\ b#
Gc
lo&kb vvEin '(ng &hung &ho m3i tin tr-nh
yhile (H) vvmt tin tr-nh &/ th truy [u,t min gang nhiu ln
vv nu lo&kH l &/ tin tr-nh no )/ trong min gang+ '(ng 7Ung l%p yhile ) )2i
yhile (lo&k H)
vvnu lo&kb tho!t khi yhile+ tr.Y& khi 7o mg g!n lo&kH ) khng &ho &!& tin tr-nh
kh!& 7o mg ()& =uyn 7o mg)#
lo&k H
&riti&alese&tion () vv)o4n mS truy [u,t 'q liu '(ng &hung m &/ th gNy ra lti#
lo&k b vv&ho php &!& tin tr-nh kh!& 7o mg#
non&riti&alese&tion() vv)o4n mS khng ph;i mg
:hn *j"> Di;i ph!p ny 7Tn &/ th 7i ph4m )iu kin ths nh,t l hai tin tr-nh &/ th &(ng 8
trong min gang t4i mt thri )im# QhZ& 7?y+ gi; s0 mt tin tr-nh nh?n th,y lo&k b 7 &hun E\
7o min gang+ nh.ng tr.Y& khi n/ &/ th )%t l4i gi! tr\ &ho lo&k l H+ n/ E\ t4m 'ng ) mt tin
tr-nh kh!& ho4t )ng# Qin tr-nh ths hai ny th,y lo&k 7Tn l b th- )%t l4i lo&k H 7 7o min
gang# Sau )/ tin tr-nh ths nh,t ).2& t!i k"&h ho4t+ n/ g!n lo&k H rWi 7aU min gang# Lh. 7?y
t4i thri )im )/ &; hai tin tr-nh )u 8 trong min gang#
b) 3hu" "o$n /_ S0 '1ng Ein luNn phi9n+ thu?t to!n '(ng &ho hai tin tr-nh nh.ng 7Tn &Un
tr.rng h2p sai# t.8ng nh. sau_
Hai tin tr-nh {+ F s0 '1ng &hung Ein turn 7Yi X ngha sau_ turn b+ tin tr-nh { ).2& 7o min
gang+ turnH th- F ).2& 7o min gang# Qurn ).2& g!n tr\ Ean )u l b+ ts& l { ).2& 7o tr.Y&#
Lu turn b+ tin tr-nh { ).2& 7o min gang# Lu turn H+ tin tr-nh { )i 7o mt 7Ung l%p &hr
)n khi turn nh?n gi! tr\ b th- { ).2& 7o min gang# ~hi tin tr-nh { rri khi min gang+ n/ )%t
gi! tr\ turn 7 H ) &ho php tin tr-nh F )i 7o min gang#
vv tin tr-nh {
yhile (H)
yhile (turn H) vv neu turnH thi { 7ao 7ong yhile 'e 'oi
&riti&alese&tion () vvturnb thi { 'uo& 7ao mien gang
turn H vvgan turnH 'e &ho F 7ao mg
Lon&riti&alese&tion ()
vv tin tr-nh F
yhile (H)
yhile (turn b) vvneu turnb thi F 7ao 7ong yhile 'e 'oi
&riti&alese&tion () vvturnH thi F 'uo& 7ao mien gang
G
turn b vvgan turnb 'e &ho { 7ao mg
Lon&riti&alese&tion ()
:hn *j"> Hai tin tr-nh &h*& &h*n khng th 7o min gang &(ng l6&+ 7- t4i mt thri )im turn
&h] &/ mt g"a tr\# Lh.ng &/ th 7i ph4m )iu kin ths Ea l mt tin tr-nh &/ th E\ ngan &h%n 7o
min gang E8i mt tin tr-nh kh!& khng 8 trong min gang# QhZ& 7?y gi; s0 tin tr-nh { )ang 8
trong phn Lon&riti&alese&tion()+ th- F khng th 7o min gang hai ln li9n tip# Lh. 7?y+ gi;i
ph!p ny ph1 thu& 7o t& ) thZ& hin &5a hai tin tr-nh+ n/ 7i ph4m &; )iu kin ths hai#
c) 3hu" "o$n Pe"erson_ )Ny l gi;i ph!p )6ng 7 '(ng &ho hai tin tr-nh xb 7 xH# t.8ng nh.
sau_
Hai tin tr-nh '(ng &hung hai Ein turn 7 zlagI (kiu int)# D!n tr\ Ean )u zlag bzlag
H{pS^ 7 gi! tr\ &5a turn ).2& kh8i )ng l b hay H# Lu zlag i Q|l^ (ib+H) &/ ngha
l tin tr-nh xi mun 7o min gang 7 turni l )n l.2t xi#
&/ th 7o ).2& min gang+ tr.Y& ti9n tin tr-nh xi )%t gi! tr\ zlag iQ|l^ ) thng E!o rRng
tin tr-nh xi mun 7o min gang+ sau )/ )%t turn- ) th0 ) ngh\ tin tr-nh x- 7o min gang#
Lu tin tr-nh x- khng =uan tNm )n 7i& 7o min gang ngha l zlag - {pS^+ th- xi &/ th
7o min gang+ nu zlag -Q|l^ th- xi ph;i &hr )n khi zlag -{pS^# ~hi tin tr-nh xi rri
khi min gang+ n/ )%t l4i gi! tr\ &ho zlag i l {pS^#
vv tin tr-nh xb (ib)
yhile (Q|l^)
b
:hn *j"> Lu &; hai tin tr-nh )u mun 7o min gang th- zlag b zlag H Q|l^ nh.ng gi!
tr\ &5a turn t4i mt thri )im &h] &/ th ho%& l b ho%& l H+ 'o 7?y &h] &/ mt tin tr-nh ).2& 7o
min gang 7 '< 'ng kim tra l gi;i ph!p &Vng tha &!& )iu kin &Un l4i#
BJ C<= 92t2 ?5<? ?5@7 =^79_
!) C#m nge">
Qin tr-nh &,m t,t &; &!& ng*t tr.Y& khi 7o min gang+ 7 ph1& hWi ng*t khi ra khi min gang#
~hi )/ ng*t )Wng hW &Vng khng th [;y ra+ 'o 7?y h thng khng th t4m 'ng ho4t )ng &5a
tin tr-nh )ang [0 lX ) &,p ph!t fxl &ho tin tr-nh kh!&+ nhr )/ tin tr-nh hin hnh y9n tNm
thao t!& tr9n min gang m khng s2 E\ tin tr-nh no kh!& tranh &h,p+ ts& l h )iu hnh )&
=uyn truy [u,t min gang#
Lh?n [t_
w >< &i )%t nh.ng &,m t,t &; &!& ng*t l nguy him #
w Lu h thng &/ nhiu E [0 lX+ lnh &,m ng*t &h] &/ t!& '1ng tr9n E [0 lX )ang [0 lX tin
tr-nh+ &Un &!& tin tr-nh ho4t )ng tr9n &!& E [0 lX kh!& 7Tn &/ th truy [u,t )n min gang#
b) 5+ dAng lTnh 35L (3es" !nd 5e" Loc8)>
a s phn &sng &ung &,p lnh QSp &ho php kim tra 7 &?p nh?t mt 7(ng nhY trong mt thao
t!& )& =uyn# Lu &/ hai lnh QSp [0 lX )Wng thri tr9n hai fxl kh!& nhau th- &h6ng so ).2& [0
lX tun tZ# pnh QSp &/ &,u tr6& nh. sau_
Eoolean Qest{n'Setpo&k (Eoolean lo&k)
Eoolean templo&k
lo&k Q|l^
return temp vvtr; 7 gi! tr\ Ean )u &5a Ein lo&k
f/ th &i )%t gi;i ph!p truy [u,t )& =uyn 7Yi QSp ERng &!&h s0 '1ng th9m mt Ein lo&k '(ng
&hung ).2& kh8i g!n l {pS^# Qin tr-nh ph;i kim tra gi! tr\ &5a Ein lo&k tr.Y& khi 7o min
gang+ nu lo&k {pS^+ tin tr-nh &/ th 7o min gang#
Eoolean lo&k{pS^ vvEin '(ng &hung
yhile (Q|l^)
yhile (Qest{n'Setpo&k(lo&k))
&riti&alse&tion ()
lo&k {pS^
non&riti&alse&tion ()
:hn *j"> Lh/m gi;i ph!p @Eusy an' yaitingA )u ph;i thZ& hin mt 7Ung l%p ) kim tra [em
&/ ).2& 7o min gang hay khng n9n tin tr-nh )ang &hr 7Tn &him '1ng fxl# >o )/ &n tr!nh
&!& gi;i ph!p @ Eusy yaiting @ nu &/ th#
H
M/M/H/&/ N5C 92t2 ?5<? S)EEP B7h AKEUP (79A q6 1<75 >5^=)
!) 5+ dAng lTnh 5LmmP no p&UmUP
H )iu hnh &ung &,p hai lnh Sp^^x dn {~^lx# Lu tin tr-nh g3i lnh Sp^^x+ h )iu
hnh so &huyn tin tr-nh sang @'anh s!&h sn sngA+ l,y l4i fxl &,p &ho tin tr-nh kh!&# Lu
tin tr-nh g3i lnh {~^lx+ h )iu hnh so &h3n mt tin tr-nh trong rea'y list+ &ho thZ& hin
tip# ~hi mt tin tr-nh &h.a )5 )iu kin 7o min gang+ n/ g3i Sp^^x ) tZ kh/a+ )n khi &/
mt tin tr-nh kh!& g3i {~^lx ) gi;i ph/ng &ho n/# $t tin tr-nh g3i {~^lx khi ra khi
min gang ) )!nh ths& mt tin tr-nh )ang &hr+ t4o &: hi &ho tin tr-nh ny 7o min gang#
di& s0 '1ng hai lnh Sp^^x dn {~^lx thZ& khng ):n gi;n+ r,t '< E\ lti# QhZ& 7?y+ ta [t
mt &h.:ng tr-nh gi;i =uyt Ei to!n min gang nh. sau_
vvEusy 7 Elo&ke' l hai Ein '(ng &hung#
int Eusy{pS^ vv Q|l^ l &/ tin tr-nh trong min gang+ {pS^ l khng &/ tin tr-nh trong
min gang#
int Elo&ke'b vv )m s l.2ng tin tr-nh )ang E\ kh/a
yhile (Q|l^) vv) &ho mt tin tr-nh &/ th 7o mg nhiu ln
iz (Eusy)
Elo&ke' Elo&ke' w H
sleep()
Lon&riti&alese&tion ()
Lh?n [t_
e f/ th 7i ph4m )iu kin ths H l &/ hai tin tr-nh trong min gang &(ng l6&# QhZ& 7?y+ gi; s0
tin tr-nh { kim tra Ein Eusy+ th,y Eusy{pS^+ nh.ng &h.a k\p g!n EusyQ|l^ th- )n l.2t
tin tr-nh F# F th,y Eusy{pS^+ F g!n EusyQ|l^ 7 7o min gang# Qrong khi F &h.a ra
khi min gang th- )n l.2t {+ { g!n EusyQ|l^ 7 7o min gang
e f/ th 7i ph4m )iu kin ths Ea l mt tin tr-nh &/ th E\ ngan &h%n 7o min gang E8i mt tin
tr-nh kh!& khng 8 trong min gang# d" '1 gi; s0 tin tr-nh { 7o min gang+ 7 tr.Y& khi n/ rri
khi min gang th- tin tr-nh F ).2& k"&h ho4t# Qin tr-nh F th0 7o min gang nh.ng n/ nh?n
I
th,y { )ang 8 trong )/+ 'o 7?y F tang gi! tr\ Ein Elo&ke' 7 &hun E\ g3i Sp^^x ) tZ kho!# Quy
nhi9n tr.Y& khi F &/ th thZ& hin Sp^^x+ tin tr-nh { l4i ).2& t!i k"&h ho4t 7 ra khi min gang#
~hi ra khi min gang { nh?n th,y &/ mt tin tr-nh )ang &hr (Elo&ke'H) n9n g3i {~^lx 7
gi;m gi! tr\ &5a Elo&ke'# ~hi )/ t"n hiu {~^lx so l4& m,t 'o tin tr-nh F &h.a th?t sZ @ ng5 @
) nh?n t"n hiu )!nh ths& ~hi tin tr-nh F ).2& tip t1& [0 lX+ n/ mYi goi Sp^^x 7 tZ ng5
7nh 7i<n
pti ny [;y ra 'o 7i& kim tra Ein Eusy 7 7i& g3i Sp^^x l nhqng hnh )ng t!&h Eit+ &/ th
E\ ng*t giqa &hng trong =u! tr-nh [0 lX# tr!nh nhqng t-nh hung t.:ng tZ+ h )iu hnh &ung
&,p nhqng &: &h )Wng E h/a nh. Semaphore+ $onitor 'Za tr9n X t.8ng &5a &hin l.2& @Sp^^x
an' {~^lxA nh.ng 7i& kim tra )iu kin 7o min gang 7 7i& &hr [Ny 'Zng thnh mt
hnh )ng )& =uyn+ gi6p 7i& gi;i =uyt Ei to!n min gang an ton+ hiu =5a h:n#
b) 5+ dAng c#u "rMc 5em!phore>
Semaphore l &,u tr6& ).2& >i-kstra ) [u,t 7o HGO+ semaphore s l mt Ein &/ &!& thu& t"nh
sau_
e $t gi! tr\ nguy9n '.:ng e
e $t hng )2i z l.u 'anh s!&h &!& tin tr-nh )ang &hr tr9n semaphore s
e f/ hai thao t!& ).2& )\nh ngha tr9n semaphore s_
>oyn(s)_ eeeH# Lu e b th- tin tr-nh ph;i &hr trong z+ ng.2& l4i tin tr-nh tip t1&#
lp(s)_ eewH# Lu eb th- &h3n mt tin tr-nh trong z &ho tip t1& thZ& hin ()!nh ths&)#
D3i x l tin tr-nh thZ& hin thao t!& >oyn(s) hay lp(s)_
>oyn(s)
e e e H
iz (e b)
status(x) Elo&ke' vv&huyn x sang tr4ng th!i E\ kho! (&hr)
enter(x+z) vv&ho x 7o hng )2i z
lp(s)
e e w H
iz (e b )
J
:hn *j">
e H )iu hnh &n &i )%t &!& thao t!& >oyn+ lp l )& =uyn# &i )%t sZ )& =uyn &/ th
'(ng kC thu?t &,m ng*t (H &pu) ho%& &!& gi;i ph!p phn mm+ ho%& lnh QSp (nhiu &pu)# Lu
'(ng gi;i ph!p phn mm th- gi;i ph!p semaphore 7Tn l gi;i ph!p Eusy an' yaiting nh.ng t!&h
7Ung l%p &hr ra khi &h.:ng tr-nh#
e Hng )2i &/ th &i )%t l mt &on tr tr tYi 'anh s!&h &!& khi xfF &5a &!& tin tr-nh )ang
&hr tr9n s+ khi )/ semaphore &/ '4ng_
&lass semaphore
int e
xfF z vv's ri9ng &5a semaphore
puEli&_
'oyn()
up()
>oyn(s)
&riti&alese&tion ()
lp(s)
Lon&riti&alese&tion ()
xI_
Lh?n [t_ Lhr lnh 'oyn+ up l )& =uyn+ semaphore )S gi;i =uyt ).2& 7,n ) t"n hiu )!nh
ths& E\ th,t l4&# Quy nhi9n s0 '1ng semaphore &Vng khng ):n gi;n+ &h.:ng tr-nh '< E\ lti m
khng 'Z )o!n ).2&# Qa [t mt s t-nh hung gNy ra lti sau_
e Lu )%t >oyn 7 lp sai 7\ tr" ho%& thiu th- &/ th E\ sai# d" '1 nu xH ) lp() l9n tr.Y& lnh
-oEH() th- nu xH thZ& hin tr.Y& xI+ &/ th -oEH &h.a thZ& hin [ong m -oEI ).2& thZ& hin#
Mt 7" '1 kh!&
e(s)H
yhile (H)
Qin tr-nh =u9n g3i lp(s)+ 7 kt =u; l khi ra khi min gang n/ so khng &ho tin tr-nh kh!& 7o
min gang
e S0 '1ng semaphore &/ th gNy ra t-nh tr4ng t*& nghon# d" '1 &/ hai tin tr-nh xH+ xI s0 '1ng
&hung hai semaphore sHsIH
xH_
'oyn(sH) 'oyn(sI)
u#
up(sH) up(sI)
xI_
'oyn(sI) 'oyn(sH)
u#
up(sI) up(sH)
Lu ths tZ thZ& hin nh. sau_ xH_ 'oyn(sH)+ xI_ 'oyn(sI) + xH_ 'oyn(sI)+ xI_ 'oyn(sH) khi )/
sHsIeH n9n xH+xI )u &hr mSi
O
e S0 '1ng semaphore &/ th gNy ra t-nh tr4ng )/i fxl khi gi;i thu?t &h3n tin tr-nh )ang )2i l
gi;i thu?t piO#
Semaphore [Ny 'Zng nh. tr9n g3i l semaphore )m (&ounting semaphore) gi! tr\ e khng giYi
h4n# Semaphore nh\ phNn (Einary semaphore) &/ eb+H '< &i )%t h:n 7- ).2& sZ ht tr2 &5a phn
&sng# Semaphore )m &/ th &i )%t ERng semaphore nh\ phNn nh. sau_
vv&!& Ein '(ng &hung
Einary semaphore sHH+ sIb
int &gi! tr\ Ean )u e &5a semaphore )m
'oyn() vv'oyn oz &ounting semaphore
'oyn(sH) up(sH) ) );m E;o )& =uyn truy [u,t min gang #
c) 5+ dAng c#u "rMc Moni"ors
&/ th '< 7it )6ng &!& &h.:ng tr-nh )Wng E h/a h:n+ Hoare(HK) 7 Frin&h Hansen
(HO) )S ) ngh\ mt &: &h &ao h:n ).2& &ung &,p E8i ngn ngq l?p tr-nh l monitor#
$onitor l mt &,u tr6& )%& Eit (lYp) Eao gWm &!& ph.:ng ths& )& =uyn (&h"nh l &!& &riti&ale
se&tion) 7 &!& Ein &/ t"nh &h,t sau _
w f!& Ein trong monitor &h] &/ th ).2& truy [u,t E8i &!& ph.:ng ths& trong monitor+ )Ny &h"nh
l &!& Ein ).2& '(ng &hung &ho &!& tin tr-nh#
w Q4i mt thri )im+ &h] &/ mt tin tr-nh 'uy nh,t ).2& ho4t )ng E9n trong mt monitor#
w Qrong monitor &/ th khai E!o &!& Ein )iu kin (thu& lYp &on'ition) '(ng ) )Wng E 7i& s0
'1ng &!& Ein trong monitor# di& s0 '1ng Eao nhi9u Ein )iu kin l 'o ng.ri l?p tr-nh =uyt
)\nh# Fin )iu kin &/ hai lnh ait 7 Signal_
e ait(&)_ &huyn tr4ng th!i tin tr-nh g3i sang &hr (Elo&ke') 7 )%t tin tr-nh ny 7o hng )2i
tr9n Ein )iu kin &#
G
e Signal(&)_ nu &/ mt tin tr-nh )ang &hr trong hng )2i &5a &+ t!i k"&h ho4t tin tr-nh )/ 7 tin
tr-nh g3i so rri khi monitor# Lu khng &/ tin tr-nh no )ang &hr trong hng )2i &5a & th- lnh
signal(&) E\ E =ua#
ait(&)
status(x) Elo&ke' vv&huyn x sang tr4ng th!i &hr
enter(x+z(&)) vv)%t x 7o hng )2i z(&) &5a Ein )iu kin &
Signal(&)
iz (z(&) Llpp)
e[it(}+z(&)) vvp,y tin tr-nh } )ang &hr tr9n &
status}) rea'y vv&huyn } sang tr4ng th!i sn sng
enter(}+rea'yelist) vv).a } 7o 'anh s!&h sn sng#
w $ti Ein kiu monitor &/ mt hng )2i ton &1& l.u &!& tin tr-nh )ang &hr ).2& s0 '1ng
monitor#
w Fin kiu monitor '(ng &hung &ho &!& tin tr-nh '(ng &hung ti nguy9n#
H-nh J#Ic_ m h-nh &,u tr6& monitor
monitor t9n monitor vvkhai E!o monitor '(ng &hung &ho &!& tin tr-nh
Lon&riti&alese&tion ()
ten monitor#xh.:ngths&i vvthZ& hin &ng 7i& )& =uyn ths i
Lon&riti&alese&tion ()
:hn *j">
e di& truy [u,t )& =uyn ).2& E;o );m E8i tr-nh Ei9n '\&h m khng 'o l?p tr-nh 7i9n+ 'o 7?y
nguy &: thZ& hin )Wng E h/a sai gi;m r,t nhiu#
e Di;i ph!p monitor )Ui hi ngn ngq l?p tr-nh )ang s0 '1ng &/ kiu 'q liu l monitor+ hin &!&
ngn ngq ny &h.a &/ nhiu#
e Di;i ph!p Eusy an' yaiting khng ph;i thZ& hin 7i& &huyn )i ngq &;nh trong khi gi;i
ph!p sleep an' yakeup so tn thri gian &ho 7i& ny#
d" '1_ Fi to!n O trit gia an ti#
f/ O trit gia an ti m/n m- ng+ ngWi [ung =uanh mt En trUn+ tr.Y& m%t mti ng.ri &/ mt
&hi& )Va# Fit rRng mun an ).2& ph;i &n hai &hi& )Va+ nu mti ng.ri )u l,y &hi& )Va tr.Y&
m%t m-nh &(ng l6& th- so [;y ra tr.rng h2p l khng trit gia no an ).2& ('ea'lo&k)# HSy )Wng
E 7i& an ti &5a O trit gia sao &ho t,t &; )u an ).2&#
H-nh J#I_ Ei to!n nam trit gia an ti
monitor philosopher
enum thinking+ hungry+ eating stateOvv &a& Eien 'ung &hung &ho &!& trit gia
&on'ition selzO vv&a& Eien 'ieu kien 'ung 'e 'ong Eo 7ie& an toi
vv&a& pt 'o& =uyen (&a& mien gang)+ 7ie& 'o& =uyen 'o nnlt ho tro#
7oi' init()vvph.:ng ths& khoi tao
7oi' test(int i) vvph.:ng ths& kim tra )iu kin tr.Y& khi &ho trit gia ths i an
7oi' pi&kup(int i) vvph.:ng ths& l,y )Va
7oi' put'oyn(int i) vvph.:ng ths& tr; )Va
7oi' test(int i)
vvnu tgi )/i 7 &!& tg E9n tr!i+ E9n ph;i khng )ang an th- &ho tgi an
iz ( (statei hungry) (state(i w K) O eating) (state(i w H) O eating))
7oi' pi&kup(int i)
7oi' put'oyn(int i)
vv f,u tr6& tin tr-nh xi thZ& hin 7ie& an &5a trit gia ths i
philosopher pp vvEien monitor 'ung &hung
xi_
yhile (H)
Lon&riti&alese&tion ()
pp#pi&kup(i) vvpi&kup l min gang 7 ).2& truy [u,t )& =uyn
eat() vvtriet gia an
pp#put'oyn(i)vvput'oyn l min gang 7 ).2& truy [u,t )& =uyn
Lon&riti&alese&tion ()
h) ST hr79 >5X79 120?`
f/ mt tin tr-nh kim so!t 7i& s0 '1ng ti nguy9n 7 nhiu tin tr-nh kh!& y9u &u ti nguy9n#
Qin tr-nh &n ti nguy9n so g8i mt thng )ip y9u &u ti nguy9n )n tin tr-nh kim so!t+ sau
)/ tZ &huyn sang tr4ng th!i Elo&ke' (&hr trong hng )2i ti nguy9n)# Qin tr-nh kim so!t + khi
nh?n ).2& thng )ip y9u &u ti nguy9n+ )2i )n khi ti nguy9n sn sng th- g8i mt thng )ip
)n mt tin tr-nh )ang )2i ti nguy9n ) )!nh ths& 7 &ho s0 '1ng ti nguy9n# ~hi s0 '1ng [ong
ti nguy9n + tin tr-nh s0 '1ng ti nguy9n g8i mt thng )ip kh!& )n tin tr-nh kim so!t ) E!o
kt th6& truy [u,t ti nguy9n#
vvf,u tr6& tin tr-nh y9u &u ti nguy9n trong gi;i ph!p message
yhile (H)
Sen'(pro&ess &ontroler+ re=uest message) vvgoi t' y& tn 7a &huyen sang trang thai Elo&ke'
|e&ei7e(pro&ess &ontroler+ a&&ept message) vvnhan t' &hap nhan su 'ung tn
&riti&alese&tion () vv'o& =uyen su 'ung tai nguyen 'ung &hung
Sen'(pro&ess &ontroler+ en' message) vvgoi t' ket thu& su 'ung tn#
Lon&riti&alese&tion ()
Lh?n [t_ Semaphore 7 monitor &/ th gi;i =uyt ).2& 7,n ) truy [u,t )& =uyn tr9n &!& m!y
t"nh &/ mt ho%& nhiu E [0 lX &hia s mt 7(ng nhY &hung# Lh.ng khng thu?n l2i trong &!& h
thng phNn t!n+ khi m mti E [0 lX s8 hqu mt E nhY ri9ng Eit 7 li9n l4& thng =ua m4ng#
Qrong nhqng h thng phNn t!n+ &: &h trao )i thng )ip so ):n gi;n h:n 7 ).2& '(ng ) gi;i
=uyt Ei to!n )Wng E h/a#
H/e TNH TRNG TC NGHN (fEAf)OCKS)
H/e/. K5<2 720C >= 7957`
$t t?p h2p &!& tin tr-nh g3i l 8 t-nh tr4ng t*& nghon nu mti tin tr-nh trong t?p h2p )u &hr
)2i ti nguy9n m tin tr-nh kh!& trong t?p h2p )ang &him giq# d" '1 t4i mt thri 'im+ tin tr-nh
H )ang giq ti nguy9n |H+ y9u &u |I 7 tin tr-nh I )ang giq ti nguy9n |I+ y9u &u |H+ nh. 7Ny
y9u &u 7 ti nguy9n khng th )!p sng &ho &; hai tin tr-nh# ~hi )/ khng &/ tin tr-nh no &/
th tip t1& [0 lX+ &Vng nh. gi;i ph/ng ti nguy9n &ho tin tr-nh kh!& s0 '1ng+ t,t &; &!& tin tr-nh
trong t?p h2p )u E\ kh/a 7nh 7i<n
H-nh J#Jb_ (a) mt t-nh tr4ng t*& nghon tim n (E) mt t-nh tr4ng t*& nghon thZ& sZ#
7" '1_ Fqa an ti &5a &!& trit gia# f/ O nh trit gia &(ng ngWi an ti# $ti nh trit gia &n '(ng I
&!i )Va ) &/ th an# Lh.ng tr9n En &h] &/ tng &ng O &!i )Va+ nu &; O ng.ri )u &m &!i )Va
E9n tr!i &(ng l6&+ th- so khng &/ ai &/ ).2& &!i )Va E9n ph;i ) &/ th E*t )u an # Q-nh tr4ng ny
g3i l t-nh tr4ng t*& nghon#
cb
Qi nguy9n &/ th l ti nguy9n 7?t lX (m!y in+ E nhY+ &pu+ )a+ u) ho%& ti nguy9n logi& (zile+
semaphore+ monitor+u)# Qi nguy9n l4i phNn thnh hai lo4i_ lo4i ti nguy9n &/ th l,y l4i t mt
tin tr-nh )ang &him giq m khng ;nh h.8ng )n tin tr-nh )ang &him giq 7 lo4i ti nguy9n
khng th thu hWi l4i t tin tr-nh )ang &him giq#
H/e/& 234 a207 K4L> 5207 >= 7957
H thng so [u,t hin t*& nghon khi 7 &h] khi &/ )5 K )iu kin sau_
234 a207 ._ f/ s0 '1ng ti nguy9n khng th &hia s
$ti thri )im+ mt ti nguy9n khng th &hia s ).2& h thng &,p ph!t &h] &ho mt tin tr-nh +
khi tin tr-nh s0 '1ng [ong ti nguy9n ny+ h thng mYi thu hWi 7 &,p ph!t ti nguy9n &ho tin
tr-nh kh!&#
w 234 a207 &_ SZ &him giq 7 y9u &u th9m ti nguy9n khng th &hia s
f/ tin tr-nh &him giq &!& ti nguy9n trong khi l4i &hr ).2& &,p ph!t th9m ti nguy9n E\ &him
giq E8i tin tr-nh kh!&#
w 234 a207 H_ ~hng thu hWi ti nguy9n t tin tr-nh )ang giq &h6ng
Qi nguy9n khng th ).2& thu hWi t tin tr-nh )ang &him giq &h6ng tr.Y& khi tin tr-nh ny s0
'1ng &h6ng [ong#
w 234 a207 M_ QWn t4i mt &hu tr-nh trong )W th\ &,p ph!t ti nguy9n
f/ "t nh,t hai tin tr-nh &hr )2i lTn nhau_ tin tr-nh ny &hr ).2& &,p ph!t ti nguy9n )ang E\ tin
tr-nh kh!& &him giq 7 ng.2& l4i#
H/e/H >5p =L? ?5<> >62 794F7`
h-nh trUn l tin tr-nh+ h-nh 7ung l ti nguy9n# i 7Yi tin tr-nh+ mVi t9n )i ra l &him giq ti
nguy9n+ mVi t9n 7o l y9u &u ti nguy9n# d" '1 tin tr-nh { )ang giq ti nguy9n |+ tin tr-nh F
y9u &u ti nguy9n S# Qin tr-nh f giq l+ y9u &u Q+ tin tr-nh > giq Q+ y9u &u l# Q?p h2p tin
tr-nh f+> g3i l 8 t-nh tr4ng t*& nghon#
H-nh J#JH_ m h-nh )W th\ &,p ph!t ti nguy9n
cH
H-nh J#JI_ mt 7" '1 7 t*& nghon
H/e/H C<= ?5Z[79 ?5<? KT 8U >= 7957 q6 79_7 =57 >= 7957
* C$c phCDng ph$p *+ l "ec nghqn
w S0 '1ng mt thu?t to!n &,p ph!t ti nguy9n no )/ m E;o );m khng Eao gir [;y ra t*& nghon#
w Ho%& &ho php [;y ra t*& nghon 7 t-m &!&h sqa &hqa t*& nghon#
w Ho%& E =ua 7i& [0 lX t*& nghon+ [em nh. h thng khng Eao gir [;y ra t*& nghon# Qh.rng
!p '1ng ph.:ng ph!p ny khi h thng r,t "t khi E\ t*& nghon 7 &hi ph" kim tra t*& nghon &ao
(lLiM 7 iL>OS s0 '1ng ph.:ng ph!p ny)
B :gSn chZn "ec nghqn
khng [;y ra t*& nghon+ &n E;o );m ti thiu mt trong K )iu kin )S n9u 8 tr9n khng [;y
ra_
w iu kin H gn nh. khng th tr!nh ).2& )iu kin ny 7- E;n &h,t ti nguy9n gn nh. & )\nh#
w )iu kin I khng [;y ra+ th- &/ th !p '1ng mt trong hai nguy9n t*& sau _
e Qin tr-nh ph;i y9u &u t,t &; &!& ti nguy9n &n thit tr.Y& khi &ho E*t )u [0 lX# xh.:ng ph!p
ny g%p kh/ khan l h )iu hnh kh/ &/ th Eit tr.Y& &!& ti nguy9n tin tr-nh &n s0 '1ng 7-
nhu &u ti nguy9n &Un ph1 thu& 7o =u! tr-nh tin tr-nh thZ& hin# Lgoi ra nu &ho tin tr-nh
&him giq sn &!& ti nguy9n &h.a &n s0 '1ng ngay th- 7i& s0 '1ng ti nguy9n so km hiu =u;#
e ~hi tin tr-nh y9u &u mt ti nguy9n mYi 7 E\ t &hi+ n/ ph;i gi;i ph/ng &!& ti nguy9n )ang
&him giq + sau )/ l4i ).2& &,p ph!t tr8 l4i &(ng ln 7Yi ti nguy9n mYi# xh.:ng ph!p ny so g%p
kh/ khan trong 7i& E;o 7 t"nh ton 7n 'q liu &5a h thng#
w )iu kin J khng [;y ra+ h )iu hnh &n &ho php h thng ).2& thu hWi ti nguy9n t &!&
tin tr-nh E\ kho! 7 &,p ph!t tr8 l4i &ho tin tr-nh khi n/ tho!t khi t-nh tr4ng E\ kh/a# Quy nhi9n
7Yi mt s lo4i ti nguy9n+ 7i& thu hWi so r,t kh/ khan 7- 7i ph4m sZ ton 7n 'q liu#
w )iu kin K khng [;y ra+ &/ th &,p ph!t ti nguy9n theo mt sZ phNn &,p nh. sau _
D3i | |H+ |I+###+|m l t?p &!& lo4i ti nguy9n# f!& lo4i ti nguy9n ).2& )!nh s ths tZ # d"
'1 _ ()a) I+ (m!y in) HI+u
cI
~hi tin tr-nh )ang &him giq ti nguy9n |i th- &h] &/ th y9u &u &!& ti nguy9n |- nu (|-)
(|i)#
Qa &/ th tr!nh t*& nghon khi &,p ph!t ti nguy9n ERng &!&h s0 '1ng gi;i thu?t &,p ph!t ti nguy9n
nh. sau_
H/e/M G2t2 >54I> =L? ?5<> >62 794F7 (92t2 >54I> gB7aV\)
H/e/M/. G2t2 >54I> K<= 1p75 >\d79 >5<2 B7 >W67
Lu h thng &/ th tha mSn &!& nhu &u ti nguy9n ti )a &5a mti tin tr-nh theo mt ths tZ &,p
ph!t no )/ m khng E\ t*& nghon th- g3i l h thng 8 tr4ng th!i l an ton# H thng 8 tr4ng
th!i khng an ton &/ th 'Tn )n t-nh tr4ng t*& nghon# Qa &/ gi;i thu?t [!& )\nh tr4ng th!i an ton
nh. sau_
int Lum|esour&esvvs ti nguy9n+ mt ti nguy9n &/ th &/ nhiu th hin (instan&e)
int Lumxro&svvs tin tr-nh trong h thng
int {7ailaEleLum|esour&es vv {7ailaEler s l.2ng &!& th hin &Un tZ 'o &5a ti nguy9n r
int $a[Lumxro&s+ Lum|esour&es vv$a[p+r nhu &u ti )a &5a tin tr-nh p 7 ti nguy9n r
int {llo&ationLumxro&s+ Lum|esour&esvv {llo&ationp+r s ti nguy9n r )S &,p ph!t &ho tin
tr-nh p
int Lee'Lumxro&s+ Lum|esour&es vv Lee'p+r $a[p+r e {llo&ationp+r s ti nguy9n r
m tin tr-nh p &Un &n s0 '1ng
int inishLumxro&s zalse vvinishptrue l tin tr-nh p )S thZ& thi [ong
FH#Q-m tin tr-nh i tho; &!& )iu kin sau_
e Qin tr-nh i &h.a thZ& thi [ong_
inishi zalse
e $3i nhu &u 7 ti nguy9n &5a tin tr-nh i )u &/ th )!p sng_
Lee'i+- {7ailaEle-+ 7Yi m3i ti nguy9n -
Lu khng &/ tin tr-nh i nh. th th- )n E.Y& J+ nu &/ [ung E.Y& I
FI# f,p ph!t m3i ti nguy9n m tin tr-nh i &n
e f,p ph!t )5 ti nguy9n &ho tin tr-nh i#
{llo&ationi+- {llo&ationi+-wLee'i+-
-
nee'i+-b
-
{7ailaEle- {7ailaEle- e Lee'i+-
e !nh ',u tin tr-nh i thZ& hin [ong
inishi true
e Qhu hWi l4i t,t &; ti nguy9n )S &,p &ho tin tr-nh i+ &?p nh?t l4i s ti nguy9n - kh; '1ng
{7ailaEle- {7ailaEle- w {llo&ationi+-
e }uay l4i E.Y& H
cJ
FJ# Lu inishi true 7Yi m3i i+ th- h thng 8 tr4ng th!i an ton+ ng.2& l4i l khng an ton#
H/e/M/& G2t2 >54I> BB7aV\
~hi &/ tin tr-nh y9u &u &!& ti nguy9n+ h )iu hnh th0 &,p ph!t+ sau )/ [!& )\nh h thng &/
an ton khng ('(ng gi;i thu?t [!& )\nh tr4ng th!i an ton)# Lu h thng an ton th- &,p ph!t
thZ& sZ &!& ti nguy9n m tin tr-nh y9u &u+ ng.2& l4i tin tr-nh ph;i )2i#
Di; s0 tin tr-nh xi y9u &u kr th hin &5a ti nguy9n r# Di;i thu?t &,p ph!t ).2& thZ& hin nh.
sau_
FH# Lu kr Lee'i+r 7Yi m3i r+ )n E.Y& I+ ng.2& l4i+ [;y ra t-nh hung lti
FI# Lu kr {7ailaEler 7Yi m3i r+ )n E.Y& J + ng.2& l4i xi ph;i &hr
FJ# Di; s0 h thng )S &,p ph!t &ho xi &!& ti nguy9n m n/ y9u &u 7 &?p nh?t t-nh tr4ng h
thng nh. sau_
{7ailaEler{7ailaElerekr 7Yi m3i r
{llo&ationi+r {llo&ationi+rw kr 7Yi m3i r
Lee'i+r Lee'i+r e kr 7Yi m3i r
FK_ ~im tra tr4ng th!i an ton &5a h thng#
>(ng gi;i thu?t @[!& )\nh tr4ng th!i an tonA ) [!& )\nh tr4ng th!i &5a h thng sau khi )S th0
&,p ti nguy9n &ho xi# Lu tr4ng th!i l an ton th- &!& ti nguy9n so ).2& &,p ph!t th?t sZ &ho
xi# Lg.2& l4i+ xi ph;i &hr#
d" '1 gi; s0 t-nh tr4ng hin hnh &5a h thng ).2& m t; nh. trong E;ng '.Yi )Ny# ft $a[ l
nhu &u ti )a 7 mti ti nguy9n &5a mti tin tr-nh+ {llo&ation l s l.2ng &5a mti lo4i ti nguy9n
)S &,p &ho mti tin tr-nh+ {7ailaEle l s l.2ng &5a mti lo4i ti nguy9n &Un &/ th s0 '1ng#
Lu tin tr-nh xI y9u &u K |H+ H |J# hSy &ho Eit y9u &u ny &/ th )!p sng m khng [;y ra
'ea'lo&k hay khng
$a[ {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH J I I H b b K H I
xI G H J I H H
xJ J H K I H H
xK K I I b b I
p '1ng Di;i thu?t Eanker
w Fb_ Q"nh Lee' l nhu &u &Un l4i 7 mti ti nguy9n - &5a mti tin tr-nh i_
Lee'i+-$a[i+-e{llo&ationi+-
cK
Lee' {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH I I I H b b K H I
xI K b I I H H
xJ H b J I H H
xK K I b b b I
w FHwFI_ y9u &u ti nguy9n &5a xI tho; )k 8 FH+ FI#
w FJ_ Qh0 &,p ph!t &ho xI+ &?p nh?t t-nh tr4ng h thng
Lee' {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH I I I H b b b H H
xI b b H G H I
xJ H b J I H H
xK K I b b b I
w FK_ ~im tra tr4ng th!i an ton &5a h thng ('(ng gi;i thu?t @[!& )\nh tr4ng th!i an tonA)# pn
l.2t &h3n tin tr-nh ) th0 &,p ph!t_
e fh3n xI+ th0 &,p ph!t+ gvs xI thZ& thi [ong thu hWi_
{7ailaEle- {7ailaEle- w {llo&ationi+-
Lee' {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH I I I H b b G I J
xI b b b b b b
xJ H b J I H H
cO
xK K I b b b I
w fh3n xH
Lee' {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH b b b b b b I J
xI b b b b b b
xJ H b J I H H
xK K I b b b I
w fh3n xJ_
Lee' {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH b b b b b b J K
xI b b b b b b
xJ b b b b b b
xK K I b b b I
w fh3n xK_
Lee' {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH b b b b b b J G
xI b b b b b b
xJ b b b b b b
xK b b b b b b
$3i tin tr-nh )S ).2& &,p ph!t ti nguy9n 7Yi y9u &u &ao nh,t+ n9n tr4ng th!i &5a h thng l an
ton+ 'o )/ &/ th &,p ph!t &!& ti nguy9n theo y9u &u &5a xI#
cG
H/e/e G2t2 >54I> ?5<> 5207 >= 7957
Lu khi tin tr-nh y9u &u ti nguy9n m h thng &s &,p ph!t th- t-nh tr4ng t*& nghon &/ th [;y
ra+ khi )/ h thng &n &ung &,p gi;i thu?t ph!t hin t*& nghon 7 gi;i thu?t ph1& hWi t-nh tr4ng
tr.Y& khi t*& nghon# Qa &/ hai lo4i ti nguy9n+ mti lo4i so &/ gi;i thu?t ph!t hin t*& nghon t.:ng
sng#
!, 3)i ngu=n ch@ ci m" "hV hiTn
>(ng )W th\ )2i ti nguy9n (yaitezor graph)+ )W th\ ny ).2& [Ny 'Zng t )W th\ &,p ph!t ti
nguy9n (resour&e allo&ation graph) ERng &!&h E nhqng )]nh Eiu 'i<n lo4i ti nguy9n+ khi )/ mt
&4nh t xi tYi x ngha l x )ang )2i xi gi;i ph/ng mt ti nguy9n m x &n# H thng E\ t*&
nghon nu 7 &h] nu )W th\ )2i ti nguy9n &/ &hu tr-nh+ 'o )/ ) ph!t hin t*& nghon ta &h] &n
'(ng mt gi;i thu?t ph!t hin &hu tr-nh ([em lX thuyt )W th\)#
d" '1_ f!& tin tr-nh )ang &him giq 7 )Wng thri y9u &u &!& ti nguy9n nh. &ho trong E;ng
'.Yi )Ny# Hi h thng &/ E\ t*& nghon khng
Qin tr-nh fhim giq 9u &u
xH |H |I
xI |J+ |K |H
xJ |O |K
xK |I |O
xO |J
H>_MNy 'Zng )W th\ )2i ti nguy9n_
>o )W th\ &/ &hu tr-nh n9n h thng E\ t*& nghon#
b, 3)i ngu=n ci nhiau "hV hiTn
W th\ )2i ti nguy9n khng th !p '1ng &ho tr.rng h2p ny# Qa &/ th !p '1ng gi;i thu?t sau )
ph!t hin t*& nghon (kh! ging gi;i thu?t &,p ph!t ti nguy9n) _
BZv= ._ fh3n xi )u ti9n sao &ho &/ y9u &u ti nguy9n &/ th ).2& )!p sng+ nu khng &/ th-
h thng E\ t*& nghon+ ng.2& l4i [ung F.Y& I
c
|H
xH
|J |K
xO
xI xJ
xK
|I |O
th th cp pht ti
nguyn theo yu cu
xO
xH xI xJ
xK
th i ti nguyn
|H
xH
|J |K
xO
xI xJ
xK
|I |O
th cp pht ti nguyn
BZv= &_ Qh0 &,p ph!t ti nguy9n &ho xi 7 kim tra tr4ng th!i h thng+ nu h thng an ton th-
tYi F.Y& J+ ng.2& l4i th- =uay l9n F.Y& H t-m xi k tip#
BZv= H_ f,p ph!t ti nguy9n &ho xi# Lu t,t &; xi ).2& )!p sng th- h thng khng E\ t*& nghon+
ng.2& l4i =uay l4i F.Y& H#
Di;i thu?t ph!t hin t*& nghon &/ th ).2& g3i mti khi mt y9u &u &,p ph!t ti nguy9n khng
).2& )!p sng ngay+ khi )/ &/ th [!& )\nh ).2& t?p h2p &!& tin tr-nh E\ t*& nghon 7 &Vng [!&
)\nh ).2& tin tr-nh gNy ra t*& nghon nh.ng so tn nhiu thri gian khi g3i gi;i thu?t =u! nhiu ln
nh. 7?y# f!&h kh!& l g3i gi;i thu?t theo mt &hu kP )\nh tr.Y&+ 7" '1 H gir g3i mt ln ho%& g3i
khi hiu su,t s0 '1ng fxl '.Yi Kb
M/e/i H204 =575 >= 7957
~hi )S ph!t hin ).2& t*& nghon+ &/ hai lZa &h3n &h"nh ) hiu &h]nh t*& nghon _
BJ HAF >2u7 >\:75 >\W79 >:75 >\d79 >= 7957`
H5y t,t &; &!& tin tr-nh trong t-nh tr4ng t*& nghon hay h5y tng tin tr-nh li9n =uan &ho )n khi
khng &Un &hu tr-nh gNy t*& nghon (tin tr-nh E\ h5y so E\ thu hWi t,t &; ti nguy9n )S ).2& &,p
ph!t)# &h3n ).2& tin tr-nh th"&h h2p E\ h5y+ ph;i 'Za 7o &!& yu t nh. ) .u ti9n+ thri gian
)S [0 lX+ s l.2ng ti nguy9n )ang &him giq + s l.2ng ti nguy9n &Un y9u &u th9m###
gJ T54 52 >62 794F7`
f/ th hiu &h]nh t*& nghon ERng &!&h thu hWi mt s ti nguy9n t &!& tin tr-nh 7 &,p ph!t &!&
ti nguy9n ny &ho nhqng tin tr-nh kh!& &ho )n khi lo4i E ).2& &hu tr-nh t*& nghon# ~hi thu
hWi ti nguy9n &n gi;i =uyt J 7,n ) sau_
w fh3n lZa mt n4n nhNn_ tin tr-nh no so E\ thu hWi ti nguy9n 7 thu hWi nhqng ti nguy9n
no
w Qr8 l4i tr4ng th!i tr.Y& t*& nghon (rollEa&k)_ khi thu hWi ti nguy9n &5a mt tin tr-nh+ &n ph;i
ph1& hWi tr4ng th!i &5a tin tr-nh tr8 l4i tr4ng th!i gn nh,t tr.Y& )/ m &h.a E\ t*& nghon#
w Q-nh tr4ng )/i ti nguy9n _ lm sao E;o );m rRng khng &/ mt tin tr-nh no lun lun E\
thu hWi ti nguy9n
TM TT
w Qin tr-nh l mt &h.:ng tr-nh )ang [0 lX+ mti tin tr-nh &/ mt khng gian )\a &h]+ mt &on tr
lnh+ mt t?p &!& thanh ghi 7 sta&k ri9ng# f!& tin tr-nh &h] &/ th li9n l4& 7Yi nhau thng =ua &!&
&: &h 'o h )iu hnh &ung &,p#
w $1& )"&h &ho nhiu tin tr-nh ho4t )ng )Wng thri l ) tang hiu su,t s0 '1ng fxl+ tang ms&
) )a nhim+ tang t& ) [0 lX#
w $t tin tr-nh &/ th t4o nhiu tiu tr-nh+ mti tiu tr-nh thZ& hin mt &hs& nang no )/ 7 thZ&
thi )Wng thri &Vng ERng &!&h &hia s fxl# f!& tiu tr-nh trong &(ng mt tin tr-nh '(ng &hung
khng gian )\a &h] tin tr-nh nh.ng &/ &on tr lnh+ t?p &!& thanh ghi 7 sta&k ri9ng# f!& tiu tr-nh
li9n l4& 7Yi nhau thng =ua &!& Ein ton &1& &5a tin tr-nh#
cc
w f!& tr4ng th!i &5a tin tr-nh _ Ley+ |ea'y+ |unning+ Flo&ke'+ ^n'
w Q?p lnh &5a fxl ).2& phNn thnh t?p lnh )%& =uyn (&!& lnh nu s0 '1ng khng &h"nh [!&+
&/ th ;nh h.8ng [,u )n h thng) 7 t?p lnh khng )%& =uyn (khng ;nh h.8ng tYi h thng)#
xhn &sng &h] &ho php &!& lnh )%& =uyn ).2& thZ& hin trong &h ) )%& =uyn# H )iu hnh
ho4t )ng trong &h ) )%& =uyn+ &!& tin tr-nh &5a ng.ri '(ng so ho4t )ng trong &h ) khng
)%& =uyn
w H )iu hnh =u;n lX &!& tin tr-nh thng =ua E;ng tin tr-nh+ mti m1& trong E;ng g3i l khi
=u;n lX tin tr-nh l.u thng tin 7 mt tin tr-nh gWm &/_ )\nh 'anh &5a tin tr-nh + tr4ng th!i tin
tr-nh+ ngq &;nh &5a tin tr-nh+ thng tin giao tip+ thng tin thng k9#
w f!& thao t!& tr9n tin tr-nh_ t4o tin tr-nh+ kt th6& tin tr-nh+ t4m 'ng tin tr-nh+ t!i k"&h ho4t
tin tr-nh+ thay )i ) .u ti9n tin tr-nh#
w $ti ti nguy9n ).2& =u;n lX ERng mt &,u tr6& g3i l khi =u;n lX ti nguy9n &hsa &!& thng
tin sau _ )\nh 'anh ti nguy9n+ tr4ng th!i ti nguy9n+ hng )2i tr9n mt ti nguy9n+ E &,p ph!t#
w $t s )%& t"nh &5a tin tr-nh_ t"nh h.Yng nh?pv[u,t+ t"nh h.Yng [0 lX+ tin tr-nh t.:ng t!& hay
[0 lX theo l+ ) .u ti9n &5a tin tr-nh+ thri gian )S s0 '1ng fxl &5a tin tr-nh+ thri gian &Un l4i
tin tr-nh &n ) hon t,t#
w Qin tr-nh ).2& )iu phi thng =ua E )iu phi 7 E phNn phi# F )iu phi s0 '1ng mt
gi;i thu?t th"&h h2p ) lZa &h3n tin tr-nh ).2& [0 lX tip theo# F phNn phi &h\u tr!&h nhim &?p
nh?t ngq &;nh &5a tin tr-nh E\ t4m ng.ng 7 trao fxl &ho tin tr-nh ).2& &h3n E8i E )iu phi
) tin tr-nh thZ& thi#
w $1& ti9u &5a E )iu phi_ sZ &ng ERng+ t"nh hiu =5a+ thri gian )!p sng h2p lX+ thri gian l.u
l4i trong h thng+ thng l.2ng ti )a# f!& nguy9n lX )iu phi_ )iu phi )& =uyn+ )iu phi
khng )& =uyn#
w Qhri )im thZ& hin )iu phi_ tin tr-nh &huyn t tr4ng th!i running sang tr4ng th!i Elo&ke'+
ho%& tin tr-nh &huyn t tr4ng th!i running sang tr4ng th!i rea'y+ ho%& tin tr-nh &huyn t tr4ng
th!i Elo&ke' sang tr4ng th!i rea'y+ ho%& tin tr-nh kt th6&+ ho%& tin tr-nh &/ ) .u ti9n &ao h:n
[u,t hin#
w thZ& hin )iu phi+ h )iu hnh s0 '1ng Ea lo4i 'anh s!&h l_ 'anh s!&h t!& 71 + 'anh s!&h
sn sng+ 'anh s!&h &hr )2i# f!& thu?t to!n )iu phi_ iO+ |oun' |oEin+ ) .u ti9n+ S+ nhiu
ms& ) .u ti9n+)iu phi [ s#
w f: &h li9n l4& giqa &!& tin tr-nh_ li9n l4& ERng t"n hiu+ li9n l4& ERng ).rng ng+ li9n l4& =ua
7(ng nhY &hia s+ li9n l4& ERng thng )ip+ li9n l4& =ua so&ket#
w Wng E &!& tin tr-nh+ min gang# f!& gi;i ph!p )Wng E_ semaphore+ monitor+ trao )i thng
)ip#
w Q-nh tr4ng t*& nghon+ )iu kin [u,t hin t*& nghon+ &!& ph.:ng ph!p [0 lX t*& nghon# Di;i
thu?t &,p ph!t ti nguy9n#
CU HI n BI TP
H# Mt gi;i ph!p phn mm 'o >ekker ) ngh\ ) t &hs& truy [u,t )& =uyn &ho hai tin tr-nh#
Hai tin tr-nh xb+ xH &hia s &!& Ein sau _
int turn vv )n phi9n i hay - (i+-b##H)
c
int zlag I vv kh8i )ng l {pS^
vv&,u tr6& tin tr-nh xi
hile (Q|l^)
zlagi Q|l^
yhile (zlag-)
iz (turn -)
zlagi {pS^
yhile (turn -)
zlagi Q|l^
&riti&alse&tion()
turn - zlagi {pS^
non&riti&alse&tion()
Di;i ph!p ny &/ tha mSn K y9u &u &5a Ei to!n min gang khng
I# Mt gi;i ph!p )Wng E ho! sau_
yhile (Q|l^)
int - Hei
zlagi Q|l^ turn i
yhile (turn - zlag-Q|l^)
&riti&alese&tion ()
zlagi {pS^
Lon&riti&alese&tion ()
Ny &/ ph;i l mt gi;i ph!p E;o );m ).2& )& =uyn truy [u,t khng
J# Di; s0 mt m!y t"nh khng &/ lnh QSp+ nh.ng &/ lnh syap ho!n )i ni 'ung &5a hai t nhY
ERng mt thao t!& )& =uyn _
7oi' syap(int a+ int E)
int tempa
a E E temp
S0 '1ng lnh ny &/ th t &hs& truy [u,t )& =uyn khng Lu &/ [Ny 'Zng &,u tr6& &h.:ng
tr-nh t.:ng sng#
b
K# Qrong gi;i ph!p peterson E Ein turn &/ ).2& khng
O# xh!t trin gi;i ph!p xeterson &ho nhiu tin tr-nh
G# fhsng t rRng nu &!& lnh >oyn 7 lp tr9n semaphore khng thZ& hin mt &!&h khng th
phNn &hia+ th- khng th '(ng semaphore ) gi;i =uyt Ei to!n min gang#
# Mt hai tin tr-nh [0 lX )o4n &h.:ng tr-nh sau_
pro&ess xH {H {I
pro&ess xI FH FI
Wng E ho! ho4t )ng &5a hai tin tr-nh ny sao &ho &; {H 7 FH )u hon t,t tr.Y& khi {I hay
FI E*t )u #
c# Qng =u!t ho! Eai G_ &ho &!& tin tr-nh [0 lX )o4n &h.:ng tr-nh sau_
pro&ess xH zor ( i H i Hbb i ww) {i
pro&ess xI zor ( - H - Hbb - ww) F-
Wng E ho! ho4t )ng &5a hai tin tr-nh ny sao &ho &; 7Yi k E,t kP ( I k Hbb)+ {k &h] &/
th E*t )u khi F(keH) )S kt th6&+ 7 Fk &h] &/ th E*t )u khi {(keH) )S kt th6&#
# S0 '1ng semaphore ) 7it l4i &h.:ng tr-nh sau theo m h-nh [0 lX )Wng hnh_
y [H [I (H) 7 [J [K (I) y 7 [O (J) 7 [G (K)
y y y (O) y (G) ans y w ()
([H+[I+[J+[K+[O+[G l &!& hRng s)
Hb# dit l4i Ei '(ng monitor
HH# Mt hai tin tr-nh sau_
pro&ess {
yhile (H) na na wH
pro&ess F
yhile (H) nE nE wH
a) Wng E ho! [0 lX &5a hai tin tr-nh tr9n+ sao &ho t4i E,t kP thri )im no &Vng &/ nE na
nE wHb
E) Lu gi;m )iu kin &h] l na nE wHb+ gi;i ph!p &5a E4n so ).2& s0a &hqa nh. th no
&) Di;i ph!p &5a E4n &/ &Un )6ng nu &/ nhiu tin tr-nh lo4i { 7 F &(ng thZ& hin
HI# Fi to!n Lg.ri s;n [u,t Lg.ri ti9u th1 (xro'u&erefonsumer)
H
Hai tin tr-nh &(ng &hia s mt E )m &/ k"&h th.Y& giYi h4n# $t tin tr-nh t4o 'q liu+ )%t 'q
liu 7o E )m (ng.ri s;n [u,t) 7 mt tin tr-nh l,y 'q liu t E )m ) [0 lX (ng.ri ti9u
th1)#
Hai tin tr-nh &n tho; &!& )iu kin sau _
e ~H_ Qin tr-nh s;n [u,t khng ).2& ghi 'q liu 7o E )m )S )y#
e ~I_ Qin tr-nh ti9u th1 khng ).2& )3& 'q liu t E )m )ang trng#
e ~J_ Hai tin tr-nh &(ng lo4i ho%& kh!& lo4i )u khng ).2& truy [u,t E )m &(ng l6&#
HJ# Fi to!n |ea'erseriters
~hi &ho php nhiu tin tr-nh truy [u,t &: s8 'q liu '(ng &hung &!& h =u;n tr\ fS>p &n );m
E;o &!& )iu kin sau _
e kH_ khi &/ rea'er th- khng &/ yriter nh.ng &/ th &/ &!& rea'er kh!& t[ 'l
e kI_ ~hi &/ yriter th- khng &/ yriter ho%& rea'er no kh!& t[ 'l#
(f!& )iu kin ny &n &/ ) );m E;o t"nh nh,t =u!n &5a 'q liu#)
HK# Fi to!n Q4o phNn t0 HIO
Wng E ho4t )ng &5a mt phUng th" nghim s0 '1ng nhiu tin tr-nh )Wng hnh sau ) t4o &!&
phNn t0 HIO_
$akeH()
yhile (true)
$akeeHy'ro() vv t4o H nguy9n t0 H
$akeO()
yhile (true)
$akeeO[y() vvt4o H nguy9n t0 O
v Qin tr-nh $akeater ho4t )ng )Wng hnh 7Yi &!& tin tr-nh $akeH+ $akeO+ &hr &/ )5 I H
7 H O ) t4o HIO v
$akeater()
yhile (Qrue)
$akeeater() vvQ4o H phNn t0 HIO
I
HO# Mt mt gi;i ph!p semaphore )6ng &ho Ei to!n >ining philosophers _
'ezine L O
'ezine p^Q (ieH)L
'ezine |iDHQ (iwH)L
'ezine QHiL~iLD b
'ezine HlLD| H
'ezine ^{QiLD I
int stateL
semaphore mute[ H
semaphore sLvvgan tri Ean 'au b
vvtin tr-nh m phng trit gia ths i
7oi' philosopher( int i) vv i l trit gia ths i _ b##LeH
yhile (Q|l^)
think() vv Suy ngh
takezorks(i) vv y9u &u )n khi &/ )5 I na
eat() vv yumeyum+ spaghetti
putzorks(i) vv )%t &; I na l9n En l4i
yhile (Q|l^)
'oyn(mute[) vv 7o min gang
statei HlLD| vv ghi nh?n trit gia i )S )/i
J
test(i) vv & g*ng l,y I na
up(mute[) vv ra khi min gang
'oyn(si) vv &hr nu khng &/ )5 I na
vv)%t I na [ung
7oi' putzorks ( int i) vv i l trit gia ths i _ b##LeH
yhile (Q|l^)
'oyn(mute[) vv 7o min gang
statei QHiL~iLD vv ghi nh?n trit gia i an [ong
test(p^Q) vv kim tra ng.ri E9n tr!i )S &/ th an
test(|iDHQ) vv kim tra ng.ri E9n ph;i )S &/ th an
up(mute[) vv ra khi min gang
7 ho4t )ng &5a mti nhNn 7i9n ).2& m t; ERng mt tin tr-nh ^mployee() sau )Ny_
^mployee()
|unto|i7er() vv i )n Er sng
^mployee{rri7es () vv ~im tra )iu kin [ung thuyn
fross|i7er() vv ~h8i hnh =ua sng
Ib# Lh m!y s;n [u,t thit E\ [e h:i+ &/ I E ph?n ho4t )ng song song
e F ph?n s;n [u,t H khung [e _
$akefhassis()
xro'u&e&hassis()vv t4o khung [e
HSy )Wng E ho4t )ng trong 7i& s;n [u,t [e h:i theo nguy9n t*& sau _
e S;n [u,t mt khung [e+ tr.Y& khi t4o E!nh [e#
e fn &/ )5 K E!nh [e &ho H khung [e ).2& s;n [u,t ra+ sau )/ mYi tip t1& s;n [u,t khung [e
kh!&u
IH# Qhu?t to!n &!& trit gia an ti sau )6ng hay sai
semaphore sO vv&/ &!& gi! Ean tr\ )u ERng H
vvtin tr-nh trit gia ths i_
OS OS OS OS OS OS OS OS
w <Pi chu "i%n "rWnh_ 'i &huyn tin tr-nh )n mt 7(ng nhY kh!& )5 lYn ) tha mSn nhu &u
tang tr.8ng &5a tin tr-nh#
+ C#p ph$" dC (vng nh cho "i%n "rWnh _ &,p ph!t 'Z phUng &ho tin tr-nh mt 7(ng nhY lYn h:n
y9u &u Ean )u &5a tin tr-nh#
H-nh K#c_ 'nh &ht trng ) tin tr-nh &/ th ph!t trin trong m h-nh &,p ph!t li9n t1&
w Qin tr-nh lun ).2& l.u trq trong E nhY sut =u! tr-nh [0 lX &5a n/ n9n t"nh )a &h.:ng &5a h
)iu hnh so E\ h4n &h E8i k"&h th.Y& E nhY 7 k"&h th.Y& &5a &!& tin tr-nh trong E nhY# f!&h
gi;i =uyt l khi tin tr-nh E\ kh/a ()2i ti nguy9n+ )2i mt sZ kin+u) ho%& tin tr-nh s0 '1ng ht
thri gian fxl 'nh &ho n/+ n/ &/ th ).2& &huyn t4m thri ra E nhY ph1 ()a+u) 7 sau ny
).2& n4p tr8 l4i 7o E nhY &h"nh ) tip t1& [0 lX (kC thu?t syapping)#
tr!nh t-nh tr4ng E nhY E\ phNn m;nh 7- 'o ph;i &,p ph!t mt 7(ng nhY li9n t1& &ho tin tr-nh+
h )iu hnh &/ th &,p ph!t &ho tin tr-nh nhqng 7(ng nhY tZ 'o E,t kP+ khng &n li9n t1&#
M/&/& MX 5:75 =L? ?5<> a5X79 827 >r=
f/ Ea m h-nh &,p ph!t E nhY khng li9n t1& l m h-nh phNn )o4n+ m h-nh phNn trang 7 m
h-nh phNn )o4n kt h2p phNn trang#
M/&/&/. MX 5:75 ?5c7 1Wd7 (SV9CV7>B>2W7)
HbJ
$t &h.:ng tr-nh ).2& ng.ri l?p tr-nh &hia thnh nhiu phNn )o4n+ mti phNn )o4n &/ ngq ngha
kh!& nhau 7 h )iu hnh &/ th n4p &!& phNn )3an 7o E nhY t4i &!& 7\ tr" khng li9n t1&#
d" '1_ &h.:ng tr-nh &hia lm O phNn )o4n (segment)+ mti phNn )o4n ).2& n4p 7o 7(ng nhY
trng &/ th khng li9n t1&#
H-nh K#_ m h-nh phNn )o4n trong kC thu?t &,p ph!t E nhY khng li9n t1&
] C[ =5u MMU >\W79 a >54I> ?5c7 1Wd7`
~hi &h.:ng tr-nh ).2& n4p 7o E nhY+ $$l ghi &!& 7\ tr" l.u trq 7 k"&h th.Y& &!& phNn )o4n
7o E;ng phNn )o4n &Un fxl lm nhim 71 &huyn )i t,t &; &!& )\a &h] t.:ng )i trong &h.:ng
tr-nh thnh )\a &h] ;o#
xhn t0 ths s trong E;ng phNn )o4n gWm hai phn (Ease+ limit)+ Ease l )\a &h] 7?t lX E*t )u phNn
)o4n s+ limit l &hiu 'i &5a phNn )o4n s# $ti )\a &h] ;o gWm hai phn (s+') 7Yi s l s hiu phNn
)o4n + ' l )\a &h] t.:ng )i trong phNn )o4n s#
&huyn )\a &h] ;o (s+') thnh )\a &h] 7?t lX+ $$l truy [u,t phn t0 ths s trong E;ng phNn
)o4n+ l,y ).2& gi! tr\ limit 7 Ease &5a phNn )o4n s+ sau )/ kim tra )iu kin ('limit)+ nu sai
th- thng E!o lti @ truy [u,t )\a &h] khng h2p lA+ nu )6ng th- t"nh )i4 &h] 7?t lX theo &ng ths&_
)&7l Ease w '#
HbK
Qheo 7" '1 tr9n+ gi; s0 tin tr-nh truy [u,t )\a &h] ;o (s+')(K+HObb) th- $$l so thng E!o lti#
Lu tin tr-nh truy [u,t )\a &h] ;o (K+Hbb) th- $$l so &huyn thnh )\a &h] 7Nt lX l
KbbwHbbKcbb#
H-nh K#Hb_ &: &h $$l trong m h-nh phNn )o4n
] C62 1> gt79 ?5c7 1Wd7`
f/ th s0 '1ng &!& thanh ghi ) l.u trq E;ng phNn )o4n nu &/ "t phNn )o4n# Lu &h.:ng tr-nh &/
nhiu phNn )o4n+ E;ng phNn )o4n ph;i ).2& l.u trong E nhY &h"nh# xhn &sng &n &ung &,p mt
thanh ghi nn SQF| (Segment QaEle Fase |egister) ) l.u )\a &h] E*t )u &5a E;ng phNn )o4n 7
mt thanh ghi SQp| l.u s phNn )o4n (Segment QaEle pimit |egister) m &h.:ng tr-nh s0 '1ng#
dYi mt )\a &h] logi& (s+')+ tr.Y& ti9n s hiu phNn )o4n s ).2& kim tra t"nh h2p l (sSQp|)#
~ tip+ &ng gi! tr\ s 7Yi SQF| (SQF|ws) ) &/ ).2& )\a &h] &5a phn t0 ths s trong E;ng phNn
)o4n 7 )i4 &h] 7?t lX &ui &(ng l (Ease w ')
HbO
H-nh K#HH_ &: &h $$l trong m h-nh phNn )o4n# s0 '1ng thanh ghi SQp| 7 SQF|
] BtW q0 ?5c7 1Wd7
d- mti phNn )o4n 'o ng.ri l?p tr-nh [!& )\nh 7 ng.ri l?p tr-nh Eit ).2& mt phNn )o4n &hsa
nhqng g- E9n trong+ 'o 7?y h3 &/ th &h] )\nh &!& thu& t"nh E;o 7 th"&h h2p &ho mti phNn )o4n#
~hi )/ mti phn t0 &5a E;ng phNn )o4n &n &/ th9m mt thnh phn g3i l thu& t"nh E;o 7#
$$l so kim tra gi! tr\ &5a thu& t"nh ny ) ngan &h%n &!& thao t!& [0 lX E,t h2p l )n phNn
)o4n# Di! tr\ &5a thu& t"nh &/ th l | (&h] )3&)+ M (thZ& thi)+ (ghi)+u
H-nh K#HI_ f,u tr6& mt phn t0 trong E;ng phNn )o4n &/ s0 '1ng thu& t"nh E;o 7
] C52B Y ?5c7 1Wd7
$un hai tin tr-nh '(ng &hung mt phNn )o4n no )/+ $$l &h] &n g!n hai phn t0 trong hai
E;ng phNn )o4n &5a hai tin tr-nh &(ng gi! tr\#
H-nh K#HJ_ hai tin tr-nh xH+xI '(ng &hung phNn )o4n b (phNn )o4n e'itor)
N5I7 K>
Qrong h thng s0 '1ng kC thu?t phNn )o4n + hin t.2ng phNn m;nh ngo4i 7i 7Tn [;y ra khi &!&
khi nhY trng )u =u! nh+ khng )5 ) &hsa mt phNn )o4n# gu )im &5a kC thu?t phNn )o4n l
HbG
pimit Fase {ttriEute
mS &h.:ng tr-nh 7 'q liu ).2& t!&h ri9ng thnh nhqng khng gian )\a &h] )& l?p n9n '< 'ng
E;o 7 mS &h.:ng tr-nh 7 '< 'ng '(ng &hung 'q liu ho%& hm#
M/&/&/& MX 5:75 ?5c7 >\B79 (PB9279)
F nhY 7?t lX ).2& &hia thnh &!& khi &/ k"&h th.Y& & )\nh 7 ERng nhau g3i l khung trang
(page zrame)# ~hng gian )\a &h] ;o &Vng ).2& &hia thnh &!& khi &/ &(ng k"&h th.Y& 7Yi khung
trang 7 g3i l trang (page)# ~hi mt tin tr-nh ).2& ).a 7o E nhY ) [0 lX+ &!& trang &5a tin
tr-nh so ).2& &,t 7o nhqng khung trang &Un trng+ nh. 7?y mt tin tr-nh k"&h th.Y& L trang so
&n L khung trang trng#
H-nh K#HK_ khng gian )\a &h] ;o )Zo& &hia thnh nhiu trang 7 l.u 7o &!& khung trang
d" '1 mti khung trang H~F+ mt tin tr-nh J#O~F so ).2& &hia lm K trang# D]a s0 trang b ).2&
&,t 8 khung trang O+ trang H 8 khung trang +u
H-nh K#HO_ s0 '1ng E;ng trang ) l.u &!& s hiu khung trang &hsa trang#
] CL4 >\m= 1pB =5 tW`
'< 'ng phNn t"&h )\a &h] ;o thnh s hiu trang 7 )\a &h] t.:ng )i+ phn &sng =ui )\nh k"&h
th.Y& &5a trang l lVy tha &5a I
n
(n HJ)# Lu k"&h th.Y& &5a khng gian )\a &h] ;o l I
m
(fxl '(ng )\a &h] ;o m E"t) 7 k"&h th.Y& trang l I
n
th- men Eit &ao &5a )\a &h] ;o so Ei<u 'i<n s
hiu trang+ 7 n Eit th,p Ei<u 'i<n )\a &h] t.:ng )i trong trang# ~hi )/ mti )\a &h] ;o m Eit so &/
'4ng (p+') 7Yi p &him men Eit 7 p l s hiu trang+ ' &him n Eit 7 l )\a &h] t.:ng )i trong
trang p#
H-nh K#HG_ &,u tr6& )\a &h] ;o gWm hai phn_ &!& Eit &ao l.u s hiu trang+ &!& Eit th,p l.u )\a &h]
t.:ng )i trong trang#
] C[ =5u MMU >\W79 CX 5:75 ?5c7 >\B79`
~hi &h.:ng tr-nh ).2& n4p 7o E nhY+ $$l ghi nh?n l4i s hiu khung trang &hsa trang 7o
E;ng trang (pages taEle)+ &Un fxl lm nhim 71 &huyn )i t,t &; &!& )\a &h] t.:ng )i trong
&h.:ng tr-nh thnh )\a &h] ;o# xhn t0 ths p trong E;ng trang l.u s hiu khung trang trong E
Hb
)\a &h] ;o '4ng (p+') &/ m Eit
p l s hiu trang 7 &him men Eit &ao ' l )\a &h] t.:ng )i trong trang 7 &him n E"t th,p
xage
Jxage
Ixage
Hxage
b~hng
gian )\a
&h] ;o
JIIbH
bOF;
ng
trang
xage
HHGcGGHKKOxage
bOHIbKKbGJJbII
xage
JIbKcHHbIKbxage
Ibbbb~hng gian
)\a &h] 7?t lX
nhY 7?t lX )ang &hsa trang p# &huyn )\a &h] ;o (p+') thnh )\a &h] 7?t lX+ $$l truy [u,t
phn t0 ths p trong E;ng trang+ l,y ).2& gi! tr\ z l s hiu khung trang &hsa trang p 7 t )/ t"nh
).2& )i4 &h] 7?t lX 7\ tr" E*t )u &5a khung trang z w '#
H-nh K#H_ &: &h $$l trong m h-nh phNn trang
Qheo 7" '1 tr9n+ gi; s0 tin tr-nh truy [u,t )\a &h] ;o (p+') (J+Obb)+ $$l so truy [u,t phn t0
ths J trong E;ng trang 7 Eit ).2& trang J 8 khung trang I 7 &huyn )\a &h] ;o thnh )\a &h] 7Nt
lX l I[ I
Hb
wObb IOKc (I[ I
Hb
IbKc l )\a &h] E*t )u &5a khung trang I)#
Qrong thZ& t+ 7i& &huyn )i )\a &h] ;o (p+') ).2& $$l thZ& hin nh. sau_ $$l truy [u,t
phn t0 ths p trong E;ng trang+ l,y ).2& gi! tr\ z l s hiu khung trang &hsa trang p 7 t"nh )i4
&h] 7?t lX ERng &!&h &hp ' 7o n Eit th,p &5a )\a &h] 7?t lX 7 &hp z 7o (men) Eit &ao &5a )\a
&h] 7?t lX#
d" '1_ $t h thng &/ )\a &h] ;o HG Eit '4ng (p+') 7Yi p &/ K E"t+ ' &/ HI E"t (h thng &/ HG
trang+ mti trang K ~F) # F"t xresentvaEsent H ngha l trang hin 8 trong E nhY 7 b l 8 E
nhY ph1#
Mt )\a &h] ;o cHG
Hb
bbHb#bbbb#bbbb#bHbb
I
p bbHb
I
I
Hb
+ ' bbbb#bbbb#bHbb
I
K
Hb
# >o
trang pI 8 khung trang zHHb
I
G
Hb
+ n9n )\a &h] 7?t lX l bHHb#bbbb#bbbb#bHbb
I
G[I
HI
w K
IKOcb
H-nh K#Hc_ &: &h &huyn )i )\a &h] &5a $$l
] C62 1> gt79 >\B79
Lu E;ng trang &/ k"&h th.Y& nh &/ th '(ng mt t?p &!& thanh ghi ) &i )%t E;ng trang# Lu
E;ng trang &/ k"&h th.Y& lYn+ &n ph;i ).2& l.u trq trong E nhY &h"nh+ 7 phn &sng &ung &,p
mt thanh ghi xQF| (xage QaEle Fase |egister) l.u )\a &h] E*t )u &5a E;ng trang 7 thanh ghi
xQp| (xage QaEle pimit |egister) l.u s phn t0 trong E;ng trang#dYi mt )\a &h] logi& (p+')+
tr.Y& ti9n s hiu trang p ).2& kim tra t"nh h2p l (pxQp|)# ~ tip+ &ng gi! tr\ p 7Yi xQF|
(xQF|ws) ) &/ ).2& )\a &h] &5a phn t0 ths p trong E;ng phNn )o4n 7 $$l truy [u,t phn t0
ths p trong E;ng trang+ l,y ).2& gi! tr\ z l s hiu khung trang &hsa trang p 7 t )/ t"nh ).2&
)i4 &h] 7?t lX 7\ tr" E*t )u &5a khung trang z w '#
Hbc
fxl
p' z'
z
p
F
nhY
7?t lX
\a &h] ;o \a &h] 7?t lX
H-nh K#H_ &: &h $$l trong m h-nh phNn trang+ s0 '1ng hai thanh ghi xQp| 7 xQF|
] BD 75v au> 5? (T\B7Y8B>2W7 )WWaBY2hV B4zzV\Y`T)BY)
Qrong kC thu?t phNn trang+ mti ln truy [u,t )n 'q liu hay &h] th\ )u &n hai ln truy [u,t E
nhY_ mt &ho truy [u,t )n E;ng trang ) t-m s hiu khung trang 7 mt &ho E;n thNn 'q liu# f/
th gi;m EYt 7i& truy [u,t E nhY hai ln ERng &!&h s0 '1ng th9m E nhY kt h2p (QpFs)# F
nhY kt h2p &/ t& ) truy [u,t r,t nhanh 7 &ho php t-m kim song song# $ti thanh ghi trong
E nhY kt h2p gWm mt t kh/a 7 mt gi! tr\+ khi ).a )n E nhY kt h2p mt t kho! &n t-m+
t kho! ny so ).2& so s!nh &(ng l6& 7Yi &!& t kh/a trong E nhY kt h2p ) t-m ra gi! tr\ t.:ng
sng#
Qrong kC thu?t phNn trang+ QpFs ).2& s0 '1ng ) l.u trq &!& s hiu trang ).2& truy &?p gn
hin t4i nh,t# ~hi tin tr-nh truy [u,t mt )\a &h] ;o+ s hiu trang &5a )\a &h] so ).2& so s!nh 7Yi
&!& s hiu trang trong QpFs+ nu t-m th,y th- so [!& )\nh ).2& ngay s hiu khung trang t.:ng
sng+ nu khng &/ th- mYi &n t-m kim trong E;ng trang#
H-nh K#Ib_ &: &h $$l trong m h-nh phNn trang &/ s0 '1ng E nhY kt h2p#
H-nh K#IH_ mt 7" '1 7 E;ng trang &/ thu& t"nh E;o 7 (prote&tion) 7 thu& t"nh &?p nh?t
(mo'izie')_ H l mri )Zo& &?p nh?t+ b l &h.a &?p nh?t#
d" '1 mt h thng m!y t"nh JI Eit+ &/ k"&h th.Y& H khung trang l K~# Hi h thng =u;n lX
).2& tin tr-nh k"&h th.Y& ti )a l Eao nhi9u
H>_ $!y t"nh JI Eit )\a &h] ;o (p+') &/ JI Eit s E"t &5a p w s E"t &5a ' JI+ m H trang
K~I
HI
Eytes ' &/ HI Eit p &/ Ib Eit H E;ng trang &/ I
Ib
phn t0 h thng =u;n lX
Hb
).2& tin tr-nh &/ ti )a I
Ib
trang k"&h th.Y& tin tr-nh lYn nh,t l I
Ib
[ I
HI
Eyte I
JI
Eyte K
DF# Lh?n [t_ $!y t"nh n Eit =u;n lX ).2& tin tr-nh k"&h th.Y& lYn nh,t l I
n
Eyte#
] T =5^= gt79 >\B79
Qhng th.rng h )iu hnh &,p &ho mti tin tr-nh mt E;ng trang 7 ph;i '(ng E;ng trang k"&h
th.Y& )5 lYn ) =u;n lX tin tr-nh lYn nh,t n9n r,t tn E nhY# f/ Ea gi;i ph!p &ho 7,n ) ny l
s0 '1ng phNn trang )a &,p ho%& E;ng trang Eam ho%& E;ng trang ngh\&h );o#
!, PhQn "r!ng H! c#p
F;n thNn E;ng trang &Vng so ).2& phNn trang# Mt tr.rng h2p phNn trang nh\ &,p+ khi )/ E;ng
trang &,p H l.u s hiu khung trang &hsa E;ng trang &,p I+ &!& E;ng trang &,p I l.u s hiu khung
trang tin tr-nh s0 '1ng# Qhng th.rng trong phNn trang )a &,p mti E;ng trang &him H khung
trang+ ri9ng E;ng trang &,p H &/ th l.u trq tr9n )a 7 &/ th &/ k"&h th.Y& lYn h:n H khung trang#
H-nh K#II_ mt 7" '1 7 phNn trang nh\ &,p#
Lu mt m!y t"nh JI E"t+ 7Yi k"&h th.Y& trang K~ th- )\a &h] logi& &/ th Eiu 'i<n nh. sau_ '(ng
pIb E"t l.u s hiu trang+ 'HI E"t l.u 7\ tr" t.:ng )i trong trang# Lu '(ng E;ng trang nh\ &,p
th- p ).2& &hia ra thnh pH+ pI (ppHwpI)_ pHHb E"t l.u &h] m1& &5a E;ng trang &,p H+ pIHb E"t
l.u &h] m1& &5a E;ng trang &,p I (7i& phNn &hia pH+ pI l Eao nhi9u E"t th- 'o phn &sng =ui
)\nh)# Qa &/_ FQfHpH l.u s hiu khung trang &hsa E;ng trang &,p I+ FQfIpI l.u s hiu
khung trang &hsa trang &5a tin tr-nh#
H-nh K#IJ_ &,u tr6& &5a mt )\a &h] ;o trong phNn trang nh\ &,p
HHb
F;ng trang &,p H
F;ng trang &,p I
page number page ofset
p
i
p
2 d
10
10 12
pH &h] m1& &5a E;ng trang &,p mt# pI &h] m1& &5a E;ng trang &,p I
H-nh K#IK_ &: &h &huyn )i )\a &h] trong E;ng trang nh\ &,p#
b, ?ng "r!ng bSm
~hi khng gian )\a &h] ;o lYn ( JI E"t) th.rng h )iu hnh '(ng E;ng Eam ) l.u trq E;ng
trang# D]a s0 trang p+ l.u 8 khung trang r+ th- thng tin ny ).2& l.u trq nh. sau_ p ).2& Eam 7
l.u trq trong mt 'anh s!&h [ung )t t.:ng sng &5a E;ng Eam#
d" '1_ $t m!y t"nh GK E"t+ &/ |{$ IOG$F+ k"&h th.Y& H khung trang l K~F# F;ng trang thng
th.rng ph;i &/ I
OI
m1&+ nu '(ng E;ng trang Eam &/ th s0 '1ng E;ng &/ s m1& ERng s khung
trang 7?t lX l I
HG
(I
JI
) 7Yi hm Eam l haszun&(p)p mo' I
HG
#
H-nh K#IO_ s0 '1ng E;ng Eam ) l.u trq E;ng trang
~hi t-m khung trang &hsa trang p+ h )iu hnh '(ng hm Eam t-m ra 'anh s!&h &hsa trang p+ sau
)/ t-m tuyn t"nh tr9n 'anh s!&h ny ) t-m ra khung trang &hsa trang p#
H-nh K#IG_ &: &h &huyn )i )\a &h] khi s0 '1ng E;ng trang Eam
c, ?ng "r!ng nghch Ho
H )iu hnh &/ th '(ng mt E;ng trang 'uy nh,t ) =u;n lX E nhY &5a t,t &; &!& tin tr-nh 7
g3i l E;ng trang ngh\&h );o# $ti phn t0 &5a E;ng trang ngh\&h );o l &%p (pi'+ p)+ pi' l mS s
&5a tin tr-nh+ p l s hiu trang 7 mti )\a &h] ;o l mt E Ea (pi'+ p+ ')#
~hi mt truy [u,t E nhY ).2& ph!t sinh+ mt phn )\a &h] ;o l (pi'+ p) ).2& ).a )n &ho tr-nh
=u;n lX E nhY ) t-m phn t0 t.:ng sng trong E;ng trang ngh\&h );o+ nu t-m th,y t4i phn t0
HHH
ths i+ th- i &h"nh l s hiu khung trang &hsa trang p 7 )\a &h] 7?t lX t.:ng sng l (i+')# Qrong &!&
tr.rng h2p kh!&+ [em nh. )S truy [u,t mt )\a &h] E,t h2p l#
Lh?n [t_ s phn t0 trong E;ng trang ngh\&h );o ERng 7Yi s khung trang 7?t lX
H-nh K#I_ &: &h &huyn )i )\a &h] khi s0 '1ng E;ng trang ngh\&h );o
] BtW q0 >\B79
f: &h E;o 7 trong h thng phNn trang ).2& thZ& hin 7Yi &!& Eit E;o 7 (prote&tion) ).2& l.u
trong mti phn t0 &5a E;ng trang+ 7- mti truy [u,t )n E nhY )u ph;i tham kh;o )n E;ng trang
) ph!t sinh )\a &h] 7?t lX+ khi )/+ h thng &/ th kim tra &!& thao t!& truy [u,t tr9n khung trang
t.:ng sng &/ h2p l 7Yi thu& t"nh E;o 7 &5a n/ khng# Lgoi ra+ &/ th th9m mt s E"t kh!&
7Yi &!& m1& )"&h kh!& nhau#
H-nh K#Ic_ &,u tr6& tng =u!t &5a mt phn t0 trong E;ng trang
HHI
H-nh K#I_ mt 7" '1 7 m h-nh phNn trang
] C52B K gD 75v`
Qrong kC thu?t phNn trang+ h )iu hnh &Vng &/ th &ho php &!& tin tr-nh '(ng &hung mt s
khung trang+ ERng &!&h ghi &(ng s hiu khung trang 7o E;ng trang &5a mti tin tr-nh#
7" '1_ Hai tin tr-nh xH+ xI sinh ra t &h.:ng tr-nh yor'#e[e &/ th '(ng &hung )o4n &o'e (gWm J
trang) nh.ng mti tin tr-nh &/ )o4n 'ata ri9ng#
H-nh K#Jb_ hai tin tr-nh xH+xI '(ng &hung Ea trang b+H+I
N5I7 K>`
w ~C thu?t phNn trang lo4i E ).2& hin t.2ng phNn m;nh ngo4i 7i 7- mti khung trang )u &/ th
).2& &,p ph!t &ho mt tin tr-nh no )/ &/ y9u &u# Quy nhi9n hin t.2ng phNn m;nh ni 7i 7Tn
&/ th [;y ra khi k"&h th.Y& &5a tin tr-nh khng )6ng ERng Ei s &5a k"&h th.Y& mt trang+ khi
)/ trang &ui &(ng so khng ).2& s0 '1ng ht#
w SZ phNn trang khng ph;n !nh )6ng &!&h ths& ng.ri s0 '1ng &;m nh?n 7 E nhY# ~C thu?t
phNn )o4n tha mSn ).2& nhu &u th hin &,u tr6& logi& &5a &h.:ng tr-nh nh.ng n/ 'Tn )n t-nh
hung ph;i &,p ph!t &!& khi nhY &/ k"&h th.Y& kh!& nhau &ho &!& phNn )o4n# iu ny lm r*&
ri 7,n ) h:n r,t nhiu so 7Yi 7i& &,p ph!t &!& trang &/ k"&h th.Y& & )\nh 7 ERng nhau# $t
gi;i ph!p 'ung ho l kt h2p &; hai kC thu?t phNn trang 7 phNn )o4n_ &h6ng ta tin hnh phNn
trang &!& phNn )o4n#
HHJ
J'ataHI
&o'eJH&o'e
Ib&o'eHxH
JbIGHJbI
F;ng trang
xH
J'ataII
&o'eJH&o'e
Ib&o'eHxI
JKIGHJbI
F;ng trang
xI
G&o'eJOK
'ataIJ&o'
eII&o'eHH
b'ataHF
nhY d?t lX
M/&/&/H MX 5:75 ?5c7 1Wd7 au> 5? ?5c7 >\B79 (PB9Vh YV9CV7>B>2W7)
$t tin tr-nh gWm nhiu phNn )o4n+ mti phNn )o4n ).2& &hia thnh nhiu trang+ l.u trq 7o &!&
khung trang &/ th khng li9n t1&#
H-nh K#JH_ m h-nh phNn )o4n kt h2p phNn trang
] C[ =5u MMU >\W79 CX 5:75 ?5c7 1Wd7 au> 5? ?5c7 >\B79
$ti )\a &h] logi& l mt E (s+') 7Yi s l s hiu phNn )o4n+ ' l )\a &h] t.:ng )i trong phNn
)o4n# Q!&h ' thnh p 7 ' (s E"t &5a ' s E"t &5a p w s E"t &5a ') 7Yi p l &h] s trang+ ' l
)\a &h] t.:ng )i trong trang (s E"t &5a ' 'o phn &sng =ui )\nh)#
&huyn &!& )\a &h] ;o I &hiu thnh )\a &h] 7?t lX mt &hiu+ $$l '(ng mt E;ng phNn )o4n+
mti phNn )o4n &n &/ mt E;ng phNn trang t.:ng sng# $ti phn t0 trong E;ng phNn )o4n gWm
hai phn (Ease+limit)+ Ease l.u )\a &h] 7?t lX n:i E*t )u &5a E;ng trang &5a phNn )o4n ny+ limit
l.u &hiu 'i &5a phNn )o4n# H thng &n &ung &,p mt thanh ghi SQF| l.u 7\ tr" E*t )u &5a
E;ng phNn )o4n+ khi tin tr-nh truy [u,t mt )\a &h] logi& (s+')(s+p+')+ $$l l,y SQF| &ng 7Yi
s ) truy [u,t phn t0 ths s trong E;ng phNn )3an# xhn t0 ths s &5a E;ng phNn )o4n l.u hai g"a
tr\ (segment length+ pageetaEle Ease)_ segment length l k"&h th.Y& phNn )o4n+ pageetaEle Ease l
7\ tr" l.u trq E;ng trang t.:ng sng 7Yi phNn )o4n s# Lu segment length ' th- thng E!o @truy
[u,t )\a &h] khng h2p lA ng.2& l4i phNn t"&h ' thnh p 7 ' 7 &ng pageetaEle Ease 7Yi p )
truy [u,t phn t0 ths p trong E;ng phNn trang l,y ).2& gi! tr\ z l s hiu khung trang &hsa trang
p# Sau )/ &ng z 7Yi ' so &ho )\a &h] 7?t lX t.:ng sng#
H-nh K#JI_ &,u tr6& mt phn t0 &5a E;ng trang trong m h-nh phNn )o4n kt h2p phNn trang#
HHK
H-nh K#JJ_ &: &h &huyn )i )\a &h] trong m h-nh phNn )o4n kt h2p phNn trang
H-nh K#JK_ h )iu hnh $lpQifS '(ng phNn )o4n kt h2p phNn trang 7 E nhY kt h2p
N5I7 K>`
w Q,t &; &!& m h-nh t &hs& E nhY tr9n )Ny )u &/ khuynh h.Yng &,p ph!t &ho tin tr-nh ton
E &!& trang y9u &u tr.Y& khi th?t sZ [0 lX# d- E nhY 7?t lX &/ k"&h th.Y& r,t giYi h4n+ )iu ny
'Tn )n hai )im E,t tin sau _
w ~"&h th.Y& tin tr-nh E\ giYi h4n E8i k"&h th.Y& &5a E nhY 7?t lX#
w ~h/ nNng &ao ms& ) )a &h.:ng &5a h thng#
M/H B NH- O
F nhY ;o l kC thu?t '(ng E nhY ph1 l.u trq tin tr-nh+ &!& phn &5a tin tr-nh ).2& &huyn
7oera giqa E nhY &h"nh 7 E nhY ph1 ) &ho php thZ& thi mt tin tr-nh m khng &n n4p
ton E 7o E nhY 7?t lX# dYi kC thu?t E nhY ;o+ h )iu hnh so tang ).2& ms& ) )a &h.:ng
&5a h thng+ &/ th thZ& thi ).2& nhqng &h.:ng tr-nh k"&h th.Y& r,t lYn so 7Yi k"&h th.Y& E nhY
7?t lX 7 ng.ri l?p tr-nh khng &n =uan tNm m!y t"nh &/ )5 |{$ ) thZ& thi &h.:ng tr-nh hay
khng# f/ hai ph.:ng ph!p &i )%t kC thu?t E nhY ;o )/ l phNn trang theo y9u &u (>eman'
paging) ho%& phNn )o4n theo y9u &u (>eman' segmentation)
HHO
M/H/. P5c7 >\B79 >5VW F4 =@4 (fVCB7h ?B9279)
$t tin tr-nh ).2& &hia thnh nhiu trang+ th.rng tr6 tr9n E nhY ph1 (th.rng l )a &sng) 7
mt trang &h] ).2& n4p 7o E nhY &h"nh khi &/ y9u &u# d(ng khng gian )a '(ng ) l.u trq
t4m &!& trang g3i l khng gian syapping#
M/H/./. CL4 >\m= CD> ?5@7 >T >\W79 gt79 >\B79
$ti phn t0 trong E;ng trang so gWm hai tr.rng_ $t tr.rng &hsa Eit kim tra &/ gi! tr\ H
(7ali') l trang )ang 8 trong E nhY &h"nh + b (in7ali') l trang )ang ).2& l.u tr9n E nhY ph1
ho%& trang khng thu& tin tr-nh+ kh8i )u t,t &; Eit kim tra trong E;ng trang )u ERng b# $t
tr.rng &hsa s hiu khung trang (nu Eit kim tra l 7ali') ho%& &hsa )\a &h] &5a trang tr9n E
nhY ph1 (nu Eit kim tra l in7ali')#
H-nh K#JO_ m h-nh phNn trang theo y9u &u
M/H/./& C54Fb7 1pB =5 tW (?h) >5675 1pB =5 qI> 8U
+ ?Cc 1_ $$l truy [u,t phn t0 ths p trong E;ng trang ) l,y &!& thng tin &n thit &ho 7i&
&huyn )i )\a &h]#
+ ?Cc /_ Lu phn t0 ths p &/ Eit kim tra ERng H (7ali')+ th- trang )ang y9u &u truy [u,t h2p
l+ ts& l &/ sn trong E nhY+ khi )/ 7i& &huyn )i )\a &h] ;o thnh )\a &h] 7?t lX [;y ra E-nh
th.rng+ )\a &h] 7?t lX s hiu khung trang k"&h th.Y& &5a mt khung w '# Lu phn t0 ths p
&/ Eit kim tra ERng b (in7ali')+ th- $$l so ph!t sinh mt ng*t ) E!o &ho h )iu hnh &/ @lti
trangA# ~hi )/ h )iu hnh so kim tra trang truy [u,t &/ thu& tin tr-nh khng+ nu trang khng
thu& tin tr-nh th- h )iu hnh kt th6& tin tr-nh+ ng.2& l4i &huyn )n E.Y& J
+ ?Cc 9_ Q-m 7\ tr" tr9n )a &hsa trang mun truy [u,t 7 t-m mt khung trang trng trong E
nhY &h"nh_ nu &/ khung trang trng th- )n E.Y& K+ nu khng &Un khung trang trng+ &h3n mt
khung trang n4n nhNn (7i&tim) 7 &huyn trang n4n nhNn ra E nhY ph1 + rWi )n E.Y& K
+ ?Cc ;_ fhuyn trang mun truy [u,t t E nhY ph1 7o khung trang trng )S &h3n#
+ ?Cc 2_ f?p nh?t ni 'ung E;ng trang#
HHG
+ ?Cc w_ Q!i k"&h ho4t tin tr-nh ng.ri s0 '1ng#
H-nh K#JG_ &: &h &huyn )i )\a &h] trong m h-nh phNn trang theo y9u &u
M/H/./H T5BF >5u >\B79
Lu khng &/ khung trang trng+ th- mti khi [;y ra lti trang &n ph;i thZ& hin hai thao t!&
&huyn trang _ &huyn mt trang ra E nhY ph1 7 n4p mt trang kh!& 7o E nhY &h"nh# f/ th
gi;m EYt s ln &huyn trang ERng &!&h s0 '1ng th9m mt Eit &?p nh?t ('irty Eit)# Di! tr\ &5a Eit
).2& phn &sng )%t l H nu ni 'ung trang &/ E\ s0a )i# ~hi &n thay th mt trang+ nu Eit &?p
nh?t &/ gi! tr\ l H th- trang ny &n ).2& l.u l4i tr9n )a+ ng.2& l4i+ nu Eit &?p nh?t l b+ ngha l
trang khng E\ thay )i+ th- khng &n l.u trq trang tr8 l4i )a#
s hiu khung trang &hsa trang
ho%& )\a &h] tr9n )a &5a trang
Eit nh?n 'in trang &/ trong E
nhY (Eit 7ali'ein7ali')
Eit nh?n 'in trang &/ thay
)i (Eit 'irty)
H-nh K#J_ &,u tr6& mt phn t0 &5a E;ng trang trong kC thu?t phNn trang theo y9u &u#
M/H/./M T5j2 92B7 >5k= 5207 CD> F4 =@4 >\4F K4L> gD 75v
D3i [!& su,t [;y ra lti trang l p_ b p H#b+ nu p b ngha l khng &/ lti trang + nu p H
ngha l mti ln truy [u,t )u [;y ra lti# $emory a&&ess (ma) l thri gian mt ln truy [u,t E
nhY# ^zze&ti7e {&&ess Qime (^{Q) l thri gian thZ& hin mt y9u &u truy [u,t E nhY# xage zault
o7erhea' (pzo) l thri gian [0 lX mt lti trang# Syap page in (spi) l thri gian &huyn trang t )a
7o E nhY# Syap page out (spo) l thri gian &huyn trang ra )a (syap page out &/ th ERng b)#
|estart o7erhea' (ro) l thri gian t!i kh8i )ng l4i 7i& truy [u,t E nhY#
Qa &/_
EAT (. ?) K CB ? (?zW Y?W Y?2 \W)
d" '1_
Di; s0 thri gian mt ln truy [u,t E nhY l H mi&ro se&on' 7 gi; s0 Kb trang ).2& &h3n )S
thay )i ni 'ung 7 thri gian ho!n &huyn trang rav7o l Hb mili se&on' # Q"nh ^Q{#
Qa &/_
maH mi&ro se&on'
HH
spo spin Hb milise&on' Hbbbb mi&ro se&on'
^{Q (H p) w p (pzowHbbbbb#KwHbbbbwro) mi&ro se&on'
M/H/./e C<= >54I> >W<7 =5x7 >\B79 7d7 75c7
$1& ti9u &5a &!& thu?t t/an l &h3n trang n4n nhNn l trang m sau khi thay th so gNy ra "t lti
trang nh,t# Qhng th.rng s lti trang t] l ngh\&h 7Yi s khung trang 'nh &ho tin tr-nh (s
khung trang tang th- s lti trang gi;m)#
H-nh K#Jc_ Eiu )W minh h3a s lti trang so gi;m khi s khung trang 'nh &ho tin tr-nh tang
f/ th )!nh gi! thu?t to!n ERng &!&h [t mt &huti &!& trang m tin tr-nh so ln l.2t truy [u,t
7Yi s khung trang &,p &ho tin tr-nh )S Eit 7 t"nh s lti trang ph!t sinh# d" '1 tin tr-nh truy
[u,t &!& )\a &h] theo ths tZ _ bHbb+ bKJI+ bHbH+ bGHH# Lu k"&h th.Y& &5a mt trang l Hbb Eytes
th- &/ th 7it l4i &huti )\a &h] thnh &huti trang m tin tr-nh truy [u,t l H+ K+ H+ G#
;09010201 3hu" "o$n 4-4. (4irs" -n 4irs" .u")
Qrang 8 trong E nhY lNu nh,t so ).2& &h3n lm trang n4n nhNn (7o tr.Y& ra tr.Y&)
d" '1_ $t tin tr-nh ).2& &,p J khung trang+ Ean )u &; J khung )u trng+ tin tr-nh ln l.2t
truy [u,t tYi &!& trang theo ths tZ sau_ + b+ H+ I+ b+ J+ b+ K+ I+ J+ b+ J+ I+ H+ I+ b+ H+ + b+ H# Q"nh s
lti trang khi !p '1ng thu?t to!n iO ) &h3n trang n4n nhNn#
b H I b J b K I J b J I H I b H b H
I I I I K K K b b b b b b b
b b b b J J J I I I I I H H H H H b b
H H H H b b b J J J J J I I I I I H
~" hiu l &/ lti trang 7 &/ HO lti trang
HHc
Lh?n [t_
~hng &n ghi nh?n thri )im trang ).2& n4p 7o E nhY+ m &h] &n =u;n lX &!& trang trong E
nhY ERng mt 'anh s!&h iO+ khi )/ nu &/ lti trang th- trang truy [u,t ).2& ).a 7o &ui 'anh
s!&h 7 nu ht khung trang th- trang )u 'anh s!&h so ).2& &h3n lm trang n4n nhNn#
Qhu?t to!n iO ):n gi;n+ '< &i )%t+ nh.ng nu trang ).2& &h3n l trang th.rng [uy9n ).2& s0
'1ng+ th- khi E\ &huyn ra E nhY ph1 so nhanh &h/ng gNy ra lti trang#
S l.2ng lti trang &/ th tang l9n khi s l.2ng khung trang s0 '1ng tang+ hin t.2ng ny g3i l
ngh\&h lX Fela'y#
d" '1_ Mt tin tr-nh truy [u,t &huti trang theo ths tZ sau_ H+ I+ J+ K+ H+ I+ O+ H+ I+ J+ K+ O
w Lu s0 '1ng J khung trang+ so &/ lti trang
H I J K H I O H I J K O
H H H K K K O O O O O O
I I I H H H H H J J J
J J J I I I I I K K
w Lu s0 '1ng K khung trang+ so &/ Hb lti trang
H I J K H I O H I J K O
H H H H H H O O O O K K
I I I I I I H H H H O
J J J J J J I I I I
K K K K K K J J J
;0901020/ 3hu" "o$n "Li Cu (.p"im!l P!ge Kepl!cemen" &lgori"hm)
fh3n trang lNu ).2& s0 '1ng nh,t trong t.:ng lai# d" '1_
b H I b J b K I J b J I H I b H b H
I I I I I I I I I I I I I I
b b b b b b K K K b b b b b b b b b b
H H H J J J J J J J J H H H H H H H
Lh?n [t_
f/ lti trang+ iO HO lti tt h:n iO nhiu#
HH
Qhu?t to!n ny E;o );m s l.2ng lti trang ph!t sinh l th,p nh,t+ n/ &Vng khng E\ ngh\&h lX
Fela'y+ tuy nhi9n )Ny l mt thu?t to!n kh/ &i )%t 7- th.rng khng th Eit tr.Y& &huti truy [u,t
&5a tin tr-nh#
i 7Yi &!& h )iu hnh &ho thit E\ gia '1ng+ th.rng &h] &/ mt s tin tr-nh & )\nh thZ& thi
n9n &/ th &ho tin tr-nh &h4y tr.Y& mt ln+ ghi nh?n l4i &huti trang truy [u,t+ &!& ln thZ& thi
sau )/ &/ th s0 '1ng thu?t to!n ti .u ) &h3n trang n4n nhNn#
;09010209 3hu" "o$n LKU ( Le!s"6recen"l6used)
Qhu?t to!n iO s0 '1ng thri )im n4p trang ) &h3n trang thay th+ thu?t to!n ti .u '(ng thri
)im trang so ).2& s0 '1ng gn nh,t trong t.:ng lai# d- thri )im ny th.rng kh/ [!& )\nh tr.Y&
n9n thu?t to!n p|l so '(ng thri )im &ui &(ng trang ).2& truy [u,t ('(ng =u! khs gn ) 'Z
)o!n t.:ng lai gn)# dYi mti trang+ ghi nh?n thri )im &ui &(ng trang ).2& truy &?p+ trang ).2&
&h3n ) thay th so l trang lNu nh,t &h.a ).2& truy [u,t 7- 7Yi suy ngh l trang ny &/ kh; nang
"t ).2& s0 '1ng nh,t#
d" '1_
b H I b J b K I J b J I H I b H b H
I I I I K K K b b b H H H H H H H
b b b b b b b b J J J J J J b b b b b
H H H J J J I I I I I I I I I
Lh?n [t_
f/ HI lti trang+ iO HO lti p|l tt h:n iO#
OxQ 7 p|l &/ s lti trang khng )i khi ngh\&h );o &huti )\a &h] truy [u,t#
] C62 1> >54I> >W<7 )RU` = >5b h79 5B2 a >54I> YB4
+ 5+ dAng b H%m>
Qh9m 7o &,u tr6& &5a mti phn t0 trong E;ng trang mt tr.rng ghi nh?n @thri )im truy [u,t
gn nh,tA+ 7 th9m 7o &,u tr6& &5a fxl mt thanh ghi )m (&ounter)# $ti ln thZ& hin truy
[u,t )n mt trang+ gi! tr\ &5a &ounter tang l9n H 7 ghi gi! tr\ &ounter 7o tr.rng @thri )im truy
[u,t gn nh,tA &5a phn t0 t.:ng sng 7Yi trang trong E;ng trang# ~hi )/ trang @n4n nhNnA l
trang &/ gi! tr\ tr.rng @thri )im truy [u,t gn nh,tA l nh nh,t#
s hiu khung trang &hsa trang
ho%& )\a &h] trang tr9n )a
Eit 7ali' e
in7ali'
Eit 'irty thri )im truy [u,t gn nh,t
+ 5+ dAng d!nh s$ch li=n 8%" >
>(ng mt mt 'slk l.u trq &!& s hiu trang+ trang 8 &ui 'anh s!&h l trang ).2& truy [u,t gn
nh,t+ 7 trang 8 )u 'anh s!&h l trang lNu nh,t &h.a ).2& s0 '1ng# Lu &/ lti trang 7 nu &/
HIb
khung trang trng th- th9m n6t &hsa s hiu trang )ang truy [u,t 7o &ui 'anh s!&h+ nu khng
&/ khung trng th- trang ).2& &h3n lm trang n4n nhNn so l trang 8 )u 'anh s!&h+ khi )/ h5y n6t
)u 7 th9m n6t &hsa s hiu trang )ang truy [u,t 7o &ui 'anh s!&h# Lu khng &/ lti trang th-
&huyn n6t &hsa s hiu trang hin hnh [ung &ui 'anh s!&h#
;0901020; C<= >54I> >W<7 KL? K )RU
f/ "t h thng ).2& &ung &,p )5 &!& phn &sng ht tr2 ) &i )%t thu?t to!n p|l th?t sZ# Quy
nhi9n+ nhiu h thng ).2& trang E\ th9m mt Eit tham kh;o (rezeren&e)# $ti phn t0 trong E;ng
trang &/ th9m Eit rezeren&e ).2& kh8i g!n l b E8i h)h 7 ).2& phn &sng g!n l H mti ln trang
t.:ng sng ).2& truy &?p# Sau mti &hu kP =ui )\nh tr.Y&+ phn &sng kim tra gi! tr\ &5a &!& Eit
rezeren&e ) [!& )\nh ).2& trang no )S ).2& truy [u,t )n 7 trang no khng+ sau khi )S kim
tra [ong+ &!& Eit rezeren&e ).2& phn &sng g!n tr8 7 b# dYi Eit rezeren&e+ &/ th Eit ).2& trang
no )S ).2& truy [u,t+ nh.ng khng Eit ).2& ths tZ truy [u,t &5a &!& trang# Qhng tin khng )y
)5 ny 'Tn )n nhiu thu?t to!n [,p [] p|l kh!& nhau#
s hiu khung trang &hsa trang ho%&
)\a &h] trang tr9n )a
Eit 7ali'ein7ali' Eit 'irty Eit rezeren&e
H-nh K#J_ &,u tr6& mt phn t0 &5a E;ng trang trong thu?t to!n [,p [] p|l
!, 3hu" "o$n (i c$c bg" his"or
$ti trang s0 '1ng th9m c Eit l\&h s0 (history)# Sau tng kho;ng thri gian nh,t )\nh (th.rng l
Hbb millise&on's)+ mt ng*t )Wng hW ).2& ph!t sinh 7 =uyn )iu khin ).2& &huyn &ho h )iu
hnh# H )iu hnh so &?p nh?t &!& E"t history &5a mti trang ERng &!&h '\&h &!& Eit history sang
ph;i H 7\ tr" ) lo4i E Eit th,p nh,t 7 )%t Eit rezeren&e &5a mti trang 7o Eit &ao nh,t trong c Eit
history &5a trang )/# c Eit history so l.u trq t-nh h-nh truy [u,t )n trang trong c &hu kP &ui
&(ng#
Lu c Eit history l bbbbbbbb th- trang t.:ng sng &/ kh; nang khng ).2& '(ng trong c &hu kP
&ui+ nu c Eit history l HHHHHHHH th- trang t.:ng sng ).2& '(ng )n "t nh,t H ln trong mti c
&hu kP &ui# Lu [t c Eit history nh. mt s nguy9n khng ',u th- trang @n4n nhNnA l trang &/
gi! tr\ history nh nh,t# S l.2ng &!& Eit history &/ th thay )i t(y theo phn &sng+ s E"t history
nhiu th- 7i& &h3n trang @n4n nhNnA so &h"nh [!& h:n#
b, 3hu" "o$n cD hi "hF h!i
Q-m mt trang theo nguy9n t*& iO+ rWi kim tra Eit rezeren&e &5a trang )/# Lu Eit rezeren&e l
b+ &h3n trang ny+ nu Eit rezeren&e l H th- g!n l4i l b rWi t-m trang iO tip theo (&ho trang ny
mt &: hi ths hai)# $t trang )S ).2& &ho &: hi ths hai so khng E\ thay th &ho tYi khi t,t &;
nhqng trang kh!& ).2& thay th ho%& ).2& &ho &: hi ths hai# Lu trang th.rng [uy9n ).2& s0
'1ng+ Eit rezeren&e &5a n/ so 'uy tr- ).2& gi! tr\ H 7 trang hu nh. khng Eao gir E\ thay th#
Lu t,t &; &!& E"t rezeren&e l H th- thu?t to!n tr8 thnh iO# Qhu?t to!n &/ th &i )%t ERng 'slk
7Ung#
HIH
H-nh K#Kb_ &: &h &h3n trang n4n nhNn trong thu?t to!n &h3n trang n4n nhNn ths hai#
d" '1_
b H I b J b K I J b J I H I b H b H
I I I I K K K b b b H H H H H H H
b b b b b b b b J J J J J J b b b b b
H H H J J J I I I I I I I I I
Mem 'anh s!&h li9n kt 7Ung &5a 7" '1 tr9n
b H I b J b K I J b J I H I b H b H
(H) (H) (H) b(b) H(b) I(H) I(H) J(b) b(b) K(H) I(b) I(b) b(H) J(b) J(b) H(b) I(H) b(b) H(b) (H)
b(H) b(H) H(b) I(H) b(H) J(H) b(b) K(H) I(H) J(b) b(H) J(H) I(b) H(b) I(H) b(H) H(b) (H) b(H)
H(H) I(H) b(H) J(H) b(H) K(H) I(H) J(H) b(H) J(H) I(H) H(b) I(H) b(H) H(H) (H) b(H) H(H)
c, 3hu" "o$n cD hi "hF h!i nQng c!o (:o" Kecen"l Used P!ge Kepl!cemen" &lgori"hm> :KU)
Mem &!& Eit rezeren&e 7 'irty Eit nh. mt &%p &/ ths tZ 7 t4o thnh K lYp sau _
e pYp H (b+b)_ gWm nhqng trang &/ (rez+'irty)(b+b)# Lhqng trang thu& lYp ny khng ).2& truy
[u,t gn )Ny 7 khng E\ s0a )i+ )Ny l nhqng trang tt nh,t ) thay th#
e pYp I (b+H)_ trang khng truy [u,t gn )Ny nh.ng )S E\ s0a )i# Qr.rng h2p ny khng th?t tt+
7- trang &n ).2& l.u trq l4i tr.Y& khi thay th#
e pYp J (H+b)_ trang ).2& truy [u,t gn )Ny+ nh.ng khng E\ s0a )i# Qrang &/ th nhanh &h/ng
).2& tip t1& ).2& s0 '1ng#
e pYp K (H+H)_ trang ).2& truy [u,t gn )Ny+ 7 E\ s0a )i# Qrang &/ th nhanh &h/ng ).2& tip t1&
).2& s0 '1ng 7 tr.Y& khi thay th &n ph;i ).2& l.u trq l4i#
HII
pYp H &/ ) .u ti9n th,p nh,t+ 7 lYp K &/ ) .u ti9n &ao nh,t# $t trang so thu& 7 mt trong
En lYp tr9n 7 trang ).2& &h3n lm trang @n4n nhNnA l trang )u ti9n t-m th,y trong lYp &/ )
.u ti9n th,p nh,t#
;09010202 C<= >54I> >W<7 >5E79 a
S0 '1ng mt Ein )m l.u s ln truy [u,t )n mt trang#
w Qhu?t to!n pl (least zre=uently use')_ Qhay th trang &/ gi! tr\ Ein )m nh nh,t+ ngha l
trang "t ).2& s0 '1ng nh,t#
w Qhu?t to!n $l (most zre=uently use')_ Qhay th trang &/ gi! tr\ Ein )m lYn nh,t+ ngha l
trang ).2& s0 '1ng nhiu nh,t#
M/H/& CL? ?5<> YE 8Z79 a5479 >\B79 q6 >5BF >5u >\B79
dYi mti tin tr-nh+ &n ph;i &,p ph!t mt s khung trang ti thiu no )/ ) tin tr-nh &/ th ho4t
)ng# S khung trang ti thiu ny ).2& =uy )\nh E8i kin tr6& &5a &5a mt &h] th\# d" '1 m!y
iF$ Jb ) lnh $Od^ &/ th thZ& hin ti thiu ph;i &/ hai trang_ mt trang zrom + mt trang
to# ~hi mt lti trang [;y ra tr.Y& khi &h] th\ hin hnh hon t,t+ &h] th\ )/ &n ).2& t!i kh8i )ng+
l6& )/ &n ph;i &/ )5 &!& khung trang ) n4p t,t &; &!& trang m mt &h] th\ &n s0 '1ng# S
khung trang ti thiu ).2& =ui )\nh E8i kin tr6& m!y t"nh+ trong khi s khung trang ti )a ).2&
[!& )\nh E8i 'ung l.2ng E nhY 7?t lX &/ th s0 '1ng#
M/H/&/. CL? ?5<> YE 8Z79 a5479 >\B79
f/ Ea &!&h &,p ph!t s l.2ng khung trang l_ &,p ph!t ngang ERng+ &,p ph!t theo t] l k"&h th.Y&+
&,p ph!t theo t] l ) .u ti9n#
!, C#p ph$" ng!ng bJng>
Lu &/ m khung trang 7 n tin tr-nh+ mti tin tr-nh ).2& &,p mvn khung trang# f,p ph!t ny ):n
gi;n nh.ng khng hiu =u;#
b, C#p ph$" "heo "x lT 8gch "hCc
Q(y 7o k"&h th.Y& &5a tin tr-nh ) &,p ph!t s khung trang# D3i s
i
l k"&h th.Y& &5a tin tr-nh p
i
S
i
s
zlagi Q|l^
yhile (zlag-)
iz (turn -)
zlagi {pS^
yhile (turn -)
zlagi Q|l^
&riti&alse&tion()
turn - zlagi {pS^
non&riti&alse&tion()
Di;i ph!p ny &/ tha mSn K y9u &u &5a Ei to!n min gang khng
H>_
Q4i thri )im xi kim tra zlag-+ nu zlag-Q|l^ th- xi &hr+ nu zlag-{pS^ th- xi so 7o
min gang+ x- khng th 7o min gang 7- khi )/ zlagiQ|l^# d?y tho; y9u &u ths H#
~hi xi 8 ngoi min gang+ nu zlagi{pS^ th- x- 7o ).2& min gang+ nu zlagiQ|l^ 7
turni th- x- g!n zlag-p{S^ 7 &hr ngoi min gang+ khi )/ xi 7o trong min gang+### d?y
tho; )k J
>< th,y gi;i ph!p tho; )k I+ K#
I# Mt gi;i ph!p )Wng E ho! sau_
yhile (Q|l^)
HGG
f,u tr6& tin tr-nh xi
hile (Q|l^)
zlagi Q|l^
yhile (zlag-)
iz (turn -)
zlagi {pS^
yhile (turn -)
zlagi Q|l^
&riti&alse&tion()
turn - zlagi {pS^
non&riti&alse&tion()
zlag- Q|l^
yhile (zlagi)
iz (turn i)
zlag- {pS^
yhile (turn i)
zlag- Q|l^
&riti&alse&tion()
turn i zlag- {pS^
non&riti&alse&tion()
int - Hei
zlagi Q|l^ turn i
yhile (turn - zlag-Q|l^)
&riti&alese&tion ()
zlagi {pS^
Lon&riti&alese&tion ()
Ny &/ ph;i l mt gi;i ph!p E;o );m ).2& )& =uyn truy [u,t khng
H>_
xi_
yhile (Q|l^)
int - Hei
zlagi Q|l^ turn ivv-
yhile (turn - zlag-Q|l^)
&riti&alese&tion ()
zlagi {pS^
Lon&riti&alese&tion ()
x-_
yhile (Q|l^)
int i He-
zlag- Q|l^ turn -vvi
yhile (turn i zlagiQ|l^)
&riti&alese&tion ()
zlag- {pS^
Lon&riti&alese&tion ()
Di; s0 xi mun 7o min gang+ n/ )%t turni# ~hi kim tra )iu kin (turn -
zlag-Q|l^)+ )k sai nh.ng &h.a k\p 7o min gang th- )n l.2t x-# x- )%t turn- 7 kim tra
)iu kin (turn i zlagiQ|l^)+ )k sai+ x- 7o min gang nh.ng &h.a ra khi min gang
th- l4i tYi l.2t xi+ xi khng kim tra )k nqa m 7o min gang+ 7?y gi;i ph!p tr9n khng );m E;o
).2& )& =uyn truy [u,t#
J# Di; s0 mt m!y t"nh khng &/ lnh QSp+ nh.ng &/ lnh syap ho!n )i ni 'ung &5a hai t nhY
ERng mt thao t!& )& =uyn _
7oi' syap(int a+ int E)
int tempa
a E E temp
S0 '1ng lnh ny &/ th t &hs& truy [u,t )& =uyn khng Lu &/ [Ny 'Zng &,u tr6& &h.:ng
tr-nh t.:ng sng#
H>_ >(ng Ein &hung lo&k+ g!n tr\ Ean )u l b
fh.:ng tr-nh x_
int lo&kb vvEin '(ng &hung
HG
hile (H)
7 [t tr.rng h2p l nu zlagizlag-true th- &; hai tin tr-nh so )2i 7 h4n n9n 7i ph4m )k J+K
O# xh!t trin gi;i ph!p xeterson &ho nhiu tin tr-nh
H>_
Qin tr-nh xi so &,p &ho mt s numEeri l s lYn nh,t trong &!& s )S &,p tr.Y& )/ wH+ tin tr-nh
&/ s nh nh,t so ).2& &ho 7o min gang trong l.2t k tip# Lu &/ hai tin tr-nh xi 7 x- &/
&(ng s th- [t nu i- so &h3n xi# }ui .Y&_ (a+E)(&+') nu a& hay nu a& 7 E'
f!& Ein '(ng &hung numEeri kh8i )u b+ &hoosingizalse
f,u tr6& tin tr-nh xi_
int &hoosingn+ numEern vv&!& Ein '(ng &hung
yhile (H)
&riti&alse&tion()
numEerib
non&riti&alse&tion()
G# fhsng t rRng nu &!& lnh >oyn 7 lp tr9n semaphore khng thZ& hin mt &!&h khng th
phNn &hia+ th- khng th '(ng semaphore ) gi;i =uyt Ei to!n min gang#
H>_
Mt l4i )o4n &t gi;i =uyt min gang ERng semaphore
e(s) H
yhile (Q|l^)
>oyn(s)
&riti&alese&tion ()
lp(s)
Lon&riti&alese&tion ()
ttH_ 'oyn(s)_ eb
ttI_ 'oyn(s)_ eeH
~hi kim tra )k (eb) tho; n9n &; hai &(ng &hr ngoi min gang#
# $t Ein M ).2& &hia s E8i hai tin tr-nh &(ng thZ& hin )o4n &o'e sau_
'o
M M wH
iz ( M Ib) M b
yhile ( Q|l^ )
F*t )u 7Yi gi! tr\ M b+ &hsng t rRng gi! tr\ M &/ th 7.2t =u! Ib# fn s0a &hqa )o4n &h.:ng
tr-nh tr9n nh. th no ) E;o );m M khng 7.2t =u! Ib
H>_
Di; s0 khi MH
ttH_ tang M l9n Ib+ ngng
ttI_ tang M l9n IH+ 7.2t =u! Ib#
f!&h s0a &hqa_ >(ng mt semaphore s+ e(s)H
'o
HG
'oyn(s)
M M wH
iz ( M Ib) M b
up(s)
yhile ( Q|l^ )
c# Mt hai tin tr-nh [0 lX )o4n &h.:ng tr-nh sau_
pro&ess xH {H {I
pro&ess xI FH FI
Wng E ho! ho4t )ng &5a hai tin tr-nh ny sao &ho &; {H 7 FH )u hon t,t tr.Y& khi {I hay
FI E*t )u #
H>_
e(sH)H e(sI)H
# Qng =u!t ho! Eai G_ &ho &!& tin tr-nh [0 lX )o4n &h.:ng tr-nh sau_
pro&ess xH zor ( i H i Hbb i ww) {i
pro&ess xI zor ( - H - Hbb - ww) F-
Wng E ho! ho4t )ng &5a hai tin tr-nh ny sao &ho &; 7Yi k E,t kP ( I k Hbb)+ {k &h] &/
th E*t )u khi F(keH) )S kt th6&+ 7 Fk &h] &/ th E*t )u khi {(keH) )S kt th6&#
H>_
e(sH)H e(sI)H
Hb# S0 '1ng semaphore ) 7it l4i &h.:ng tr-nh sau theo m h-nh [0 lX )Wng hnh_
y [H [I (H) 7 [J [K (I) y 7 [O (J) 7 [G (K)
y y y (O) y (G) ans y w ()
([H+[I+[J+[K+[O+[G l &!& hRng s)
H>_
Hb
xH
xI
xH
xI
semaphore sJsKsOsGsb
xH_y[H[I up(sO)up(sG)
xI_7[J[K up(sJ) up(sK)
xJ_'oyn(sJ) y 7 [O up(sO)
xK_'oyn(sK) 7 [G up(sG)
xO_'oyn(sO) 'oyn(sO) y y y up(s)
xG_'oyn(sG)'oyn(sG) y up(s)
x_'oyn(s)'oyn(s) ans y w
dit l4i Ei Hb '(ng monitor
H>_
monitor &al
int 7+y+y++ans
int 7H+yH+yH+H+yI+I
&on'ition sJ+sK+sOy+sOy+sGy+sG+sy+s
H() I() J() K() O() G() ()
7oi' init()7HyHyHHyIIb
&al__H()
y[H[I yHH
sOy#signal() sGy#signal()
&al__I()
7[J[K 7HH
sJ#signal() sK#signal()
&al__J()
iz (7Hb) sJ#yait()
y 7 [O yHH
sOy#signal()
&al__K()
iz (7Hb) sK#yait()
HH
7 [G HH
sG#signal()
&al__O()
iz (yHb) sOy#yait()
iz (yHb) sOy#yait()
y y y yIH
sy#signal()
&al__G()
iz (yHb) sGy#yait()
iz (Hb) sG#yait()
y IH
s#signal()
&al__()
iz (yIb) sy#yait()
iz (Ib) s#yait()
ans y w
yhile (H)
'oyn(sH)
iz (na nE wHb) na na wH
up(sH)
pro&ess F
yhile (H)
'oyn(sI)
iz (nE wH na) nE nE wH
up(sI)
E) na nE wHb
semaphore sHH+sIH
int na+nEvvEien 'ung &hung na+nE gan tri Ean 'au thoa 'ieu kien na nE wHb
pro&ess {
yhile (H)
'oyn(sH)
iz (na nE wHb) na na wH
up(sH)
pro&ess F
yhile (H)
nE nE wH
HJ
&) 6ng
HH# Fi to!n Lg.ri s;n [u,t Lg.ri ti9u th1 (xro'u&erefonsumer)
Hai tin tr-nh &(ng &hia s mt E )m &/ k"&h th.Y& giYi h4n# $t tin tr-nh t4o 'q liu+ )%t 'q
liu 7o E )m (ng.ri s;n [u,t) 7 mt tin tr-nh l,y 'q liu t E )m ) [0 lX (ng.ri ti9u
th1)#
Hai tin tr-nh &n tho; &!& )iu kin sau _
e ~H_ Qin tr-nh s;n [u,t khng ).2& ghi 'q liu 7o E )m )S )y#
e ~I_ Qin tr-nh ti9u th1 khng ).2& )3& 'q liu t E )m )ang trng#
e ~J_ Hai tin tr-nh &(ng lo4i ho%& kh!& lo4i )u khng ).2& truy [u,t E )m &(ng l6&#
w f!&h H_ '(ng sleep an' yakeup
Lh?n [t_ &h] !p '1ng &ho mt pro'u&er 7 mt &onsumer 7 &h] tho; 'kH 7 'kI# HSy m8 rng
) !p '1ng &ho nhiu pro'u&er+ nhiu &onsumer 7 tho; &; J )k
w f!&h I_ '(ng Semaphore
S0 '1ng Ea semaphore _
e empty_ )m s &ht &Un trng trong E )m# ('(ng ) gi;i =uyt ~H)
e zull_ )m s &ht )S &/ 'q liu trong E )m('(ng ) gi;i =uyt ~I)
e mute[_ kim tra 7i& khng truy [u,t )Wng thri#('(ng ) gi;i =uyt ~J)
HK
FuzzerSie J vv s &ht trong E )m
semaphore mute[ H vv kim so!t truy [u,t )& =uyn Euzzer (&!& tt &hr khi mute[eH)
semaphore empty FuzzerSie vv s &ht trng (tt s[ &hr khi emptyb)
semaphore zull b vv s &ht &/ 'q liu (tt tt &hr khi zullb)
xro'u&er() vvnh s;n [u,t
int item
yhile (Q|l^)
pro'u&eitem(item) vv t4o 'q liu mYi
'oyn(empty) vv gi;m s &ht trng+ )y thi &hr (emptyb th- &hr)
'oyn(mute[) vv )& =uyn truy [u,t Euzzer (min gang )
enteritem(item) vv )%t 'q liu 7o E )m
up(mute[) vv ra khi min gang
up(zull) vv tang s &ht )y+ 'anh thu& ntt
int item
yhile (Q|l^)
'oyn(zull) vv gi;m s &ht )y+ neu Eo 'em trong thi &ho (zullb thi &hr)
'oyn(mute[) vv )& =uyn 7o min gang
remo7eitem(item) vv l,y 'q liu t E )m
up(mute[) vv ra khi min gang
up(empty) vv tang s &ht trng+ 'anh thu& ns[
&onsumeitem(item) vv [0 lX 'q liu
Lh?n [t_ !p '1ng &ho nhiu pro'u&er 7 nhiu &onsumer 7 tho; &; J )k#
f!&h J_ '(ng $onitor
monitor xro'u&erfonsumer vv[Ny 'Zng monitor
yhile (Q|l^)
'oyn(mute[) vv ginh =uyn truy [u,t r&
r& r& w H vv th9m mt tin tr-nh |ea'er
vv nu l |ea'er )u ti9n th- &,m riter t[ 'q liu ho%& &hr nu &/ yriter )ang &?p nh?t 'l
iz (r& H) 'oyn('E)
up(mute[) vv &h,m 'st truy [u,t r&
rea''ataEase() vv )3& 'q liu
'oyn(mute[) vv ginh =uyn truy [u,t r&
r& r& e H vv EYt mt tin tr-nh |ea'er
iz (r& b) up('E) vv nu l |ea'er &ui &(ng th- &ho riter truy [u,t 'l
up(mute[) vv &h,m 'st truy [u,t r&
use'atarea'() vv su 'ung 'u lieu
riter()
yhile (Q|l^)
&reate'ata()
'oyn('E) vv khng &/ yriter ho%& rea'er no kh!& ).2& t[
vvhoa& khi &o rea'er )ang )3& 'l th- yriter &hr
yrite'ataEase() vv &?p nh?t 'q liu
up('E) vv &h,m 'st truy [u,t 'E
H
Lh?n [t_
Qhu?t to!n &h] )6ng khi &/ "t nh,t mt |ea'er thZ& thi tr.Y& m3i riter# Lu khng so &/ nhiu
tr.rng h2p sai+ 7" '1 nu yriter thZ& hin tr.Y& 7 )ang &?p nh?t 'l th- &h] &,m ).2& rea'er H+
khng &,m ).2& rea'er I#
Qhu?t to!n ny g3i l thu?t t/an .u ti9n |ea'ers_ |ea'er thZ& hin tr.Y& yriter 7 riter ph;i )2i
t,t &; &!& |ea'er truy [u,t [ong mYi ).2& 7o 'ataEase# HSy [Ny 'Zng thu?t to!n .u ti9n riter
f!&h I_ $onitor
S0 '1ng Ein &hung r& ) ghi nhY s &!& tin tr-nh |ea'er# $t tin tr-nh riter ph;i &huyn sang
tr4ng th!i &hr nu r& b# ~hi ra khi min gang+ tin tr-nh |ea'er &ui &(ng so )!nh ths& tin
tr-nh riter )ang E\ kh/a#
monitor |ea'erriter
|ea'er()
yhile (Q|l^)
|ea'erriter#Fegin|ea'() vvEat 'au 'o&
|ea'>ataEase() vv'o& 'l
|ea'erriter#inish|ea'() vv'a 'o& [ong
riter()
yhile (Q|l^)
freate'ata(inzo) vvtao 'l
|ea'erriter#Feginrite() vvEat 'au ghi
rite'ataEase(inzo) vvghi
|ea'erriter#inishrite()vv'a ghi [ong
Dhi &h6_
e O~|ea'#}ueue l hng )2i &5a Ein )iu kin O~|ea'#
e Qhu?t to!n 7Tn )6ng khi riter thZ& thi tr.Y& |ea'er#
e fNu hi_ trong Fegin|ea' () E lnh signal(O~|ea') ).2& khng
HJ# Fi to!n Q4o phNn t0 HIO
Wng E ho4t )ng &5a mt phUng th" nghim s0 '1ng nhiu tin tr-nh )Wng hnh sau ) t4o &!&
phNn t0 HIO_
$akeH()
yhile (true)
$akeeHy'ro() vv t4o H nguy9n t0 H
$akeO()
H
yhile (true)
$akeeO[y() vvt4o H nguy9n t0 O
v Qin tr-nh $akeater ho4t )ng )Wng hnh 7Yi &!& tin tr-nh $akeH+ $akeO+ &hr &/ )5 I H
7 H O ) t4o HIO v
$akeater()
yhile (Qrue)
$akeeater() vvQ4o H phNn t0 HIO
H>_
Semaphore sHb+ sIb
$akeH() vv t4o H nguy9n t0 H
yhile (H)
$akeeHy'ro() up(sH)
yhile(H)
$akeeO[y() up(sI)
$akeater()
yhile (H)
'oyn(sH) 'oyn(sH) 'oyn(sI)
$akeeater() vvQ4o H phNn t0 HIO
HK# Mt mt gi;i ph!p semaphore )6ng &ho Ei to!n >ining philosophers _
'ezine L O
'ezine p^Q (ieH)L
Hcb
'ezine |iDHQ (iwH)L
'ezine QHiL~iLD b
'ezine HlLD| H
'ezine ^{QiLD I
int stateL
semaphore mute[ H
semaphore sLvvgan tri Ean 'au b
vvtin tr-nh m phng trit gia ths i
7oi' philosopher( int i) vv i l trit gia ths i _ b##LeH
yhile (Q|l^)
think() vv Suy ngh
takezorks(i) vv y9u &u )n khi &/ )5 I na
eat() vv yumeyum+ spaghetti
putzorks(i) vv )%t &; I na l9n En l4i
yhile (Q|l^)
'oyn(mute[) vv 7o min gang
statei HlLD| vv ghi nh?n trit gia i )S )/i
test(i) vv & g*ng l,y I na
up(mute[) vv ra khi min gang
'oyn(si) vv &hr nu khng &/ )5 I na
HcH
vv)%t I na [ung
7oi' putzorks ( int i) vv i l trit gia ths i _ b##LeH
yhile (Q|l^)
'oyn(mute[) vv 7o min gang
statei QHiL~iLD vv ghi nh?n trit gia i an [ong
test(p^Q) vv kim tra ng.ri E9n tr!i )S &/ th an
test(|iDHQ) vv kim tra ng.ri E9n ph;i )S &/ th an
up(mute[) vv ra khi min gang
'oyn( mute[ )
iz( yaiting L ) vvnu s kh!&h )2i L th- rri khi tim
H>_
semaphore n&arJ+ n&arHI+ n&arII
{rri7eFri'ge('ire&tion)
'oyn(n&ar)
iz ('ire&tionH) 'oyn(n&arH)
else 'oyn(n&arI)
^[it Fri'ge('ire&tion)
HcJ
up(n&ar)
iz ('ire&tionH) up(n&arH)
else up(n&arI)
7 ho4t )ng &5a mti nhNn 7i9n ).2& m t; ERng mt tin tr-nh ^mployee() sau )Ny_
^mployee()
|unto|i7er() vv i )n Er sng
^mployee{rri7es () vv ~im tra )iu kin [ung thuyn
fross|i7er() vv ~h8i hnh =ua sng
H>_
int nbvvso nguoi tren thuyen
semaphore hI+ eI+ sb
Ha&ker{rri7es()
HcK
'oyn(h) vv&ho ha&ker &ho tren Eo neu 'a &o I ha&ker tren thuyen
'oyn(mute[)
nww vv&ho ha&ker [uong thuyen
iz (nK)
up(mute[)
'oyn(s) vvneu thuyen &hua 'u K nguoi thi &ho tren thuyen
else vvneu 'u K thi 'anh thu& nhung nguoi 'ang &ho tren thuyen 'e =ua song
nbup(mute[)
up(s)up(s)up(s)
up(h) vv 'anh thu& &a& ha&ker &ho tren Eo &ho [uong thuyen
^mployee{rri7es()
'oyn(e) vv&ho ^mployee &ho tren Eo neu 'a &o I ^mployee tren thuyen
'oyn(mute[)
nww vv&ho ^mployee [uong thuyen
iz (nK)
up(mute[)
'oyn(s) vvneu thuyen &hua 'u K nguoi thi &ho tren thuyen
else vvneu 'u K thi 'anh thu& nhung nguoi 'ang &ho tren thuyen 'e =ua song
nb up(mute[)
up(s)up(s)up(s)
up(e)vv 'anh thu& &a& ^mployee &ho tren Eo &ho [uong thuyen
H>_
semaphore EusH+yheelb+ nonyheelb
Detxassenger()
'oyn(Eus)
{rri7eQerminal() vv tip nh?n mt [e 7o En
Open>oor() vv m8 &0a [e
zor (int ib iK iww) vv tip nh?n &!& hnh kh!&h ngWi [e lan
'oyn(yheel)
{rrangeSeat() vv ).a H kh!&h [e lan 7o &ht
HcG
zor (int ib iG iww) vv tip nh?n &!& hnh kh!&h E-nh th.rng
'oyn(nonyheel)
{rrangeSeat() vv ).a H kh!&h Einh thuong 7o &ht
heelxassenger()
yhile(H)
{rri7eQerminal() vv )n En
up(yheel)
Lonheelxassenger()
yhile(H)
{rri7eQerminal() vv )n En
up(nonyheel)
LM_ kh!&h E-nh th.rng nu tYi tr.Y& 7Tn khng ).2& l9n [e+ ph;i &hr kh!&h [e lan
IH# Lh m!y s;n [u,t thit E\ [e h:i+ &/ I E ph?n ho4t )ng song song
e F ph?n s;n [u,t H khung [e _
$akefhassis()
xro'u&e&hassis()vv t4o khung [e
HSy )Wng E ho4t )ng trong 7i& s;n [u,t [e h:i theo nguy9n t*& sau _
e S;n [u,t mt khung [e+ tr.Y& khi t4o E!nh [e#
e fn &/ )5 K E!nh [e &ho H khung [e ).2& s;n [u,t ra+ sau )/ mYi tip t1& s;n [u,t khung
[e kh!&u
H>_
semaphore &hassisb+tireb
$akefhassis()
yhile(H)
vv t4o khung [e
xro'u&e&hassis() up(&hassis)
'oyn(tire) 'oyn(tire) 'oyn(tire) 'oyn(tire)
$akeQires()
yhile(H)
'oyn(&hassis)
zor (ibiKiww)
xro'u&etire()
xuttiretofhassis() up(tire)
H>_
nu t,t &; xi )u thZ& hin ).2& mt lnh )u ti9n 'oyn(si)+ 7 sau )/ &!& xi )u thZ& hin lnh
ths I+ khi )/ t,t &; sib n9n &!& xi so &hr nhau 7 h4n
Ib# Mt tr4ng th!i h thng_
$a[ {llo&ation {7ailaEle
|H |I |J |H |I |J |H |I |J
xH J I I H b b K H I
xI G H J I H H
xJ J H K I H H
xK K I I b b I
Lu tin tr-nh xI y9u &u K &ho |H+ H &ho |J# hSy &ho Eit y9u &u ny &/ th )!p sng m E;o
);m khng [;y ra t-nh tr4ng 'ea'lo&k hay khng
IH# Mt tr4ng th!i h thng sau_
$a[ {llo&ation {7ailaEle
{ F f > { F f > { F f >
xH b b H I b b H I H O I b
xI H O b H b b b
xJ I J O G H J O K
xK b G O I b G J I
xO b G O G b b H K
Hc
a) fho Eit ni 'ung &5a E;ng Lee'#
E) H thng &/ 8 tr4ng th!i an ton khng
&) Lu tin tr-nh xI &/ y9u &u ti nguy9n ( b+K+I+b)+ y9u &u ny &/ ).2& )!p sng ts& thri
khng
CH$NG M` yUN ) B NH-
H# Di; s0 &/ mt h thng s0 '1ng kC thu?t phNn trang theo y9u &u# F;ng trang ).2& l.u trq
trong &!& thanh ghi# [0 lX mt lti trang tn c milise&on's nu &/ sn mt khung trang trng+
ho%& trang E\ thay th khng E\ s0a )i ni 'ung+ 7 tn Ib milise&on's nu trang E\ thay th E\
s0a )i ni 'ung# $ti truy [u,t E nhY tn Hbb nanose&on's# Di; s0 trang E\ thay th &/ [!& su,t
E\ s0a )i l b# Q l ph!t sinh lti trang ph;i l Eao nhi9u ) &/ th 'uy tr- thri gian truy [u,t
E nhY ( ezze&ti7e a&ess time) khng 7.2t =u! Ibb nanose&on's
H>_
maHbb nanose&on's
^{Q (Hep)ma w p (page zault time) (Hep)Hbbwp(Ibb#wb#Jc)Hbbbbbb Ibb
p a
I# Mt &h.:ng tr-nh f sau _
int { HbbHbb
zor (ib iHbb iww)
zor (-b -Hbb -ww) {i- b
Di; s0 tin tr-nh ).2& &,p J khung trang 7Yi k"&h th.Y& mt khung trang l Ibb Eytes+ mS tin
tr-nh lun &him khung trang H+ khung trang I 7 J ) l.u m;ng { 7 kh8i )u khung I+ J l rtng#
Hi tin tr-nh &/ Eao nhi9u lti trang khi s0 '1ng thu?t to!n thay th p|l#
Mt &h.:ng tr-nh f sau 7Yi &Nu hi t.:ng tZ &Nu a
int { HbbHbb
zor (-b -Hbb -ww)
zor (ib iHbb iww) {i- b
H>_
a) mti 'Ung mt trang n9n &/ Hbb lti
E) Hbbbb lti
J# Qrong mt h thng s0 '1ng kC thu?t phNn trang theo y9u &u+ k"&h th.Y& mti trang l I~ + [t
)o4n &h.:ng tr-nh f sau )Ny_
int n JHbIK int {n+ Fn
zor (ib iniww) {ii
zor (ib iniww) F{ii
Hb
a) Lu s khung &,p &ho tin tr-nh l khng h4n &h 7 gi; s0 khung trang ths nh,t lun '(ng )
&h.! tin tr-nh+ &!& khung trang &Un l4i ).2& kh8i )ng 8 tr4ng th!i trng th- tin tr-nh &/ Eao
nhi9u lti trang#
E) Lu s khung &,p &ho tin tr-nh l I khung 7 gi; s0 khung trang ths nh,t lun '(ng ) &h.!
tin tr-nh+ khung trang ths hai ).2& kh8i )ng 8 tr4ng th!i trng th- tin tr-nh &/ Eao nhi9u lti
trang#
H>_
a) $;ng { &/ k"&h th.Y& l G~ &n J trang+ mti trang &hsa HbIK phn t0 li9n tip#
fs truy [u,t HbIK pt &5a m;ng { so sinh ra mt lti trang 7Ung zor ths H sinh ra J lti trang# pX
lu?n t.:ng tZ 7Ung zor ths I sinh ra J lti trang# d?y tin tr-nh &/ G lti trang
E) S lti trang l_ JwIJHbIK GHK lti trang
K# $t m!y t"nh &/ K khung trang# Qhri )im n4p+ thri )im truy &?p &ui &(ng+ 7 &!& Eit
|ezeren&e (|)+ >irty (>) &5a mti trang trong E nhY ).2& &ho trong E;ng sau _
Qrang Qhri )im n4p Qhri )im truy &?p &ui &(ng | >
b HIG I b b
H IJb IGb H b
I HIb II H H
J HGb Icb H H
Qrang no so ).2& &h3n thay th theo _
a) thu?t to!n L|l
E) thu?t to!n iO
&) thu?t to!n p|l
') thu?t to!n &: hi ths I
H>_
trang b
trang I
trang H
trang b
O# Q"nh k"&h th.Y& 'Sy E"t '(ng ) =u;n lX |{$ OHI $F+ gi; s0 )\a &h] )!nh theo Eyte#
HH
H>_ OHI $FOHIHbIKHbIK Eytes II Eytes# $ti mt Eyte '(ng H Eit ) =u;n lX k"&h
ths:& 'Sy E"t s0 '1ng l IIvcvHbIKvHbIK $F GK $F#
G# Mt mt khng gian )\a &h] &/ c trang+ mti trang &/ k"&h th.Y& H~+ !nh [4 7o E nhY 7?t lX &/
JI khung trang#
a) \a &h] logi& gWm Eao nhi9u Eit
E) \a &h] physi& gWm Eao nhi9u Eit
H>_
a) c trang p J Eit# ~"&h th.Y& trang H ~ 'Hb Eit )& logi& pw'HJ Eit
E) )& 7?t lX &/ JI khung )&7lJI ~ IHO Eytes '&7lHO Eit
# Mt mt h thng s0 '1ng kC thu?t phNn trang+ 7Yi E;ng trang ).2& l.u trq trong E nhY &h"nh#
a) Lu thri gian &ho mt ln truy [u,t E nhY E-nh th.rng l Ibb nanose&on's+ th- m,t Eao nhi9u
thri gian &ho mt thao t!& truy [u,t E nhY trong h thng ny
E) Lu s0 '1ng QpFs 7Yi t] l t-m th,y (hiteratio) l O+ thri gian ) t-m trong QpFs [em nh.
ERng b+ t"nh thri gian truy [u,t E nhY trong h thng ( ezze&ti7e memory rezeren&e time)
H>_
a) IbbwIbbKbb nanose&on's
E) Ibbb#IOwIbb IOb nanose&on's
c# Mt E;ng phNn )o4n sau_
Segment Fase pength
H IJbb HK
I b Hbb
fho Eit )\a &h] 7?t lX t.:ng sng 7Yi &!& )\a &h] ;o sau )Ny _
a# (H+Hb)
E# (I+Obb)
H>_ )& logi&(s+')
sH+ 'Hb+ Ease(H)IJbb )&7lIJbbwHbIJHb
sI+ 'Obb+ 'length(I)Hbb lti truy [u,t )& khng h2p l
# $t m!y t"nh JIeEit )\a &h]+ s0 '1ng mt E;ng trang nh\ &,p# \a &h] ;o ).2& phNn E nh. sau_
Eit 'nh &ho E;ng trang &,p H+ HH Eit &ho E;ng trang &,p I+ &Un l4i 'nh &ho ozzset# fho Eit k"&h
th.Y& mt trang trong h thng+ 7 khng gian )\a &h] ;o &/ Eao nhi9u trang
H>_
& ;o (pH+pI+') JI Eit
HI
pH+ pIHH 'HI Eit kt H trang IHI Eytes K ~F
S trang trong kg )& ;o I [ IHH IIb trang
Hb# $t m!y t"nh &/ KceEit )\a &h] ;o+ 7 JIeEit )\a &h] 7?t lX+ k"&h th.Y& mt trang l c~# f/ Eao
nhi9u phn t0 trong mt E;ng trang thng th.rng 7 trong E;ng trang ngh\&h );o
H>_
a) F;ng trang thng th.rng
kt trang c ~ IHJ Eytes 'HJ Eit pJO Eit
mt E;ng trang thng th.rng &/ IJO phn t0
E) F;ng trang ngh\&h );o
H khung trang c~ IHJ Eytes
ktEn7l IJI Eytes s khung trang &5a En7l IJIvIHJ IH khung
s phn t0 trong E;ng trang ngh\&h );o l IH
HH# Di; s0 &/ mt m!y t"nh )W &h:i s0 '1ng eEit )\a &h]+ h thng s0 '1ng mt E;ng trang nh\
&,p+ '(ng IeEit lm &h] m1& )n E;ng trang &,p H+ IeEit lm &h] m1& )n E;ng trang &,p I# Mt
mt tin tr-nh s0 '1ng &!& )\a &h] ;o trong nhqng ph4m 7i sau _ b##HO+ IH##I+ K##HbG+ 7
HHO##HI#
a) do &hi tit ton E E;ng trang &ho tin tr-nh ny
E) xh;i &,p ph!t &ho tin tr-nh Eao nhi9u khung trang+ gi; s0 t,t &; )u nRm trong E nhY &h"nh
&) Fao nhi9u Eytes sng 7Yi &!& 7(ng phNn m;nh ni 7i trong tin tr-nh ny
') fn Eao nhi9u E nhY &ho E;ng trang &5a tin tr-nh ny
H>_
)& ;o (pH+pI+') Eit
pHpII Eit 'J Eit kt trangc Eytes
a) 7o E;ng trang _ goi zi l s hiu khung trang &hsa trang pi
E) &,p khung w K HJ khung
&) t"nh phNn m;nh ni 7i_
HJ
fH
z'z
.z&
zH
fI
z..
fI
z.&
z.H
z.M
z.e
fI
?.H
?.M
?'?
H?.
.?&
?.&
?.?
.eE
n7l
b bb#bb#bbb (b+b+b)
HO bb#bH#HHH (b+H+)
IH bb#Hb#HbH (b+I+O)
I bb#HH#HbH (b+J+O)
K Hb#HH#HHb (I+J+G)
HbG HH#bH#bHb (J+H+I)
HHO HH#Hb#bHH (J+I+J)
HI HH#HH#HHH (J+J+)
Qin tr-nh s0 '1ng &!& )\a &h] ;o trong &!& ph4m
7i sau_
(b+b+b)##(b+H+) (b+I+O)##(b+J+O)
(I+J+G)##(J+H+I) (J+I+J)##(J+J+)
khung trang &,p &ho trang b 7 trang H ).2& s0 '1ng ht
khung trang &,p &ho trang I '. IHeHG EyteO Eyte )u
t.:ng tZ t"nh phNn m;nh &ho &!& trang &Un l4i
k"&h th.Y& E;ng trang &ho tin tr-nh ny
') '(ng H E;ng trang &,p H+ J E;ng trang &,p I k"&h th.Y& E;ng trang K khung trang JI
Eytes
HI# Di; s0 &/ mt m!y t"nh s0 '1ng HGeEit )\a &h]# F nhY ;o ).2& thZ& hin 7Yi kC thu?t phNn
)o4n kt h2p phNn trang+ k"&h th.Y& ti )a &5a mt phNn )o4n l KbG Eytes# F nhY 7?t lX ).2&
phNn thnh &!& khung trang &/ k"&h th.Y& OHI Eytes#
a) Qh hin &!&h )\a &h] ;o ).2& phNn t"&h ) ph;n !nh segment+ page+ ozzset
E) Mt mt tin tr-nh s0 '1ng &!& min )\a &h] sau+ [!& )\nh s hiu segment 7 s hiu page
t.:ng sng trong segment m &h.:ng tr-nh truy &?p )n _
JOb##HbJ+ JbKG##JbK+ Hbb##KOb+ JJbOG##JIbb+ GHIJb##GJObb
&) Fao nhi9u Eytes sng 7Yi &!& 7(ng phNn m;nh ni 7i trong tin tr-nh ny
') fn Eao nhi9u E nhY &ho E;ng phNn )o4n 7 E;ng trang &5a tin tr-nh ny
H>_
a) )& ;o (s+')(s+p+')HG Eit+ 7Yi 'pw'
kt khung trangOHI ' Eit
k"&h th.Y& ti )a &5a H phNn )o4n l KbG Eytes mt phNn )o4n ).2& &hia ti )a thnh
KbGvOHI c trang pJ Eit 'HI Eit sK Eit '& ;o(s+p+')(K+J+)
E) Qin tr-nh s0 '1ng &!& min )\a &h] ;o sau_
JOb bbbb#bbb#HbHbHHHHb (b+b+JOb)
HbJ bbbb#bHb#bbbbbHHHH (b+I+HO)
JbKG bbbb#HbH#HHHHbbHHb (b+O+KcG)
JbK bbbb#HHH#HbHbbbbbb (b++JIb)
Hbb bbbH#HbH#HHbHHHHbb (H+O+KKK)
KOb bbHb#bHb#bHHHbHbHb (I+I+IJK)
JJbOG Hbbb#bbb#HbbHbbbbb (c+b+Icc)
JIbb HbbH#Hbb#HbbHbbbbb (+K+Icc)
GHIJb HHHb#HHH#HbbHbHHHb (HK++JbI)
GJObb HHHH#Hbb#bbbbbHHbb (HO+K+HI)
&) t"nh phNn m;nh ni 7i_
sb+pb '._ JOb Eyte )u
sb+ pI '._ OHIeHOK Eyte &ui
77u
') Qin tr-nh '(ng H E;ng phNn )o4n E nhY 'nh &ho E;ng phNn )o4n OHI Eyte#
HK
(b+b+JOb)##(b+I+HO)(b+O+KcG)##(b++JIb) (H+O+KKK)##
(I+I+IJK)
(c+b+Icc)##(+K+Icc) (HK++JbI)##(HO+K+HI)
sb_ pb+H+I+O+G+
sH_ pO+G+
sI_ pb+H+I
sc_ pb+H+I+J+K+O+G+
s_ pb+H+I+J+K
sHK_ p
sHO_ pb+H+I+J+K
Qin tr-nh &/ HG phNn )o4n s E;ng trang tin tr-nh s0 '1ng l HG E nhY 'nh &ho E;ng
trang HGOHI (gi; s0 mt E;ng trang &him H khung trang)
TI )IU THAM KHO
H# Dary # Lutt+ lni7ersity oz folora'o# fentralie' {n' >istriEute' Operating Systems# Se&on'
^'ition+ Ibbb#
I# |oEert Syiter# Operating Systems+ { xra&ti&al {pproa&h# xrenti&eeHall international+ in&#
HJ#
J# {n'rey S# QanenEaum# $o'ern Operating Systems# xrenti&eeHall international+ in&# Se&on'
^'ition+ IbbH#
K# {Eraham SilEers&hat xeter Faer Dal7in# Operating System &on&epts# ohn iley Sons+
in&# izth ^'ition+ H#
O# H# $# >eitel# Operating Systems# {''isoneesley in&# Se&on' ^'ition+ H#
G# Qrn H4nh Lhi p9 ~h*& Lhi9n n Hong ~im# Di!o tr-nh h )iu hnh (t?p H I)#
H~HQL Ibbb#
HO
MoC )oC
fHghLD i_ Diji QHikl dm Hk iml HnLH Qrang
H#H H )iu hnh l g-+ &!& kh!i nim &5a h )iu hnh# J
H#I p\&h s0 ph!t trin &5a h )iu hnh K
H#J f!& lo4i h )iu hnh K
H#K f!& '\&h 71 &5a h )iu hnh c
H#O f,u tr6& &5a h )iu hnh HH
H#G Lguy9n lX thit k h )iu hnh HK
fHghLD ii_ }lL p LHxvMlQ dn }lL p Hk QHLD Qx QiL
I#H# }u;n lX nh?pv[u,t HG
I#H#H xhNn lo4i 7 )%& t"nh &5a thit E\ nh?pv[u,t HG
I#H#I F )iu khin thit E\ nh?pv[u,t H
I#H#J f!& &h.:ng tr-nh thZ& hin nh?pv[u,t 7 t &hs& h thng nh?pv[u,t Hc
I#H#K f: &h nh?pv[u,t 7 &: &h >${ Ib
I#H#O f!& thu?t to!n l?p l\&h 'i &huyn )u )3& Ib
I#H#G H s )an [en 7 ram 'isk II
I#I }u;n lX h thng t?p tin IJ
I#I#H f!& kh!i nim 7 )a &sng+ t?p tin+ th. m1&+ E;ng th. m1& IJ
I#I#I f!& ph.:ng ph!p &i )%t h thng t?p tin# Ic
I#I#J xh.:ng ph!p =u;n lX 'anh s!&h &!& khi trng JI
I#I#K xh.:ng ph!p =u;n lX sZ an ton &5a h thng t?p tin JJ
I#I#O DiYi thiu mt s h thng t?p tin_ $S>OSvin'oys+ lLiM# JK
fHghLD iii_ }lL p QiL Q|LH
J#H f!& kh!i nim 7 tin tr-nh KK
J#I iu phi &!& tin tr-nh OJ
J#J pi9n l4& giqa &!& tin tr-nh GH
J#K Wng E &!& tin tr-nh GG
J#O Q"nh tr4ng t*& nghon ('ea'lo&k) cb
fHghLD id_ }lL p F LHj
K#H f!& 7,n ) ph!t sinh khi =u;n lX E nhY#
K#I f!& m h-nh &,p ph!t E nhY# HbH
K#J F nhY ;o HHG
HG
fHghLD d_ }lL p x|Of^SSO|
O#H xro&essor d?t lX 7 xro&essor logi& HJb
O#I Lg*t 7 [0 lX ng*t HJH
O#J M0 lX ng*t trong iF$exf HJG
fHghLD di_ Hk iml HnLH LHiml F di M p
G#H f,u h-nh nhiu pro&essor HKb
G#I f!& lo4i h )iu hnh ht tr2 nhiu E 7i [0 lX HKG
G#J Wng E trong h thng )a [0 lX HK
G#K iu phi trong h thng )a [0 lX HOI
e HQ e
H