You are on page 1of 14

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

BI TP LN MN H PHN TN
TM HIU PHT TRN KHNG NG B
Danh sch nhm V cng vic ca tng ngi nh sau: --------------------ooo000ooo-------------------1.L Th Lng : 2.Trn Th Thanh Lin : 3.Hong Anh Tun : 4.Nguyn Th Ngc Gi 5.Trn Th Chu 6.Nguyn Th Hoi 7.Nguyn Th Din 8.L Th Lam 9.Nguyn Ngc Dng 10.Hong Trng Cng 11.Nguyn Th Hng Tm hiu L thuyt-Ci t chng trnh Tm hiu L thuyt-Ci t chng trnh L thuyt-Bo co-ci t : Tm hiu ni dung cng vic : Tm hiu ni dung cng vic : Tm hiu ni dung cng vic : Tm hiu ni dung cng vic : Tm hiu ni dung cng vic : Tm hiu ni dung cng vic : Tm hiu ni dung cng vic : Tm hiu ni dung cng vic

Ging vin hng dn : Ths Trn Th Gia

- 1 -

Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

NI DUNG BO CO ------------

A.Chun b ni dung lm bi tp ln 1.T tng 2.Ti liu tham kho 3.Gii thiu ngn ng lp trnh C++ p dng ci t B.Gii thiu chung v h phn tn 1.Tng quan v h phn tn 2.Phn loi h phn tn 3.Vai tr ca h phn tn 4.c trng ca h phn tn 5.Mc tiu h phn tn 6.L thuyt h phn tn 7.Cc lnh vc ng dng C.Pht trn khng ng b 1.Nu Khi nim 2.Nguyn tc hot ng 3.M hnh truyn thng bo 4.Trng thi 5.Cu hnh 6.Thc hin v tnh tha ng 7.Thc hin khng ng b 8.Gii thut pht trn khng ng b 9. phc tp gii thut pht trn 10.Tnh tho ng 11. phc tp D.p dng gii thut pht trn khng ng b 1.V d minh ha 2.Ci t gii thut 3.Chy chng trnh

Ging vin hng dn : Ths Trn Th Gia

- 2 -

Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

A.Chun b ni dung lm bi tp ln 1.T tng mc tiu mn hc Hiu c cc c trng v mc tiu thit k h phn tn Cc vn k thut c bn ca h phn tn. Nm vng cc kin thc h thng v phng php lun v cng c xy dng v pht trin cc h phn tn. Thng qua Bi tp ln mn hc sinh vin c th bc u tp dt nghin cu v trin khai ng dng tip cn vi cc cng ngh lin quan n h phn tn 2.Ti liu tham kho * H phn tn + Gio trnh :H phn tn GV- Ths Trn Th Gia Khoa CNTT HSPKT VInh + Gio trnh :Tp bi ging chun ha ca B mn Mng v HTTT, Khoa CNTT,-i hc SPKT Vinh + Nguyn Thc Hi, mng my tnh v cc h thng m, NXBGD, 1999 + gio trnh : tp bi ging chun ho ca B mn Truyn thng v Mng my tnh, Khoa Cng ngh Thng tin, i hc Bch khoa H ni * Lp trnh C++ + Gio trnh :Lp trnh hng i tng GV- Ths Lu Hng Giang Khoa CNTT HSPKT VInh + Nguyn Thanh Thu, Lp trnh hng i tng vi C++,NXB Khoa hc v k thut,1999 + Nguyn Thanh Thu - Nguyn Quang Huy, Bi tp lp trnh ngn ng C,NXB Khoa hc v K thut,2003 3.Gii thiu ngn ng lp trnh p dng ci t C++ l ngn ng lp trnh hng i tng v l s m rng ca ngn ng C.N l ngn ng lp trnh rt quan trng, l tin pht trin ca mi ngn ng lp trnh v cng l tin pht trin ngn ng lp trnh Java,....Chng trnh C++ ca chng em chy da trn phn mm c free v5.0 hoc DEV-C. B.Gii thiu chung v h phn tn 1.Tng quan v h phn tn Cc khi nim h phn tn nh ngha 1: H phn tn l tp hp cc my tnh t tr c kt ni vi nhau bi mt mng my tnh v c ci t phn mm h phn tn. nh ngha 2: H phn tn l mt h thng c chc nng v d liu phn tn trn cc trm (my tnh) c kt ni vi nhau bi mt mng my tnh. nh ngha 3: H phn tn l mt tp cc my tnh c lp giao tip vi ngi dng nh mt h thng thng nht, ton vn. => Nh vy c th ni : HPT = MMT+ Phn mm h phn tn - V d: b a x l, mng cc b, Internet,ngn hng t ng,h thng thng mi in t H phn tn vs. h song song : - H song song phi hp nhiu b x l nhm gii quyt mt vn cho trc mt cch nhanh nht . - Trong h phn tn, mi b x l ni chung c chng trnh lm vic ring bn c lp, v li Ging vin hng dn : Ths Trn Th Gia - 3 Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

