티스토리 뷰
좀비 프로세스(Zombie Process)
: 부모가 자식 프로세스의 종료 상태를 접수하지 않아 할당된 메모리가 없는 상태로 유지되는 자식 프로세스
좀비 상태의 프로세스는 시스템 자원의 낭비를 초래
( 해당 프로세스를 위한 제어 정보(프로세스 ID, CPU와 메모리 등의 자원 사용율 등)
부모 프로세스는 wait()와 waitpid()함수를 사용하여 자식 프로세스의 종료 상태를 접수
* wait() 함수와 waitpid() 함수를 사용하여 좀비 프로세스를 처리할 때 발생하는 문제점
: 자식 프로세스의 종료 시점을 정확히 알 수 없기 때문에 어느 시점부터 계속 대기하거나(wait() 함수) 반복적으로 종료를 확인해야 한다는 것이다.(waitpid())
부모 프로세스가 자식 프로세스가 종료될 때까지 계속 대기하거나 반복적으로 종료를 확인할 수 없는 경우에는 문제가 될 수 있음
이 문제는 프로세스가 종료할 때 발생시키는 비동기적인 시그널(SIGCHLD)을 처리하는 signal()함수를 사용함으로써 처리할 수 있음
: 부모가 자식 프로세스의 종료 상태를 접수하지 않아 할당된 메모리가 없는 상태로 유지되는 자식 프로세스
좀비 상태의 프로세스는 시스템 자원의 낭비를 초래
( 해당 프로세스를 위한 제어 정보(프로세스 ID, CPU와 메모리 등의 자원 사용율 등)
부모 프로세스는 wait()와 waitpid()함수를 사용하여 자식 프로세스의 종료 상태를 접수
* wait()와 waitpid() 함수 형식 |
#include<sys/wait.h> pid_t wait(int *statloc); pid_t waitpid(pid_t pid, int *statloc, int options); // 반환 : 성공시 프로세스 ID, 실패시 -1 // pid : 종료 확인을 원하는 자식 프로세스의 ID // statloc : 리턴된 값을 비롯해서 좀비의 여러가지 정보 저장 // options : WNOHANG를 인자로 전달하게 되면 이미 종료된 자식프로세스가 없어도 대기 상태로 들어가지 않고 바로 리턴 |
* wait() 함수와 waitpid() 함수를 사용하여 좀비 프로세스를 처리할 때 발생하는 문제점
: 자식 프로세스의 종료 시점을 정확히 알 수 없기 때문에 어느 시점부터 계속 대기하거나(wait() 함수) 반복적으로 종료를 확인해야 한다는 것이다.(waitpid())
부모 프로세스가 자식 프로세스가 종료될 때까지 계속 대기하거나 반복적으로 종료를 확인할 수 없는 경우에는 문제가 될 수 있음
이 문제는 프로세스가 종료할 때 발생시키는 비동기적인 시그널(SIGCHLD)을 처리하는 signal()함수를 사용함으로써 처리할 수 있음
'IT 이야기 > 프로그래밍' 카테고리의 다른 글
[프로그래밍 문제] 마이크로소프트 입사 시험에 나왔던 문제 (9) | 2010.07.29 |
---|---|
[C언어] fopen(), fprintf()함수를 이용한 파일 입출력 (0) | 2010.07.29 |
sigaction() 함수 사용 예제 프로그램 (0) | 2010.06.08 |
시그널(signal) (0) | 2010.06.08 |
wait()함수를 사용한 좀비 프로세스 제어 프로그램 (0) | 2010.06.08 |
다중 사용자 서버(Multi-user Server) (0) | 2010.06.08 |
[PHP] number_format Function (0) | 2010.05.01 |
[PHP] 1강. PHP는 무엇인가요? (0) | 2010.05.01 |
[Javascript] Window open() 함수 (0) | 2010.04.29 |
getbyhostaddr() 함수 예제 소스 (0) | 2010.04.27 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
- W3Schools Online Web Tutorials
- 구차니의 잡동사니 모음
- [IT]블로거팁닷컴
- 비앤아이님의 블로그
- Blog Suspect
- 즐거운하루 blog
- zinicap의 검색엔진 마케팅(SEM)
- 머니야머니야님의 블로그
- [Friend] AtinStory
- [기타배우기]해브원 박스
- [웹표준] SINDB.com
- 해커 C 이야기
- [애드센스] 길라잡이
- 정순봉의 IT SCHOOL
- 씨디맨의 컴퓨터이야기
- 2proo Life Story
- 못된준코의 세상리뷰
- [IT강좌] 정보문화사
- IN 대전
- 에우르트는 나쁜남자 -_-
- 씬의 싱크탱크
- 엔돌슨의 IT이야기
- 진이늘이
- 'Cooltime'의 블로그
- 후이의 Tistory
- Soulstorage
- 앤드&엔드의 블로그
- June Blog
- 노지의 소박한 이야기
- gbWorld
- 인터넷 속 나의 생각
- HarshNix
- ART of WEB
- 녹두장군 - 상상을 현실로
TAG
- C
- 소스
- C언어 소스
- MBTI
- 안드로이드
- 안드로이드 어플
- 리뷰
- 성공
- C언어 문제
- It
- MBTI 자료
- MBTI 강좌
- php
- 효과음
- 스마트폰
- 프로그래밍
- 인터넷 익스플로러
- 소스코드
- JavaScript
- 강의
- MBTI 검사
- 예제 소스
- 인터넷
- MBTI 테스트
- 안드로이드 어플 추천
- 강좌
- HTML
- 프로그래밍 문제
- C언어
- 모토로이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함