2021-9-9 운영체제 1주차

운영체제 개요

운영체제(Operating System)란?

  • 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층

운영체제의 목적

  • 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공
  • 컴퓨터 시스템의 자원을 효율적으로 관리

운영체제의 기능

  • CPU 스케줄링 - 어떤 프로그램에게 CPU 사용하게 할지
  • 메모리 관리 - 한정된 메모리 관리
  • 디스크 스케줄링 - 디스크에 들어온 요정을 어떤 순서로 처리할지
  • 인터럽트, 캐싱 - 빠른 CPU와 느링 I/O 장치간 속도차이 관리

CPU 스케줄링

image1

CPU 큐 - 큐에서 대기하다가 하나씩 실행

image1

  • FCFS (First-Come First-Served) = 선입선출?
  • 공평하지만 효율적이지 않음

image1

  • SJF(Shortest-Job-First)
  • 사용시간 짧은 프로세스 먼저 스케줄
  • Starvation 발상 가능 - 문제점

Round Robin (RR)

  • 각 프로세스는 동일 크기의 CPU 할당시간을 가짐
  • 인터럽트를 발생시켜 CPU를 빼앗음
  • 대기시간이 프로세스의 CPU 사용시간에 비례

image1

메모리 관리

image1 메모리가 꽉 찼을때 5번 페이지 요청이 들어오면 어떤 페이지를 쫓아낼까.

LRU - 가장 오래전에 참조 페이지 삭제 - 1번 삭제

LFU - 참조횟수가 가장 적은 페이지 삭제 - 4번

디스크 스케줄링

디스크 헤드를 이동하는게 제일 오래 걸리기에, 해드의 이동을 최소화하는게 중요

  • 디스크 접근 시간
    • 탐색시간(Seek time) 헤드를 해당 트랙으로 움직이는데 걸리는 시간
    • 회전지연(Rotational latency) 헤드가 원하는 섹터로 도달하기까지 걸리는 시간
    • 전송시간(Transfer time) 실제 데이터의 전송 시간

Seek time을 최소화하는 것이 목표

FCFS (선입선출) - 비효율적

SSTF(Shortest Seek Time First) - starvation 문제 있음 - 효율적이지만 형평성 문제

image1 SCAN

  • 헤드가 디스크 한쪽 끝에서 다른쪽 끝으로 이동하며 가는 길목에 있는 모든 요청을 처리
  • 다른 한쪽 끝에 도달하면 역방향으로 이동하며 오는 길목에 있는 모든 요청을 처리

저장장치 계층구조와 캐싱(caching)

image1 하드디스크 - 비휘발성

메인 메모리 - 휘발성

Primary - CPU의 직접접근 가능, Secondary - Primary 를 통해야함

Written on September 9, 2021