You are on page 1of 35

H IU HNH

B CC GM HAI PHN PHN 1: H IU HNH CHUNG Chng 1: Mt s khi nim c bn Chng 2: H thng tp v ci t Chng 3: Cc thit b vo/ra Chng 4: H iu hnh qun l b nh PHN 2: H IU HNH MS-DOS Chng 1: H iu hnh MS-DOS qun l h thng tp Chng 2: Khi nim ngt, x l ngt, v d v ngt v lp trnh ngt TI LIU THAM KHO: [1] Andrew S. Tanenbaum, Modern Operating System, Printice-Hall Inter., Inc.,1992. [2] L Ngc Xun, H iu hnh, T sch i hc S Phm Vinh, 2000. [3] Quch Tun Ngc, Tin Dng, Nguyn Quang KhI, Ngn ng lp trnh Assembly v my vi this IBM-PC, T. 1, 2 (bn dch), NXB Gio Dc, 1995. [4] Ng Trung Vit, MS C Turbo C, MS-DOS, hng dn khai thc v s dng, Vin khoa hc Tnh ton v iu khin, H NI, 1988.

Chng 1 Cc khi nim c bn ca HH


1.1 Chc nng, v tr ca H iu hnh trong h thng 1. Chc nng - H iu hnh l phn mm h thng c bit c kh nng t ng a h thng my tnh vo trng thi hot ng. Nu trn h thng my tnh khng c H iu hnh th n ch l cc linh kin in v in t c kt ni vi nhau theo mt kin trc no m khng s dng c. Nhng nu trn h thng my tnh c mt H iu hnh th n tr thnh h thng tnh ton, x l v t chc lu tr thng tin (d liu). - H iu hnh cung cp mt tp lnh vi giao din thun li ngi s dng khai thc h thng my tnh c hiu qu. - H iu hnh qun l ton b ti nguyn ca h thng (h thng tp, cc thit b vo ra, cc thnh phn khc ca h thng). 2. Phn tng h thng H thng my tnh c th c phn thnh 6 tng nh sau: - S phn tng h thng

Tng ng dng (Applications) Tng cc tin ch (cc b bin dch (Compiler), cc b son tho (Editor), cc b thng dch (Interpreter),) Tng H iu hnh Tng ngn ng my Tng cc vi chng trnh Tng cc thit b vt l Hnh 1.1 - Tng vt l (tng 0): Cha cc thit b vt l bao gm cc v mch, chp, ngun in, mch in v..v. Tng ny lm nhim v vn chuyn tn hiu (d liu) vo ra h thng. - Tng cc vi chng trnh (tng 01): Cha cc vi chng trnh s khai iu khin trc tip cc thnh phn vt l tng 0 v to giao din vi tng trn (tng 2). Cc vi chng trnh thng cha trong ROM, thc cht y l b dch, nhn cc lnh my v thc hin chng tun t theo tng bc. - Tng ngn ng my (tng 2): Ngn ng my thng c 50-300 lnh my, s lnh my ph thuc vo cc kin trc my tnh. Cc lnh my ch yu dng di Chuyn d liu, thc hin cc php ton s hc, logic v so snh gi tr.

- Tng H iu hnh (tng 3): Chc nng ca H iu hnh l che kn s phc tp ca tng di, t chc thc hin chng trnh v cung cp tp lnh v giao din ngi s dng khai thc h thng. - Tng cc tin ch (tng 4): Tng ny cha cc tin ch h tr ngi s dng khai thc h thng c hiu qu. Trn tng ny cha cc lnh thng dch, cc b bin dch, cc b thng dch v lp cc chng trnh ng dng c lp, cc chng trnh ny khng phi l mt phn ca h iu hnh mc du vy chng c cc hng my tnh s dng (nh cc tin ch) - Tng cc chng trnh ng dng (tng 5): Tng ny bao gm cc chng trnh do ngI s dng vit gii quyt cc vn c th ca mnh, v d nh: x l s liu k ton, thng mi, cc tnh ton k thut v khoa hc, cc tr chi v..v. 1.2 Cc khi nim ca h iu hnh 1. Tin trnh: Cc tin trnh l nn c bn thc hin mt chng trnh. Mt ng dng thc hin trn my tnh, thng thng c h iu hnh, c thit lp bng s cc tin trnh tun t (hay cc tin trnh). Tin trnh thc cht l chng trnh thc hin trong gm cc gi tr chng trnh m, cc thanh ghi, cc bin. C th quan nim mi tin trnh c b vi x l (CPU) o ca ring mnh. Tt nhin trong thc t CPU chuyn i qua li (switch) gia cc tin trnh v c th xem rng tp cc tin trnh thc hin song song. S tin lui, tin ti ca CPU gia cc chng trnh gi l a chng. H iuh hnh qun l cc tin trnh nh: khi to mi, hy b, dng mt tin trnh. Mt tin trnh khi thc hin c th yu cu mt tin trnh khc (gi l tin trnh con), n lt n tin trnh con c th li yu cu mt tin trnh con khc v..v, v vy tp cc tin trnh c cu trc cy.

A C

Hnh 1.2

2. Li gi h thng: Cc chng trnh ca ngi dng kt ni vi h thng (h iu hnh) v yu cu dch v t n bng cch to cc li gi h thng. Tng ng vi tng li gi h thng c mt th tc dch v ca h iu hnh m li gi h thng ca ngi dng c th gi n. Th tc ny tit lp cc tham s ca li gi h thng vo mt a ch xc nh (c th l thanh ghi) v sau dng lnh by (trap instruction) khi ng h iu hnh. Khi h iu hnh nhn lnh n xem xt cc tham s kim tra ng sai v thc hin yu cu (th hin qua tham cc tham s). Khi cng vic kt thc h iu hnh thit lp li cc m trng thi thanh ghi thng bo th tc c thc hin hay hy b v tr li iu khin cho th tc th vin t lnh by. Sau th tc th vin tr iu khin v cho chng trnh ca ngi dng bng cch thng thng, tr li m trng thi nh mt li gi hm. Trong mt vi trng hp cc gi tr b sung c tr li theo tham s.

