프로세스
- 프로세스는 실행중인 프로그램이다.
- 디스크로에서 메모리로 적재되어 CPU의 할당을 받을 수 있다.
쓰레드
- 프로세스의 실행단위
- 한 프로세스 내에서 동작되는 여러 실행으로 프로세스내의 주소공간이나 자원을 공유한다.
멀티 쓰레드
- 메모리 공간과 시스템 자원 소모가 줄어들게 된다.
- 쓰레드 간의 공유된 자원을 사용해 쓰레드간의 통신이 간단하고 빠르다
멀티 쓰레드 문제점
- 자원을 공유하기 때문에 신경을 써야한다.
- 동기화 작업으로 인해 성능이 저하될 수 있다.
요약
프로세스
는 운영체제로 부터 자원을 할당받는 자원단위(실행중인 프로그램)
쓰레드
는 프로세스가 할당 받은 자원을 이용하는 실행 단위()
멀티 쓰레드
는 적은 메모리 사용과 빠르지만 자원을 공유해 신경쓸 것이 많다. 멀트 프로세스
는 자원을 많이 사용하지만 공유된 자원이 없어 신경쓸 것이 적다.