You are on page 1of 4

V Duy Thnh

Phn 4:
I.
-

Lp lch trong h thi gian thc Scheduling

Scheduling:
Mt tp hp cc dch v thc hin cc cng vic nh ng b ho v giao tip truyn thng gia cc tc v Mt b lp lch (scheduler) vi chc nng khng nh rng ch c duy nht tc v vi mc u tin cao nht ang c thc thi.

Cc tc v (task) hot ng di s gim st ca kernel thi gian thc. Chng bao gm:

B lp lch xt cc tc v nh nhng ci my trng thi (state machine). Tt c cc kernel u c m hnh trng thi ca n, tuy nhin, thng thng th cc m hnh trng thi ny rt phc tp. Hnh 4.1 ch ra cho cc bn thy mt m hnh trng thi mang tnh khi nim ca tc v. Trong hnh, ta thy c cc trng thi: ang thc thi (Running): ch c duy nht mt tc v l c nm trong trng thi ny. Mt tc v c th t ng chuyn t trng thi ang thc thi sang trng thi Kho (Blocked) bng vic ch i mt s kin xy ra. Trong mt h thng c s chim quyn thc thi (chng ta s cp n n sau), b lp lch c th bt mt tc v ang trng thi ang thc thi xung trng thi Sn sng (Ready) nu c mt tc v vi mc u tin cao hn chuyn n trng thi Sn sng. Chng ta gi n l s chim quyn thc thi (preemption). Sn sng (Ready): nu mt tc v sn sng hot ng nhng li c mc u tin thp hn tc v ang thc thi, tc v s c chuyn n trng thi ny v ch. Tc v ny s c chuyn n trng thi ang thc thi nu n tr thnh tc v c mc u tin cao nht. Kho (Blocked): mt tc v b kho l tc v ang i mt s kin no xy ra, v d nh mt bn tin, tin nhn c gi n hp th ca tc v , hay thi gian ch ca tc v kt thc. Running (ang thc thi) Ch mt s kin no xy ra Nu c mc u tin cao nht Blocked (Kho) S kin xut hin Ready (Sn sng) B chim quyn bi mt tc v c mc u tin cao hn

Hnh 4.1 M hnh trng thi ca tc v

Ti liu ch mang tnh tham kho Nguyn vn ting nc ngoi ca Doug Abbott

4/1

V Duy Thnh

II.

Lp lch c chu k:

C rt nhiu tc v m cng vic ca n ch l thc dy theo chu k, lm mt vi cng vic no v quay tr li ng tip. C mt vi phng php thc hin cc tc v kiu ny nh trn hnh 4.2. Trong tt c cc h iu hnh, chng ta u c th tm thy mt lnh gi l hm tr Delay(), hoc l mt vi hm c chc nng tng t. Hm ny lm cho tc v b kho trong mt thi gian xc nh cho trc, thng thng thi gian ny c biu din bng xung ng h (clock tick). Hnh 4.1a cho ta thy vic thc hin mt tc v khi ta s dng lnh Delay() i vi tc v c tnh chu k . Trong trng hp ny, khong thi gian tr l 3 clock tick. Hot ng ca h thng ph thuc vo thi gian thc thi ca tc v. Nu thi gian thc hin nh hn 1 tick th tc v s thc dy sau mi 3 tick nh mong mun. Tuy nhin, nu tc v hot ng qu 1 tick, khi , sau khi tc v gi lnh Delay(), n vn s b kho trong 3 clock tick. Th nhng, trong v d ny, tc v thc t l s thc dy sau mi 4 xung clock tick. khng phi l iu chng ta mong mun. Mt phng n khc, khng phi h thng no cng c, c trnh by hnh 4.2b. Trong trng hp ny, b lp lch s nh thc tc v vo ng thi im thch hp m khng quan tm n thi gian thc hin tc v. Do , thay v dng hm Delay(), mt tc v c tnh chu k s gi hm WaitTilNext(). Hm ny s kha tc v cho ti phin thc hin k tip. 1 Xung(Tick) Thi gian thc thi nh hn 1 tick Thi gian thc thi ln hn 1 tick 1 Xung(Tick) Thi gian thc thi nh hn 1 tick Thi gian thc thi ln hn 1 tick 2 3 4 5 6 7 8 9 10 2 3 4 5 6 7 8 9 10

4.1a) Tc v c thc thi vi lnh Delay()

4.1b) Tc v c lp lch theo chu k l 3

Hnh 4.2 Cc tc v c tnh chu k

Ti liu ch mang tnh tham kho Nguyn vn ting nc ngoi ca Doug Abbott

4/2

V Duy Thnh

III.

Lp lch khng theo chu k:

