#include #include #include #include "hms.h" #include "verrou.h" #define VERROU "/tmp/verrou" #define DELAI 3 int main(void) { int h; int m; int s; int pid = getpid(); printf("\n"); while (! verrou_mis(VERROU)) { hms(&h, &m, &s); printf("[%5d] à %02d:%02d:%02d : attente\n", pid, h, m, s); sleep(1); } /* La ressource est accessible : verrouillage */ hms(&h, &m, &s); printf("[%5d] à %02d:%02d:%02d : verrouillage %d sec.\n", pid, h, m, s, DELAI); sleep(DELAI); /* Fin du travail et libération de la ressource */ hms(&h, &m, &s); printf("[%5d] a %02d:%02d:%02d : libération\n", pid, h, m, s); verrou_oter(VERROU); return EXIT_SUCCESS; }