실행 단위
, 메모리
, 자원
, 실행 흐름
, 코드 덩어리
, 메모리 공유
Process와 Thread는 프로그램이 실행되는 단위의 일종입니다. Process는 메모리 상에서 실행 중인 프로그램으로, 운영체제로부터 자원을 할당받은 작업의 단위입니다. Thread는 이 Process 내에서 실행 흐름의 단위입니다.
기본적으로 프로그램은 파일이 저장 장치에 저장되어 있지만, 메모리에 올라가 있지 않은 정적인 상태인데, 단순히 코드 덩어리라고 할 수 있습니다. 그런데 이 프로그램이 실행된다는 것은 코드가 메모리에 올라가고 자원을 할당하는 것을 의미합니다. 이 상태에 놓인 프로그램을 Process라고 말합니다.
하지만 Process 하나로 모든 작업을 처리하기는 어렵기 때문에, 각 프로세스마다 내부의 실행 흐름을 만들어 더 작은 실행 단위를 만든 것이 바로 Thread입니다. 이때, 운영체제는 안정성을 위해서 각 Process마다 할당된 메모리에만 접근할 수 있도록 제약을 둡니다. 그래서 한 Process 내부의 Thread끼리는 서로 메모리를 공유하면서 작동합니다.
간단하게 핵심만 잘 정리 되어 있네요! 잘 읽었습니다. 감사합니다😄