Mt s tc v phi phn ng li cc s kin xy ra ngu nhin ti cc thi im khc nhau. Mt s kin c th l vic mt gi d liu t trn mng c gi n ni, vic mt ci cng tc ng li ch ra l b nc y hoc cng c th l s kt thc vic convert mt tn hiu tng t sang s ca b ADC v ang cn c c. Thng thng, cc s kin khng ng b ny c giao tip vi my tnh thng qua cc ngt. Chng trnh con dch v ngt phi c cch no kt ni s xut hin ca ngt vi tc v chu trch nhim x l s kin.

IV.

Lp lch theo kiu chim quyn thc thi v lp lch khng c chim quyn thc thi.

C 2 phng thc c bn cho vic lp lch mt tc v: chim quyn thc thi v khng chim quyn thc thi. Xt 2 tc v: tc v 1 c mc u tin thp hn ang thc hin v tc v 2 c mc u tin cao hn ang b kho ch mt s kin xy ra, s kin ny c thng bo bi mt tn hiu ngt. Hnh 4.3a cho thy nhng g xy ra trong h thng khng c tnh chim quyn u tin. Chng trnh con dch v ngt ISR lm cho tc v 2 vi mc u tin cao hn chuyn t trng thi Kho sang trng thi Sn sng. Tuy nhin, n khi ISR c thc hin xong th tc v 1 vi mc u tin thp hn vn s c tip tc thc thi ti im n b ngt. Sau , khi tc v 1 b kho ch s kin th tc v 2 mi c chuyn sang trng thi thc thi. Hnh 4.3b ng vi trng hp ca h thng c tnh chim quyn u tin. im khc bit y l b lp lch c gi n cui chng trnh con dch v ngt. B lp lch xc nh tc v c mc u tin cao ang trng thi Sn sng v chuyn n ln trng thi thc thi. Do , tc v vi mc u tin thp b chim quyn thc thi. Mt h thng khng c tnh chim quyn thc thi mun rng tt c cc tc v phi l nhng cng dn tt bng cch t nguyn trao tr b x l cho cc tc v khc chc chn mt iu: cc tc v u c c hi s dng b x l. Cc th h Windows trc kia u l dng ny. Linux th khc, n l mt h iu hnh c tnh chim quyn thc thi mc d cc bn Linux chun khng quan tm n vn thi gian thc bi trong mt thi gian di, vn chim quyn thc thi khng c cp. Cc h thng c tnh chim quyn thc thi cung cp cho ta nhiu hn thi gian phn ng c th d on c bi v tc v c mc u tin cao s c x l ngay lp tc. y chnh l im ct li ca thi gian thc: kh nng m bo mt thi gian ln nht phn ng li mt s kin. Trong h thng khng chim quyn thc thi, chng c g m bo thi gian mt tc v nhng li b x l cho cc tc v khc. Mt khc, trong mt h thng c chim quyn u tin, vn tranh chp ti nguyn h thng cng ng c quan tm cn thn.

Ti liu ch mang tnh tham kho Nguyn vn ting nc ngoi ca Doug Abbott

4/3

V Duy Thnh

Tn hiu ngt ISR u tin cao u tin thp Kho ISR u tin cao u tin thp
Hnh 4.3 - Lp lch: c v khng c chim quyn thc thi 4.3a) Khng chim quyn thc thi

Sn sng

4.3b) C chim quyn thc thi

Hai phng n khc c tn dng x l cc tc v c cng mc u tin. Trong phng thc lp lch kiu vng lp robin, mt tc v s c thc thi n khi no n b kho (block) ch mt s kin xut hin hoc cng c khi n tnh nguyn nhng (yield) b x l li. S khc bit gia kho v nhng l ch: trong trng hp th 2, tc v s quay tr li trng thi Sn sng (ready). Xt trng hp trong danh sch Sn sng c 3 tc v th t ln lt l A, B, C. Cc tc v ny c cng mc u tin nh nhau. Tc v A ng u danh sch v c chuyn n trng thi Thc thi. Khi tc v A nhng (yield) b x l, tc v B tr thnh trng thi thc thi v danh sch Sn sng s nh sau: BCA Khi B nhng, C s chuyn trng thi v danh sch s chuyn thnh: CAB Nh vy, tt c cc tc v s hot ng thnh mt vng trn, chng hot ng theo kiu nhng nhau. Cc tc v c mc u tin thp hn trong trng thi Sn sng s khng bao gi c thc hin cho n khi tt c cc tc v trn b kho. Nht ct thi gian l mt bin th ca vng lp robin. Trong , n quy nh mi tc v s nhn c mt lng thi gian nht nh hay cn gi l nht ct thi gian. Vic lm ny bo v cc tc v khi trng hp chim dng b x l qu lu. Do , mt tc v s chy cho n khi n b kho, n tnh nguyn nhng hay qu hn v thi gian cho php. Tu thuc vo hon cnh v yu cu, cc tc v s c lng thi gian cho php bng nhau hoc khc nhau. Xt trn kha cnh no , vng lp robin ch l mt dng khc ca vng lp polling.

Ti liu ch mang tnh tham kho Nguyn vn ting nc ngoi ca Doug Abbott

4/4

You might also like