init   init Process   init 프로세스

(2017-01-22)

exec, exec(), exec System Call, exec 시스템 호출, fork, fork(), fork System Call, fork 시스템 호출

1. init 프로세스UNIX가 처음 시동될 때, 
     - 즉, 일련의 부팅 과정이 끝나고, 커널이 메모리에 로드되고, 제어권이 커널에 주어지고,  
     - 커널로 하여금 여러가지 제반환경을 구축한 후에는,
  ㅇ 오직 한 개의 프로세스 만이 있게 되는데, 이것을 init 라고 함


2. init 프로세스 특징

  ㅇ init 프로그램 화일의 위치  :  /sbin/init 

  ㅇ init의 모든 동작
     - 커널이 시동된 후에 init는 대개 시스템 의존적인 초기화 화일들을 읽고(/etc/rc*),
       다중 사용자 모드와 같은 원하는 상태시스템을 가져감
     - /etc/inittab 화일에 명시된 대로 실행

  ㅇ 모든 프로세스의 부모 프로세스
     - init는 커널에 의해 직접 실행되는 프로세스이며 모든 프로세스는 init로부터 출발함
     - init는 모든 프로세스의 부모 프로세스이고, 동시에 사용자 로그인 의 부모 프로세스


3. PID (Process IDentifier)

  ㅇ init의 프로세스 식별자인 PID(Process IDentifier)는 1  
  ㅇ 한편, PID는 init가 1 인 것을 제외하고,
     나머지 프로세스는  2 부터 32768 사이의 양의 정수 값


4. 프로세스 제어시스템 호출 : exec, fork부팅과정이 끝난 후 존재하는 단 한개의 init 프로세스는 그로부터 fork 및 exec라는
     시스템 호출을 통해 수백 수천개의 프로세스가 돌아가게 됨

  ㅇ exec()
     - 단지 현재의 프로세스디스크 상의 새로운 프로그램으로 대치하여 수행시키는
       UNIX 시스템 호출을 말함

  ㅇ fork()
     - UNIX에서 새로운 프로세스를 생성할 때 사용하는 시스템 호출
        . 현재 프로세스(부모 프로세스)의 사본(자식 프로세스)을 생성하고,
        . 그후 부모 및 자식 프로세스는 모두 fork() 문 바로 다음의 코드들을 실행


[UNIX 프로세스] 1. 프로세스 2. 시스템 호출 3. init,exec,fork 4. 시그널 5. 좀비

 
        최근수정     요약목록     참고문헌