아래 글은 CS(컴퓨터 과학) 관련 개념 정리 및 작성자 공부를 위해 작성되었습니다.

 

 

📃 참고자료

 

 

 

 

# 운영체제의 구조

 

커널 (Kernel)

  • os의 핵심 부문 (메모리 상주)
    - 가장 빈번하게 사용되는 기능들 담당 -> 시스템 관리 (processor, memory, Etc) 등
  • 동의어
    - 핵(neucleus), 관리자(supervisor) 프로그램, 상주 프로그램(resident program), 제어 프로그램(control program) 등

유틸리티 (Utility)

  • 비상주 프로그램
  • UI등 서비스 프로그램
  • 운영체제에서 커널을 나머지 부분에 있는 것들

 

 

 

1. 단일 구조

 

장점

  • 커널 내 모듈 간 직접 통신
    - 효율적 자원 관리 및 사용

단점

  • 커널의 거대화
    - 오류 및 버그, 추가 기능 구현 등 유지보수가 어려움
    - 동일 메모리에 모든 기능이 있어, 한 모듈의 문제가 전체 시스템에 영향 (예, 악성코드 등)

 

 

 

2. 계층 구조

장점

  • 모듈화
    - 계층 간 검증 및 수정 용의
  • 설계 및 구현의 단순화

 

단점

  • 단일구조 대비 성능 저하
    - 원하는 기능 수행을 위해 여러 계층을 거쳐야 함

 

 

 

3. 마이크로 커널 구조

 

커널의 크기 최소화

  • 필수 기능만 포함
  • 기타 기능은 사용자 영역에서 수행

 

 

 

# 운영체제의 기능

  • 프로세스 (Process) 관리
  • 프로세서 (Processor) 관리
  • 메모리 (Memory) 관리
  • 파일 (File) 관리
  • 입출력 (I/O) 관리
  • 보조 기억 장치 및 기타 주변장치 관리 등

 

Process Management

 

프로세스 (Process)

  • 커널에 등록된 실행 단위(실행 중인 프로그램)
  • 사용자 요청/프로그램의 수행 주체(Entity)

 

OS의 프로세스 관리 기능

  • 생성 / 삭제, 상태 관리
  • 자원 할당
  • 프로세스 간 통신 및 동기화(Synchronization)
  • 교착상태(Dealock) 해결

 

프로세스 정보 관리

  • PCB(Process Control Block)

 

 

Processor Management

  • 중앙 처리 장치(CPU)
    - 프로그램을 실행하는 핵심 자원
  • 프로세스 스케쥴링(Scheduling)
    - 시스템 내의 프로세스 처리 순서 결정
  • 프로세서 할당 관리
    - 프로세스들에 대한 프로세서 할당 -> 한 번에 하나의 프로세스만 사용 가능

 

Memory Management

 

주기억장치

  • 작업을 위한 프로그램 및 데이터를 올려 놓는 공간

 

Multi-user, Multi-tasking 시스템

  • 프로세스에 대한 메모리 할당 및 회수
  • 메모리 여유 공간 관리
  • 각 프로세스의 할당 메모리 영역 접근 보호

 

메모리 할당 방법(Scheme)

  • 전체 적재
    - 장점: 구현이 간단 / 단점: 제한적 공간
  • 일부 적재(Virtual memory concept)
    - 프로그램 및 데이터의 일부만 적재
    - 장점: 메모리의 효율적 활용 / 단점: 보조기억 장치 접근 필요

 

File Management

  • 파일 : 논리적 데이터 저장 단위
  • 사용자 및 시스템의 파일 관리
  • 디렉토리(Directory) 구조 지원
  • 파일 관리 기능
    - 파일 및 디렉토리 생성 / 삭제
    - 파일 접근 및 조작
    - 파일을 물리적 저장 공간으로 사상(Mapping)
    - 백업 등

 

I/O Management

  • 입출력( I/O ) 과정
    - os를 반드시 거쳐야 함

 

 

 

 

반응형

+ Recent posts