운영체제 따라잡기

Operation System Series를 마치며

meellon 2026. 7. 12. 05:00

이 글의 목적

운영체제 따라잡기 본편 24편을 마쳤다. 이 글은 시리즈 전체를 압축·연결하고 다음에 어디로 갈지 짚는 에필로그다.

  • 24편 동안 본 개념을 한 장 지도로 다시 본다
  • OS에서 뻗어 나가는 주제와 블로그 내 다른 시리즈를 연결한다
  • OS 지식이 어떤 직업·역할과 맞닿는지 정리한다
  • 손으로 확인하는 방법읽을거리를 남긴다

1. 24편이 만든 큰 그림

OS는 한 가지 기능이 아니라 층층이 쌓인 추상화다.

Part 핵심 질문 기억할 키워드
0~1 오리엔테이션·구조 OS가 뭔데, 어떻게 부팅·호출되나 4 컴포넌트, 인터럽트, 시스템 콜, 커널 구조
2 프로세스 누가 실행되고 어떻게 스케줄되나 PCB, fork/exec, 스레드, RR·우선순위
3 동기화·교착 동시에 돌리면 뭐가 깨지나 mutex, semaphore, 4조건, Banker
4 메모리 주소·용량을 어떻게 관리하나 페이징, TLB, 페이지 폴트, working set
5 저장장치·파일 데이터는 어디에 어떻게 있나 VFS, inode, 디스크 스케줄링, page cache
6 확장 한 머신·여러 머신·다른 OS 보호, VM·컨테이너, NUMA, CAP, Linux/RTOS

한 줄로 묶으면:

프로세스가 CPU를 쓰고(스케줄링)
  메모리·파일·I/O를 요청하고(추상화)
  서로 간섭하지 않게(동기화·보호)
  여러 머신·환경으로 확장된다(가상화·분산)

2. 실무에서 다시 만나는 지점

교과서 개념은 관측 도구로 확인할 때 살아난다.

OS 개념 실무에서 보는 곳 도구·명령
프로세스·스레드 API 지연, CPU 100% ps, top, htop
시스템 콜 느린 I/O, 권한 오류 strace, dtruss
스케줄링 tail latency, run queue perf, sched_stat
메모리 OOM, swap thrashing free, vmstat, /proc/meminfo
파일·I/O 디스크 병목, fsync iostat, lsof, fio
동기화 DB lock wait, 데드락 DB slow query, pstack
cgroup·namespace 컨테이너 limit docker stats, cgroup fs
NUMA DB·HPC 스케일 이상 numactl, lscpu
  • "느리다"는 증상 하나에 프로세스·디스크·네트워크·락이 동시에 걸려 있다 — 시리즈가 준 분해 프레임으로 원인 후보를 나열하는 게 첫 단계
  • 클라우드·K8s는 OS 위 오케스트레이션 — cgroup·네트워크 namespace·볼륨 마운트는 결국 커널 기능

3. 이후 확장되는 개념

본 시리즈는 GPOS 공통 기반까지다. 같은 뿌리에서 가지가 갈라진다.

확장 영역 OS에서 온 질문 더 깊이 가면
네트워크 스택 소켓·NIC·인터럽트 I/O TCP/IP, TLS, QUIC, SDN
분산·일관성 프로세스 IPC → 노드 간 메시지 Raft, 2PC, 이벤트 소싱
플랫폼·K8s 프로세스·cgroup·namespace 스케줄러, CNI, CSI, GitOps
데이터베이스 락·버퍼·디스크 스케줄링 WAL, B-tree, MVCC, replication
관측성 strace·perf 수준을 넘어 eBPF, tracing, continuous profiling
보안 접근 제어·인증 threat model, zero trust, confidential computing
커널·시스템 시스템 콜·드라이버 개요 eBPF, LSM, 커널 모듈, Rust in kernel
하드웨어 추세 NUMA·페이징 CXL 메모리, GPU 스케줄링, DPU

블로그 내 이어읽기 (권장 순)

  1. 네트워크 기초 — 소켓·프로토콜 (I/O·프로세스와 직결)
  2. 데이터베이스 따라잡기 — 락·버퍼·저장 (동기화·파일·캐시 확장)
  3. 플랫폼 · DevOps · Cloud — Linux·컨테이너·배포
  4. 관측성 기초 — 메트릭·로그·트레이스 (perf·strace 위)
  5. 애플리케이션 보안 — AuthN/Z (보호·보안 편 확장)
  6. 소프트웨어 아키텍처 — 분산·CAP·마이크로서비스 설계

