운영체제 · 프로세스와 스레드 · 퀴즈
프로세스 확인
문항 7개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
좀비 프로세스가 차지하는 것은?
- 메모리를 많이 쓴다
- CPU 를 쓴다
- 디스크를 쓴다
- PID 자리 — 종료 코드만 남아 있다
부모가 먼저 죽은 프로세스의 PPID 는?
- 0 — 부모가 없어졌으니 부모 자리도 0 이 된다
- 그대로 유지된다 — 죽은 부모의 PID 가 그대로 남는다
- 자기 자신 — 스스로를 부모로 삼아 고아가 되지 않는다
- 1 — init 또는 PID 1 이 넘겨받는다
컨테이너에서 좀비가 쌓이는 이유는?
- 메모리가 부족해 커널이 정리를 뒤로 미루기 때문
- 컨테이너 런타임이 쓰는 커널에 버그가 있기 때문
- PID 1 이 init 이 아니라 넘겨받은 좀비를 거두지 않는다
- 네트워크가 끊겨 종료 신호가 전달되지 않기 때문
VSZ 와 RSS 의 차이는?
- VSZ 는 잡아 둔 주소, RSS 는 실제로 붙은 물리 메모리
- 이름만 다를 뿐 언제나 같은 값을 보여 준다
- VSZ 가 항상 RSS 보다 작게 나온다
- RSS 는 스왑을 포함한 디스크 사용량이다
파일을 지웠는데 디스크가 안 비는 이유는?
- 페이지 캐시가 아직 내용을 붙잡고 있어서
- 지울 권한이 없어 삭제 자체가 실패해서
- 파일시스템의 블록 반환 처리에 버그가 있어서
- 그 파일을 열어 둔 프로세스가 아직 살아 있어서
TERM 과 KILL 의 차이는?
- KILL 이 TERM 보다 빠르게 전달된다
- KILL 만 root 권한이 있어야 보낼 수 있다
- TERM 은 프로그램이 받아 정리할 수 있고 KILL 은 커널이 그냥 없앤다
- 이름만 다를 뿐 동작은 똑같다
리눅스에서 스레드는?
- 프로세스와 완전히 별개인 커널 객체다
- 메모리를 공유하는 태스크로 구현된다
- 프로세스와 완전히 같아 구분이 없다
- 커널만 만들 수 있고 사용자 코드는 못 만든다