Download presentation
Presentation is loading. Please wait.
Published byBertha Johnsen Modified 6년 전
1
저장장치 테이프 I/O장치 작업 사용자 프린터 디스크 주기억장치(RAM) OS 카드판독기 CPU 키보드 처리장치
2
제 1장 서 론 1.1 운영체제란 무엇인가? 운영체제(Operating System)의 정의
제 1장 서 론 1.1 운영체제란 무엇인가? 운영체제(Operating System)의 정의 한마디로… 컴퓨터 사용자와 h/w의 매개자 역할을 하는 프로그램 자세히 말하자면… Resource allocator - 자원을 관리, 할당 Control program - 사용자 프로그램의 실행과 I/O 장치 의 작동을 제어 Kernel - 항상 수행되는 유일한 프로그램 <-> 응용 프로그램
3
운영체제의 목적 프로그램의 실행과 사용자 문제의 해결 컴퓨터를 편리하게… 하드웨어를 효율적으로...
4
1.2 단순 일괄처리(Simple Batch) 시스템
큰 기계, 콘솔(console), 단일사용자 User=Programmer=Operator Assembler, Loader, Linker, Compiler… 안전, 그러나 비효율적
5
단순 일괄처리 오퍼레이터 고용, User Operator OS의 주업무 : 작업간 연결을 제어
*카드판독기 & 테이프구동기 OS의 주업무 : 작업간 연결을 제어 => 최초의 원시적 OS batch에 의해 setup 시간 절약 그러나 여전히 CPU와 I/O의 동시 사용이 불가능 해결안 : Off-line operation
6
Off-line operation 스풀링(Spooling)
한 작업 내에서 card2tape, tape2printer와 CPU 처리를 병행 satellite processor 테이프는 연속(sequential) 접근 장치 스풀링(Spooling) 한 작업의 I/O와 다른 작업의 처리를 병행 (주로 단일 사용자의 서로 다른 작업) card2disk, disk2printer 디스크는 임의(random) 접근 장치 CPU와 I/O 장치의 사용률을 더욱 높임
7
1.3 다중 프로그램의 일괄처리 시스템 Job pool : 스풀링 시 디스크에 저장되어 처리를 기다리는 프로그램들
주 메모리에 여러 프로그램을 적재, CPU를 공유
8
중첩된(연쇄적인) I/O를 허용 <-> 단순 스풀링 Job scheduling
주 메모리에 모두 적재할 수 없으므로 효율을 고려하여 순서 결정 CPU scheduling 수행중인 작업이 여러 개일 수 있으므로 turnaround time이 길다 interaction이 거의 없는 큰 작업에 적합
9
1.5 시분할 시스템(Time Sharing System)
다중 프로그래밍과 함께 현대 OS의 핵심 주제 CPU 교환을 (의도적으로) 자주 수행 CPU scheduling을 강조 사용자와 컴퓨터 사이의 대화 가능 항상 CPU를 점유하는 것처럼 느낌 키보드, 모니터=>디버깅 가능 Swapping virtual memory 개념 많은 수의 프로그램을 실행할 수 있다 프로세스 기억장치에 적재되어 있거나 실행중인 프로그램
10
1.7 병렬 시스템(Parallel System)
1.6 개인용 컴퓨터 시스템 효율보다 편이성과 반응 시간(response time)의 개선에 주력 보호(protection) 등을 무시 : virus <-> main frame 다른 영역 침범 시 자신이 죽지 않음 cf. 개인용 워크스테이션 1.7 병렬 시스템(Parallel System) Multi-processor system 강결합 시스템(tightly coupled system)
11
병렬 시스템의 두 가지 모델 목적 대칭적 다중처리 모델 비대칭적 다중처리 모델 성능(throughput)의 증대
각 처리기가 동일한 OS를 수행 필요한 경우에 서로 통신 비대칭적 다중처리 모델 각 처리기에 서로 다른 종류의 작업을 할당 주-종 관계 : 주처리기(master processor가 시스템을 제어) 나머지 처리기는 자신에 할당된 작업만 수행 목적 성능(throughput)의 증대 신뢰도(reliability) 증대
12
1.7 분산 시스템(Distributed System)
약-결합 시스템(loosely-coupled system) 각 프로세서가 각자의 지역(local) 메모리를 보유 다양한 통신 라인을 통해 서로 통신 각 프로세서의 크기가 다양 목적 자원의 공유(resource sharing) 부하 공유(load sharing)에 의한 계산 속도 증대 신뢰도 증대 통신
13
1.8 실시간 시스템(Real-time System)
처리기 작동이나 자료 흐름에 엄격한 시간 제약이 요구되는 경우에 사용 과학 실험 의학용 이미지 시스템 산업용 제어 시스템 무기 시스템
14
hard real-time system soft real-time system 작업을 정해진 시간에 반드시 완료
보조 기억장치 및 가상 기억 장치 사용 배제 ROM 등을 사용, 범용 운영 체제를 사용 못함 기계(하드웨어) 의존적 성향 cf. 시분할 시스템 soft real-time system 실시간 태스크가 높은 우선순위(priority)를 유지 멀티미디어, 가상 현실, 과학 프로젝트(해저 탐사 등)
Similar presentations