S cc bc thc hin li gi h thng


Li gi h thng
1 2 3

Chng trnh ngi dng


4

B nh

Cc th tc dch v

H iu hnh Hnh 1.3 1.2 Cu trc ca h iu hnh 1. Cu trc khi 2. Cu trc phn tng
5 4 3 2 1 0 Ton t (Operators) Chng trnh ca ngi dng (Uers Programs) iu hnh vo/ra (Input/Output Management) Kt ni cc x l ton t (Operator-process Communications) iu hnh b nh v trng t (Memory and Drump Management) S b nh v a lp trnh (Memory Allocation and Multiprogramming)

3. My o M hnh my o ca IBM (1979) VM/370 CMS CMS VM/370 CMS


Li gi h thng Lnh by

Lnh vo/ra Lnh by

370 Bare Hardware


Hnh 1-6

4. M hnh khch/ch (client/sever) Xu hng xy dng h iu hnh l chuyn m (code) ln tng cao ch li phn ti thiu phn nhn. Trong m hnh ny c hai loi M hnh tp trung: trn ton b h thng ch c mt h iu hnh my ch, cc my khch kt ni vi my ch khai thc dch v. Mi x l thng tin u thc hin trn my ch.
Client process Client process Process sever Terminal sever ........... File sever Memory sever Client nhn dch v bng cch gi thng bo

Kernel Hnh 1-7

M hnh phn tn: Trn h thng c nhiu h iu hnh, cc h iu hnh c th khc nhau nhng kt ni c vi nhau. Cc my khch kt ni vi my ch khi cn khai thc dch v, mi x l thng tin trn my no do h iu hnh my m nhn. Khi khng kt ni cc my trong h thng c th lm vic c lp.
PC1 PC2 PC3 PC4

.....

Client H H1

Client H H2

File sever H H mng

Process sever Kernel

Thng bo t my khch n my ch

Mng my tnh

1.4 Phn loi h iu hnh


1. Phn loi theo tnh nng: phn loi theo tnh nng chng ta xt mt s khi nim sau: n chng: H thng h tr ch mt ngi s dng ti mi thi im a chng: H thng h tr niu ni s dng ti mi thi im n nhim: H thng ch h tr thc hin chng trnh ti mi thi im a nhim: Ti mi thi im h thng h tr thc hin niu chng trnh T cc khi nim trn chng ta phn ra phn li cho h iu hnh + H iu hnh n chng/n nhim + H iu hnh n chng/a nim + H iu hnh a chng/a nhim

2. Phn loi theo x l thng tin


+ H iu hnh tp trung + H iu hnh phn tn

1.5 Cc tnh cht v cc nguyn l c bn khi thit k h iu hnh 1. Cc tnh cht c bn


a) tin cy cao: H thng phi hot ng n nh v lun cho kt qu ng trong mi tnh hung, ngha l khi bit chc chn ng th HH mi cung cp thng tin cho ngi s dng. m bo c tnh cht ny cc h iu hnh phi thit lp h thng gim st (Monitor System), kim tra, nh gi tnh ng n ca mi x l d liu, trong trng hp khng x l c HH thng bo li, ngng x l hoc trao quyn cho ngi s dng. Tnh an ton: H thng phi m bo cho d liu, chng trnh khng b xa hoc b thay i trong mi trng hp v mi ch hot ng; phi c c ch t phc hi trong mt s tnh hung c th (yu cu ny c bit quan trng trong h thng a nhim) Tnh hiu qu: m bo cc ti nguyn h thng my tnh c khai thc trit sao cho ngay c khi ti nguyn hn ch vn c th gii quyt c cc vn phc tp. Mt trong nhng yu t m bo tnh hiu qu l s ng b ca h thng. Tnh tng qut theo thi gian: H iu hnh phi c tnh k tha ng thi c kh nng thch nghi vi nhng thay i trong tng lai (tnh m). Tnh k tha m bo cho cc phin bn pht trin ca HH tng thch vi nhau lm cho ngi s dng yn tm v khng kh khn khi chuyn t phin bn ny sang phin bn khc. Tnh cht ny v mt tm l bo v c khch hng v chnh l iu kin tin quyt cho HH tn ti v pht trin

b)

c)

d)

1.5 Mt s nuyn l c bn trong xy dng HH


1. Nguyn l moodul: Cc chc nng ca HH u c t chc di dng cc modul c lp v mt x l. Cc modul trao i vi nhau thng qua vic dng tham s hoc hp th tnh (a ch c nh). Quan h gia cc modul xc lp phn cp khi kt ni thnh mt h thng nh mt modul chnh. Nguyn l m: Cc modul c th c thay th hoc b sung, sa i d dng v khng c nh hng n cc modul khc. Cc modul c xy dng theo nguyn tc c lp v d liu. Nguyn l sinh: H thng cho php to cc phin bn t tp cc modul bng cch ch lc cc modul cn thit nh mt chng trnh ci t. Chng trnh ci t cung cp y thng tin cho qu trnh ci t v c h thng tr gip y . Nguyn l gi tr chun: Li gi mi modul, cu lnh c th c nhiu tham s. Vic nh ht cc tham s, ngha, qui c php ca chng gy kh khn cho ngi dng, v th h thng lun c b cc tham s chun (mc nh) tng ng vi cc trng hp thng dng nht b sung khi li gi modul hoc cu lnh thiu tham s. Nguyn l Macro: H thng cho php xy dng cc phiu yu cu, trong lit k cc cng vic cn thc hin v c th tc hin cc cng vic trong phiu t ng nh tc hin mt chng trnh. Cc HH u suwqr dng nguyn tc ny trong i thoi vi ngi s dng, lm cho vic tip xc giauwx h thng v ngi dng thm linh hot. Nguyn l tng i trong nh v: Cc modul c vit theo a ch tng i k t u b nh. Khi thc hin chng mi c nh v li trong vng b nh c th. Nguyn l ny cho php HH s dng b nh mt cch linh hot.

2.

3.

4.

5.

6.

