ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C/C++ getpid(2) getppid(2) getuid(2) geteuid(2) getgid(2) getegid(2)
    C,C++ & Linux 2020. 5. 23. 13:51
    728x90

    함수 기능

    프로세스 아이디 관련한 함수들입니다.

    getpid() : 호출한 프로세스의 프로세스 아이디를 알려줍니다.

    getppid() : 호출한 프로세스의 부모 프로세스 아이디를 알려줍니다.

    getuid() : 호출한 프로세스의 사용자 아이디를 알려줍니다.

    geteuid() : 호출한 프로세스의 유효사용자 아이디를 알려줍니다.

    getgid() : 호출한 프로세스의 그룹 아이디를 알려줍니다.

    getegid() : 호출한 프로세스의 유효 그룹 아이디를 알려줍니다.

     

    함수 원형

    #include <unistd.h>
    #include <sys/types.h>
    
    pid_t getpid();
    pid_t getppid();
    uid_t getuid();
    uid_t geteuid();
    gid_t getgid();
    gid_t getegid();

    반환값

    각 함수에 맞는 아이디를 리턴

    예제

    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <sys/types.h>
    
    
    int main(int argc, char *argv[], char *envpp[]) {
        printf("Process id\t\t=%d\n", getpid());
        printf("Parent process id\t=%d\n", getppid());
        printf("Real user id\t\t=%d\n", getuid());
        printf("Effective user id\t=%d\n", geteuid());
        printf("Real group id\t\t=%d\n", getgid());
        printf("Effective group id\t=%d\n", getegid());
        exit(0);
    }
    

     

    결과

     

     

     

     

     

     

     

     

     

     

    리눅스시스템프로그래밍 저자 : 홍지만
    https://book.naver.com/bookdb/book_detail.nhn?bid=14623672

    책에 기술된 예제 프로그램입니다. 책 내부에는 훨씬 더 많은 자료가 있습니다. (개인적으로 좋았습니다.)

    'C,C++ & Linux' 카테고리의 다른 글

    C/C++ vfork(2)  (0) 2020.05.24
    C/C++ fork(2)  (0) 2020.05.24
    C/C++ setrlimit(2) getrlimit(2)  (0) 2020.05.23
    C/C++ setjmp(3) longjmp(3)  (0) 2020.05.23
    C/C++ setenv(3) unsetenv(3)  (0) 2020.05.23

    댓글

Designed by Tistory.