본문 바로가기
카테고리 없음

8.C언어-컴파일&빌드

by LevRuf 2015. 8. 10.
728x90
반응형
SMALL

8.컴파일(Compile)

a. 정의

   원시 프로그램을 어셈블리 언어나 기계어 등의 저수준 언어로 된 목적파일로 번역하는 일.

b.컴파일러(Compiler)

   ​하나의 문장을 문법으로 나눌 수 있는 최소 단위인 토큰으로 나눈 후 각 토큰들의 선언 유무를 파악하고 전체 내용이 문법에 맞는지를 확인하는 일을 의미한다.

그렇다면 토큰이란?

토큰이 사용되는 분야를 보면 예전에 버스를 탈 때 지불되던 것, 토큰링(네트워크),

유저영역에서 커널영역으로 이동할 경우 등 여러 경우에서 사용되고 있다.

토큰이란 최소한의 의미를 갖는 것을 뜻한다.

컴파일시에는 문법 검사만 이루어 지며 연산은 이루어 지지 않는다.

컴파일이 끝나면 현재 프로그램에 대한 오브젝트파일을 생성하게 된다.

8-1.빌드(Build)(Link)

a. 정의

    오브젝트파일을 연결하여 실행파일을 생성하는 것.

b. 동작 원리 이해

     프로그램은 기본적으로 하드웨어를 제어하기 위해 사용된다.

예를들어 printf를 통해 모니터를 제어하게 되며 scanf를 통해 키보드를 제어하게 된다.

이러한 하드웨어를 제어하는 것이 커널이다.

결국 커널이 없으면 우리는 하드웨어를 사용할 수 없다.

빌드(link)는 만든 obj와 커널obj 그리고 그 이외에 필요한 obj파일을 연결해 주어 하나의 실행파일을 만들어 주는 기능을 하며 이렇게 만들어진 실행파일을 Ram에 올려 동작하게 된다.

​IT뱅크 C언어참조

728x90
반응형
LIST

댓글