#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <time.h>
int main()
{
FILE
*fp
= fopen("test.txt", "wt"); //저장할 파일 생성.
int i;
int j;
int k;
int status;
time_t rawtime; // 시간 출력
struct tm *timeinfo;
int dead_child_pid;
pid_t pid;
pid_t pid_child; // 부모와 자식의 pid확인 및 pid리턴값
pid_t pid_parent;
pid_t a[10];
for(i=0; i<5;i++)
{
pid = fork();
if (pid == -1)
{
return 1;
}
else if(pid==0)
{
for(j=0;j<3;j++)
{
printf("[%dprocess] #%d\n",getpid
(),j
); }
return 0;
}
}
while((dead_child_pid = wait(NULL)) != -1) {
printf("%d [child] 종료. %d [부모]\n", dead_child_pid
, getpid
()); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHVuaXN0ZC5oPgojaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiNpbmNsdWRlIDx0aW1lLmg+CgppbnQgbWFpbigpCnsKCiAgICBGSUxFICpmcCA9IGZvcGVuKCJ0ZXN0LnR4dCIsICJ3dCIpOyAgLy/soIDsnqXtlaAg7YyM7J28IOyDneyEsS4KCiAgICBpbnQgaTsKICAgIGludCBqOwogICAgaW50IGs7CiAgICBpbnQgc3RhdHVzOwogICAgdGltZV90IHJhd3RpbWU7ICAgICAgICAgICAgICAgICAgICAgLy8g7Iuc6rCEIOy2nOugpQogICAgc3RydWN0IHRtICp0aW1laW5mbzsKCiAgICBpbnQgZGVhZF9jaGlsZF9waWQ7CiAgICB0aW1lKCZyYXd0aW1lKTsKICAgIHRpbWVpbmZvID0gbG9jYWx0aW1lKCZyYXd0aW1lKTsKCiAgICBwaWRfdCBwaWQ7CiAgICBwaWRfdCBwaWRfY2hpbGQ7ICAgICAgICAgICAgICAgICAgICAvLyAgIOu2gOuqqOyZgCDsnpDsi53snZggcGlk7ZmV7J24IOuwjyBwaWTrpqzthLTqsJIKICAgIHBpZF90IHBpZF9wYXJlbnQ7CiAgICBwaWRfdCBhWzEwXTsKCgoKICAgIGZvcihpPTA7IGk8NTtpKyspCiAgICB7CiAgICAgICAgcGlkID0gZm9yaygpOwoKCgogICAgICAgIGlmIChwaWQgPT0gLTEpCiAgICAgICAgewogICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImZvcmsgZmFpbGVkIik7CiAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKHBpZD09MCkKICAgICAgICB7CgogICAgICAgICAgICBmb3Ioaj0wO2o8MztqKyspCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHByaW50ZigiWyVkcHJvY2Vzc10gIyVkXG4iLGdldHBpZCgpLGopOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgIH0KICAgIH0KCiAgICB3aGlsZSgoZGVhZF9jaGlsZF9waWQgPSB3YWl0KE5VTEwpKSAhPSAtMSkgewogICAgICAgIHByaW50ZigiJWQgW2NoaWxkXSDsooXro4wuICVkIFvrtoDrqqhdXG4iLCBkZWFkX2NoaWxkX3BpZCwgZ2V0cGlkKCkpOwogICAgfQoKICAgIHJldHVybiAwOwp9Cg==