본문 바로가기

CS/운영체제

(13)
CPU 스케쥴링(CPU Scheduling) CPU Scheduling -Scheduling criteria -CPU utilization(CPU 이용률): CPU가 얼마나 이용되는지 -Troughput(처리율): 시간당 몇개의 작업이 끝나는지 -Turnaround time(반환시간): 처음시작부터 종료될때까지 걸린시간(대기시간 포함) -Waiting time(대기시간): Ready queue에서 얼마나 기다렸는지 -Response time(응답시간): 실행후 처음 응답이 나올때까지 걸린 시간 CPU Scheduling Algorithms -First-Come-First-Served(FCFS) -Simple-Fair -Convoy Effect(호위 효과): 앞에 긴 작업으로 인해 종속적으로 오래 기다림 -Non-preemptive -Shortest..
프로세스 프로세스 -RAM에 적재된 프로그램 -PCB(Process Control Block): 프로세스에 대한 모든정보 Scheduler -Job scheduler(long-term scheduler): Job queue 관리 -CPU scheduler(short-term scheduler): Ready queue 관리 -Device scheduler: Device queue 관리 Multiprogramming -Degree of Multiprogramming: 메모리에 프로세스 몇개인지 -I/O bound(주로 문서) vs CPU-bound(주로 계산) process -Medium-term scheduler -swapping: os가 메모리를 감시 → 프로세스를 Disk(Backing store)로 내보내거나..
운영체제 서비스 개요 운영체제 서비스 개요 -프로세스 관리 ·프로세스 생성, 소멸, 일시중지, 재개, 통신, 동기화 ·교착상태 처리 -주 기억 장치 관리 -공간 할당 -프로세스 추적 및 감시 -메모리 회수 -가상 메모리 -파일 관리 -파일의 생성과 삭제 -디렉토리의 생성과 삭제 -기본 동작 지원: open, close, read, write등 -Track/Sector ↔ file과 매핑 -백업(backup) -보조 기억 장치 관리 -빈 공간 관리 -저장 공간 할당 -디스크 스케쥴링: head 적게 움직이도록 -입출력 장치 관리 -장치 드라이브(Device drivers) -성능향상: buffering, caching, spooling
이중모드와 하드웨어 보호 이중모드(dual mode) 사용자 모드(user mode) vs 관리자 모드 (supervisor mode) 특권 명령(priviliged instructions)은 관리자 모드만 가능 CPU 레지스터안에 모드에 관련된 flag(0 또는 1) 하드웨어/소프트웨어 인터럽트 발생 -> 관리자모드(0 -> 1) 운영체제 서비스가 끝나면 다시 사용자 모드로(1 -> 0) 입출력 장치 등 보호(protection) 가능 하드웨어 보호 -입출력 장치보호(동시) 입출력 명령(IN, OUT)을 특권명령 입출력을 운영체제에게 요청 -> 대행 -> 복귀 방식 잘못된 요청은 운영체제가 거부 -메모리 보호(해킹) MMU(Memory Management Unit)로 잘못된 메모리 영역 침범 감시 MMU의 base, limit..
운영체제 개요 다중 프로세서(Multiprocessor system) 병렬 시스템 강결합 시스템 cost↓, performance↑, reliability 다중 운영체제(Multiprocessor os) 분산 시스템(Distributed) 멀티 컴퓨터 시스템 소결합 시스템 분산 운영체제(Distributed os) 실시간 시스템 시간제약(Deadline) 공장 자동화, 군사, 항공, 우주 실시간 운영체제(Realtime os) 인터럽트 기반 시스템(현대 운영체제) 하드웨어 인터럽트: I/O 전기신호 -> 인터럽트 발생 -> pc jump -> ISR (Interrupt Service Routine) 실행 -> 다시 대기 소프트웨어 인터럽트: 사용자 프로그램 실행하는중에 인터럽트 발생(파일 읽기,저장 등). 위 과정처럼..