여기에서 우리는 C 프로그램이 시스템에서 어떻게 실행되는지 볼 것입니다. 이것은 기본적으로 C 프로그램의 컴파일 과정입니다.
다음 다이어그램은 C 소스 코드가 실행되는 방법을 보여줍니다.
위의 다이어그램에는 여러 단계가 있습니다 -
C 코드 - 이것은 당신이 작성한 코드입니다. 이 코드는 전처리기 섹션으로 전송됩니다.
전처리 − 이 섹션에서는 전처리기 파일이 코드와 함께 첨부됩니다. 우리는 stdio.h, math.h 등과 같은 다른 헤더 파일을 사용했습니다. 이러한 파일은 C 소스 코드와 함께 첨부되고 최종 C 소스가 생성합니다. ('#include', '#define'은 전처리기 지시문입니다.)
컴파일러 − 전처리된 소스 코드를 생성한 후 컴파일러로 이동하고 컴파일러는 전체 프로그램을 컴파일한 후 어셈블리 레벨 코드를 생성합니다.
어셈블러 − 이 부분은 컴파일러에서 어셈블리 수준 언어를 가져와서 Object 코드를 생성합니다. 이 코드는 기계어 코드(2진수 집합)와 매우 유사합니다.
링커 − 링커는 컴파일 프로세스의 또 다른 중요한 부분입니다. 객체 코드를 가져와 다른 라이브러리 파일과 연결합니다. 이 라이브러리 파일은 코드의 일부가 아니지만 전체 프로그램을 실행하는 데 도움이 됩니다. 링커는 연결 후 실행할 준비가 된 최종 기계 코드를 생성합니다.
로더 − 프로그램은 기본 메모리에 로드되지 않을 때까지 실행되지 않습니다. Loader는 기계어 코드를 RAM에 로드하고 실행하는 데 도움을 줍니다. 프로그램을 실행하는 동안 이름은 Process입니다. 따라서 프로세스는 (실행 중인 프로그램)입니다.