프로세스
-실행 중 인 프로그램
-프로세스마다 고유의 식별자인 PID가 할당됨
-init의 PID는 1이고, 기타 다른 모든 프로세스는 이 프로세스의 자식 프로세스 격이다.
포어그라운드 프로세스
-사용자와 상호작용하는 프로세스
-화면에 직접적으로 보인다.
백그라운든 프로세스
-사용자와 직접적인 상호작용을 하지 않는 프로세스
-시스템 프로그램이나 데몬 같이 직접적으로 보이지 않는다.
fork()
-프로세스를 위한 메모리 할당 후 부모 프로세스의 모든 것을 복사시킨다.
exec() 계열
-이 함수를 호출하는 프로세스가 인자로 전달한 프로그램으르 변경된다.
-이미 메모리가 할당된 프로세스가 호출하는 것이므로 새로운 메모리를 할당받지는 않는다.
데몬 (daemon)
-부팅 시 자동으로 실행되늰 백그라운드 프로세스이다.
-메모리에 상주하면서 사용자의 특정 요청이 오면 즉시 실행되는 대기 중인 서버 프로세스가 있다.
1. Standalone 데몬
-독립적으로 수행되며 서비스 요청에 응답하기 위해 항상 메모리에 상주한다.
-빠른 응답속도를 요하는 경우에 사용
-/etc/inetd.d
2. 슈퍼데몬
-inetd와 같이 다른 데몬들의 상위에 존재하는 standalone 데몬
-이 자체도 데몬이지만 다른 서비스들을 제어하고 관리
-커널 2.4 버전부터 xinetd가 inetd 역할을 수행
3. inetd 타입 데몬
-상위 데몬(슈퍼데몬)이 활성화 되어야만 서비스를 제공 할 수 있다.
-/etc/xinetd.d
시그널
-이벤트 발생을 위한 소프트웨어 인터럽트
-프로세스가 시그널을 받으면 보통 3가지 방식으로 처리
1. SIG_IGN ( = 1)
-해당 시그널을 무시
2. SIG_ERR ( = -1)
-강제 종료
3. SIG_DFL ( = 0)
-디폴트 핸들러를 호출
시그널 목록