프로세스와 스레드 자바 스터디의 일환으로 자바의 멀티 스레드 프로그래밍을 학습하던 중 이를 다루기 위해서는 앞서 프로세스와 스레드의 차이 그리고 더 나아가서 멀티 태스킹과 멀티 스레드의 차이에 대해 명확히 알아야 할 필요성을 느꼈다. 우선 프로세스와 스레드의 차이에 대해 알아보자. 프로세스란? 먼저 프로세스란 무엇일까? 일반적으로 프로그램은 저장장치(하드디스크 등)에 저장되어 있는 정적인 상태(코드로 구성된 파일)을 뜻하는 반면, 프로세스는 실행 중인 프로그램(동적인 상태)으로서 프로그램 자체와 프로그램의 상태가 메모리 상에서 실행되는 작업 단위를 뜻한다. 참고로 프로그램이 실행 시에는 운영체제가 실행에 필요한 코드와 데이터를 메모리에 가져오고, 프로세스 제어 블록을 생성 및 부여하고, 작업에 필요한 메..