Cc nguyn l xy dng HH (tip) 1. Nguyn l lp chc nng: Mi cng vic c tc hin bi nhiu cch khc nhau vi nhng t hp cc modul khc nhau. Nguyn l ny bo m cho h thng lun sn sng v c an ton cao v to cho ngi dng linh hot hn khi tip xc vi h thng. Nguyn l bo v nhiu mc: dm bo an ton h thng, d liu v chng trnh cc HH u c c ch bo v niu mc. Bo v nhiu mc lm gim cc ri ro do cc li khng c gy nn. i vi tp c th c cc mc bo v: Min (domain), My tnh, a t, th mc.

2.

Chng 2 H thng tp v ci t h thng tp


2.1 M u: Hu ht cc ng dng u c nhu cu lu tr d liu v tm li c khi cn thit. Trong khi cc tin trnh ang thc hin, c th n cn lu tr mt khi lng d liu vo a ch ring. Cc ng dng khc nhau c nhu cu lu tr d liu vi kch thc khc nhau mc du kh nng lu tr b hn ch bi khng gian a ch o. V th c nhng ng dng c khng gian lu tr ph hp, c nhng ng dng khng ph hp. Vic lu thng tin trong khng gian a ch ca cc tin trnh, th khi tin trnh kt thc d liu s b mt. i vi cc ng dng c s d liu, thng tin (d liu) cn phi c lu tr hng tun, hng thng, hnh nm v vy nu cc tin trnh s dng d liu th khi kt thc d liu s mt, hoc khi my gp s c. C th nhiu tin trnh cng truy nhp vo cng mt mc d liu ti mt thi im (trong h thng phn tn, a nhim/a chng) Nh vy c 3 yu cu cn thit cho vic lu tr thng tin (d liu): 1. Cn cung cp kh nng lu tr khi lng thng tin (d liu) ln 2. Thng tin (d liu) phi gi li khi kt thc tin trnh s dng n 3. Bo m a tin trinh truy nhp ng thi vo mt mc d liu ti mt thi im gii quyt cc yu cu ny cc HH u cung cp c ch lu tr thng tin (d liu) ln cc thit b b nh ngoi theo n v qun l gi l tp. Sao cho cc tin trnh c th c hoc to ra n khi cn thit. Thng tin (d liu) lu tr trong tp phi vnh cu khng b nh hng vo s khi to hay kt thc tin trnh. 2.2 Tp Tp l c ch tru tng, cung cp phng tin lu tr thng tin (d liu) ln cc thit b b nh ngoi v c th c li khi cn thit.

1. Tn tp: - Tn tp gm hai thnh phn: Tn v ui tp (phn m rng). Tn tp dng nh danh mt nhm thng tin lu tr trn thit b b nh ngoi. Qui tc t tn tp ty theo tng h iu hnh trong cc h iu hnh khc nhau qui tc t tn c th l kacs nhau. ui tp (phn m rng) nhiu khi cng phn nh mt phn bn cht thng tin lu tr trong tp, v d ui txt l tp vn bn, pas l tp chng trnh ngun trong ngn ng Pascal, doc l tp vn bn soan tho trong ms-word v..v. Trong mt s trng hp ui tp l mc nh ca mt s h thng phn mm hoc cc trnh bin dch ca cc ngn ng. Ngoi vic phn nh mt phn bn cht thng tin lu tr trong tp ui tp cn gip cho vic tm kim nhanh v hiu qu. 2. Kiu tp: - Mi h iu hnh h tr mt vi kiu tp, v d trong UNIX v MS-DOS c cc tp chnh qui, cc th mc, cc tp cc k hiu hoc cc khi c bit. Cc tp chnh qui l cc tp ca ngi dng cha cc thng tin ca ngi dng. Cc HH qun l cc th mc nh cc tp h thng dng bo tr h thng tp. Cc tp cc k hiu hoc cc khi c bit c quan h vi h thng cc thit b vo/ra, c th l tp m t thit b hoc trnh iu khin thit b. Cc tp chnh qui ph bin l cc loi tp ASCII (tp vn bn) hoc tp nh phn, cc tp c cu trc vn bn th c 3. Phn loi theo truy nhp: Theo phng hc truy nhp vo tp ngi ta chia tp thnh 2 loi: Cc tp truy nhp tun t l cc tp mun truy nhp vo mt phn t phi truy nhp qua phn t trc (cc tp tun t c t chc lu tr trn cc thit b bng t). Cc loi tp trc truy (truy nhp ngu nhin) l cc tp cho php truy nhp vo bt k phn t no ca tp ti mi thi im (lu tr l a t) 4. Thuc tnh tp: - qun l h thng tp c tt hn cc HH ngoi vic lu tr d liu cn t chc lu tr thm mt s thng tin (cc thuc tnh-attributes) gip cho vic qun l tp chnh xc v c hiu qu, v d nh: ngy thng, time cp nht cui cng, kch thc tp, cc c n, ch c v..v.

Tn thuc tnh Bo v (Protection) Mt khu (Password) Bn quyn (owner) C ch c (read only) C n (Hidden) C h thng (system) Nhn a (volume label) C th mc (directory) C lu tr (archive) C ASCII/Nh phn C truy nhp ngu nhin C lu tr tm thi C kha di bn ghi Kha di di kha Time, Date Kch thc hin thi Kch thc ti a cu tp a ch khi d liu u tin ca tp Truy nhp theo mt khu Quyn dng ring

ngha Qui nh quyn v cch truy nhp

bit set 1 tp ch c, bit set 0 tp bnh thng bit set 1 tp n, bit set 0 tp bnh thng bit set 1 tp h thng, bit set 0 tp bnh thng bit set 1 cho cc tp nu c nhn a, cn khng bit set 0 bit set 1 l th mc, bit set 0 l tp bit set 1 tp lu tr (mc nh) bit set 1 tp nh phn, bit set 0 tp vn bn bit set 1 tp truy nhp ngu nhin, bit set 0 tp tun t bit set 1 tp tm xa, bit set 0 tp bnh thng bit set 0 tp khng kha, bit set khc 0 tp kha S bytes ca mt bn ghi di kha gia cc bn ghi s bytes ca trng kha

Kch thc hin thi ca tp Kch thc ti a ca tp (bytes) Kch thc ti a ca tp

