시스템 프로그래밍의 이해와 접근
- 시스템(컴퓨터 시스템)의 범위
- 하드웨어 + 운영체제
- 시스템 프로그래밍
- 컴퓨터 시스템을 활용하는 소프트웨어 개발
- Windows 운영체제 자체의 기능을 십분 활용하는 프로그래밍
- 응용 소프트웨어 개발과의 차이점
- 시스템 프로그래밍은 모든 응용 프로그램에 포함되는 요소
컴퓨터 시스템의 주요 구성 요소
- CPU, 캐쉬
- 컴퓨터 하드웨어 구조
- 운영체제
- 메인 메모리 - 메모리 관리 기법
- 하드디스크 - 파일 I/O (다양한 I/O 포함)

컴퓨터 하드웨어 구성(전체)

- CPU(Central Processing Unit)
- 중앙처리장치
- 연산이 이루어지는 원리
- 메인 메모리 (Main Memory)
- 램(RAM)
- 프로그램 실행 방식을 이해하는 것
- 입/출력 버스(I/O Bus)
- 데이터 송 수신이 이루어 지는 원리
프로그램 실행과정
전처리기 → 컴파일러 → 어셈블러 → 링커
- 전처리기에 의한 치환작업
- #으로 시작하는 지시자
- 컴파일러에 의한 번역
- CPU의 명령어로 번역
- 어셈블러에 의한 바이너리 코드 생성
- CPU의 명령어를 바이너리 코드로 번역
- 링커에 의한 연결과 결합
- 라이브러리와 결합
Stored Program Concept
- Fetch - CPU 내부로 명렁어 이동
- Decode - 명령어 해석/ 컨트롤 유닛
- Execution - 연산을 진행/ ALU

1장의 결론 - Stored Program Concept + 컴퓨터 구조

데이터 이동의 기반 버스 시스템
