2021-9-9 운영체제 1주차
운영체제 개요
운영체제(Operating System)란?
- 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층
운영체제의 목적
- 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공
- 컴퓨터 시스템의 자원을 효율적으로 관리
운영체제의 기능
- CPU 스케줄링 - 어떤 프로그램에게 CPU 사용하게 할지
- 메모리 관리 - 한정된 메모리 관리
- 디스크 스케줄링 - 디스크에 들어온 요정을 어떤 순서로 처리할지
- 인터럽트, 캐싱 - 빠른 CPU와 느링 I/O 장치간 속도차이 관리
CPU 스케줄링
CPU 큐 - 큐에서 대기하다가 하나씩 실행
- FCFS (First-Come First-Served) = 선입선출?
- 공평하지만 효율적이지 않음
- SJF(Shortest-Job-First)
- 사용시간 짧은 프로세스 먼저 스케줄
- Starvation 발상 가능 - 문제점
Round Robin (RR)
- 각 프로세스는 동일 크기의 CPU 할당시간을 가짐
- 인터럽트를 발생시켜 CPU를 빼앗음
- 대기시간이 프로세스의 CPU 사용시간에 비례
메모리 관리
메모리가 꽉 찼을때 5번 페이지 요청이 들어오면 어떤 페이지를 쫓아낼까.
LRU - 가장 오래전에 참조 페이지 삭제 - 1번 삭제
LFU - 참조횟수가 가장 적은 페이지 삭제 - 4번
디스크 스케줄링
디스크 헤드를 이동하는게 제일 오래 걸리기에, 해드의 이동을 최소화하는게 중요
- 디스크 접근 시간
- 탐색시간(Seek time) 헤드를 해당 트랙으로 움직이는데 걸리는 시간
- 회전지연(Rotational latency) 헤드가 원하는 섹터로 도달하기까지 걸리는 시간
- 전송시간(Transfer time) 실제 데이터의 전송 시간
Seek time을 최소화하는 것이 목표
FCFS (선입선출) - 비효율적
SSTF(Shortest Seek Time First) - starvation 문제 있음 - 효율적이지만 형평성 문제
SCAN
- 헤드가 디스크 한쪽 끝에서 다른쪽 끝으로 이동하며 가는 길목에 있는 모든 요청을 처리
- 다른 한쪽 끝에 도달하면 역방향으로 이동하며 오는 길목에 있는 모든 요청을 처리
저장장치 계층구조와 캐싱(caching)
하드디스크 - 비휘발성
메인 메모리 - 휘발성
Primary - CPU의 직접접근 가능, Secondary - Primary 를 통해야함
Written on September 9, 2021