크래프톤 정글 (컴퓨터 시스템: CSAPP)/3장 프로그램의 기계수준 표현

컴퓨터 시스템 : CSAPP 3장 정리 - 3.1장 역사적 배경

고웅 2025. 4. 5. 07:27

이 부분은 우리가 지금 사용하는 컴퓨터가 어떻게 발전해왔는지를 이야기하는 “컴퓨터 역사 이야기”라고 생각하면 된다.

 

🧠 쉬운 설명으로 각 CPU 살펴보기

🧱 8086: 아주 기본적인 벽돌 컴퓨터

  • 8086 (1978년)
    → 첫 번째 16비트 마이크로프로세서. 계산도 느리고 메모리도 작았다.
    → IBM 컴퓨터에 들어가서 MS-DOS와 함께 사용되었다.
  • 계산은 느리고 단순함
  • 16비트 숫자만 다룸 (0~65,535까지만 가능)
  • 요즘 계산기보다 느릴 수 있다.

🚪 80286: 문이 더 생긴 컴퓨터

  • 80286 (1982년)
    → 더 많은 주소를 다룰 수 있게 되었으며. 윈도우가 돌아가던 초기 PC에 들어갔다.
  • 주소 공간을 확장했으며. 더 많은 데이터를 기억 가능했다.
  • "보호 모드" 덕분에 프로그램 충돌 방지 가능 (안전한 방)

🛣️ i386: 고속도로가 생긴 컴퓨터

  • i386 (1985년)
    → 32비트로 발전, 지금 우리가 자주 쓰는 리눅스, 윈도우 같은 운영체제의 기반이 되었다
    → 훨씬 큰 수, 더 많은 주소
  • 여러 프로그램을 동시에 실행할 수 있게되었다. (멀티태스킹)

 

🚗 i486: 엔진 튜닝된 자동차

  • i486 (1989년)
  • 속도 더 빨라졌다.
  • 계산기 기능까지 내장이 되었다. (FPU = 실수 계산 가능)

🚅 Pentium: 한 번에 두 명령 처리하는 고속열차

  • Pentium (1993년)
  • 슈퍼스칼라: 두 가지 계산을 동시에 처리한다
  • 더 빠르게 명령 처리할 수 있게되었다. (속도 업!)

🤖 Pentium Pro: 똑똑한 로봇

  • PentiumPro (1995년)
  • 명령을 순서 없이 가장 빠른 방식으로 처리 (아웃오브오더 실행)
  • 복잡한 계산도 똑똑하게 정리한다.

🚀 x86-64: 최신 우주선 CPU

  • 64비트로 훨씬 큰 데이터 처리 가능 (어마어마한 메모리!)
  • 레지스터도 더 많아졌다. (16개!)
  • 현재 우리가 배우는 어셈블리어가 이걸 기반으로 한다

 

🔍 주요 CPU 진화 비교표

CPU 이름연도비트 수주요 특징사용된 시대/운영체제

 

CPU 이름 연도 비트 수 주요 특징 사용된 시대/운영 체제
8086 1978 16비트 첫 마이크로프로세서. 기본 연산만 가능 MS-DOS 시대, IBM PC
80286 1982 16비트 주소 확장 가능. 보호 모드 도입 초기 Windows
80386 (i386) 1985 32비트 가상 메모리, 멀티태스킹 가능 Windows 3.1, Linux 기반
80486 (i486) 1989 32비트 속도 향상, 부동소수점 연산 통합 Windows 95 초기
Pentium 1993 32비트 슈퍼스칼라 구조 (한 번에 여러 명령 처리) Windows 95/98
Pentium Pro 1995 32비트 아웃오브오더 실행 (명령 재정렬) Windows NT, 서버용
x86-64 (AMD64) 2003 64비트 64비트 주소 처리, 레지스터 확장 현재의 리눅스, 윈도우, macOS

🎯 요약 그림 (진화 흐름)

8086 → 80286 → i386 → i486 → Pentium → Pentium Pro → x86-64
 🧱     🚪       🛣️     🚗       🚅         🤖           🚀