Post on 15-Oct-2015
description
1Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 1Chng 5 : Qun l b nh
MN H IU HNH
Chng 5
QUN L B NH5.1 Tng qut v qun l b nh5.2 Qun l b nh tht5.3 Qun l b nh o5.4 Qun l b nh o phn trang5.5 Qun l b nh o phn on5.6 Qun l b nh o phn on v phn trang5.7 Qun l b nh ca CPU Intel 80x86
Ti liu tham kho : chng 4, sch "Modern Operating Systems", Andrew S. Tanenbaum: , 2nd ed, Prentice Hall
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 2Chng 5 : Qun l b nh
5.1 Tng qut v qun l b nh
Thng ngi lp trnh mun b nh m chng trnh truy xut c c cc tnh cht : dung lng ln chy nhanh khng b mt thng tin.
Thng my tnh s dng 3 loi b nh : Cache : gi cao, dung lng hn ch, tc cao b nh chnh DRAM : dung lng trung bnh, gi trung
bnh, tc trung bnh. a cng : dung lng rt ln, chm, gi r.
Module qun l b nh phi tn dng cc u/khuyt im ca cc loi b nh my tnh cung cp cho ngi lp trnh khng gian lm vic tho mn cng nhiu yu cu cng tt.
2Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 3Chng 5 : Qun l b nh
5.2 Qun l b nh tht trn h n chngMt s vn cn gii quyt : Ti nh li a ch
chng trnh khi np fiel kh thi t a vo RAM. Bo v b nh ca
HH t vic truy xut khng hp php ca chng trnh ng dng. Vn khng ch
cho chng trnh ln s dng k thut Overlay chia ng dng ra nhiu file overlay lin tip.
Application
HH
0
0xFFFF..
Application
HH
0
0xFFFF..
Application
HH
0
0xFFFF..
Driver, I/O
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 4Chng 5 : Qun l b nh
5.2 Qun l b nh tht trn h n chng//phn mm vit bng Cint i;...i = 5;
//m my dch c move ax, 5mov [0], ax...i
code
static data0
np vo, cha ti nh
//m my move ax, 5mov [0], ax...i
HH
base
//m my move ax, 5mov [0+base], ax...i
HH
base
3Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 5Chng 5 : Qun l b nh
5.3 Qun l b nh tht trn h a chng
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 6Chng 5 : Qun l b nh
5.3 Qun l b nh tht trn h a chngTrong bi cnh my c dung lng RAM kh ln (512KB), cn cc phn mm cn chy c kch thc kh nh (10-100KB), ta c thdng 1 trong 3 k thut qun l b nh :1. K thut phn vng tnh dng nhiu hng ch c lp (hnh a slide trc) : HH c load vo vng b nh thp ca RAM. phn trng cn li ca RAM s c chia lm nhiu phn vng
c kch thc tng dn (10, 20, 40, 80, 160KB,...). mi phn vng c 1 hng ch cc ng dng cn chy trn phn
vng tng ng. khi cn chy ng dng, ngi chy ng dng phi chn phn
vng c kch thc nh nht nhng >= kch thc ng dng vsp hng hng ch tng ng.
HH s phc v cc ng dng trong tng hng ch theo th t ai n trc phc v trc.
4Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 7Chng 5 : Qun l b nh
K thut dng nhiu hng ch c lp c 2 khuyt im chnh :1. Kch thc cc phn vng tnh thng khng khp vi kch thc ng
dng nn b lng ph.2. s dng cc phn vng thng khng u gy ra lng ph : nhiu phn
mm sp hng chy trn phn vng kch thc nh, trong lc phn vng kch thc ln khng c ng dng chy.
khc phc khuyt im 2 trn, ta c th dng k thut sau :2. K thut phn vng tnh dng 1 hng ch duy nht (hnh b slide trc) : HH c load vo vng b nh thp ca RAM. phn trng cn li ca RAM s c chia lm nhiu phn vng c kch
thc tng dn (10, 20, 40, 80, 160KB,...). ch c 1 hng ch cc ng dng cn chy trn cc phn vng. khi 1 phn vng rnh, HH s d trong hng ch 1 ng dng c kch
thc ln nht nhng
5Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 9Chng 5 : Qun l b nh
Qun l b nh tht trn h a chng
3. K thut phn vng ng :a. HH c load vo vng b nh thp ca RAM. Khi ng dng A cn
chy, HH to phn vng ng va ng kch thc ca phn mm A v np A vo phn vng va to. Phn b nh trng cn li dnh cho cc phn mm khc sau ny.
b. tng t to phn vng cho B chy.c. tng t to phn vng cho C chy.d. A kt thc v tr li phn vng mnh chim.e. khi D chy, HH to phn vng ng va ng kch thc cho D.f. khi E chy, HH khng tm c vng trng no ln cho E c.
Trong trng hp ny, HH s di cc phn vng ang dng bi cc ng dng li k nhau to phn vng trng duy nht. Nu kch thc ca n chy cho E th s to phn vng ng cho E chy.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 10Chng 5 : Qun l b nh
Tt c cc phng php qun l b nh trnh by trc y u c nhc im l da vo tng : np ton b file phn mm vo b nh trc khi chy ng dng tng ng.Trong bi cnh s dng my hin nay, my ch c RAM kch thc va phi (
6Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 11Chng 5 : Qun l b nh
C 3 phng php qun l b nh o khc nhau : Qun l b nh phn trang (Paging) Qun l b nh phn on (Segmentation) Qun l b nh phn on v phn trang (Segmentation & Paging)
t c tc cn thit, ngi ta phi hin thc cc phng php qun l b nh o bng phn cng. n v phn cng qun l b nh o c gi l MMU (Memory Management Unit). n v MMU thng trong trong CPU.
5.3 Qun l b nh o trn h a chng
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 12Chng 5 : Qun l b nh
Qun l b nh o trn h a chng
7Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 13Chng 5 : Qun l b nh
Nguyn l hot ng : khi lp trnh, cc lnh truy xut cc a ch trong khng gian
phng c dng lng rt ln (4GB). Khng gian ny c gi llun l (o). Nu phn mm hn ch truy xut trong khng gian ny th HH s m bo n chy tt cho d kch thc tht ca RAM nh hn nhiu.
qun l vic swap (np vo/ghi ra) b nh o, HH chia bnh o ca ng dng ra thnh nhiu n v qun l c kch thc ng nht, mi n v c gi l trang o. Kch thc trang o = 2i (256, 512, 1K, 2K, 4K, 8K,...).
B nh RAM cng c chia thnh nhiu n v qun l, mi n v c gi l trang tht (page frame). Kch thc tht = kch thc trang o.
5.4 Qun l b nh o phn trang
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 14Chng 5 : Qun l b nh
Nguyn l hot ng (tt) : Trang tht l ni cha trang o khi cn thit, ti tng thi im,
mi trang tht cha tt a 1 trang o, nhng theo thi gian nc th cha nhiu trang o khc nhau.
Khi ng dng truy xut 1 nh theo a ch tuyn tnh s nguyn, HH bit ngay nh thuc trang o no, nm Offset no trong trang o.
a ch 8196 = 0010 0000 0000 0100
Qun l b nh o phn trang
i bit bn phi loffset ca nh (=4)
phn cn li bn tri l ch s trang o (=2)
8Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 15Chng 5 : Qun l b nh
Qun l b nh o phn trang
Nguyn l hot ng (tt) : qun l qu trnh nh x cc trang o ca chng trnh vo cc
trang tht, HH dng 1 bng c t trang o cho mi chng trnh, bng ny c s phn t = s trang o ca chng trnh tng ng, mi phn t ca bng l 1 record cha cc thng s qun l trang o tng ng :
ProtectionModifiedAddress in disk
Ch s trang tht (page frame)inRAM
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 16Chng 5 : Qun l b nh
Qun l b nh o phn trang
Qui trnh i a ch o sang a ch tht :1. t a ch m chng trnh truy xut (addr), h thng tch thnh 2
thnh phn : page (i) v offset.2. Truy xut record qun l trang o i trong bng c t trang. Nu field
inRAM=1 th a ch tht tng ng l :
page frame Offset v qui trnh kt thc.
3. Nu inRAM =0, h thng s tm 1 trang tht rnh (k), nu khng cphi tm cch gii phng 1 trang tht t gy phin h nht (k), da vo thng tin trong field "inDisk" m file v c trang o vo trang tht k.
4. Hiu chnh li field inRAM = 1 v field page frame = k ri quay li bc 2.
9Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 17Chng 5 : Qun l b nh
Qun l b nh o phn trang
Th d v trng thi h thng, RAM c 32KB c chia lm 8 trang tht ch s t0 -7, mi trang 4KB. Chng trnh di 64KB c chia lm 16 trng o, ch st 0 -15.Hin c 8 trang o c np vo vchim ht RAM.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 18Chng 5 : Qun l b nh
Th d v bng c t trang vqui trnh i a ch o sang a ch tht.Theo hnh bn, phn mm truy xut nh o a ch 8196 thmy truy xut RAm a ch24580.
Qun l b nh o phn trang
10
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 19Chng 5 : Qun l b nh
Cc phng php gii phng trang thtTrong qui trnh i a ch o sang a ch tht cc slide trc, ta thy mi khi cn np trang o mi, my s tm trang tht trng, nhng t khi tm c, do my s phi tm 1 trang tht ang dng no v gii phng n. C nhiu phng php gii phng trang tht khc nhau, mi phng php c gi/kt qu khc nhau, ty thuc vo mc tiu xy dng HH cth, ta c th chn 1 trong cc phng php ny hay kt hp chng li.
1. Phng php FIFO : dng 1 danh sch lin kt cha cc trang tht c dng, trang no c dng mi nht s c a vo cui danh sch u danh sch l trang c dng c nht chn n gii phng khi cn.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 20Chng 5 : Qun l b nh
Cc phng php gii phng trang thtPhng php FIFO c nhc im l thng gii phng nhm cc trang cha HH (v cc module chc nng ca HH c np vo RAM u tin). khc phc nhc im ny, ta c th dng phng php sau :
2. Phng php cho c hi ln 2 : kt hp mi trang tht 1 bit trng thi, bit R = 0/1 (Recent). nh k bit R ca cc trang sb xa v 0, mi khi trang b truy xut th set R = 1. Khi cn gii phng trang, chn phn t u danh sch. Nu bit R = 0 thgii phng n, cn nu R = 1 th set li R=0, tha n v a nv ui danh sch x l sau. Nh vy, vi phng php ny, ta ch gii phng trang c dng c nht v khng c truy xut li trong qu kh gn y.
11
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 21Chng 5 : Qun l b nh
Cc phng php gii phng trang thtPhng php c hi ln 2 cn tn nhiu chi ph cho mi ln x l. C th a c phn t u ca danh sch v cui danh sch, ta cn thc hin 4 lnh gn sau :tail->next = head; //a phn t u danh sch v cui danh schtail = head; //hiu chnh li pointer tail ca danh schhead = head->next; //a phn t u danh sch v phn t k tiptail->next = null; //xa vng next ca phn t cui danh sch gim nh hn na chi ph qun l danh sch, ta c th dng danh sch lin kt vng thay v danh sch lin kt n. y l tng ca phng php Clock gii phng trang.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 22Chng 5 : Qun l b nh
Cc phng php gii phng trang tht3. Phng php Clock :
a c phn t u ca danh sch v cui danh sch, ta ch cn thc hin 1 lnh gn sau ://a phn t u danh sch vphn t k tiphead = head->next;
12
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 23Chng 5 : Qun l b nh
Cc phng php gii phng trang tht4. Phng php Not Recently-Used - NRU : gii phng trang t gy
phin h hn, ta s kt hp mi trang tht 1 bit trng thi na. C thta c 2 bit miu t trng thi ca tng trang tht nh sau : bit R = 0/1 (Recent). nh k bit R ca cc trang s b xa v 0, mi
khi trang b truy xut th set R = 1. bit M = 0/1(Modified). Mi ln np trang o, bit M ca trang tht c
xa 0. Mi ln b thay i ni dung, bit M c set ln 1. Nh vy mi trang s 1 trong 1 trng thi sau :1. S0 : R = M = 0 : trong qu kh gn, trang cha c truy xut v
trang cha b thay i ni dung.2. S1 : R = 0, M = 1 : trong qu kh gn, trang cha c truy xut
nhng trang b thay i ni dung.3. S2 : R = 1, M = 0 : trong qu kh gn, trang c truy xut, nhng
trang cha b thay i ni dung.4. S3 : R = 1, M = 1 : trong qu kh gn, trang c truy xut v trang
b thay i ni dung.Khi cn gii phng trang, ta chn trang theo th t u tin t S0 -> S3.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 24Chng 5 : Qun l b nh
Cc phng php gii phng trang thtTrong phng php NRU slide trc, nu c nhiu trang S0 th ta phi dng c ch ngu nhin chn 1 trong cc trang cha chnh xc lm. khc phc ngc im ny, ta dng phng php sau :
5. Phng php Least Recently-Used - LRU : kt hp mi trang 1 vng thng tin miu t mc thi gian. Mi ln trang c truy xut, ta ghi thi im truy xut vo mc thi gian ca trang. Mi khi cn gii phng trang, ta chn trang c mc thi gian nhnht (trang c truy xut ln cui lu nht).
13
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 25Chng 5 : Qun l b nh
Ti u ha qui trnh i a ch o sang thtQui trnh i a ch o sang tht c trnh by trong cc slide trc c 2 vn ln sau y cn ch v gii quyt :
1. bng c t trang cho chng trnh chim rt nhiu ch. Th dkhng gian o ca chng trnh l 4GB, trang o l 4KB. Nh vy, ta cn c bng c t trang cho chng trnh cha 4G/4K = 1M phn t, mi phn t l 1 record (td. di 16 byte). Kt qul bng c t trang s chim 16MB v v nguyn tc phi nm thng trc trong RAM qu tn ch!
2. nu thut gii i a ch o sang tht c vit bng phn mm, n s gm hng ngn lnh my, nh vy mi ln chng trnh thc hin 1 lnh my c truy xut b nh, my s dng li chy thut gii i a ch gm hng ngn lnh my mi c kt qu gip lnh my ca chng trnh chy tip qu km hiu qu!
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 26Chng 5 : Qun l b nh
Ti u ha qui trnh i a ch o sang tht khc phc nhc im 1 trong slide trc, ngi ta dng c ch phn trang nhiu cp thay v 1 cp. Th d Windows dng c ch phn trang 2 cp nh sau : chia khng gian o ca phn mm (4GB) thnh n (=1024) trang o
cp 1 (Dir), mi trang o cp 1 c dung lng rt ln (=4MB) c chia nh thnh
m (=1024) trang o cp 2, mi trang o cp 2 c kch thc 4KB vl i tng swap vt l gia RAM/a cng.
Nh vy bng c t trang cho chng trnh ch cha n (=1024) phn t, rt nh so vi trc y (1M phn t). Tuy nhin mi trang o cp 1 c bng c t trang ring di m (=1024) phn t. May mn l cc bng c t trang cp 2 khng cn nm thng trc trong RAM, chng c cha trn a. Khi truy xut vo trang o cp 1 no, bng c t trang cp 2 ca n mi c np vo RAM.
14
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 27Chng 5 : Qun l b nh
Ti u ha qui trnh i a ch o sang tht
nm trong RAM
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 28Chng 5 : Qun l b nh
Ti u ha qui trnh i a ch o sang tht khc phc nhc im 2 trong slide trc, thay v dng gii php phn mm i a ch, ta dng phng php phn cng da vo b nh kt hp :
Comparator g zComparator h yComparator i jComparator p lComparator q mComparator s n
i Offset
j Offset
Working set ca bng c ttrang
a ch o cn truy xut nm trong thanh ghi a ch ca CPU
Ton b cc mch in t trn u l mch t hp nn thi gian i a ch o sang tht hu nh = 0, qu tt!
15
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 29Chng 5 : Qun l b nh
Trong k thut phn trang, mc d khng gian o m chng trnh c th truy xut c kch thc rt ln (4GB), nhng n lkhng gian phng nn 1 s chng trnh ln vn cn gp phin h sau y : chng trnh t chia khng gian o ca mnh ra thnh nhiu partition khc nhau cha nhng thng tin c lp cn c x l, trong qu trnh chy, nu 1 trong cc partition khng ch cha thng tin th chng trnh s bdng ngt.
5.5 Qun l b nh o phn on
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 30Chng 5 : Qun l b nh
Do , thay v cp pht cho chng trnh 1 khng gian phng duy nht, nu h thng cp pht cho chng trnh cc khng gian b nh c lp ckch thc thay i ng theo nhu cu (min sao tng kch thc ca chng b hn ch trn no ) nh hnh sau th chng trnh s khng gp vn trn b nh nh slide trc :
5.5 Qun l b nh o phn on
16
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 31Chng 5 : Qun l b nh
Nguyn l hot ng : khi lp trnh, chng trnh c php truy xut d liu trong
nhiu khng gian khc nhau, mi khng gian c gi lsegment. Mi segment c kch thc thay i c theo thi gian, nh u tin ca mi segment lun bt u t 0.
B nh RAM c kch thc nh no . Cc segment ca chng trnh thng nm trn a cng, khi cn thit segment s c np vo 1 vng thch hp trong RAM.
Ti tng thi im, 1 vng nh RAM tht cha tt a 1 segment o, nhng theo thi gian n c th cha nhiu segment o khc nhau.
Khi ng dng truy xut 1 nh, n xc nh a ch nh dng phn cp : segment + offset.
5.5 Qun l b nh o phn on
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 32Chng 5 : Qun l b nh
Qun l b nh o phn on
Nguyn l hot ng (tt) : qun l qu trnh nh x cc segement o ca chng trnh vo
cc vng RAM, HH dng 1 bng c t sgement cho mi chng trnh, bng ny c s phn t = s segement ca chng trnh tng ng, mi phn t ca bng l 1 record cha cc thng s qun l segement tng ng :
ProtectionModifiedAddress in disk
a ch tht trong RAM (start_addr)inRAM
17
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 33Chng 5 : Qun l b nh
Qun l b nh o phn on
Qui trnh i a ch o sang a ch tht :1. t a ch m chng trnh truy xut gm 2 thnh phn : segement (i)
v offset.2. Truy xut record qun l segement i trong bng c t segement.
Nu field inRAM=1 th a ch tht tng ng l :
start_addr + Offset v qui trnh kt thc.
3. Nu inRAM =0, h thng s tm 1 vng RAM tht rnh (c a ch bt u l base), nu khng c phi tm cch gii phng 1 vng RAM tht t gy phin h nht (c a ch bt u l base), da vo thng tin trong field "inDisk" m file v c segment vo vng RAM tht tm c.
4. Hiu chnh li field inRAM = 1 v field start_addr = base ri quay li bc 2.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 34Chng 5 : Qun l b nh
Ngi lp trnh mong mun c nhiu vng c lp cha thng tin c lp.
h thng mun chng trnh c khng gian rt ln, khng bn tm kch thc RAM
V sao k thut ny c pht sinh
CKhng Cc chng trnh c th dng chung dliu v hm ?
CKhngCc bng d liu d thch ng khi kch thc ca chng b thay i ?
CKhngHm v d liu c tch bit v bo vring bit ?
CCKch thc khng gian o tng cng cln hn kch thc RAM ?
n1Chng trnh c bao nhiu vng a chtuyn tnh c lp ?
CKhngNgi lp trnh c bit k thut ny ang dng ?
SegementationK thut Pagingc tnh
Qun l b nh o phn on
18
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 35Chng 5 : Qun l b nh
5.6 Qun l b nh o phn on v phn trang
Qui trnh i a ch o sang a ch tht slide trc c khuyt im trong trng hp qun l segemnt c kch thc ln : ta kh/khng tm c vng RAM trng cha n. V l do ny, trong thc t, ngi ta phi kt hp 2 phng php qun l phn trang v phn on li, y l phng php mnh nht hin nay. tng lh thng s qun l mi segment phn mm nh l 1 khng gian o gm nhiu trang o, mi ln chng trnh truy xut nh nm trong trang o no ca segment no, h thng s tm cch np n vo RAM.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 36Chng 5 : Qun l b nh
Qun l b nh o phn on v phn trang
Qui trnh i a ch o sang a ch tht :1. t a ch m chng trnh truy xut gm 2 thnh phn : segement (s)
v offset, h thng s tch offset ra thnh 2 thnh phn page (p) + offset1.
2. Truy xut record qun l segement s trong bng c t segement. Nu field inRAM=1 th bn c t trang cho segement s c trong RAM. Nu khng th tm cch np n vo RAM.
3. Truy xut record qun l trang o p trong bng c t trang. Nu field inRAM=1 th a ch tht tng ng l :
page frame Offset v qui trnh kt thc.
4. Nu inRAM =0, h thng s tm 1 trang tht rnh (k), nu khng cphi tm cch gii phng 1 trang tht t gy phin h nht (k), da vo thng tin trong field "inDisk" m file v c trang o vo trang tht k.
5. Hiu chnh li field inRAM = 1 v field page frame = k ri quay li bc 3.
19
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 37Chng 5 : Qun l b nh
Qun l b nh o phn on v phn trang
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 38Chng 5 : Qun l b nh
5.7 Qun l b nh ca CPU Intel 80x86
Vi mc tiu phi tng thch ngc vi cc CPU i c hn, cc CPU 80x86 (x>=3) cung cp 3 c ch qun l b nh :
1. real mode : c trong CPU 8088, CPU c dng xy dng my IBM PC u tin. y l c ch qun l b nh tht dng k thut phn on (segmentation).
2. protected mode : c trong CPU 80286. y l c ch qun l b nh o dng k thut phn on (segmentation).
3. 386 enchanced mode : mi thm vo cho cc CPU t 80386 tr ln. y l c ch qun l b nh tng hp va phn on va phn trang.
20
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 39Chng 5 : Qun l b nh
Qun l b nh Real mode
Nguyn l hot ng : khng gian b nh ca chng trnh l 1 tp cc segment, mi a ch truy xut c xc nh bi chng trnh gm 2
tham s : ch s segment + offset, mi tham s di 16 bit. gc nhn lp trnh, mi phn mm c 216 segment, mi segment c 216 byte mi chng trnh di maximum 4GB!
Thng th chng trnh s truy xut tun t cc nh nn tham s segment s c cha vo 1 trong cc thanh ghi segment (CS, DS, ES, SS), mi lnh my ch cn miu t offset ca nh cn truy xut.
My s i a ch o sang a ch tht theo cng thc sau :physical address = segment * 16 + offset,
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 40Chng 5 : Qun l b nh
Qun l b nh Real mode
Nguyn l hot ng (tt) : bit A20 ca kt qu hoc b b i (trong ch A20 disable),
hoc c gi li v dng (trong ch A20 enable). Ch A20 c thit lp trong ROM BIOS.
Theo cch i a ch o nh trn, ta thy cc segment phn mm khc nhau c th giao nhau, lch ti thiu ca 2 segment l 16 nh (1 paragraph).
Th d cc nh 0:80H 1:70H 2:60H 3:50H 4:40H 5:30H 6:20H 7:10H 8:0H u chim cng 1 nh RAM.
khng gian RAM m chng trnh truy xut c thc t l 1MB (A20 disable) hay 1MB + 65520 B (A20 enable). Ta gi phn trn 1MB l HIGH MEMORY.
21
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 41Chng 5 : Qun l b nh
Qun l b nh Protected mode
Nguyn l hot ng : khng gian b nh ca chng trnh l 1 tp cc segment o, mi a ch truy xut c xc nh bi chng trnh gm 2
tham s : ch s segment + offset, tham s segment di 16 bit y nh ch real mode, cn tham s offset c th di 32 bit. Nh vy, gc nhn lp trnh, mi phn mm c 216 segment, mi segment c 232 byte mi chng trnh di maximum 248 =256TB!
Thng th chng trnh s truy xut tun t cc nh nn tham s segment s c cha vo 1 trong cc thanh ghi segment (CS, DS, ES, SS), mi lnh my ch cn miu t offset ca nh cn truy xut.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 42Chng 5 : Qun l b nh
Qun l b nh Protected modeNguyn l hot ng (tt) : ni dung trong thanh ghi segment khng phi l ch s segment
cn truy xut m n c hiu l segment selector gm 3 thng tin :
nh vy, khng gian b nh ca chng trnh c kch thc maximum l 8K segment ton cc (global) v 8K segment cc b (local). Mi segment di ti a 4GB (dng format 32-bit cho offset) b nh chng trnh tng cng l 64 TB.
22
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 43Chng 5 : Qun l b nh
Limit 0-7
Limit 8-15
Base 8-15
Base 16-23
Base 0-7
Base 24-31
Limit 16-19
TypeSP DPL
G D
Cu trc record qun l segment ca Intel
Base0-31 : a ch RAM cha segment Limit0-19 : ln segment (n v tnh
l byte/page) D = 0 : Limit tnh theo byte / D = 1 :
tnh theo page 4KB G = 0 : segment 16-bit / G = 1 :
segment 32-bit P = 0 : segment cha np vo RAM / P
= 1 : np vo RAM ri S = 0 : System / S = 1 : Application DPL : mc phn quyn t 0 - 3 Type : kiu segment v bo v segment
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 44Chng 5 : Qun l b nh
a ch lun l c dng segment:Offset, a ch tht tng ng l a ch 32 bit, kt qu ca php cng s hc trong hnh sau :
Qui trnh i a ch o sang a ch tht
23
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 45Chng 5 : Qun l b nh
Qun l b nh 368 enchanced mode
Nguyn l hot ng : khng gian b nh ca chng trnh l 1 tp cc segment o, mi a ch truy xut c xc nh bi chng trnh gm 2
tham s : ch s segment + offset, tham s segment di 16 bit y nh ch real mode, cn tham s offset c th di 32 bit. Nh vy, gc nhn lp trnh, mi phn mm c 216 segment, mi segment c 232 byte mi chng trnh di maximum 248 =256TB!
Thng th chng trnh s truy xut tun t cc nh nn tham s segment s c cha vo 1 trong cc thanh ghi segment (CS, DS, ES, SS), mi lnh my ch cn miu t offset ca nh cn truy xut.
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 46Chng 5 : Qun l b nh
Qun l b nh Protected modeNguyn l hot ng (tt) : ni dung trong thanh ghi segment khng phi l ch s segment
cn truy xut m n c hiu l segment selector gm 3 thng tin :
nh vy, khng gian b nh ca chng trnh c kch thc maximum l 8K segment ton cc (global) v 8K segment cc b (local). Mi segment di ti a 4GB (dng format 32-bit cho offset) b nh chng trnh tng cng l 64 TB.
24
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 47Chng 5 : Qun l b nh
Limit 0-7
Limit 8-15
Base 8-15
Base 16-23
Base 0-7
Base 24-31
Limit 16-19
TypeSP DPL
G D
Cu trc record qun l segment ca Intel
Base0-31 : a ch RAM cha segment Limit0-19 : ln segment (n v tnh
l byte/page) D = 0 : Limit tnh theo byte / D = 1 :
tnh theo page 4KB G = 0 : segment 16-bit / G = 1 :
segment 32-bit P = 0 : segment cha np vo RAM / P
= 1 : np vo RAM ri S = 0 : System / S = 1 : Application DPL : mc phn quyn t 0 - 3 Type : kiu segment v bo v segment
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 48Chng 5 : Qun l b nh
a ch lun l c dng segment:Offset, a ch o tng ng l a ch 32 bit, kt qu ca php cng s hc trong hnh sau :
Qui trnh i a ch o sang a ch tht
25
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 49Chng 5 : Qun l b nh
a ch o tuyn tnh 32 bit c i sang a ch tht ca RAM bng c ch phn trang 2 cp nh hnh bn.
Qui trnh i a ch o sang a ch tht
Khoa Cng ngh Thng tinTrng H Bch Khoa Tp.HCM
Mn : H iu hnh
Slide 50Chng 5 : Qun l b nh
Cc mc phn quyn bo v segmentCPU 80x86 cung cp 4 mc phn quyn t 0 (cao nht) ti 3 (thp nht). Mi segment c field DPL = mc phn quyn ca mnh.
Mi process c mc phn quyn : h thng c mc 0, cn application c mc 3. H thng c th truy xut bt k segment no, cn application ch c th truy xut cc segment c mc phn quyn bng hay cao hn mnh.