You are on page 1of 4

BTL Mn H iu Hnh

Ch 1: M phng
1.

2.

Ti liu tham kho Bi ging H iu hnh, V c Lung Ngn ng lp trnh s dng: C, C++, Java trn UNIX hoc Windows Bi 1.1: Vit chng trnh m phng gii thut nh bng ca Dijsktra trnh deadlock. S lng cc ngun ti nguyn, cc yu cu ca h thng c to ngu nhin. Hy hin thc cch xt trng thi hin thi ca h thng l an ton hay khng an ton. Nu trng thi l an ton, chng trnh phi ch ra cch thu hi ti nguyn h thng. Vi mi yu cu cung cp ti nguyn, hy hin th ra mn hnh cch cp pht, thu hi tng ng. Bi 1.3: Vit chng trnh m phng cc gii thut thay th trang hc: OPT, FIFO, LRU, LFU, NUR, Second Chance. u vo ca gii thut: s khung trang, chui tham kho trang, yu cu thay th trangc to ngu nhin. nh gi hiu qu (so snh s page fault) ca tng gii thut.

Ch 2:

ng b gia cc qu trnh

3. 4.

1. Ti liu tham kho UNIX network programming. Ti liu hng dn thc hnh H iu hnh, H Nam. 2. Tm hiu cch to qu trnh trong UNIX: hm fork( ). Tm hiu cc cch ng b gia cc qu trnh trong UNIX: semaphore, lock file. Ngn ng lp trnh s dng: C trn UNIX Bi 2.1 : (Semaphore) Vit chng trnh to ra mt qu trnh con. Qu trnh cha s nhn chui s nguyn t bn phm do ngi dng nhp v ghi vo file tn input. Qu trnh con s c d liu t file ny, sp xp chng theo th t tng dn v ghi vo mt file khc tn l sorted. Bi 2.2 : (Semaphore) Vit chng trnh producer-consumer vi bounded buffer. Bi 2.4 : (Lock file) Vit chng trnh gii quyt bi ton reader/writer dng tng qut. Chng trnh phi to ra 5 qu trnh ng thi vi hot ng c/ghi file bt k th nghim gii thut.

Ch 3:

Qun l b nh

1. Ti liu tham kho - The Design of the UNIX Operating System- Andrew S. Tanenbaum, Chng 7 - Interprocess Communications in UNIX-The Nooks and Crannies. - Ti liu hng dn thc hnh H iu hnh, H Nam. 2. Tm hiu cc hm truy cp b nh : - Tm hiu cch to qu trnh trong UNIX dng hm fork( ).

3.

Tm hiu cch cp pht b nh cho qu trnh trong h iu hnh UNIX. Tm hiu cc hm cho php ly cc thng tin v vng nh cp cho qu trnh cng nh cho php thay i cc vng nh . Ngn ng lp trnh s dng: C trn UNIX

Bi 3.1 : Vit chng trnh c khai bo 4 bin nh sau: - global l bin nguyn ton cc khng khi ng tr. - local l bin nguyn khai bo cc b trong hm doNoth( ) (hm ny khng lm g c) - intarray l mt con tr n bin kiu nguyn. Trong hm main(), hy gn global=1, sau in a ch cc segment ca qu trnh ra mn hnh. Cho bit a ch cc bin global, local v intarray (1). Tip theo, hy dng hm fork() to ra mt qu trnh con. Cho bit gi tr cc a ch trn trong qu trnh con (2). Hy gn global=2 trong qu trnh con v cho bit gi tr mi ca bin global trong qu trnh con v qu trnh cha. Trong qu trnh cha, sau khi dng fork(), hy gi hm doNoth(), sau dng malloc() xin mt vng nh cho mt mng 10 s nguyn v gn a ch u mng vo bin intarray. Tr li cc cu hi sau: Bin global l bin chung hay bin ring ca tng qu trnh? Bin intarray ca qu trnh cha nm trn stack hay trn heap? Bin local ca qu trnh cha nm trn stack hay trn heap?

Cc a ch (1) v (2) c khc nhau khng? Gii thch?