ch chung nn cn phi hp hnh ng vi nhau. Mc ch mn hc l nghin cu cc cng c v k thut xy dng phn mm phn tn Tp trung vo kha cnh gii thut 2.Phn loi h phn tn Trc y, HPT dc chia thnh 3 loi: h iu hnh h phn tn, c s d liu h phn tn v cc h thng tnh ton h phn tn Ngy nay, HPT c phn chia nh sau: - HPT mang tnh h thng: h iu hnh phn tn - HPT mang tnh ng dng: cc h thng truyn tin phn tn 3.Vai tr ca h phn tn Trao i tin cy: Tin pht trin cc mng my tinh. Chia s ti nguyn: Gip gim chi ph h thng. Nng cao tin cy thng qua sao lp: H thng vn hot ng khi mt b phn gp s c. Nng cao hiu sut thng qua song song ha: Thc hin cng vic chung hay chia s cng vic. n gin thit k thng qua chuyn dng ha: Phn tch h thng thnh cc tin trnh tc hp vi nhau 4.c trng ca h phn tn Kt ni ngi s dng v ti nguyn. Tnh trong sut. Tnh m. Tnh co gin. Tnh chu li. Tnh an ton an ninh. 5.Mc tiu h phn tn A. Kt ni ngi s dng v ti nguyn: gii quyt bi ton chia s ti nguyn trong h thng (resource sharing) B. Tnh trong sut: n giu s ri rc v nhng nhc im nu c ca h phn tn i vi ngi s dng v nhng nh lp trnh ng dng ( Theo tiu chun ISO cho HPT ISO/IS/10746 tn l open distributed processing reference model 1995 c th ha 8 dng trong sut:.) C. Tnh m (openness): HPT gi l m nu n cung cp cc dch v theo cc quy tc chun m t c php v ng ngha ca dch v . D. tnh co gin (Scalability): thich nghi vi s thay i quy m ca h thng 6.L thuyt h phn tn Pht hin v khi qut ha cc vn c bn Pht biu cc vn mt cch chnh xc Thit k cc gii thut gii quyt cc vn Chng minh tnh ng n ca cc gii thut Phn tch phc tp ca cc gii thut Da trn cc tiu ch nh thi gian thc hin, lng b nh s dng, s thng bo trao i Ging vin hng dn : Ths Trn Th Gia - 4 Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

Chng minh cc kt qu v tnh khng th v cc kt qu cn di Ph thuc nhiu vo gi thit 7.Cc lnh vc ng dng H iu hnh: Cc tin trnh cn giao tip vi nhau. C s d liu phn tn: Cc server CSDL cn c phi hp ng b. Khc phc li phn mm: Cho chy nhiu chng trnh nng cao tin cy. Mng my tnh: Thit k cc dch v iu khin mng. Kin trc a x l: Cc b x l kt ni vi nhau cn phi hp thc hin. C.Pht trn khng ng b 1.Khi nim m hnh khng ng b H thng gi l khng ng b nu khng c cn trn c nh vi thi gian. T lc thng bo c gi i cho n lc giao. Hoc gia cc bc thc hin ca b x l. V d: Internet. Trn thc t cn trn l ln v khng c nh c th coi l h thng khng ng b. 2.Nguyn tc hot ng Nguyn tc c bn ca h phn tn l s ng b v a tin trnh, trong trng hp ny, cc tin trnh truy cp cng mt lc v nhiu ti nguyn, trnh iu ny ca gii php php chng ta thc hin truy cp loi tr ln nhau, hay thc hin mt cch khng ng b b nhm mc ch: Trnh xung t ng truyn Tham gia s u tin trong i tng h thng my . Gii thut ny chia thnh 2 gii php c bn: Th nht: a ra mt thng ip c bit gia cc tin trnh, c gi l biu tng token Ph thuc vo t chc ca tin trnh Tin trnh phi i tin trnh khc x l(deadlock) Th hai: Mt tin trnh mun truy cp vo ti nguyn khc th phi c s cho php ca tin trnh khc. Tp trung d liu. Phn tn d liu. 3.M hnh truyn thng bo 3 2 2 Ging vin hng dn : Ths Trn Th Gia - 5 1p3 1 2 p2 1 Sinh vin thc hin : Nhm 2

p0

p1

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

Cc nt ca th = cc b x l p0, p1,..., pn-1 Cc cnh khng nh hng ca th = cc knh hai chiu ni tng cp nt Mi b x l pi gn nhn cho cc knh k n 1, 2, 3,... r (r l bc ca Pi). 4.Trng thi Mi b x l l mt my trng thi Mi trng thi ca pi c 2r thnh phn c bit outbufi[l] v inbufi[l], vi l = 1..r outbufi[l] cha cc thng bo pi gi cho nt bn cnh trn knh l nhng cha n ni inbufi[l] cha cc thng bo pi nhn c trn knh l nhng cha x l Tp trng thi Qi cha mt tp con gm cc trng thi ban u trng thi ban u cc inbufi[l] phi rng Hm chuyn ca pi c u vo (trng thi kh truy nhp) khng bao gm cc outbufi[l] v u ra l mt trng thi c cc inbufi[l] rng 5.Cu hnh Cu hnh l mt vect C = (q0,..., qn-1) trong qi l mt trng thi ca pi Trng thi ca cc bin outbuf ca cu hnh th hin cc thng bo ang di chuyn trn cc knh truyn Cu hnh ban u l mt vect (q0,..., qn-1) tha mn mi qi l mt trng thi ban u ca pi Ni cch khc cu hnh ban u tt c cc b x l u trng thi ban u tng ng C th coi cu hnh l trng thi tng th ca ton b h thng 6.Thc hin v tnh tha ng Cc iu kin i vi chui cc cu hnh xen k s kin m t hot ng ca h thng iu kin an ton : iu kin phi ng vi mi tin t hu hn ca chui m t Cha c iu g xu xy ra iu kin sng ng : iu kin phi ng mt s ln nht nh (c th v hn ln) iu tt s n Thc hin l mt chui m t tha mn mi iu kin an ton t ra Thc hin tha mn mi iu kin sng ng t ra c gi l thc hin tha ng 7.Thc hin khng ng b H thng gi l khng ng b nu khng c cn trn i vi thi gian t lc thng bo c gi i cho n lc giao Ging vin hng dn : Ths Trn Th Gia - 6 Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

hoc gia cc bc thc hin ca b x l Thc hin l chui cc s kin xen k nhau: (giao,tnh, giao, tnh...) Trng hp s kin giao : thng bo cho c chuyn t outbuf ca bn gi n inbuf ca bn nhn Trng hp s kin tnh : trng thi ca b x l cho (bao gm cc outbuf) thay i theo hm chuyn ca n 8.Gii thut pht trn khng ng b Vn t ra: B x l p0 mun gi mt thng bo M cho tt c cc b x l khc trn mng Gii thut - Khai bo cc bin: Bin color c hai gi tr green v red : Bin ny dng kim tra xem b x l nhn c M hay cha? + Nu Color[i] = red th b x l Pi cha nhn c thng bo M + Nu Color[i] = green th b x l Pi nhn c M Cc inbuf v outbuf outbufi[l] cha cc thng bo pi gi cho nt bn cnh trn knh l nhng cha n ni inbufi[l] cha cc thng bo pi nhn c trn knh l nhng cha x l

