IT_Infra/Architecture
[IT_Infra] 프로세스와 스레드
리딩리드
2016. 9. 12. 22:31
프로세스와 스레드
- 프로세스 및 스레드는 프로그램 실행파일이 아니라 OS상에서 실행돼서 어느 정도 독립성을 가짐
- 프로세스와 스레드는 메모리 공간이 필요하며 커널에 의해서 확보된다
1. 프로세스
1) 장점
- 메모리를 각각 할당 받는다
- 개별 처리 독립성이 높다
2) 단점
- 메모리를 독자적으로 사용하기 때문에 생성시 CPU 부하발생
- CPU 부하를 줄이기 위해 미리 프로세스를 시작시킨다(pooling)
2. 스레드
1) 장점
- 생성 시 부하가 낮다
2) 단점
- 메모리 공간을 공유하기 때문에 의도하지 않은 데이터 읽기/쓰기가 발생
3. 프로세스의 공유?
- 메모리 공간을 공유할 수 있다(DB서버)
- 예: 캐시로 저장하는 데이터는 공유 메모리에 놓고, 단독 데이터는 전용 메모리에 둔다