Tt c cc thuc tnh ca tp c lu trong u tp (header) 5. Th mc Th mc c cc h iu hnh qun l nh mt tp h thng. Ni dung ca th mc khng phi l thng tin (d liu) lu tr mi phn t ca n l mt u vo ca mt tp. Cu trc th mc gip cho vic t chc lu tr tp c ti u v c hiu qu: Nhm cc tp c quan h vo cng mt th mc, tm kim nhanh, s tp qu nhiu trong mt th mc HH khng qun l c. - Tn th mc: Mi th mc c tn, qui tc t tn nh t tn tp. Th mc c t chc phn cp cha/con - ng dn: ng dn tuyt i v ng dn tng i.

2.3 Ci t h thng tp
T chc lu tr tp l chc nng quan trng ca HH, cha kha ca vic t chc lu tr l lm th no gi c vt (a ch) cc khi d liu ca tp trn thit b lu tr. C nhiu phng php khc nhau t chc lu tr tp. 1. Phng php lu tr lin nhau: 2. Danh sch lin kt: 3. Bng ch s: khc phc nhc im ca hai phng php trn chng ta s dng phng php bng ch s. - Cu trc: Mi n v c ghi trn a c qun l bng mt u vo trong bng. Nh vy s phn t trong bng bng s n v c ghi trn a (ni cch khc mi khi c ghi trn a c tng ng 1-1 mt i din trong bng. - Ni dung cc phn t ca bng: Mi phn t ca bng cha a ch cc khi d liu ca cc tp v nh vy a ch cc khi d liu c mi tp to thnh mt lin kt (mt xich-chain) trong bng. Da vo cc mt xch h thng truy nhp vo h thng cc tp

V d: Gi s trn a t c 15 khi c ghi c c ch ha (ch s) t 0-15.Gi s cc khi d liu ca tp A c lu ti cc khi 2, 4, 6, 7, 9. Khi mt xch cc khi d liu ca tp A hnh thnh tron bng ch s nh hnh 2-8.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hnh 2-8 000......0100 000......0110 000......0111 000.....1001 EOF(A) Mt xch ca tp A Tp A bt u t y

4. I-nt (I-node): i ch cc khi d liu ca mi tp c lu trong mt bng nh I-nt (ging nh bng ch s) v danh sch cc thuc tnh. Cc ia ch ca khi d liu u tin c cha trong I-nt cho cc tp nh, khi m cc thng ti cn thit cha ht trong mt I-nt v chng c np vo b nh khi m tp. Nu cc tp c kch thc ln, mt trong cc a ch trong mt I-nt l a ch khi ca a t gi l khi n trc tip. Cc khi n ny cha cc a ch cc khi d liu cha cha ht trong mt I-nt. Nu tp qu ln cc a ch cc khi d liu vn cha cha th a ch khc trong i-nt, gi l khi i trc tip, cha a ch ca mt khi, trong cha danh sch cc khi n. Mi mt khi n tc tip cha mt vi trm khi d liu ca tp. Nu tp qu ln th c th s dng cu trc khi ba trc tip. H iww hnh UNIX dng phng php ny ci t tp. Xem minh ha hnh 2-9.
Cc thuc tnh Khi n trc tip Khi p trc tip Khi ba trc tip

a ch trn a

5. S an ton ca h thng tp S an ton ca h thng tp l yu cu cao i vi h thng. Nu h thng tp b ph hoi th c th gy tai ha ln hn khi b hng phn cng. i vi nhng ngi qun k h thng chng trnh, ti liu, cc c s d liu nh ngn hng, kho bc, k ton, nu d liu b ph hoi th i vi h l thm ha. bo m an ton h thng tp chng ta xt mt s phng php sau: a) Qun l cc khi hng: Trn cc a thng c cc khi hng, nu khng qun l c cc khi hng ni s dng c th v tnh lm mt d liu khi ghi d liu vo cc khi hng. C hai phng php m h thng c th kim sot cc kh hng: bng phn cng v phn mm. Bng phn cng l khi b iu khin a khi to ln u tin n kim tra v nh x chng sang danh sch cc khi hng. T v sau cc khi hng s vnh vin khng s dng lu d liu. Bng phn mm, mi h thng u c cc tin ch kim sot cc khi hng, v d chng trnh scan ca HH Windows, cc tin ch ny s c h thng t khi ng hoc do ni dng yu cu khi thy cn thit. b) Sao lu: Mt trong nhng bin php c hiu qu nht l sao lu d liu ra ngoi h thng. Ty mc quan trng m ni qun l h thng nh chu k sao lu. Sao lu phi nhiu bn, lu gi cc ni khc nhau. c) Kim sot s tng thch ca h thng tp: Hu ht cc tp c h thng s dng bng cch c cc khi, sa i chng v sau ghi li. Nu h thng b hng trc khi cc khi b sa i c gi vo tp, h thng c t gp trng thi khng tng thch. Lin quan n s tng thch h thng tp hu ht cc HH u c trnh tin ch kim tra s tng thch. Cc tin ch ny c th c thc hin khi h thng khi ng, hoc, thoog thng sau khi h thng b s c. Tin ch ny gm hai bng b m cho mi khi c/ghi trn a: B m ghi s ln mi khi d liu xut hin trong cc tp, b m th hai m s ln mi khi xut hin trong danh sch t do, khi to ban u c hai b m bng khng. Nu h thng tp tng thch, mi khi ch xut hin mt ln hoc trong b m th nht hoc trong b m th hai.

