operating system - paging + segmenting

Upload: lotso-chik

Post on 15-Oct-2015

32 views

Category:

Documents


0 download

DESCRIPTION

Operating System - Paging + Segmenting

TRANSCRIPT

  • 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.