프로그램은 명령어와 정적 데이터의 묶음이다. 프로그램의 명령어와 정적 데이터가 메모리에 적재되면 프로세스가 되는 것이다. 하나의 프로그램을 한번 구동하면 하나의 프로세스가 메모리상에서 실행되고 여러번 구동하면 여러개의 프로세스가 실행된다.
하나의 CPU는 하나의 프로세스를 실행할 수 있는데 여러개의 프로세스를 어떻게 실행하는걸까?
운영체제가 엄청 빠르게 CPU가 실행할 프로세스를 교체하고있기때문에 우리 눈에는 동시에 여러개의 프로세스가 실행된다고 느끼는 것이다.
커널이 프로세스의 상태를 관리한다.