Upload
le-huu-tai
View
19
Download
4
Embed Size (px)
DESCRIPTION
- Tổng quan về bộ nhớ ảo- Cài đặt bộ nhớ ảo: demand paging- Cài đặt bộ nhớ ảo: page replacement+ các giải thuật thay trang- Vấn đề cấp phát Frames- Vấn đề Thrashing- Cài đăt bộ nhớ ảo: Demand Segmentation
Citation preview
Chng 8
Bo Nh Ao
Khoa KTMT 2
Noi dung trnh bay
Tong quan ve bo nh ao
Cai at bo nh ao : demand paging
Cai at bo nh ao : Page Replacement
Cac giai thuat thay trang (Page Replacement Algorithms)
Van e cap phat Frames
Van e Thrashing
Cai at bo bo nh ao : Demand Segmentation
Khoa KTMT 3
1. Tong quan bo nh ao
Nhan xet: khong phai tat ca cac phan cua mot process
can thiet phai c nap vao bo nh chnh tai cung mot
thi iem
V du
oan ma ieu khien cac loi hiem khi xay ra
Cac arrays, list, tables c cap phat bo nh (cap phat tnh)
nhieu hn yeu cau thc s
Mot so tnh nang t khi c dung cua mot chng trnh
Ca chng trnh th cung co oan code cha can dung
Bo nh ao (virtual memory): Bo nh ao la mot ky thuat
cho phep x ly mot tien trnh khong c nap toan bo
vao bo nh vat ly
Khoa KTMT 4
1. Bo nh ao (tt)
u iem cua bo nh ao
So lng process trong bo nh nhieu hn
Mot process co the thc thi ngay ca khi kch thc cua no ln
hn bo nh thc
Giam nhe cong viec cua lap trnh vien
Khong gian trao oi gia bo nh chnh va bo nh
phu(swap space).
V du:
swap partition trong Linux
file pagefile.sys trong Windows
Khoa KTMT 5
2. Cai at bo nh ao
Co hai ky thuat:
Phan trang theo yeu cau (Demand Paging)
Phan oan theo yeu cau (Segmentation Paging)
Phan cng memory management phai ho tr paging
va/hoac segmentation
OS phai quan ly s di chuyen cua trang/oan gia bo
nh chnh va bo nh th cap
Trong chng nay,
Ch quan tam en paging
Phan cng ho tr hien thc bo nh ao
Cac giai thuat cua he ieu hanh
Khoa KTMT 6
2.1.Phan trang theo yeu cau
demand paging
Demand paging: cac trang cua qua trnh ch c nap
vao bo nh chnh khi c yeu cau.
Khi co mot tham chieu en mot trang ma khong co
trong bo nh chnh (valid bit) th phan cng se gay ra
mot ngat (goi la page-fault trap) kch khi page-fault
service routine (PFSR) cua he ieu hanh.
PFSR:
1. Chuyen process ve trang thai blocked
2. Phat ra mot yeu cau oc a e nap trang c tham chieu vao
mot frame trong; trong khi i I/O, mot process khac c cap
CPU e thc thi
3. Sau khi I/O hoan tat, a gay ra mot ngat en he ieu hanh;
PFSR cap nhat page table va chuyen process ve trang thai
ready.
Khoa KTMT 7
2.2. Loi trang va cac bc x ly
Khoa KTMT 8
2.3. Thay the trang nh
Bc 2 cua PFSR gia s phai thay trang v khong tm
c frame trong, PFSR c bo sung nh sau
1. Xac nh v tr tren a cua trang ang can
2. Tm mot frame trong:
a. Neu co frame trong th dung no
b. Neu khong co frame trong th dung mot giai thuat thay trang
e chon mot trang hy sinh (victim page)
c. Ghi victim page len a; cap nhat page table va frame table
tng ng
3. oc trang ang can vao frame trong (a co c t bc 2);
cap nhat page table va frame table tng ng.
Khoa KTMT 9
2.3. Thay the trang nh (tt)
Khoa KTMT 10
2.4. Cac thuat toan thay the trang
Hai van e chu yeu:
Frame-allocation algorithm
Cap phat cho process bao
nhieu frame cua bo nh thc?
Page-replacement algorithm
Chon frame cua process se
c thay the trang nh
Muc tieu: so lng page-fault
nho nhat
c anh gia bang cach thc
thi giai thuat oi vi mot chuoi
tham chieu bo nh (memory
reference string) va xac nh
so lan xay ra page fault
V du
Th t tham chieu cac a ch
nh, vi page size = 100:
0100, 0432, 0101, 0612, 0102,
0103, 0104, 0101, 0611, 0102,
0103, 0104, 0101, 0610, 0102,
0103, 0104, 0101, 0609, 0102,
0105
cac trang nh sau c tham
chieu lan lt = chuoi tham
chieu bo nh (trang nh)
1, 4, 1, 6, 1,
1, 1, 1, 6, 1,
1, 1, 1, 6, 1,
1, 1, 1, 6, 1,
1
Khoa KTMT 11
a) Giai thuat thay trang FIFO
Cac d lieu can biet ban au:
So khung trang
Tnh trang ban au
Chuoi tham chieu
Trang nh c nht s c thay th
B nh chnh cp cho process 3 frame
Khoa KTMT 12
Nghch ly Belady
Khoa KTMT 13
Nghch ly Belady
Bat thng (anomaly) Belady: so page fault tang mac dau qua trnh
a c cap nhieu frame hn.
Khoa KTMT 14
2.4 b)Giai thuat thay trang OPT(optimal)
Giai thuat thay trang OPT
Thay the trang nh se c tham chieu tre nhat trong tng lai
Kh hin thc?
V du: mot process co 7 trang, va c cap 3 frame
Khoa KTMT 15
c) Giai thuat lau nhat cha s dung
Least Recently Used (LRU)
V du:
Moi trang c ghi nhan (trong bang phan trang) thi iem c
tham chieu trang LRU la trang nh co thi iem tham chieu nho
nhat (OS ton chi ph tm kiem trang nh LRU nay moi khi co page fault)
Do vay, LRU can s ho tr cua phan cng va chi ph cho viec tm
kiem. t CPU cung cap u s ho tr phan cng cho giai thuat LRU.
Khoa KTMT 16
LRU va FIFO
So sanh cac giai thuat thay trang LRU va FIFO
chuoi tham chieu
trang nh
Khoa KTMT 17
Gii thut c hi th hai
S dng cc bit tham kho ti nhng khon thi gian u n
Dng mt byte cho mi trang trong mt bng nm trong b nh
Dng mt thanh ghi dch cha lch s tham kho trong 8 ln gn nht
VD: 00110101, 00000000, 11111111
L gii thut thay th FIFO, trc khi thay th mt trang xem xt bit tham
kho ca n
i khi s dng hai bit: tham kho v sa i nh mt cp (x,x):
(0,0) khng c dng mi y v khng c sa i-l trang tt nht
thay th.
(0,1) khng c dng mi y nhng c sa i-khng tht tt v
trang cn c vit ra trc khi thay th.
(1,0) c dng mi y nhng khng c sa i-n c th s nhanh chng c
dng li.
(1,1) c dng mi y v c sa i-trang c th s nhanh chng c dng li
v trang s cn c vit ra a trc khi n c th c thay th.
Khoa KTMT 18
Gii thut c hi th hai (tt)
Khoa KTMT 19
2.5.So lng frame cap cho process
OS phai quyet nh cap cho moi process bao nhieu
frame.
Cap t frame nhieu page fault
Cap nhieu frame giam mc o multiprogramming
Chien lc cap phat tnh (fixed-allocation)
So frame cap cho moi process khong oi, c xac nh vao thi
iem loading va co the tuy thuoc vao tng ng dung (kch thc
cua no,)
Chien lc cap phat ong (variable-allocation)
So frame cap cho moi process co the thay oi trong khi no chay
Neu ty le page-fault cao cap them frame
Neu ty le page-fault thap giam bt frame
OS phai mat chi ph e c nh cac process
Khoa KTMT 20
a) Chien lc cap phat tnh
Cap phat bang nhau: V du, co 100 frame va 5
process moi process c 20 frame
Cap phat theo t le: da vao kch thc process
Cap phat theo o u tien
mS
spa
m
sS
ps
iii
i
ii
for allocation
frames ofnumber total
process of size
5964137
127
564137
10
127
10
64
2
1
2
a
a
s
s
m
i
V du:
Khoa KTMT 21
3. Tr tren toan bo he thong
Thrashing
Neu mot process khong co u so frame can thiet th t so
page faults/sec rat cao.
Thrashing: hien tng cac trang nh cua mot process b
hoan chuyen vao/ra lien tuc.
Khoa KTMT 22
a)Mo hnh cuc bo (Locality)
e han che thrashing, he ieu hanh phai cung cap cho
process cang u frame cang tot. Bao nhieu frame th u cho mot process thc thi hieu qua?
Nguyen ly locality (locality principle)
Locality la tap cac trang c tham chieu gan nhau
Mot process gom nhieu locality, va trong qua trnh thc thi,
process se chuyen t locality nay sang locality khac
V sao hien tng thrashing xuat hien?
Khi size of locality > memory size
Khoa KTMT 23
b) Giai phap tap lam viec (working set)
c thiet ke da tren nguyen ly locality.
Xac nh xem process thc s s dung bao nhieu
frame.
nh ngha:
WS(t) - so lng cac tham chieu trang nh cua process gan
ay nhat can c quan sat trong khong thi gian .
- khoang thi gian tham chieu
V du:
2 4 5 6 9 1 3 2 6 3 9 2 1 4
thi iem t1
D = 4
chuoi tham khao
trang nh
Khoa KTMT 24
b) Giai phap tap lam viec (working set)
nh ngha: working set cua process Pi, ky hieu WS
i, la tap gom D
cac trang c s dung gan ay nhat.
Nhan xet:
D qua nho khong u bao phu toan bo locality.
D qua ln bao phu nhieu locality khac nhau.
D = bao gom tat ca cac trang c s dung.
Dung working set cua mot process e xap x locality cua no.
chuoi tham khao trang
V du: D = 10 v
Khoa KTMT 25
b) Giai phap tap lam viec (working set)
nh ngha WSSila kch thc cua working set cua P
i:
WSSi= so lng cac trang trong WS
i
chuoi tham khao trang
WSS(t1) = 5 WSS(t2) = 2
V du (tiep): D = 10 v
Khoa KTMT 26
b) Giai phap tap lam viec (working set)
at D = WSSi= tong cac working-set size cua moi
process trong he thong.
Nhan xet: Neu D > m (so frame cua he thong) se xay ra thrashing.
Giai phap working set:
Khi khi tao mot qua trnh: cung cap cho qua trnh so lng
frame thoa man working-set size cua no.
Neu D > m tam dng mot trong cac process.
Cac trang cua qua trnh c chuyen ra a cng va cac frame cua no c thu hoi.
Khoa KTMT 27
b) Giai phap tap lam viec (working set)
WS loai tr c tnh trang tr tre ma van am bao mc
o a chng
Theo vet cac WS? => WS xap x (oc them trong sach)
oc them:
He thong tap tin
He thong nhap xuat
He thong phan tan
Khoa KTMT 28
Bai tap
Bi 01: Mt my tnh 32-bit a ch, s dng mt bng trang nh cp.
a ch o c phn b nh sau : 9 bit dnh cho bng trang cp 1, 11
bit cho bng trang cp 2, v cho offset. Cho bit kch thc mt trang
trong h thng, v a ch o c bao nhiu trang ?
Bi 02: Xt chui truy xut b nh sau:
1, 2 , 3 , 4 , 3 , 5 , 1 , 6 , 2 , 1 , 2 , 3 , 7 , 5 , 3 , 2 , 1 , 2 , 3 , 6
C bao nhiu li trang xy ra khi s dng cc thut ton thay th sau
y, gi s c 4 khung trang v ban u cc khung trang u trng ?
a) LRU
b) FIFO
c) Optimal
d) C hi th 2
Bi tp
Cho mt process c s frame truy cp nh
sau:
1,2,4,3,5,2,3,5,6,7,8,9,1,2,3,4,5,2,3,7,6,4,
5,6,7,9,8,1,2,5
Cho bit c biu nhiu tp lm vic
(working set)?
Lit k cc frame trong tng working set?
Bit D = 7.
Khoa KTMT 29
Bi tp
H thng ti mt thi im c 5 process:
process 1 cn 5 frame, process 2 cn 15
frame, process 3 cn 10 frame, process 4
cn 9 frame, process 5 cn 11 frame. H
thng hin c 30 frame. Tnh xem mi
process c cp bao nhiu frame?
Phn b u?
Theo t l?
Khoa KTMT 30