1. 컴퓨터 구조를 왜 알아야 할까?
개발자로 일하다 보면 메모리, CPU, 캐시, 디스크 I/O, 병목, 멀티스레딩 같은 개념을 계속 만나게 된다. 이걸 정확히 모르면 "그냥 그런가보다" 하고 지나가지만, 정확히 알면 성능 문제를 해결할 때 방향이 뚜렷해진다.
특히 컴퓨터공학과에서 배우는 컴퓨터 구조(Computer Architecture) 기본 개념은 실무 개발자에게도 매우 중요하다.
2. 컴퓨터 구성 요소 개요
컴퓨터를 구성하는 핵심 요소는 아래처럼 나뉜다.
- CPU (중앙처리장치) — 연산하고 명령 수행
- 메모리 계층구조
- 레지스터
- 캐시 (L1, L2, L3)
- 메인 메모리 (RAM)
- 보조 저장장치 (SSD/HDD)
- 입출력장치 (I/O)
위 요소들이 계층형 구조로 되어 있다는 점이 중요하다.
3. ROM vs RAM
📌 ROM (Read-Only Memory)
- 읽기 전용 메모리
- 전원이 꺼져도 내용 유지(비휘발성)
- BIOS/UEFI 같은 부팅 관련 프로그램 저장
- 수정 거의 하지 않고, 시스템 초기 실행 시만 중요함