Powrót do listy plików
sem.c
#include "sem.h"
int
main (int argv, char *argc[])
{
int s;
pid_t pid;
int czas;
s=atoi(argc[1]);
//printf("[iii] identyfikator semafora [%i]",s);
pid = getpid ();
printf ("\n[>>>][%i] nastąpi próba wejścia do sekcji krytycznej",pid);
printf("\t wartość semafora [%i]\t\t czekających [%i]",sem_val(s),sem_ile(s));
P (s, pid);
//printf ("\n[iii] krytyczna-początek");//początek sekcji krytycznej
sleep (czas = opoznienie ());
// printf("\n[iii] krytyczna-koniec");
V (s, pid); //koniec sekcji krytyczej
return 0;
}
int
opoznienie ()
{
int czas = (5.0 * rand () / (RAND_MAX + 1.0));
//printf("%i\n",czas);
return czas;
}
składania pokolorowana przez
Code2HTML, v. 0.9.1
Materiały z Systemów Operacyjnych udostępnione zostały na zasadach licencji GPL w wersji 2.