메모리 상에서 실행 중인 프로그램을 뜻함
여러 프로세스가 동시에 실행되고 관리 되는거라 착각할수 있지만 CPU는 한번에 한가지 명령어 밖에 처리하지 못하기 때문에 동시가 아니라 빠른 속도로 프로세스들을 번걸아가며 실행하고 관리하는것이다.
한 프로세스 안에서 여러 갈래의 작업들이 진행되는데 이 갈래를 스레드라 칭함
이미지 출처: https://goodgid.github.io/What-is-Thread/
프로세스들은 컴퓨터의 자원을 분할해서 사용하지만 (별도의 주사공간을 독립적으로 할당받음 code,heap,stack 등)
스레드는 프로세스마다 주어진 자원을 함께 사용함 (stack만 할당받고 나머지 영역은 같은 프로세스 안에 있는 스레드끼리는 공유함)
멀티 프로세스 - 하나의 어플리케이션을 여러개의 프로세스로 구성하여 각 프로세스가 하나의 작업을 처리하도록 하는것을 뜻함
멀티 스레드 - 한 프로세스 안에 진행되는 여러 갈래의 작업들을 뜻함
이미지 출처 : https://velog.io/@sehrltjr/Thread