4. 관심 있게 지켜볼 직업·직업군

OS는 인프라 전반의 공통 언어다. 역할마다 깊이가 다르다.

역할 하는 일 OS 시리즈와의 연결
백엔드 엔지니어 API·비즈니스 로직 프로세스·스레드·동시성, I/O 블로킹
SRE / 플랫폼 가용성·용량·장애 대응 스케줄링, 메모리, 파일·디스크, 분산
인프라·클라우드 VM·네트워크·스토리지 가상화, NUMA, I/O 스택
DevOps / K8s 배포·런타임·관측 cgroup, namespace, 컨테이너 격리
성능 엔지니어 병목·프로파일링 CPU 스케줄링, 캐시, TLB, 디스크
시스템·커널 드라이버·커널·eBPF 시스템 콜, 인터럽트, 메모리 관리
임베디드·펌웨어 MCU·RTOS·드라이버 인터럽트, Hard RT, 자원 제약
보안 엔지니어 취약점·권한·침해 대응 접근 제어, 격리, 샌드박스
데이터베이스 엔지니어 저장·복제·튜닝 락, 버퍼 풀, 디스크·페이지 캐시

지켜볼 만한 방향 (2020s~)

  • eBPF — 커널에 안전하게 붙는 관측·네트워크·보안 (Cilium, bpftrace)
  • Wasm / WASI — OS 경계 밖 런타임, 컨테이너 대안 논의
  • AI 인프라 — GPU·NPU 스케줄링, 대용량 메모리·CXL
  • Confidential computing — TEE, 암호화 메모리 — OS 보호 모델 확장
  • Rust — 커널·시스템 프로그래밍 언어 전환 논의

직업을 고를 때 한 분야만 파지 말고, 위 표에서 인접 칸을 같이 보는 게 유리하다. SRE는 네트워크·DB·보안을, 백엔드는 관측·플랫폼을 어느 정도 알면 시너지가 난다.

5. 앞으로의 학습 루틴

개념만으로는 부족하다. 짧은 루프를 권한다.

주기 활동
매주 한 현상을 OS 관점으로 분해 "API 느림" → CPU wait? disk? lock?
매월 도구 하나 깊게 perf record, bpftrace, numastat
분기 작은 실험 cgroup limit, fork bomb, page fault 유도
연 1회 교재·문서 정독 OSTEP 한 챕터, LKD 한 절, kernel doc

추가 읽을거리

수준 자료
입문·복습 Operating System Concepts 10/E (본 시리즈 기준)
무료·실습 OSTEP (remzi.se/ostep.org)
Linux 깊이 Linux Kernel Development, kernel.org Documentation
관점 확장 Modern Operating Systems (Tanenbaum) — 구조·비교
논문·트렌드 USENIX OSDI/FAST, LWN.net Kernel Page

6. 시리즈 색인 (24편 요약)

필요할 때 해당 편으로 바로 점프한다.

# 제목 거기서 답하는 질문
1 오리엔테이션 OS가 왜 필요한가
2~3 개념·구조·시스템 콜 OS 안팎 경계
4~7 프로세스·스레드·스케줄링 누가 CPU를 쓰나
8~11 동기화·교착·패턴 동시에 돌릴 때 규칙
12~15 메모리 주소·용량·지연
16~19 파일·디스크·I/O·캐시 데이터 경로
20 보호와 보안 누가 무엇을 허용받나
21 가상화 여러 환경 한 하드웨어
22 다중처리 심화 NUMA·실시간
23 분산 개요 여러 노드 협력
24 OS 종류와 활용 제품·임베디드 선택

7. 마치며

처음에는 node app.js 한 줄이면 충분했을지 모른다. 시리즈를 지나며 그 한 줄 아래에 프로세스·가상 메모리·파일 캐시·네트워크 스택·권한 검사가 겹겹이 있다는 걸 봤다.

OS를 안다는 건 모든 명령을 외운다는 뜻이 아니다. 장애·성능·설계 대화에서 "그건 스케줄러·락·캐시·파티션 쪽 이야기다"고 위치를 잡을 수 있다는 뜻에 가깝다.


해당 내용은 Operating System Concepts, 10/E (Avraham Silberschatz, Peter Baer Galvin, Greg Gagne) 및 시리즈 1~24편을 바탕으로 정리했습니다.

'운영체제 따라잡기' 카테고리의 다른 글

OS 종류와 활용  (0) 2026.07.11
분산 시스템 개요  (0) 2026.07.10
다중처리 심화  (0) 2026.07.09
가상화  (0) 2026.07.08
보호와 보안  (0) 2026.07.07