프로그램 실행과정
- 전처리기에 의한 치환작업 : #으로 시작하는 지시자(전처리기)
- 컴파일러에 의한 번역 : CPU의 명령어로 변역(C, C++ 등등의 언어)
- 어셈블러에 의한 바이너리 코드생성 : CPU의 명령어를 바이너리 코드로 번역(어셈블리어)
- 링커에 의한 연결과 결합 : 라이브러리와의 결함
링커에서 바이너리 + 라이브러리 묶여서 실행 파일을 생성한다.
Stored Program Concept(스토어드 프로그래밍 컨셉 = 폰 노이만 아키텍처)
존 - 폰 노이만 대단하네. 컴퓨터 구조를 잡아주셨네
Fetch : CPU 내부로 명렁어 이동
Decode : 컨트롤 유닛에 의해서 명령어를 해석
Execution : ALU가 중심이 되어 요소요소들이 협력해서 연산을 진행.
전처리기 -> 컴파일 -> 어셈블리 -> 링커 -> 실행파일 -> 실행 -> Fetch -> Decode -> Execution
데이터 이동의 기반 버스 시스템
- 데이타 버스 : 데이터 이동
- 어드레스 버스 : 주소 이동
- 컨트롤 버스 : 컨트롤 신호이동 하며 일의 순서를 정한다.
반응형
'Programming > System Programming' 카테고리의 다른 글
프로세스의 이해 / 프로세스의 생성 (0) | 2016.04.04 |
---|---|
컴퓨터 구조의 접근방법 (2) | 2016.04.03 |
Win 32 vs Win 64 (32bit vs 64bit) (0) | 2016.04.03 |
Windows에서의 유니코드(UNICODE) (3) | 2016.04.01 |
시스템 프로그래밍이란? (2) | 2016.03.30 |