Cc trng hp khng tng thch co th xy ra: Mt khi no xut hin trong c hai bng m, trng hp mt khi. S mt khi thc t khng c hi g nhng n lm gim kh nng lu tr ca a. Gii quyt trng hp ny l thm chng vo danh sch cc khi t do. Trng hp th hai, nu mt khi xut hin hai ln trong bng m th hai, xy dng li b m th hai. Trng hp th ba, khi mt khi no xut hin trong nhiu tp (dnh tp). gii quyt vn ny sao thm mt bn vo mt khi t do v chn thm vo cho cc tp b dnh. d) Hiu nng ca h thng tp: Hiu nng ca h thng tp cng c quan tm trong qu trnh t chc lu tr h thng tp. Truy nhp a c tc chm hn nhiu so vi truy nhp b nh trong. V th cc h thng u c thit k sao cho gim thiu thi gian truy p tp trn a. K thut chung nht s dng lm gim thi gian truy nhp a l k thut to vng m (buffer) hoc Cache trn a khi c cc tp vo h thng. 2.4 Bo v (protection), bo mt (security) thng tin. Bo v v bo mt thng tin l yu cu t pha ngi s dng. 1. Bo v (protection): Bo v l cc c ch t bn trong h thng dng bo v d liu v h thng. Cc c ch bo v thng c thc hin thng qua: thng bo li (error messages), hin th cc cu cnh bo (Warning messages) hoc thc hin cc mc nh No. Cc c ch bo v c h thng thc hin khng ph thuc vo ngi s dng, mi trng c th. 2. Bo mt (security): Bo mt l cc c ch ca h thng cho php ngi s dng chng cc truy nhp bt hp php vo h thng v h thng tp. C ch bo mt c thc hin hay khng ph thuc vo ngi s dng. H thng cho php ngi s dng thc hin bo mt bng cc phn t pht trin hoc s dng cc cng c cung cp bi h thng.

Chng 3 Cc thit b vao/ra


3.1 M u: Mt trong nhng chc nng ca h iu hnh l iu qun l ton b h thng cc thit b vo ra ca my tnh. H iu hnh nhn bt cc lnh t ngi s dng, chuyn cc lnh n cc thit b, n bt cc ngt v x l mt s li. H iu hnh cn cung cp giao din n gin d s dng gia cc thit b u cui v h thng. Hu ht cc ng dng u c nhu cu chuyn d liu vo h thng x l ng thi chit xut thng tin x l ra ngoi h thng nh h thng cc thit b vo/ra. Nh vy cc thit b vao/ra l phng tin thc hin chuyn d liu vo/ra ca h thng my tnh. 3.2 Cc nguyn tc phn cng vao/ra: Theo quan im ca ngi s dng th mi i tng c th xem phn cng vo/ra vi cc gc khc nhau: Cc k s in t th phn cng ca thit b vo/ra ch l chip, mch in, ngun, motow v...v. i vi ngi lp trnh th quan tm n cc giao din, cc lnh phn cng tip nhn, khun dng d liu khi thc hin vo/ra, cc chc nng v cc li c th thng bo. 1. Phn loi thit b vo/ra: phn loi cc thit b vo/ra ngi ta da vo khun dng d liu m thit b thc hin vo/ra vi h thng. Cc thit b vo/ra c th chia thnh hai loi ch yu: Cc thit b khi v cc thit b k t. b) Cc thit b khi: Cc thit b khi l cc thit b tc hin vo/ra h thng theo tng khi d liu, mi khi c kch thc c nh, c a ch. Kch thc cc khi nh nhau nu cng mt thit b, ngc li cc thit b khc nhau th chng c th thc hin vo/ra theo khi d liu c kch thc khc nhau. Ni chung mi khi thng c kch thc t 128-1024 bytes. Cc thit b khi c/ghi d liu theo khi v vy trong qu trnh x l c th thc hin tm kim, la chn. V d: a t, card mng (NIC)... c) Cc thit b k t: Cc thit b l cc thit b thc hin vo/ra vi h thng theo tng dy k t gi nhau. Cc dy k t khng c a ch ha v vy khi x l khng th tm kim hoc la chn. V d: Mn hnh, my in...

Tuy nhin s phn loi ny cha hon chnh, mt vi thit b theo s phn loi ny khng xc nh c, v d nh ng h, bn phm, chut... 2. S kt ni cc thit b vo/ra vi h thng: Cc thit b khng trc tip kt ni vo h thng, chng kt ni vi h thng thng qua cc cng (port). Mi cng c a ch c nh trn mainboard hoc l mt thanh ghi thit b. S kt ni ch ra trong hnh 3-1. a t B nh My in B iu khin a B iu khin my in B iu khin thit b

CPU

........

n bus Hnh 3-1 M hnh kt ni gia CPU, RAM v b iu khin thit b 3. B iu khin thit b (driver, device controller): Mi mt thit b vo/ra u c b iu khin ca thit b . Mi b iu khin c th iu khin mt vi thit b tng thch, tuy nhin cng c th cng mt thit b nhng do hai hng sn xut khc nhau th phi c hai b iu khin khc nhau (b iu khin do cc hng sn xut pht trin). Hin nay cc h iu hnh thng tch hp nhiu b iu khin ca cc thit b, v th mt s thit b ch cn cm vo my tnh, HH t nhn din v chn cho thit b b iu khin tng thch (h thng Plug and Play). Trong a s cc trng hp cc b iu khin u phi ci t.

a)

a) Chc nng ca b iu khin thit b: Chc nng chnh ca b iu khin thit b la iu khin ton b thit b , bin i cc dng bits lien thip thnh cc khi bytes, kim tra v thc hin s i mt s li trong qu trnh thc hin vo ra. b) S phi hp gia HH, CPU v b iu khin thit b vo ra: H iu hnh thc hin vao/ra bng cch ghi cc lnh vo cc thanh ghi thit b (c c tham s) sau by CPU nhn lnh, CPU sau khi nhn lnh, CPU trao quyn iu khin cho b iu khin thit bi v CPU ri khi thit b (CPU ri). Khi lnh c hon thnh b iu khin pht tn hiu ngt HH kch hot CPU kim tra kt qu v thit lp trng thi thanh ghi thit b. 4. Truy nhp b nh trc tip (k thut DMA-Direct Memory Access): Mt s b iu khin, c bit l cc thit b khi c h tr k thut truy nhp b nh trc tip-DMA. Cng ngh DMA nhm mc ch tng hiu qu h thng bng cch gim thi gian cc truy nhp bc thp vi tc chm ca cc thit b vo/ra (c bit l cc thit b khi) nhm gii phng thi gian cho CPU. lm r tc dng ca DMA chng ta xt qu trnh c d liu t a t ca b iu khin a khi khng c h tr cua DMA v khi c h tr ca DMA. a) Qu trnh c d liu t a t khi khng c DMA. u tin b iu khin a c mt khi (c kch thc mt hoc ln hn mt cung) t a t bit theo bit lin tip chuyn vo vng m ca b iu khin. Sau khi mt khi d liu c c ht vo vng m, b iu khin tin hnh kim tra, tnh ton v s mt s li (nu c). Tip n b iu khin pht ngt yu cu HH chuyn tng khi bytes t vng m vo b nh ti a ch ch nh bi CPU. Khi mt t (word) c chuyn vo b nh, thanh ghi m tng bng s bytes chuyn. Qu trnh lp li cho n khi ch s trn thanh ghi m (count) ch ra s bytes cn c, b iu khin kch HH, HH kch CPU kim tra kt qu. Nh vy trong qu trnh c a lm mt thi gian ca CPU khi tham gia nh a ch trong b nh. DMA c pht trin gii phng CPU khi cng vic ny.

