본문으로 바로가기
homeimage

프로세스

해당되는 글 17
  • thumbnail
    컴퓨터/프로그래밍

    C언어 프로세스 ID 구하기 함수 getpid()

    C getpid() 프로세스 ID 구하기 함수 실행 중인 프로세스 ID를 구합니다. 헤더: sys/types.h,unistd.h 형태: pid_t getpid(void) 인수: - 반환: 이 함수는 항상 성공하며 프로세스 ID를 반환합니다. 프로세스 ID 구하는 함수 종류 getpid() 실행 중인 프로세스 ID를 구합니다. getppid() 부모 프로세스의 ID를 구합니다. C언어 getpid() 함수 예제 #include #include int main() { int counter = 0; pid_t pid; printf( "저의 프로세스 ID는 %d 입니다.\n", getpid()); pid = fork(); switch( pid) { case -1 : printf( "자식 프로세스 생성 실패\n"..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 프로세스 생성 함수 fork()

    C함수 프로세스 생성 fork() fork()는 현재 실행되는 프로세스에 대해 복사본 프로세스를 생성합니다. 헤더: unistd.h 형태: pid_t fork(void) 인수: - 반환: pid_t -1 : 실패 0 == 자식 프로세스, 새로 생성된 프로세스임 0 < 생성된 자식 프로세스 PID Microsoft Windows 프로그래밍만 해 왔던 저로서는 참 신기하면서도 마음에 드는 함수였습니다. 물론 Microsoft Windows 프로그램은 GUI가 대부분이므로 fork()로 프로세스를 새로 만들기에는 무리가 있습니다만, 실행 중에 독립된 작업이 가능하다면 프로세스를 별개로 나누어 실행하는 것이 여러 모로 편리하고, 프로그램 작성에도 작업에 따라 집중할 수 있어 좋습니다. fork()함수는 마치 마..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 및 대기 함수 system()

    C함수 다른 프로그램 실행 및 대기 system() 다른 프로그램을 실행하고 종료할 때까지 기다립니다. 예제를 먼저 보시겠습니다. #include #include int main() { system( "ls -al"); printf( "system() 시행 후에, 이 문자열이 출력됩니다.n"); } 실행하면 아래와 같이 출력됩니다. ]$ ./a.out 합계 72 drwxr-xr-x 2 jwjw jwjw 4096 9월 30 13:41 . drwxr-xr-x 7 jwjw jwjw 4096 9월 25 06:20 .. -rwxrwxr-x 1 jwjw jwjw 4815 9월 30 13:41 a.out -rw-r--r-- 1 jwjw jwjw 146 9월 30 13:41 test.c -rw-r--r-- 1 jwjw..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 함수execve()

    C함수 다른 프로그램 실행 execve() 다른 프로그램을 실행하고 자신은 종료합니다. execle() 이나 execve() 처럼 exec 함수 중 e 로 끝나는 함수는 환경변수를 지정할 수 있습니다. 헤더: unistd.h 형태: int execle( const char *path, const char *arg , ..., char * const envp[]) 인수: char *char 디레토리 포함 전체 파일 명 const char *arg 인수 목록 char * const envp[] 환경 설정 목록 반환: 실패일 때만 -1 execle() 과의 차이점은 프로그램의 인수와 환경변수 목록을 모두 이중 배열로 처리했다는 점입니다. execle()함수는 char *envp[] = { "HTTP=baday..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 함수 execvp()

    C함수 다른 프로그램 실행 execvp() execvp()는 PATH에 등록된 디렉토리에 있는 프로그램을 실행합니다. exec 함수는 다른 프로그램을 실행하고 자신은 종료합니다.. 헤더: unistd.h 형태: int execvp( const char *path, char *const argv[]) 인수: char *path 실행 파일의 디레토리 포함 전체 파일 명 char *argv[] 인수 목록 반환: 실패일 때만 -1 exec 함수에는 아래와 같이 여러 가지가 있습니다. 함수 이름 int execl( const char *path, const char *arg, ...) int execlp( const char *file, const char *arg, ...) int execle( const ch..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 함수 execv()

    C함수 다른 프로그램 실행 execv() 다른 프로그램 을 실행하고 자신은 종료합니다. 헤더: unistd.h 형태: int execv( const char *path, char *const argv[]) 인수: char *path 실행 파일의 디레토리 포함 전체 파일 명 char *argv[] 인수 목록 반환: 실패일 때만 -1 exec 함수에는 아래와 같이 여러 가지가 있습니다. 함수 이름 int execl( const char *path, const char *arg, ...) int execlp( const char *file, const char *arg, ...) int execle( const char *path, const char *arg ,..., char * const envp[]) ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 함수 execle()

    C함수 다른 프로그램 실행 execle() 다른 프로그램을 실행하고 자신은 종료합니다. execle() 처럼 exec 함수 중 e 로 끝나는 함수는 환경변수를 지정할 수 있습니다. 헤더: unistd.h 형태: int execle( const char *path, const char *arg , ..., char * const envp[]) 인수: char *char 디레토리 포함 전체 파일 명 const char *arg 인수 목록 char * const envp[] 환경 설정 목록 반환: 실패일 때만 -1 exec 함수에는 아래와 같이 여러 가지가 있습니다. 함수 이름 int execl( const char *path, const char *arg, ...) int execlp( const char ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 execlp()

    C함수 다른 프로그램 실행 execlp() PATH 에 등록된 디렉토리를 참고하여 다른 프로그램을 실행하고 종료합니다. 헤더: unistd.h 형태: int execlp( const char *file, const char *arg, ...) 인수: char *file 실행할 파일 이름 const char *arg 인수 목록 반환: 실패일 때만 -1 exec 함수에는 아래와 같이 여러 가지가 있습니다. 함수 이름 int execl( const char *path, const char *arg, ...) int execlp( const char *file, const char *arg, ...) int execle( const char *path, const char *arg ,..., char * con..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 함수 execl()

    C함수 다른 프로그램 실행 execl() 다른 프로그램을 실행하고 자신은 종료합니다. 헤더: unistd.h 형태: int execl( const char *path, const char *arg, ...) 인수: char *path 실행 파일의 디레토리 포함 전체 파일 명 const char *arg 인수 목록 반환: 실패일 때만 -1 상세 설명 exec 함수에는 아래와 같이 여러 가지가 있습니다. 함수 이름 int execl( const char *path, const char *arg, ...) int execlp( const char *file, const char *arg, ...) int execle( const char *path, const char *arg ,..., char * cons..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 자식 프로세스 종료 확인을 위한 매크로

    C언어 자식 프로세스 종료 확인을 위한 매크로 wait()나 waitpid()에서 자식 프로세스의 종료 상태를 확인하기 위한 매크로를 설명합니다. 헤더: wait.h 형태: - 인수: - 반환: - wait()나 waitpid()에서 자식 프로세스의 종료 상태를 변수 status값으로 확인할 수 있습니다. 8비트 8비트 정상 종료 프로세스 반환 값 0 비정상 종료 0 종료 시킨 시그널 번호 변수 값을 직접 확인하는 것보다는 wait.h에서 제공하는 매크로를 사용하는 것이 더 편하며 컴파일 업그레이드 영향을 받지 않습니다. 매크로 설명 WIFEXITED( status) 자식 프로세스가 정상적으로 종료되었다면 TRUE WIFSIGNALED( status) 자식 프로세스가 시그널에 의해 종료되었다면 TRUE ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 자식 프로세스 종료 확인 함수 waitpid ()

    C함수 자식 프로세스 종료 확인 waitpid() wait()함수처럼 자식 프로세스가 종료될 때까지 대기합니다. 차이점은 wait() 함수가 자식 프로세스 중 어느 하나라도 종료되면 복귀되지만, 즉 대기에서 풀리지만 waitpid()는 특정 자식 프로세스가 종료될 때까지 대기 합니다. 또한, wait()는 자식 프로세스가 종료될 때까지 block되지만 waitpid()는 WNOHANG 옵션을 사용하면 block되지 않고 다른 작업을 진행할 수 있습니다. 헤더: wait.h 형태: pid_t waitpid(pid_t pid, int *status, int options) 인수: pid_t pid 감시할 자식 프로세스 ID int *status 자식 프로세스의 종료 상태 정보 int options 대기를 위..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 자식 프로세스가 종료될 때까지 대기 함수 wait()

    C함수 자식 프로세스가 종료될 때까지 대기 wait() 자식 프로세스 작업이 끝날 때 까지 대기하며, 자식 프로세스가 종료한 상태를 구합니다. 헤더: wait.h 형태: pid_t wait(int *status) 인수: int status 자식 프로세스 종료 상태 반환: pid_t 종료된 자식 프로세스 ID wait()함수를 실행하면 자식 프로세스가 종료될 때가지 대기합니다. 만일 자식 프로세스가 정상 종료하여 main()에서 return 값을 반환하거나, 또는 exit()로 값을 반환하며 정상 종료했다면 wait( int *status)에서 status의 변수 값의 상위 2번째 바이트에 반환 값을 저장합니다. 또는, 어떤 시그널에 의해 종료되었다면 최하위 바이트에 시그널 번호가 저장됩니다. 즉, 8비트..
    최근글
    이모티콘창 닫기
    울음
    안녕
    감사해요
    당황
    피폐

    이모티콘을 클릭하면 댓글창에 입력됩니다.