Quiz:Cursuri:Sincronizarea proceselor

{ Care din următoarele NU este un mecanism de sincronizare?
 * type=""}

- spinlock - mutex + memorie virtuala - semafor

{ Care din următoarele este un mecanism de sincronizare busy-waiting?
 * type=""}

+ spinlock - mutex - memorie virtuala - semafor

{ Care din următoarele instrucțiuni poate genera o condiție de cursă?
 * type=""}

- lock(&mutex); + a++ - TSL RX, LOCK - up(&mutex);

{ Care este numărul minim de lock-uri necesar pentru a genera un deadlock?
 * type=""}

- 1 + 2 - nu există un număr minim - nu se poate genera un deadlock folosind lock-uri

{ Care din următoarele forme de sincronizare NU folosește busy-waiting?
 * type=""}

- spinlock - algoritmul lui Peterson - alternare strictă + mutex

{ Când se poate preempta un proces pe un kernel preemptiv dar nu și pe un kernel non-preemptiv?
 * type=""}

- când îi expiră cuanta în timp ce execută cod utilizator + când îi expiră cuanta în timp ce execută cod kernel - când efectuează o operație blocantă în timp ce execută cod utilizator - când efectuează o operație blocantă în timp ce execută cod kernel

{ Ce mecanism de inserare/extragere a proceselor din coada de așteptare a unui semafor poate produce starvation?
 * type=""}

- FIFO - Round-Robin + LIFO - top-down

{ Câte semafoare sunt necesare pentru rezolvarea corectă a problemei producător-consumator? (mutexurile sunt considerate tot semafoare)
 * type=""}

- 1 - 2 + 3 - problema producător-consumator nu poate fi rezolvată corect folosind semafoare

{ Câte semafoare sunt necesare pentru rezolvarea simplă (fără evitare starvation sau prioritizare scriitori) pentru problema cititori-scriitori? (mutexurile sunt considerate tot semafoare)
 * type=""}

- 1 + 2 - 3 - problema cititori-scriitori nu poate fi rezolvată corect folosind semafoare

{ Cu ce diferă o barieră reentrantă de o barieră obișnuită?
 * type=""}

+ bariera reentrantă poate fi folosită într-un ciclu de execuție (for, while etc.) - bariera reentrantă poate fi implementată doar cu mutexuri - bariera reentrantă necesită suport hardware - bariera reentrantă poate fi folosita simultan de mai multe procese