Ch 4: Thread
1. Ti liu tham kho - UNIX Internal, phn Thread and Lightweight Processes - Multithread Programming Guide. - Interprocess Communications in UNIX. - MSDN CDROM - Java How to Program, phn Threads 2. Tm hiu thread : - Tm hiu khi nim thread. - Phn bit gia m hnh x l dng multithread v dng nhiu process. - Tm hiu cch ng b gia cc thread trong Java v trong Linux. 3. Ngn ng lp trnh s dng c th l C, C++, Java trn UNIX hoc Windows. Bi 4.1 : ng dng multithread trong bi ton nhn ma trn. c vo 2 ma trn A & B t file, sau dng nhiu thread thc hin vic nhn 2 ma trn ny. Ghi ma trn kt qu ra mt file khc. Bi 4.2 : ng dng multithread trong bi ton x l nh. c vo mt ma trn A t file, sau dng nhiu thread thc hin x l trn ma trn ny nh sau : mt phn t trn ma trn l trung bnh cng ca cc phn t chung quanh n. Ghi ma trn kt qu ra mt file khc. Bi 4.3 : ng dng multithread trong bi ton sau : c vo mt ma trn A t file v nhp vo mt s k, sau dng n thread thc hin tm kim trn cc ma trn ny xem c bao nhiu phn t ging k. Mi ln tm thy phn t ging k th tng bin chung number (khi ng l 0) ln 1. Bi 4.4 : ng dng multithread trong bi ton sau : c vo mt dy A t file, dng n thread sp xp dy theo th t tng dn nh sau:

Mi thread ly mt phn dy a v sp theo th t tng dn Sau , 1 thread trn cc dy do n thread va ri sp xp thnh dy kt qu. Bi 4.5 : Cho ngi dng nhp vo 2 s nguyn dng a v b, sau dng n thread tm kim cc s nguyn t nm trong khong 2 s nhp. Mi ln tm c mt s th s tng bin chung number (khi ng l 0) ln 1. Bi 4.6 : Cho ngi dng nhp vo 2 s nguyn dng a v b, sau dng n thread tm kim cc s nguyn t nm trong khong 2 s nhp v ghi cc s ny ra file. Bi 4.7: c vo mt ma trn (kch thc N*N) t file, sau dng n thread tnh tng ca tng hng trn ma trn (1 thread nu tnh tng mt hng xong c th tnh tng ca mt hng khc). Dng mt thread thu thp cc kt qu ca cc thread kia v ghi vo mt file kt qu. Bi 4.8: S dng thread v cc phng thc ng b trn thread vit chng trnh producersconsumers vi 1 bounded buffer trong trng hp c nhiu producer v nhiu consumer. Bi 4.9: S dng thread v cc phng thc ng b trn thread gii quyt bi ton N trit gia n ti. Bi 4.10 : S dng thread v cc phng thc ng b trn thread vit gii quyt bi ton reader/writer dng tng qut.

Ch 5: Giao tip gia cc qu trnh


1. Ti liu tham kho - UNIX network programming, phn Interprocess Communications - Interprocess Communication in UNIX - Ti liu hng dn thc hnh H iu hnh, H Quc Thun. 2. Tm hiu cc c ch giao tip gia cc qu trnh trong UNIX - Tm hiu cc c ch giao tip gia cc qu trnh trong UNIX dng pipe, message queue, shared memory. - u nhc im ca tng phng php. 3. Ngn ng lp trnh s dng: C trn UNIX Bi 5.1 : To ra 2 qu trnh. Qu trnh th nht c t file nhiu chui lin tip, mi chui gm cc php ton +, -, *, / v hai ton hng. V d trong file s lu cc chui dng nh sau : 2+3 1 -2 4 *6 15 / 3 Sau qu trnh th nht truyn cc chui d liu ny cho qu trnh th hai. Qu trnh th hai thc hin tnh ton v tr chui kt qu v li cho qu trnh u tin ghi li vo file nh sau: 2+3 =5 1 - 2 = -1 4 * 6 = 24 15 / 3 =5 Thc hin bi ton dng message queue giao tip gia 2 qu trnh. Bi 5.2 :

Vit chng trnh tng t bi 5.1 nhng dng pipe giao tip. Bi 5.3 : Vit chng trnh tng t bi 5.1 nhng dng shared memory giao tip. Bi 5.4 : Vit chng trnh gm c 2 qu trnh. Qu trnh th nht cho ngi dng nhp vo t bn phm mt chui biu din mt php tnh gm cc phn t +, -, (, ). u tin ca cc php tnh trong ngoc (cp du ( & )) l cao nht, php + v cng u tin. V d: 1+2+(2-3-4) ((3+4)-5) (1+(-2)((3+4)-5)) Sau truyn chui d liu ny cho qu trnh th hai. Qu trnh th hai thc hin tnh ton trn v tr kt qu v cho qu trnh th nht hin th cho ngi s dng bit. Thc hin bi ton dng message queue giao tip gia 2 qu trnh. Bi 5.5 : Vit chng trnh tng t bi 5.4 nhng dng pipe giao tip. Bi 5.6 : Vit chng trnh tng t bi 5.4 nhng dng shared memory giao tip.

You might also like