b)

c)

d)

B iu khin a

a t
Buffer Thanh ghi m Count

CPU

RAM
Count

System Bus Hnh 3-2 S kt ni khi khng c DMA b) Qu trnh c d liu t a t khi c DMA: Khi c DMA, trn b iu khin c thm thanh ghi a ch (chip DMA) dng lu a ch u ca vng nh s cp pht, xem s hnh 3-3 v thanh ghi m (count) cha s bytes cn c. u tin b iu khin a c mt khi (c kch thc mt hoc ln hn mt cung) t a t bit theo bit lin tip chuyn vo vng m ca b iu khin. Sau khi mt khi d liu c c ht vo vng m, b iu khin tin hnh kim tra, tnh ton v s mt s li (nu c). Tip n b iu khin pht ngt yu cu HH chuyn tng khi bytes t vng m vo b nh ti a ch ch nh trn thanh ghi a ch DMA. Khi mt t (word) c chuyn vo b nh, thanh ghi gim bng s bytes chuyn v thanh ghi a ch t tng ln 1. Qu trnh lp li cho n khi ch s trn thanh ghi m bng khng, b iu khin kch HH, HH kch CPU kim tra kt qu. Nh vy khi c DMA CPU khng phi nh a ch trong b nh m n c gii phng hon ton qu trnh c a.

B iu khin a

a t
Buffer Thanh ghi m (Counter)

CPU

RAM
Count

Thanh ghi a ch

System Bus Hnh 3-3 S kt ni khi c DMA

Chng 4 H iu hnh qun l b nh


4.1 M u: B nh l ti nguyn quan trng cn c t chc qun l mt cch thn trng v c hiu qu. B nh l ti nguyn m khng c n th khng th thc hin c chng trnh. Trn thc t ti mi thi im b nh khng trc tip tham gia vo vic thc hin chng trnh, m n ch l ni lu tr tm thi d liu ca chng trnh ch x l. Tuy nhin nu kch thc b nh ln th tc thc hin chng trnh s c ci thin. Trn thc t chng trnh c lu b nh ngoi, c kch thc c th ln hn kch thc b nh vt l thc ca my tnh, v lun lun sn sng ch cp pht khng gian trong b nh vt l khi thc hin. Khi kch thc chng trnh ln hn kch thc b nh vt l, tn ti nhiu k thut khc nhau cho php s dng mt phn khng gian ca b nh ngoi nh l s m rng ca b nh trong, to ra cm gic c b nh trong c kch thc ln hn nhiu kch thc b nh vt l thc. S tn ti ti nguyn o ny lm cho vic lp trnh tr nn n gin v d dng hn v ngi s dng khi vit chng trnh khng cn phi lo tnh ton khi lng b nh cn s dng cho chng trnh ca mnh khi thc hin. Mt phn ca b nh trong phi ginh lu tr nhn ca HH, l tp cc chng trnh iu khin phi thng tr trong b nh thc hin cc yu cu cp bch (cc th tc bc thp iu khin vao/ra, bng vect ngt, cc th tc th vin bc thp khc vv.). 4.2 Cc php nh x b nh v cc cu trc c bn ca modul chng trnh 1. Cc php nh x b nh: Phn ln cc chng trnh u vit di ngn ng bc cao (ngn ng gii thut), mun thc hin c phi dch sang ngn ng thc hin c ca h thng (ngn ng my). S chuyn dch c minh ha trong hnh 4-1.
Chng trnh ngun Chng trnh ch Dch Modul ti Lin kt Np vo RAM B nh (RAM) HH

Hnh 4-1 s chuyn i chng trnh

Cc php nh x c quan h n HH: - Trc tin h thng phi chuyn i cc tn ngoi (tn bin tn hng) thnh cc tn trong. Hay ni cch khc thc hin nh x cc tn ngoi vo cc tn trong. T tn trong h thng s cp pht b nh logic v thit lp mi quan h n tr tn-a ch. B nh logic l b nh cha gn vi cha gn vi b nh vt l c th no. Cc php tnh cng c thay bng cc m lnh my. Nh vy modul ch l modul ngn ng my, n c xt c lp khng nhng vo quan h chung ca ton h thng ngay c quan h gia cc modul trong mt chng trnh. - S khc bit gia cc ngn ng khng li du vt trn modul ch, hoc nu c th khng ng k. Chnh v vy vic kt ni (link) cc modul thnh mt chng trnh hon thin c thc hin theo nguyn tc chung do mt chng trnh duy nht m nhn gi l trnh bin tp. Trinh bin tp tm tt c cc modul k c cc modul lin kt t cc th vin, lp rp chng li vi nhau, cung cp a ch cho cc bin ngoi ca cc modul c s dng, to thnh mt chng trnh hon thin c kh nng t thc hin. - Np chng trnh vo b nh vt l c th khi thc hin php nh v chng trnh. - Xc nh kch thc chng trnh: Nu co rng buc v kch thc ngay t u (lp trnh b nh thc) th trnh bin tp phi xc nh kch thc chng trnh khng vt qu kch thc b nh vt l thc. Nu khng c rng buc g v v kch thc b nh logic (lp trnh tng i-lp trnh o) th trnh bin tp phi xc nh cc thi im np vo b nh vt l thc ca tng modul. 2. Cc cu trc c bn ca cc modul chng trnh: a) Cu trc tuyn tnh b) Cu trc ng c) Cu trc overlay d) B nh o (virtual memory): Nhng nm trc y ngi ta thng i mt vi vn l kch thc ca chng trnh c th ln hn kch thc b nh ca my tnh lm th no thc hin chng trnh? Gii php thng dng l chia nh chng trnh thnh cc modul kch thc nh gi l phng php overlay. Trong s overlay c lu trn a t cn vic chuyn i vo/ra b nh ca cc modul khi thc hin l do h iu hnh.

