[백엔드] 기술 면접 Top30 - #23 프로세스와 스레드의 차이
댓글수 56 ·
2023.10.03
프로세스와 스레드 프로세스 ( Process ) 운영체제에서 실행 중인 프로그램의 인스턴스이다. 독립된 메모리 공간을 가지며, 코드, 데이터, 스택, 힙 등의 자원을 분리하여 관리한다. 개별적인 실행 환경을 제공하므로 여러 프로세스 간에 데이터 공유가 어렵고, 프로세스 간 통신(IPC)이 필요하다. 프로세스 간에는 각각 독립된 CPU 자원을 할당받아 실행된다. 스레드란 스레드는 프로세스 내에서 실행되는 작은 실행 단위이다. 하나의 프로세스는 여러 개의 스레드를 가질 수 있으며, 스레드 간에는 같은 프로세스의 자원을 공유할 수 있다. 스레드는 같은 프로세스의 메모리 공간을 공유하므로 데이터 공유가 쉽다. 스레드는 프로세스 내에서 동시에 실행될 수 있으므로 멀티스레딩을 통해 병렬성을 구현할 수 있다. 스레드..