본문 바로가기
개발 업무(코딩)-개발자였을때 썼던..

c언어 리눅스(linux) fork를 이용한 프로세스 생성 예제

by 주용사 2023. 1. 8.
728x90
#include <stdio.h>
#include <stdlib.h>
//#include <string.h>
//#include <sys/ipc.h>
#include <sys/shm.h>
#include <sys/types.h>
#include <unistd.h>  // 자식프로세스 fork할 용도

int main()
{
        pid_t pid;

        int x = 0;

        pid = fork(); // 부모에게는 자식의 pid를 받아내고 자식에게는 0을 준다. -> 자식 프로세스는 부모를 복제한다.

        if(pid > 0)
        {
                x = 1;
                printf("부모 pid : %ld, x : %d, pid : %d\n", (long)getpid(), x, pid);
        }
        else if(pid == 0){
                x = 2;
                printf("자식 pid : %ld, x : %d, pid : %d\n", (long)getpid(), x, pid);
        }
        return 0 ;
}
728x90