- Khi to: Vi p0, color l green v tt c cc outbuf cha M Vi cc b x l khc, color l red v cc outbuf rng

- Hm chuyn Ging vin hng dn : Ths Trn Th Gia - 7 Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

Nu M nm trong inbuf v color l red th i color thnh green v gi M vo tt c cc outbuf

- Bc lp: Trong cc b x l k vi P0 ta chn mt Pi no ri thc hin hai s kin: + S kin giao ti Pi t P0 + S kin tnh bi Pi Sau tip tc xt mt trong cc b x l k vi P i m cha xt (ang trng thi mu ), gi s mt Pk no ri tip tc thc hin hai s kin ni trn i vi Pk - S kin : C hai loi s kin S kin giao : chuyn mt thng bo t outbuf ca bn gi n inbuf ca bn nhn Thng bo s c x l ngay khi bn nhn thc hin s kin tnh ton tip theo S kin tnh : mt bc thc hin ca b x l Tng ng vi vic p dng hm chuyn ln trng thi kh truy nhp hin thi

Trng thi kh truy nhp mi


Trng thi kh truy

nhp c S kin tnh - X l cc thng bo gi n - Chuyn trng thi b x l - Kt thc:

+ Cc thng bo gi i

Gii thut kt thc khi bin color ca tt c cc b x l trong mng u c gi tri bng green 9. phc tp gii thut pht trn Xc nh trng thi kt thc Trng thi kt thc c gi tr bin color l green phc tp thng bo S thng bo gi i trong mi thc hin tha ng l 2m, trong m l s cnh ca th Mt thng bo c gi i trn mi cnh theo mi hng phc tp thi gian Thi gian ti a n khi kt thc gii thut l D + 1, trong D l ng knh ca th Ging vin hng dn : Ths Trn Th Gia - 8 Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

n thi gian t, thng bo M ti c tt c cc b x l cch p0 t cnh (hoc nh hn) 10.Tnh tho ng Vi m hnh khng ng b, mt thc hin l tha ng nu Mi thng bo trong cc outbuf nht nh s c giao Mi b x l thc hin v hn bc tnh 11. phc tp Tp trung vo hiu sut xu nht phc tp thng bo l s ti a cc thng bo gi i trong thc hin tha ng phc tp thi gian l thi gian ti a n khi kt thc trong thc hin tha ng -Vi m hnh khng ng b o da trn cc gi thit Thi gian x l mt s kin l khng n v Thi gian truyn mt thng bo (t s kin gi n s kin x l thng bo) ti a l mt n v Lu : chnh xc ca gii thut khng ng b cn c chng minh c lp vi cc gi thit thi gian D.p dng gii thut pht trn khng ng b 1.V d v pht trn khng ng b Gi s c mt h phn tn gm c 3 b x l P0, P1, P2 c cho di dng mt m hnh truyn thng bo nh sau:

green M p0 M

p2

p1

Bi ton: P0 mun gi thng bo M cho tt c cc b x l khc trn mng Gii quyt bi ton: p dng gii thut pht trn khng ng b chuyn thng bo M t P 0 ti tt c cc b x l khc trn mng c minh ho nh sau: Khi to: - P0 cha thng bo M - outbuf0(p0p1)=M, outbuf0(p0p2)=M - color(p0)=green, color(p1)=color(p2)=red, outbufi()={ } green M p0 M - 9 p1 Sinh vin thc hin : Nhm 2

Ging vin hng dn : Ths Trn Th Gia p2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

Bc lp 1: Xt P1 l nt k vi P0 trn mng

- Thc hin s kin giao ti P1 t P0 (Tc l thc hin vic: P0 gi thng bo M t outbuf ca P0 sang inbuf ca P1 qua knh P0P1) inbuf 1 ( P0 P ) = M 1 Khi ta s c: colo ( P ) = red

- Thc hin s kin tnh bi P1,, tc l p dng hm chuyn ln P1 v x l thng bo gi n. - Sau khi thc hin s kin tnh colo(p1) =green v P1 gi M vo tt c cc outbuf ca n Minh ho bc lp 1: green p0 green p0 S kin giao ti p1 t p0 M p2 red p1 red S kin p2 tnh bi p1 red green p0 M M p1 M green