Mc du vic chuyn i vo/ra b nh do HH m nhn nhng vic chia nh chng trnh do ngi lp trnh m nhn v th gp kh khn v khng phi khi no cng thc hin c. V vy phng php overlay tn ti khng c lu cho n khi ngi ta a ra phng php b nh o giao ton b vic thc hin chng trnh cho h thng. K thut b nh o c Fortheringham a ra nm 1961. tng ca k thut ny l t hp kch thc ca chng trnh, d liu, stack c th vt qu dung lng b nh vt l thc ca my tnh. HH lu gi cc thnh phn cn thit cho vic thc hin chng trnh trong b nh, phn cn li lu trn a t. Cc phn ca chng trnh lun phin chuyn i vo/ra b nh khi cn thit. B nh o (khng gian o) gm cc a ch o (a ch logic) do chng trnh sn sinh sau khi bin dch. Khi thc hin cc a ch o c nh x vo cc a ch vt l trong b nh. hiu HH s thc hin nh x nh th no chng ta xt cc khi nim sau: -Phn trang: Hu ht cc h thng b nh o u s dng k thut phn trang. Khng gian a ch o c phn thnh cc trang (pages). Cc trang c kch thc nh nhau trong cng mt h thng, cc h thng khc nhau kch thc trang c th khc nhau. Khi mt a ch o c cu trc gm hai phn: cc bit cao dng biu din s hiu (a ch) trang, cc bit thp dng biu din cc c ch di (offset) trong mi trang. V d gi s c b nh o 64kb phn trang mi trang c kch thc 4kb, vy a ch o c cu trc: cc bits cao 4 bit biu din 16 trang (0-15); cc bit thp biu din cc a ch di trong mi trang l 12 ( 4kb = 22 x 210 = 212 bytes ). a ch o l a ch 16 bit ( 64 kb = 26 x 210 = 216 bytes ).Vy cu trc a ch o c dng: 0000 0000 0000 0000. Khi h thng my tnh khng c k thut b nh o, cc c ch o s c t trc tip ln bus b nh (bus a ch) thit lp nn (nh x sang) cc a ch vt l trong b nh vt l thc khi thc hin chng trnh. Khi c k thut b nh o cc a ch o khng t trc tip ln bus b nh m chng c CPU chuyn n n v iu hnh b nh MMU (Memory Management Unit)-gm mt hoc mt t hp chip, MMU s nh x cc a ch o vo cc a ch vt l thc theo nh x dc thit lp ti mi thi im. Xem hnh 4-4.27

CPU Card CPU

CPU gi a o ti MMU RAM B K a

MMU nh x a ch o vo b nh
Hnh 4-4 v tr v chc nng ca MMU

Bus

-Khung trang (page frame): B nh vt l thc c phn thnh cc khung trang, kch thc khung trang bng kch thc trang o. Nh vy a ch vt l c cu trc hai thnh phn: cc bt cao dng biu din s hiu (a ch) cc khung trang, cc bit cao dng biu din cc a ch di (offset) trong mi khung trang. V d nu b nh vt l 32kb chia thnh cc khung trang 4kb khi cu trc a ch vt l: c 3 bit cao biu din 8 khung trang (0-7); c 12 bit cao biu din ht cc a ch di trong mi khung trang ( 4kb = 22 x 210 = 212 bytes ). a ch vt l l a ch 15 bits v ( 32 kb = 25 x 210 = 215 bytes ). Vy a ch vt l c dng: 000 0000 0000 0000. -Bng trang (page table): Cu trc bng trang: Mi trang o c qun l bng mt u vo trong bng trang. Nh vy s phn t trong bng trang bng s trang o v gia chng thit lp nh x 1-1. Ni dung cc phn t ca bng trang: Mi phn t bng trang c hai phn: cc bit cao dng biu din s hiu khung trang m trang o tng ng c nh x vo; c mt bit thp gi l bit c/khng dng nh du trang o tng ng hin thi c nh x hay cha, nu bit = 1 trang o tng ng c nh x, ngc li bit = 0 trang o tng ng cha c nh x.

- Thc hin nh x: Khi mt nh x c thit lp nh x cc trang o vo cc khung trang (cc a


ch o trong trang s nh x thnh cc a ch vt l trong khung trang tng ng) cc a ch o do CPU pht ra c chuyn n MMU, da vo trng thi bng trang, cc a ch o trong trang c chuyn thnh cc a ch vt l trong khung trang tng ng bng cch: MMU xt trang s nh x vo khung trang no v thay cc bit cao trong a ch o bng cc bit biu din khung trang tng ng m trang o c nh x vo, cc bit biu din a ch di nguyn (gi nguyn a ch offsets). C nh th cc a ch o c nh x thnh cc a ch vt l, hnh 4-6. V d: Gi s c b nh o kch thc 64 kb c chia thnh cc trang o c kch thc 4 kb. Kch thc b nh vt l 32 kb. Gi s thit lp nh x nh hnh 4-5. MMU thc hin nh x a ch o trong b nh o sang b nh vt l, hnh 4-6. Vi gi thit ny chng ta c: - Cu trc ca a ch o: + a ch o l a ch 16 bits v (64 kb = 26 x 210 = 216 bytes ) + S bit cao: 4 bits biu din 16 trang o (0-15) + S bits thp: 16-4=12 bits (hoc 4kb = 22 x 210 = 212 bytes) + Vy a ch o c cu trc dng: 0000 0000 0000 0000 - Cu trc a ch vt l: + a ch vt l l a ch 15 bits v ( ) + S bits cao: 3 bits biu din 8 khung trang (0-7) + S bits thp: 15-3=12 bits (hoc 4kb = 22 x 210 = 212 bytes) + Vy a ch vt l c cu trc dng: 000 0000 0000 0000 - Cu trc bng trang: + S phn t ca bng trang 16 v c 16 trang o + Kch thc: Kch thc 4 bit bao gm c 3 bits cao biu din ht 8 khung trang; mt bit c/khng, xem hnh 4-6.

