프로세스
- 컴퓨터에서 실행되고 있는 프로그램
ex) exe 확장자를 가진 프로그램을 실행하면 프로세스가 된다.
- 또한 프로그램은 컴파일러가 컴파일하여 컴퓨터가 이해하는 기계어로 번역되는 파일이 되는 것을 의미한다.
- C언어 기반의 프로그램은 컴파일을 거쳐야 하지만 파이썬같은 인터프리터 언어는 컴파일 과정 필요 없이 한줄씩 읽어서 실행한다.
<aside>
💡 Program VS Process
Program :
- HDD/SDD(disk)의 파일에 저장된 수동 명령 모음
- ex) 크롬 프로그램(chrome.exe)과 같은 실행 파일
Process :
- Program이 disk에서 메모리(RAM)로 로드된 후 해당 명령을 실행하는 것(실행 중인 프로그램)
- Program으로부터 인스턴스화된 것
- 이후 OS의 CPU 스케줄러에 따라 CPU가 프로세스를 실행시킴
- ex) 크롬 프로그램을 더블클릭하면 크롬 ‘프로세스’가 시작
</aside>
컴파일
- 소스 코드를 컴퓨터가 이해할 수 있는 기계어로 변환하는 과정을 말한다.
- 이 과정은 컴파일러라는 특수한 프로그램에 의해 수행된다.
프로그램의 컴파일 과정