p2 red

p1 red

Minh ho bc lp 2: Lit k cc nt k vi P1 ri chn mt nt bt k ang trng thi mu xt tip.


y ta chn P2 l nt k tip theo xt. Tc l ta tin hnh thc hin lin tip hai s kin giao v tnh cho nt P2

Ti bc lp ny mi nt trn mng u c chuyn sang mu xanh v thut ton


kt thc

Ging vin hng dn : Ths Trn Th Gia

- 10 -

Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

green p0 M S kin giao ti p2 t p1

green p0 M p1

S kin tnh bi p2 M M p1 green p2

green M p 0 M p1 M green

p2 red

p2 red M

M green

green

Minh ho tng th : green M p0 M M green p0 M p2 red p1 red green M S kin tnh bi p1 p0 M p2 red 2.Ci t gii thut #include<iostream.h> #include<iomanip.h> int a[50][50],b[50],n,v; int tim(int i, int m) //xet dinh i da chuyen thanh mau green chua? {int j; j=0; while(( j<=m)&& b[j]!=i) j++; if (j>m) return 0; // chua chuyen thanh mau green else return 1; //da chuyen mau green Ging vin hng dn : Ths Trn Th Gia - 11 Sinh vin thc hin : Nhm 2 M p1 green S kin giao ti p2 t p1 p2 red M p1 green M S kin giao ti p1 t p0 p2 red p1 red green p0 M

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

} int main() {int i,j; cout<<"\n nhap so dinh cua do thi:"; cin>>n; for(i=0;i<n;i++) for(j=0;j<n;j++) a[i][j]=0; i=0; while(i<n) { do {cout<<"\n nhap dinh ke voi dinh "<<i<<" ("<<n<<": het dinh ke) : "; cin>>j; if (j!=i && j>=0 && j<n) {a[i][j]=1; } }while(j!=n); i++; } cout<<"\n hien do thi vua nhap:\n"; for(i=0;i<n;i++ ) { cout<<" dinh "<< i<<" co dinh ke la: "; for(j=0;j<n;j++) if (a[i][j]==1) cout<<j<<" "; cout<<"\n"; } do{ cout<<"\n phat tran bat dau tu dinh ("<< n<<":thoat) : "; cin>>v; if (v>=0 && v<n) { a[v][v]=2; //chuyen dinh v thanh mau green // b la tap cac dinh da chuyen thanh mau green, thu tu cac dinh la thu tu da duyet b[0]=v; j=0; while(j<n) {i=0; int k; k=b[j];// dinh k da o mau green tim dinh ke voi dinh k la dinh i chua chuyen thanh mau green Ging vin hng dn : Ths Trn Th Gia - 12 Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

while(!((a[k][i]==1)&& !tim(i,j)) && i<n ) i++; cout<<"\n"; if (i==n) { // neu cac dinh ke voi dinh k da chuyen mau green , ta xet cac dinh con chua chuyen thanh green cua dinh cha cua k trong do thi int g; g=j-1; while((i==n)&&(g>=0)) {i=0; int h; h=b[g]; while(!((a[h][i]==1)&& !tim(i,j)) && i<n ) i++; g--; } // neu cac dinh con da chuyen thanh green, ta xet cac dinh con lai if (i==n) {i=0; while((i<n)&& (a[i][i]!=0)) i++; } } j++; b[j]=i; a[i][i]=2; // chuyen dinh i thanh mau green } cout<<"\n ket qua phat tran khong dong bo :"; for(i=0;i<n;i++) cout<<b[i]<<" "; } }while(v>=0 && v<n); return 0; } 3.Chy chng trnh Ta ly v d trn (mc D.1) - Pht trn 3 trng hp bt u t P0 ,P1,P2

Ging vin hng dn : Ths Trn Th Gia

- 13 -

Sinh vin thc hin : Nhm 2

TRNG I HC S PHM K THUT VINH

......

KHOA CNG NGH THNG TIN

Chng em xin chn thnh cm n !

Ging vin hng dn : Ths Trn Th Gia

- 14 -

Sinh vin thc hin : Nhm 2

You might also like