함수 기능
생성도리 새 프로세스가 exec 계열 함수로 새 프로그램을 실행하는 경우에 사용하는 시스템 호출 함수
자식이 먼저 실행됨이 보장
함수 원형
#include <unistd.h>
#include <sys/types.h>
pid_t vfork();
함수 예제
#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<errno.h>
#include<sys/types.h>
void ssu_local_func(void);
int main(void){
printf("Before vfork\n");
ssu_local_func();
printf("After ssu_local_func, my PID is %d\n",getpid());
exit(0);
}
void ssu_local_func(void){
pid_t pid;
if((pid = vfork())==0)
printf("I'm child. MY PID is %d\n",getpid());
else if (pid>0)
sleep(3);
else
fprintf(stderr , "vfork error\n");
}
함수 결과
리눅스시스템 프로그래밍 - 홍지만 저
교재 내에 있는 예제를 바탕으로 작성한 글 입니다.
'C & LINUX' 카테고리의 다른 글
C / LINUX getpid(2) getppid(2) getuid(2) geteuid(2) getgid(2) getegid(2) (0) | 2022.05.02 |
---|---|
C / LINUX setjmp(3) longjmp(3) (0) | 2022.05.02 |
C / LINUX fork() (0) | 2022.05.02 |
C / LINUX opendir(3) readdir(3) rewinddir(3) closedir(3) telldir(3) seekdir(3) (0) | 2022.05.02 |
C / LINUX utime() (0) | 2022.05.02 |