sistemi si analogji e botës reale ( p.sh., hamë dhe ... · 2010-07-21 punim diplome 2 • sistemi...
Post on 13-Sep-2019
4 Views
Preview:
TRANSCRIPT
2010-07-21 PUNIM DIPLOME 2
• Sistemi si analogji e botës reale ( p.sh., hamë dhe dëgjojmë muzikë njëkohësisht)
– Disa procese ekzekutohen ‘njëkohësisht’! – multiprogramimi.
Por,
– Te sistemet njëprocesorike – ekzekutim konkurentë
– Te sistemet shumëprocesorike – ekzekutim i njëkohësishëm
• Çka do të thotë ekzekutim kokurentë?
• Ku është dallimi me mënyrën e ekzekutimit në sistemet multiprocesorike?
2010-07-21 PUNIM DIPLOME 3
• Dy procese p1 dhe p2 dëshirojnë ta rrisin variablën X për një:
• Ekzekutimi në një sistem multiprocesorik do të jetë:
procesori 1 procesori 2
lokal_1 := X; lokal_1:= lokal_1+ 1; X :=lokal_1;
lokal_2 := X;
lokal_2 := lokal_2+ 1;
X :=lokal_2;
lokal := X;lokal := lokal + 1X :=lokal;
supozojmë se variabla X ka vlerën 9
Vlera e X u bë
9+1=10
Vlera e X këtu
është 10Vlera e X u bë
10+1=11
2010-07-21 PUNIM DIPLOME 4
Një radhë tjetër e ekzekutimit:
procesori 1 procesori 2
lokal_1 := X;
lokal_2 := X;
lokal_1:= lokal_1+ 1;
lokal_2 := lokal_2+ 1;
X :=lokal_1;
X :=lokal_2;
Përfundimisht vlera e X është rritur vetëm për një në vend se të rritet për dy si pasojë e ndrrimit të radhës së ekzekutimit.
Vlera e X u bë
9+1=10Vlera e X është
9 Vlera e X është 9
Vlera e X u bë
9+1=10
2010-07-21 5
Ekzekutimi në një sistem njëprocesorik:
procesi 1 procesi 2
lokal_1 := X;
lokal_2 := X;
lokal_1:= lokal_1+ 1;
lokal_2 := lokal_2+ 1;
X :=lokal_1;
X :=lokal_2;
• Përsëri vlera e X është rritur vetëm për një e jo për dy
• Problemi i njëjtë në të dy sistemet por ku është dallimi?
Procesori i ipet P2
Procesori i ipet P1Procesori i ipet P2
Procesori i ipet P1
Procesori i ipet P2
Vlera e X është
9Vlera e X është
9Vlera e X u bë
9+1=10 Vlera e X u bë
9+1=10
2010-07-21 PUNIM DIPLOME 6
•Përparësitë
–Ekzekutim i disa aplikacioneve në të njëjtën kohë;
–Shfrytëzim më i mirë i resurseve;
–Performansa më të mira, etj..
•Të metat
–Nevoja për mbrojtjen e aplikacioneve;
–Koordinim në mesin e tyre;
–Komutim i procesorit në mes aplikacioneve- kompleksitet në sistem;
–Degradim i performansave me rritjen e numrit të aplikacioneve.
•Por, përparësitë janë më të mëdha se sa të metat që na i ofron konkurenca.
2010-07-21 PUNIM DIPLOME 7
• Problemi i Filozofëve që hanë;
• Problemi i Lexuesve dhe Shkrimtarëve;
• Problemi i Berberit të fjetur;
• Problemi i Prodhuesit dhe Konsumuesit;
• Problemi i Konsumatorëve të duhanit, etj..
2010-07-21 PUNIM DIPLOME 8
Përshkrimi i problemit
• Pesë filozofë
• Pesë shkopinjë
• Hanë shpageta
• Gjendjet e mundshme të filozofëve janë:
duke menduar, i uritur, duke ngrënë
Kërkesat
• Përjashtim reciprok-eliminimi i ’race condition’;
• Eliminim të urisë;
• Pritja e kufizuar;
• Progres-jo dedllok!
‘Race condition’ në mesin e filozofëve
2010-07-21 PUNIM DIPLOME 9
• Zgjidhjet softwerike
– Kyç variablat, turn variabla,
– Algoritmi i Dekker-it, Petersonit, etj..
• Zgjidhjet hardwerike
– ‘Test and set lock’,
– Pamundësimi i interrapteve, etj..
• Të metat
– Pritja e zënë (ang. Busy waiting)
– Zgjidhjet softwerike- të paparashikueshme
– Zgjidhjet hardwerike- ?
Pritja e zënë
2010-07-21 PUNIM DIPLOME 10
• Mutex-atçdonjëri filozof marrjen e shkopinjëve e bënë sipas skemës:
• Përjashtimi reciprok është garantuar
• Uria?
• Dedlloku?
• S’ka pritje të zënë- filozofët bllokohen derisa shkopi që e kërkojnë të bëhet i lirë
Duke menduar
Kyç shkopin e majtë
Kyç shkopin e djathtë
Ha për pak kohë
Çkyç shkopin e majtë
Çkyç shkopin e djathtë
2010-07-21 PUNIM DIPLOME 11
• Mutex-at
• Çfarë nëse të gjithë filozofët i marrin shkopinjtë e majtë përnjëherë?
• Filozofët kokëfortë
– Shkopin e marrë nuk e lëshojnë deri t’iu mundësohet ngrënia
si pasojë e kësaj ngjanë dedlloku
• Filozofët bujarë
– Nëse shkopi i dytë s’është në dispozicion lësho edhe të parin pret pak dhe provon përsëri më vonë!
– Nëse koha e pritjes e njëjtë-problemi i urisë
dedlloku Eliminohet
dedlloku
2010-07-21 PUNIM DIPLOME 12
E detyrojmë ndonjërin prej filozofëve që ta merr shkopin ndryshe?!
• Vetëm një filozof është i djathtë: • Një filozof i majtë një i djathtë në mënyrë alternative apo filozofët i ngjyrosim:
• Eliminohet dedlloku
• Uria është problem
i djathtë
i djathtë
Eliminimi i pritjes ciklike
Eliminimi i pritjes ciklike
i majtë
i majtë
i djathtë
i djathtë
i djathtë
2010-07-21 PUNIM DIPLOME 13
• Çdo shkopi ia japim nga një numër. Një filozof së pari duhet ta marrë shkopin me numër më të madh, fqinjë.
• S’ka dedllok-pritje ciklike
• Ka uri - skeduleri kurrë se ndërron logjikën!
– Në sistemin real s’është e arsyeshme një prishje e tillë e ciklicitetit.
– Si ti numrojmë një numër të madh të resurseve?
0
1
2
4
3
2010-07-21 PUNIM DIPLOME 14
Përdorimi i semaforave
• S’lejojmë më tepër se katër filozofë të ulen rreth tryeze!-na e mundësojnë semaforat
•S’ka dedllok
•Uria?
Katër filozofë me pesë shkopinjë, maksimalisht mund të hanë dy prej tyre.
Ka progres në sistem
S’iu është leju ulja
rreth tryeze
2010-07-21 PUNIM DIPLOME 15
3 2 1 0
• Numri i tiketave duhet të
jetë për një më i vogël se
sa numri i filozofëve Kutia me n-1 tiketa
S’ka tiketa!Duhet të pres
derisa dikush ta liroj ndonjë
tiketë
2010-07-21 PUNIM DIPLOME 16
• Nuk kufizohet numri i filozofëve që mund të ulen rreth tryeze;
• Filozofët i kërkojnë dhe i lirojnë që të dy shkopinjtë përnjëherë;
• Përjashtimi reciprok është garantuar
• Pritja ciklike (dedlloku) është eliminuar;
• Po uria?- problem jo i theksuar
vet monitori e sinkronizon dhënien e shkopinjëve tek filozofët
Filozofi i uritur
2010-07-21 PUNIM DIPLOME 17
• Filozofët këtu flasin në mes veti e jo përmes shkopinjëve.
Një filozof do të ha vetëm nëse e takon kushtin:
If (filozofi i djathtë)||(filozofi i majtë):= duke_menduar
merri shkopinjtë dhe ha;
else
ky_filozof:=duke_menduar;
• përjashtim reciprok- po!
• Dedllok- jo!
• Uri- konsiderohet si zgjidhja më e mirë për nga ky aspekt.
2010-07-21 PUNIM DIPLOME 18
• Gjenden n≥1 filozofë
dhe k ≥2 shkopinjë, k=n
• Jo patjetër dy shkopinjë-d.m.th., disa fqinjë janë të mundshëm!
• Ja disa gjeneralizime:
• Tek zgjidhjet e mëparshme s’kishim simetri e as distribuim.
- Lehmann dhe Rabin bazohen në zgjidhjet e rastësishme të shkopinjëve.
12 filozofë, 6 shkopinjë
12 filozofë, 6 shkopinjë
6 filozofë, tre shkopinjë
16 filozofë, 12 shkopinjë
2010-07-21 PUNIM DIPLOME 19
• Filozofët që hanë:
• Numër i çfardoshëm i shkopinjëve,
numër i çfardoshëm i filozofëve dhe
numër i çfardoshëm i fqinjëve.
- algoritmi majtas djathtas si i gjeneralizuar
këtu filozofët në skaje të një grafi
e lidhja-diçka që e shfrytëzojnë bashkarisht.
2010-07-21 PUNIM DIPLOME 20
• Filozofët që hanë a mund ti përdorim me rastin e çasjes në fajlla?
– Disa fajllave u çasemi vetëm për lexim e disave edhe për të shkruar në ta!
• Nevoja e filozofëve që pinë
– Ndonjë filozofë s’ është e detyrueshme ti merr që të gjithë shkopinjtë fqinjë;
– Fqinjtë kanë mundësi të pinë njëkohësisht, por nga shishe të ndryshme (dy procese kanë mundësi të lexojnë fajlla të njëjtë por jo edhe të shkruajnë në ta).
2010-07-21 PUNIM DIPLOME 21
• Një përdorim të gjerë edhe në zgjidhjen e problemeve të garimit me rastin e rezervimit të kanaleve në një sistem mobil.
• Këtu filozofët kanë mundësi edhe të lëvizin nga një stacion bazë në tjetrin- si dhe përbrenda vet qelulës.
top related