tarea.c

Go to the documentation of this file.
00001 /* INIT */
00002 #include "stdarg.h"
00003 #include <sys/types.h>
00004 #include <lib/routix.h>
00005 #include <routix.h>
00006 #include <string.h>
00007 #include <signal.h>
00008 
00009 void sig_chld(int);
00010 
00011 char *args[] = {"Init", NULL};
00012 
00013 int main (void)
00014 {
00015         printf("Iniciando Init.bin\n");
00016         signal(SIGCHLD, sig_chld);
00017         pid_t pid = fork();
00018         if (pid==-1) {
00019                 perror("init.bin");
00020                 exit(-1);
00021         }
00022         else if (pid==0) {
00023                 if (execve("shell.bin", args, NULL)==-1)
00024                         perror("shell.bin");
00025         }
00026         else while(1);
00027 }
00028 
00029 void sig_chld(int signo)
00030 {
00031         pid_t pid;
00032         int value;
00033         pid = waitpid(-1, &value, WNOHANG);
00034         printf("Init catcheo la finalizacion de %d con el valor %d\n", pid, value);
00035 }

Generated on Sun May 30 18:38:35 2004 for Routix OS by doxygen 1.3.6