Powrót do listy plików
cw3b.c
#include "cw3.h"
int
main ()
{
int i, pid_nr;
pid_nr = getpid ();
signal(SIGALRM,SIG_IGN);
for (i = 0; i < 3; i++) /* trzykrotne wywolanie w procesach potomnych programu */
switch (fork ())
{
case -1:
perror ("fork error");
exit (1);
case 0:
execl ("./cw3.run", "cw3.run", "ALRM", "obs", NULL);
perror ("execl error");
exit (2);
default:
;
}
sleep (1);
kill (-pid_nr, SIGALRM);
/*
* If pid is less than -1, then sig is sent to every process in the
* pro cess group -pid
*
* Czyli wysłanie sygnału do grupy.
*/
sleep(3);
kill (-pid_nr, 9); //ubicie całej grupy, jako że w cw3 jest pętla nieskończona.
return 0;
}
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.