프로세스 - 실행중인 프로그램
실행중인 프로그램의 한 인스턴스
예를 들어 사용자가 두 개의 메모장 프로그램을 실행시켰으면 둘 다 같은 프로그램이지만 다른 프로세스
운영체제는 프로그램을 프로세스 단위로 관리
프로세스는 각각 4GB의 주소 공간과 파일, 메모리, 스레드 등의 객체들을 소유
프로세스가 종료될 때 프로세스가 소유한 모든 자원은 운영체제에 의해 파괴
모든 것은 프로세스에 의해 소유
스레드는 윈도우와 메시지 큐, 스택만 소유
소유 관계는 프로세스 > 스레드 > 윈도우
실제로 작업을 하는 주체는 스레드가 담당
프로세스는 단지 메모리 상에만 존재하기만 할 뿐
실행과 동시에 스레드를 하나 만들고 스레드를 호출함으로써 스레드에게 모든 작업을 맡김
정리하면 프로세스는 스레드를 담는 껍데기, 실제 일을 하는 것은 스레드
프로세시는 최소한 한 개 이상의 스레드를 가진다
프로세스와 동시에 만들어지는 스레드를 주 스레드(Primary Thread)라 하며 이외의 다른 스레드도 가질 수 있음
하나의 프로세스가 여러 개의 스레드를 가질 수 있기 때문에 멀티 스레드
댓글