2021. 6. 20. 22:05 Server
Process와 Thread의 차이점
반응형
Process란 운영체제로부터 자원을 할당받은 작업의 단위이다.
Thread는 Process의 자원을 이용하는 실행 흐름의 단위이다.
CPU 역시 Thread 단위로 점유하며 한개의 Process안에 여러개의 Thread가 존재 할 수 있다.
같은 Process에 속한 Thread들은 Process의 code, data, heap영역을 공유하며
이로 인해 context switching 시 다른 process의 thread가 cpu를 점유할때에 비하여
같은 Process에 속한 Thread가 CPU를 점유 시 레지스터에 복사하는 비용이 적어 더 효율적이다.
각각의 Thread는 고유의 Stack 영역을 지닌다.
이러한 특징 때문에 Process에 속한 특정 Thread가 code, data, heap 영역에서 문제를 발생시킬 경우
관련 Thread들이 모두 영향을 받는다.
반응형
'Server' 카테고리의 다른 글
Convoying 이란? (0) | 2021.06.25 |
---|---|
Lock Free 알고리즘에 대하여 (0) | 2021.06.25 |
동기화 기법들 (0) | 2021.06.20 |
Socket 처리 방법들 : IOCP와 ASIO 방식 등등 (0) | 2021.06.20 |
서버 Socket 설정하는 방법들 (0) | 2019.09.06 |