홈
computer-science-basics
진행률 4/10
운영체제 기초 — 하드웨어와 소프트웨어 사이
운영체제(OS)란
운영체제는 하드웨어와 사용자/응용 프로그램 사이의 중간 계층입니다.
OS의 역할:
- 프로세스 관리: CPU 시간 분배
- 메모리 관리: RAM 할당·회수
- 파일 시스템: 저장 장치 추상화
- 입출력 관리: 디바이스 드라이버
- 보안: 접근 제어
주요 OS: Linux, Windows, macOS, Android, iOS
프로세스 vs 스레드
프로세스 (Process):
- 실행 중인 프로그램의 인스턴스
- 독립된 메모리 공간 (코드·데이터·스택·힙)
- 프로세스 간 통신: IPC (파이프, 소켓)
스레드 (Thread):
- 프로세스 내 실행 단위
- 같은 프로세스의 메모리 공유
- 생성·전환 비용 < 프로세스
- 동기화 문제 발생 가능
멀티 코어 활용:
- 단일 코어: 프로세스 시분할 (동시 실행처럼 보임)
- 멀티 코어: 진정한 병렬 실행 가능
프로세스 스케줄링
CPU가 어떤 프로세스에 실행 시간을 줄지 결정:
스케줄링 알고리즘:
FCFS (선입선출):
- 먼저 온 순서대로 실행
- 단순하지만 긴 작업이 짧은 작업 블로킹 (호위 효과)
SJF (최단 작업 우선):
- 실행 시간이 짧은 것 먼저
- 최적 평균 대기 시간, 하지만 긴 작업 기아 가능
Round Robin:
- 각 프로세스에 시간 할당량(Time Quantum) 부여
- 할당량 소진 → 준비 큐로 이동
- 가장 많이 사용 (Linux, Windows)
우선순위 스케줄링:
- 높은 우선순위 먼저
- 기아(Starvation) 방지: 에이징(오래 기다릴수록 우선순위 증가)
동기화 문제 — 경쟁 조건
경쟁 조건 (Race Condition): 두 스레드가 같은 자원을 동시에 접근 → 예측 불가 결과
예: count = 0
- Thread A: count = count + 1 (읽기→계산→쓰기)
- Thread B: count = count + 1 (동시 수행)
- count = 1이 될 수 있음 (2가 되어야 함)
해결책:
- 뮤텍스(Mutex): 한 번에 하나의 스레드만 접근
- 세마포어(Semaphore): n개 스레드까지 허용
데드락 (교착 상태)
4가지 필요 조건 (Coffman 조건)
- 상호 배제: 자원을 독점 사용
- 점유와 대기: 자원을 가진 채 다른 자원 대기
- 비선점: 강제로 빼앗을 수 없음
- 순환 대기: A→B→C→A 순환
해결
- 예방: 위 조건 중 하나 제거 (실용적으로 어려움)
- 회피: 은행가 알고리즘 (안전 상태 유지)
- 탐지·복구: 데드락 탐지 후 프로세스 종료
메모리 관리
가상 메모리 (Virtual Memory):
- 물리 RAM보다 큰 주소 공간 제공 환상
- 실제로 필요한 부분만 RAM에 로드
- 나머지는 디스크(스왑 공간)에
페이지 교체 알고리즘:
- LRU (가장 오랫동안 사용 안 된 것 교체): 현실적으로 많이 사용
- FIFO: 가장 오래된 페이지 교체
- 최적 알고리즘: 미래 참조 알아야 해서 이론적만
캐시 계층:
레지스터 (ps) → L1 캐시 (1ns) → L2 캐시 (5ns) → L3 (20ns) → RAM (100ns) → SSD (100μs) → HDD (10ms)
- 계층 아래로 갈수록 느리고 용량 큼
파일 시스템
파일 시스템 역할:
- 파일·디렉터리의 논리적 구조 관리
- 저장 장치 블록 할당·추적
주요 파일 시스템:
- FAT32: 구형 윈도우, USB (파일 4GB 제한)
- NTFS: 현대 윈도우 (대용량, 보안, 저널링)
- ext4: Linux 기본
- APFS: macOS (암호화, 스냅샷)
inode (Linux):
- 파일 메타데이터 저장 (크기, 권한, 타임스탬프, 데이터 블록 포인터)
- 파일 이름 ≠ inode (하드링크 가능)
핵심 암기 포인트
프로세스: 독립 메모리 / 스레드: 메모리 공유 (더 가볍지만 동기화 필요) Round Robin: 가장 현실적인 스케줄링 (시간 할당량 기반) 데드락 4조건: 상호배제·점유대기·비선점·순환대기 가상 메모리: 실제 RAM보다 큰 공간 환상 — 페이지 교체로 관리
O
OIYO 편집부
편집부OIYO 편집부는 경제·법률·생활·자기이해 주제를 1차 자료와 공개 통계로 검증해 정리합니다. 모든 글은 출처 표기와 정기 점검을 거쳐 실용성과 정확성을 함께 유지합니다.