운영체제(Operating System) 정리

김연준·2025년 4월 15일

1강

📌 운영체제란?

운영체제(Operating System, OS)는 하드웨어를 효율적으로 사용하게 해주는 소프트웨어이며, 사용자와 하드웨어 간의 인터페이스 역할을 한다.

  • 컴퓨팅 자원의 추상화를 제공
  • 자원 관리 정책의 결정, 운용, 강제 수행

🧩 운영체제의 주요 기능

  • 하드웨어 장치 관리
    장치 초기화, 입출력 처리, 장치 제어
  • 프로그램 관리
    프로그램의 적재, 실행, 오류 처리
    다중 프로그램 실행 지원
  • 사용자 관리
    사용자 인증 및 권한 제어, 데이터 접근 제어
  • 서비스 관리
    네트워크, 파일 시스템, 시스템 서비스 관리

🧭 운영체제와 일반 애플리케이션의 차이점

  • OS는 항상 동작 중이며 자원을 감시하고 통제
  • 하드웨어 제어 권한을 가짐

⚙️ 운영체제의 구성 요소

  • 커널(Kernel) : OS의 핵심. 하드웨어와 직접 상호작용
  • OS 서비스 : 보안 모니터, 윈도우 매니저 등 시스템 제공 기능
  • 라이브러리 : 자주 사용하는 함수 및 서브루틴 집합

Kernel 중심으로 OS를 정의하는 관점도 존재


2강

💡 OS 설계 시 고려 사항

구분옵션 A옵션 B
용도범용 시스템 (General Purpose)특수 목적 시스템 (Specific Purpose)
설계유연성 (Flexibility)견고함 (Robustness)
목표고성능 (High Performance)보안성 / 저비용 (Security / Low Cost)

🖥 전형적인 컴퓨터 시스템 구조

  • Hardware: CPU, Memory, Chipset, I/O Bus, 주변장치 등
  • System Software: OS, DBMS, 하이퍼바이저, 컴파일러, 링커 등
  • Application: 사용자가 실행하는 응용 프로그램들

🧱 전형적인 OS 구조

User Level
 └── Application
 └── Libraries (공용 함수 모음)

Kernel Level
 └── Portal OS Layer (시스템 호출 담당)
 └── Machine-Dependent Layer (부트로더, 디바이스 드라이버 등)


🔄 멀티태스킹과 OS 구성 요소

멀티태스킹: 하나 이상의 프로그램이 동시에 실행되는 것

1. 프로세스 관리

  • 목표: I/O와 계산 동시 처리, 시간 공유, 다중 CPU 지원
  • 유의점: 자원 낭비 방지, 동기화, 상호 배제, 공정성, 교착 상태 방지

2. 메모리 관리

  • 목표: 편리한 프로그래밍, 메모리 효율성, 보조 저장소 전송
  • 유의점: 보호 및 공정한 분배

3. I/O 장치 관리

  • 목표: 장치-애플리케이션 간 상호작용, 새 장치 대응
  • 유의점: 효율성, 보호, 공유

4. 파일 시스템

  • 목표: 디스크 블록 관리, 파일-디스크 매핑
  • 유의점: 신뢰성, 안정성, 효율성, 관리 용이성
  • 일반 동작: 파일 열기 → 읽기/쓰기 → 닫기

🧾 컴퓨터 프로그램이란?

  • 명령어(Instructions): CPU가 처리하는 기계어 코드
  • 데이터(Data): 명령어가 읽고 쓰는 자료
  • 코딩(Coding): 프로그래밍 언어로 명령어를 기술하는 행위
  • 프로그램 이미지: 실행 가능한 형태의 데이터 묶음
    (Object File, Executable File 등)

📦 응용프로그램의 메모리 구성

응용 프로그램은 4개의 세그먼트로 구성된다.

세그먼트설명메모리 할당
Code명령어 저장낮은 주소
Data전역/정적 변수낮은 주소
Heap동적 할당 영역높은 주소 → 낮은 방향으로 확장
Stack함수 호출, 지역변수낮은 주소 ← 높은 방향으로 확장

힙과 스택은 서로 반대 방향으로 확장하여 충돌을 방지함


🔍 프로그램 실행 순서


🚀 부트스트랩 과정

부트스트랩(Bootstrap) 과정

컴퓨터 전원 On → OS 실행까지의 순서:

  1. 전원 On
  2. BIOS (ROM에 저장된 펌웨어)가 실행
  3. BIOS가 부트로더를 메모리에 적재
  4. 부트로더가 OS 커널을 메모리에 적재
  5. 커널이 메모리에 올라오면 운영체제 시작

❗ BIOS는 디스크에 존재할 수 있는가?

아니다.

BIOS는 디스크 초기화 전에 실행되어야 하므로 ROM에 존재한다.

profile
Live a life you will remember

0개의 댓글