운영체제
기술노트
🧰 운영체제 개요
🧩 운영체제란?
운영체제(Operating System, OS)는 컴퓨터 시스템의 하드웨어와 사용자 프로그램 사이를 중재하는 기반 소프트웨어입니다.
- 대표 OS: Windows, Linux, macOS, Android
- 사용자의 프로그램이 하드웨어를 직접 다루지 않고 OS를 통해 사용하도록 추상화 제공
🏗️ 컴퓨터 구조와 운영체제의 관계
컴퓨터 구조는 하드웨어 설계 중심, 운영체제는 하드웨어를 어떻게 효율적으로 사용할 것인가에 중점.
항목 | 컴퓨터 구조 | 운영체제 |
---|---|---|
초점 | 하드웨어 구성 원리 | 자원 관리 방식 |
대상 | CPU, 메모리, 디스크 등 | 프로세스, 파일, 메모리 등 |
관점 | 하드웨어 설계자 | 소프트웨어 개발자 |
💾 메모리 vs 디스크
두 장치는 모두 데이터를 저장하지만, 역할, 속도, 휘발성에서 큰 차이가 있습니다.
항목 | 메모리(RAM) | 디스크(SSD/HDD) |
---|---|---|
휘발성 | 예 (전원 끄면 내용 사라짐) | 아니오 (데이터 유지됨) |
속도 | 매우 빠름 | 상대적으로 느림 |
저장 방식 | 임시 저장, 실행 중인 데이터 | 영구 저장, 파일 중심 |
위치 | CPU 가까이 있음 | 보조 기억장치 |
역할 | 실행 중인 프로그램/데이터 저장 | 프로그램, 파일 저장 |
🔄 프로그램 실행 과정
운영체제는 디스크에 저장된 프로그램을 CPU가 실행할 수 있도록 다음과 같은 흐름을 관리합니다:
- 💾 디스크에서 프로그램을 읽어 메모리로 적재
- 🧠 메모리에서 명령어를 CPU로 전달
- ⚙️ CPU가 명령어 실행
- 📤 결과는 다시 메모리 또는 디스크에 저장
🧠 메모리 관리 기능
운영체제는 제한된 메모리 공간을 효율적으로 사용하기 위해:
- 필요한 데이터만 메모리에 올림 (적재)
- 사용하지 않는 데이터는 디스크로 옮기거나 제거 (스왑)
- 다수의 프로그램이 동시에 실행될 경우 메모리를 프로세스별로 분할
💡 가상 메모리(Virtual Memory):
- 실제 메모리보다 더 큰 메모리 공간을 사용할 수 있게 해주는 OS 기술
📂 디스크와 파일 시스템 관리
운영체제는 디스크에 저장된 파일을 다음과 같이 관리합니다:
- 파일 생성, 삭제, 읽기, 쓰기
- 디렉터리 구조 유지
- 파일 접근 권한 관리
- 디스크 공간 할당 및 최적화
⏲️ 프로세스와 스케줄링
운영체제는 동시에 여러 프로그램(프로세스)을 실행시켜야 하므로:
- CPU를 시분할(Time-sharing) 방식으로 분배
- 어떤 프로세스를 먼저 실행할지 스케줄링
- 사용자 체감 성능 향상을 위한 우선순위 기반 정책 운영
🚦 자원 관리 핵심 요약
운영체제는 3대 자원(CPU, 메모리, 디스크)을 다음과 같이 관리합니다:
자원 | 운영체제의 역할 |
---|---|
CPU | 스케줄링, 문맥 교환(Context Switching) |
메모리 | 적재, 해제, 보호, 가상 메모리 |
디스크 | 파일 시스템 관리, 입출력(I/O) 제어 |
🧠 핵심 정리
운영체제는 하드웨어와 사용자 프로그램 사이에서 다음을 수행합니다:
- 하드웨어 자원(CPU, 메모리, 디스크) 효율적 분배
- 사용자와 하드웨어 간 인터페이스 제공
- 여러 작업을 동시에 처리하는 멀티태스킹 환경 제공
- 보안과 안정성 보장