Registrácia | Prihlásiť

Skriptá: Operačné systémy - skuška

Skryť detaily | Obľúbený
Náhľady Náhľady
1.Implementacia semaforov.

-> Implementácia semafora :
typedef semaphore struct {
int value; /* hodnota semafora
struct list list_of_proces; /* zoznam procesov
Zadefinujeme dve operácie:
zablokuj_volajuci_proces() - zastaví proces, ktorý volal operáciu.
odblokuj_proces( P ) - uvedie do stavu pripravený proces P.

-> OPERACIE NAD SEMAFORMI:
wait(S):
S.value = S.value -1;
if ( S.value < 0 )
{
pridaj_proces(S.list_of_proces);
zablokuj_volajuci_proces();
}

signal(S):
S.value = S.value + 1;
if ( S.value <= 0 )
{
P = odstran_proces(S.list_of_proces);
odblokuj_proces( P );
}
Kľúčové slová:

OS

operačne systemy

tuke

Hodnotenie (0x):