B nh o
0-4K 4-8K 8-12K 12-16K 16-20K 20-24K 24-28K 28-32K 32-36K 36-40K 40-44K 44-48K 48-52K 52-56K 56-60K 60-64K 2 1 6 0 4 3 x x x 5 x 7 x x x x

B vt l
0-4K 4-8K 8-12K 12-16K 16-20K 20-24K 24-28K 28-32K

Khung trang

Trang o Hnh 4-5 nh x gia cc trang o vo cc khung trang

Trng thi bng trang khi thit lp nh x, hnh 4-5.


CPU pht a ch o 8196
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0

Trang o 2 c nh x vo khung trang 6 (110)

010 001 110 000 100 011 000 000 000 101 000 111 000 000 000 000

1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0

a ch ny thuc trang o 2 (0010) 110

a vt l 24580

Hnh 4-6 MMU thc hin nh x a ch o t b nh o sang a ch vt l

PHN 2 H iU HNH MS-DOS


Chng 1 H iu hnh MS-DOS qun l h thng tp 1.1 M u: H iu hnh MS-DOS l sn phm ca hng Microsoft, phin bn u tin ca DOS c chnh thc cng b thng 8 nm 1981, sau DOS khng ngng c pht trin v ci tin. Cc phin bn khc nhau ca MS-DOS ch ra trong bng 1-1.
Phin bn 1.0 1.1 2.0 2.1 2.11 3.0 3.1 3.2 3.3 4.0 5.0 Thng/nm 8/1981 10/1982 3/1983 11/1983 3/1984 8/1984 11/1984 1/1986 4/1987 7/1988 4/1991 a mm 160 KB 320 KB 360 KB 360 KB 360 KB 1.2 MB 1.2 MB 720 KB 1.44 MB 1.44 MB 2.88 MB Chc nng CP/M v tng thch, h tr 1 th mc Ging nh 1.0 H tr a cng, nh UNIX Giao din vi PC Jr H tr cho ngi dng ton th gii H tr PC/AT H tr mng a mm 3.5 inch, IBM tokenring Tng thch PS/2 H tr a cng 32 MB tr ln, DOS shell H tr qun l b nh m rng

1.2 Cu trc vt l ca a t:
Cc loi a t (c a cng v a mm) u da vo hin tng t ha lu tr d liu. u c/ghi s t ha cc phn t cc nh trn b mt ca a khi i qua cc phn t t . Mi mt a t u c cu trc vt l v cu trc logic. Sau y chng ta xt cc cu trc vt l c hnh thnh trn a t t chc lu tr tp. 1. Rnh (Track): Cc phn t t c phn b trn cc rnh, mi rnh l mt ng trn. Mi mt a c chia thnh cc rnh theo cc ng trn ng tm. Rnh c nh a ch vt l bt u t 0 k t ngoi vo. Hnh 1-2. Track 0 Track 1 Track 2

Hnh 1-2

2. Mt (Side): Cc a mm thng c hai mt, c nh s vt l mt 0 v mt 1. i vi a cng th khi nim mt tng ng l cc u c/ghi (header) mi mt u c/ghi qun l mt mt ca a cng (cu trc ca a cng nh mt chng cc a mm hai mt ng tm). u c/ghi c nh s vt l k t 0. Mi a cng c ti a 255 u c/ghi. 3. Tr (Cylinder): Mt cp rnh i xng ca hai mt a mm gi l mt tr. i vi a cng tp cc rnh 0 to thnh tr 0, tp cc rnh 1 to thnh tr 1 v..v. Nh vy tr l hp cc rnh ng tm c cng bn knh v tr c nh s vt l t ngoi vo. Hnh 1-3.

u c/ghi 0 Tr 0 u c/ghi 1 Tr 1

Hnh 1-2 Cu trc ca a cng

4. Cung (Sector): Mc du c th c/ghi d liu theo tng rnh trn a (t 8-12 KB), nhng trong thc t b iu khin khng qun l c/ghi d liu theo tng rnh v kch thc qu ln. Cc b iu khin a c/ghi mt ln tng phn on ca rnh. Mt phn on c gi l mt cung (sector), s byte trong mi cung ph thuc vo phn cng ca b iu khin a v h iu hnh. Thng thng kch thc mi cung c th l: 128, 256, 512 hoc 1024 bytes. i vi MSDOS th kch thc mt cung l 512 bytes v mi rnh c 9 cung i vi tt c cc loi a. Cung c nh s vt l (a ch vt l) k t khng theo nguyn tc mt, rnh t ngoi vo. Qu trnh nh a ch (ghi vo u mi cung) c thc hin trong khi format bc thp a. a ch vt l ca 1 cung trn a l b ba (Mt, rnh, s hiu cung) i vi a mm, i vi a cng l b ba (u c/ghi, Tr, s hiu cung). 5. Format vt l (format cp thp): Qu trnh ghi a ch cc cung v mt s thng tin khc vo u mi cung c gi l format vt l a t. Format vt l c thc hin bi b iu khin a, n khng phi l dch v ca h iu hnh. Format vt l c thc hin trc khi a vo s dng. Thng thng format vt l c thc hin qua dch v ca BIOS.

1.3 Cc cu trc logic Mi h iu hnh u t to ra cho mnh mt vi cu trc logic trn a gip cho vic qun l a c nhanh chng v chnh xc. Cc cu trc logic c hnh thnh trong qu trnh format logic (format bc cao) a. Hay ni cch khc format logic a l qu trnh HH khi to cc cu trc logic trn a.

You might also like