Siemakno! Mam mały problem z teorią z programowania współbieżnego. Pomoże ktoś?
1.Dane są dwa diagramy procesów współbieżnych:
{ x = y = z = 0 }
x = z : z:= z + 1
y = z : x := x + 1
x = z : y := y + 1
A) JEST MOŻLIWE, ŻE WSZYSTKIE 3 PROCESY BĘDĄ SUKCESYWNIE WYKONYWANE
B) DOKŁADNIE JEDEN PROCES MUSI ZOSTAĆ ZAGŁODZONY
C) DOKŁADNIE DWA PROCESY MUSZĄ ZOSTAĆ ZAGŁODZONE
D) MUSI DOJŚĆ DO BLOKADY WSZYSTKICH 3 PROCESÓW
2. Rozważmy następujące rozwiązanie problemu 4 ucztujących filozofów (filozofowie są ponumerowani 0 .. 3, widelce tak samo, i-ty filozof ma przy prawej ręce i-ty widelec, przy lewej widelec o numerze (i+1) mod 4).
widelec: array [o .. 4] of semafor := 1;
PROGRAM FILOZOFÓW O NUMERACH PARZYSTYCH:
while true do
begin
myślenie;
czekaj (widelec[i]);
czekaj (widelec[i+1]);
jedzenie;
sygnalizuj (widelec[i]);
sygnalizuj (widelec[i+1])
end;
PROGRAM FILOZOFÓW O NUMERACH NIEPARZYSTYCH
while true do
begin
myślenie;
czekaj (widelec[i+1] mod 4);
czekaj (widelec[i]);
jedzenie;
sygnalizuj (widelec[i+1] mod 4);
sygnalizuj (widelec[i ])
end;
A) ROZWIĄZANIE NIE MOŻE DOPROWADZIĆ DO BLOKADY ANI INDYWIDUALNEGO ZAGŁODZENIA
B) ROZWIĄZANIE MOŻE DOPROWADZIĆ DO INDYWIDUALNEGO ZAGŁODZENIA, ALE NIE DO BLOKADY
C) ROZWIĄZANIE MOŻE DOPROWADZIĆ DO BLOKADY, ALE NIE MUSI
D) ROZWIĄZANIE MUSI DOPROWADZIĆ DO BLOKADY
3.Jeżeli formuła □◊p jest inicjalnie prawdziwa dla pewnej wartości formuły atomowej p. to dla tej wartości na pewno:
A) O□P jest inicjalnie prawdziwa
B) ◊□p jest inicjalnie prawdziwa
C) O□◊p jest inicjalnie prawdziwa
D) □Op jest inicjalnie prawdziwa
4. W przeciwieństwie do kolejki FIFO, kolejka komunikatów umożliwia:
A) wybranie dowolnego przechowywanego komunikatu
B) zmianę kolejności umieszczonych już komunikatów
C) Wybranie najdawniej wstawionego komunikatu o podanym typie
D) usunięcie ostatniego wstawionego komunikatu
5. Wynikiem wykonania poniższego programu:
#define _REENTRANT
#include <pthread.h>
int x;
pthread_t tid;
void *funkcja ()
{ pthread_detach (tid);
printf("5\n:);
return; }
main()
{ pthread_create(&tid, NULL, funkcja, NULL);
if (pthread_join (tid, NULL) -- 0 printf ("7\n");
exit (0); }
przy założeniu pomyślnego utworzenia wątku przez pthread_create będzie wyświetlone:
A) zawsze tylko liczby 5
B) zawsze tylko liczby 7
C) zawsze tylko liczby 5 i 7
D) jednej lub dwóch liczb
Z GÓRY DZIĘKI ZA POMOC!!!!!!!!!