반응형
이 글에서는 리눅스라는 운영체제에서 시스템 프로그래밍 등을 위해 gcc를 통해 컴파일되는 C언어의 소스 코드라는 관점에서 작성되었습니다.
우선, 통상적으로 소스 코드는 인간이 곧바로 이해 가능한 형태의 원시 코드라는 것입니다.
여기에서는 일반적인 C언어 코드를 생각하시면 되겠습니다. 소스 코드라는 관점은 프로그래밍의 역사에서 C언어를 시작으로 개념이 일반화가 됩니다. C언어를 만든 목적은 결국 CPU 머신과 무관하게 유닉스라는 동일한 운영체제에서 사용을 할 수 있는 언어라는 것이죠. 결국 그 점이 C를 고수준 언어라고 하는 것입니다. 사용자는 본인이 프로그래밍하는 컴퓨터의 물리적 아키텍처에 따라 다른 코드를 짜야 할 필요성이 낮아졌고요. 내가 인텔 CPU에서 작업을 하든지 ARM 기반의 브로드컴 CPU에서 작업을 하든지 똑같은 코드로 동일한 결과를 기대할 수 있다는 것입니다.
그러나 결국 컴퓨터가 그 C언어 코드를 직접 이해하기 위해서는 결국 그 기계가 이해할 수 있는 언어로 바꾸는 과정이 필요합니다. 결국, 이러한 과정에서 소스 코드라는 개념이 나오게 됩니다.
다음 글에서는 GCC에서 C언어 코드가 실행 가능한 파일이 되기까지의 과정을 알아보조록 하겠습니다.
반응형
'lesson > Operating System' 카테고리의 다른 글
리눅스 쉘 $에서 #로 바꾸는 방법 (0) | 2024.11.10 |
---|---|
C언어가 실행 파일이 되는 과정까지 (2) | 2024.10.09 |
프로세스와 프로그램과 프로세서의 차이 (0) | 2024.08.22 |
윈도우에서 Program Files에 (x86)가 있고 없고의 차이 (0) | 2024.08.01 |
32비트 프로세서가 메모리를 4GB까지 인식 가능한 이유 (0) | 2023.10.22 |
댓글