1.2 Flashcards

(9 cards)

1
Q

Šta je distribuirana deljena memorija (DSM) i koji problem rešava?

A

DSM je integralni virtuelni adresni prostor. To je softverski (ponekad i hardverski) sloj koji omogućava procesu na jednom čvoru ili računarskoj mreži da pristupa i manipuliše memorijskim lokacijama koje fizički pripadaju drugim čvorovima, kao da je sve to jedna velika, globalno deljena memorija. Rešava problem da procesori u distribuiranim sistemima komuniciraju samo razmenom poruka. Kod DSM, adresni prostor je podeljen na stranice koje se prostiru na svim računarima. Kada procesor zatraži memorijsku adresu koja nije lokalna, nastaje prekid, nakon čega operativni sistem obezbeđuje zahtevanu stranicu prenosom sa računara gde se ona nalazi .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Objasnite koncept “lažnog deljenja” (false sharing) u kontekstu DSM-a i njegov uticaj.

A

“Lažno deljenje” kod DSM-a nastaje kada stranica memorije sadrži podatke od dva procesa koja
pripadaju različitim računarima . Iako su podaci logički nezavisni, operativni sistem mora stalno
da prenosi celu stranicu između ta dva procesora, jer oba procesa pristupaju podacima unutar
iste stranice. To rezultira neefikasnim prenosom podataka i smanjenjem performansi sistema .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Opišite mehanizam Poziva Udaljene Procedure (RPC) i kako se prenose parametri.

A
  1. Klijent poziva proceduru koja izgleda kao da je lokalna, koristeći odgovarajući API .
  2. Klijentov stub (stub) , koji pripada međusloju, formira poruku i poziva lokalni operativni sistem.
  3. Klijentov operativni sistem šalje poruku udaljenom operaEvnom sistemu preko mreže.
  4. Serverov operativni sistem predaje poruku serverovom stubu .
  5. Serverov stub , nakon raspakivanja parametara, poziva server (pravu proceduru) .

Prenos parametara kao referenci: Često se rešava mehanizmom copy/restore. Niz se kopira u
poruku i šalje serveru. Serverov stub poziva server sa pointerom na ovu kopiju (koji ima drugu
brojnu vrednost). Ako server unosi promene u niz, to se direktno odražava na poruku u
serverovom stubu.
Po završetku operacije, originalna poruka se vraća klijentovom stubu, koji kopira promene nazad klijentu .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Šta je proxy , a šta skeleton u kontekstu RMI (Remote Method InvocaEon)?

A

Proxy: Kada se klijent veže (bind) na distribuirani objekat, u klijentov adresni prostor učitava se
implementacija objektovog interfejsa, koja se naziva proxy . J edina stvar koju proxy radi je
pakovanje (marshalling) podataka u poruke za slanje i raspakivanje poruka sa odgovorima .

Skeleton: Pravi objekat se nalazi na serveru. Dolazni pozivi prvo prolaze kroz serverov stub,
koji se zove skeleton . Skeleton vrši raspakivanje klijentovih poruka i na odgovarajući način
poziva metodu objekta preko već spomenutog interfejsa .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Objasnite princip Lamportovog vremenskog žiga i kako se rešava problem konkurentnih
događaja sa istim žigom.

A

Lamportov vremenski žig se koristi za totalno uređenje događaja u distribuiranim sistemima .
Redosled događaja se određuje na osnovu pravila: za poruke x sa računara i i y sa računara j , x
prethodi y ako je Ti < Tj , ili ako je Ti = Tj i i < j . Kada proces pi primi poruku sa vremenskim žigom
Cms g , on ažurira svoj sat na Ci = max ( Ci , Cms g) i izvršava pravilo P1 ( Ci ←1+ max [ Cj , Ti ] ) .
Glavni problem je što dva konkurentna događaja na različiEm procesima mogu imaE is8
vremenski žig . Ovo se rešava dodavanjem broja računara (ID-a procesa) u poređenje, tako da se,
ako su vremenski žigovi jednaki, poruke ređaju na osnovu brojeva računara sa kojih poEču (npr. i
< j ) .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Koja je prednost vektorskih vremenskih žigova u odnosu na Lamportove?

A

Vektorski vremenski žigovi omogućavaju da se otkrije kakva je zavisnost između dva događaja u
sistemu . Ako događajima x i y dodelimo vektore vx i vy , tada važi: x → y (x prethodi y) ako i samo
ako vx < vy , i x || y (x je konkurentno sa y) ako i samo ako vx || vy . Time vektorski sistem vremena
zadovoljava uslov jake konzistentnos8 .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Navedite nedostatke vektorskih vremenskih žigova i kako se pokušavaju prevazići.

A

Glavni nedostatak je što bi se u sistemu sa velikim brojem procesa trošilo dosta vremena na slanje
celih vektora (minimalna dimenzija vektora potrebna za jaku konzistentnost je n , odnosno broj
procesa u sistemu) . Problem se pokušava prevazići na nekoliko načina:
Proces pi može da pamE poslednji vektor koji je slao nekom drugom procesu pj i da mu pri
sledećem slanju pošalje samo elemente vektora koji su se u međuvremenu promenili .
Proces pi može umesto celog vektora da šalje samo vrednost vt i [ i ] (lokalno logičko vreme). U
tom slučaju se gubi tranziEvno svojstvo zavisnosE događaja, ali performanse se mogu značajno
poboljšaE u sistemima gde to svojstvo nije bitno.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Objasnite problem “nedoslednog globalnog stanja” prilikom utvrđivanja trenutnog
snimka sistema.

A

Nedosledno globalno stanje nastaje kada prikupljeni trenutni snimci svih procesa ne odražavaju
konzistentnu sliku sistema . Na primer, globalno stanje je nedosledno ako poruka M3 ima svoj
završetak (primljena je) unutar preseka snimanja, ali nema početak (nije poslata) . PrakEčan
primer je bankovni račun raspodeljen između filijala A i B . Ako se u trenutku utvrđivanja stanja
(npr. u 3:00) sav novac iz filijale A prenosi ka filijali B, a snimak uhvaE da je novac oEšao iz A, ali
još nije sEgao u B, rezultat je pogrešno zbirno stanje na računu . Problem se pogoršava ako
časovnici nisu sinhronizovani .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Koji su uslovi za dosledno globalno stanje ?

A

Za dosledno (konzistentno) globalno stanje moraju biE zadovoljena sledeća dva uslova:
o Uslov U1: Svaka poruka Mi j koja je snimljena kao poslata u lokalnom stanju procesa Pi,
mora se pojaviE u stanju kanala Ci j ili lokalnom stanju prijemnog procesa Pj .
o Uslov U2: U prikupljenom globalnom stanju, za svaku posledicu (efekat), mora postojaE
i njen uzrok.
Ako poruka Mi j nije snimljena kao poslata u lokalnom stanju procesa Pi ,
tada ona ne može da postoji ni u stanju kanala Ci j niE u prikupljenom lokalnom stanju
prijemnog procesa Pj .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly