프로그래머가 C,JAVA와 같은 high-level 언어로 프로그래밍 하면 컴퓨터가 이해 할 수 있도록 기계어로 번역해주어야 한다. 대표적인 방법으로 Compile와 Interpret가 있다. Compile을 하는 프로그램을 Compiler, Interpret을 하는 프로그램을 Interpreter라 하며 두 번역 방법이 명확하게 다르기 때문에 많은 프로그래밍 언어들은 둘 중 한가지 방식을 통해 기계어로 번역되도록 설계되었다. 하지만 요즘은 자바와 같이 두 가지 방법을 모두 사용하는 언어들이 많다. 원래의 코드를 원시 코드(Source Code), 컴파일 된 코드를 목적 코드(Object Code)라 한다.
컴파일
전체 코드를 Runtime 이전에 기계어로 번역하는 방식이다.
- 컴파일로 생성된 목적 코드는 플랫폼(OS, 하드웨어)에 종속적이다.
- 이미 번역된 목적 코드를 실행하기 때문에 실행 속도가 빠르다.
- 프로그램 실행 시 OS로부터 메모리를 할당받는다.
인터프릿
전체 코드를 Runtime에 기계어로 번역하는 방식이다.
- 플랫폼에 종속되지 않는다. (플랫폼에 맞춰 번역)
- 번역 하면서 실행되기 때문에 실행 속도가 느리다.
- 프로그램 실행 중에 OS로부터 메모리를 할당받는다.
'Computer Science > OS' 카테고리의 다른 글
[OS - 4] IPC (0) | 2022.11.21 |
---|---|
[OS - 3] 프로세스 (0) | 2022.11.15 |
[OS - 2] 운영체제 개요 (2) (0) | 2022.11.09 |
[OS - 1] 운영체제 개요 (1) (0) | 2022.11.02 |
환경 변수 (0) | 2022.08.09 |