multithreading1 [OS] 멀티 프로세스 & 멀티 스레드 with Python 프로세스 · 스레드 프로세스가 디스크로부터 메모리에 적재되어 실행 중인 프로그램이라면 스레드는 프로그램을 실행하는 주체이다. 프로세스는 Code, Data, Stack, Heap의 구조로 된 독립된 메모리 영역을 할당받는다. 이들은 서로 격리되어 있으며, 별도의 고유한 주소 공간을 가진다. 운영 체제는 각 프로세스에 대한 완전한 정보를 유지관리하기 위해 데이터 구조를 사용하는데, 이를 PCB(Process Control Block)이라고 한다. 프로세스가 서로 독립적이기 때문에 IPC를 사용한 통신을 한다. 컨텍스트 스위치 비용이 비싸다. 동기화 작업이 필요 없다. 스레드는 경량화된 프로세스이다. 한 프로세스 내에서 Stack만 할당받고, Code, Data, Heap 영역을 서로 공유한다. 공유된 자원.. 카테고리 없음 2023. 1. 18. 이전 1 다음 반응형