Upload
andrew-barry
View
73
Download
1
Embed Size (px)
DESCRIPTION
1 장 운영체제 개념. 29-Nov-14. I. 개요. 개요 사용자 인터페이스 사용자의 입장 컴퓨터 사용의 편리성 제공 자원 관리 다중 사용자 시스템에서의 관리 다중 태스킹 시스템에서의 관리. 2. 운영체제의 종류. 단일 사용자 vs. 다중 사용자 동시에 컴퓨터 시스템을 사용하는 사용자 수 단일사용자 시스템의 모든 자원들이 한 사용자에게 귀속 운영체제는 사용자에 대한 관리만 수행 -> 단순 다중 사용자 시스템의 각 자원을 여러 사용자가 공유 - PowerPoint PPT Presentation
Citation preview
1 장 운영체제 개념
Apr 19, 2023
I. 개요
개요 사용자 인터페이스
사용자의 입장 컴퓨터 사용의 편리성 제공
자원 관리 다중 사용자 시스템에서의 관리 다중 태스킹 시스템에서의 관리
2. 운영체제의 종류 단일 사용자 vs. 다중 사용자
동시에 컴퓨터 시스템을 사용하는 사용자 수 단일사용자
시스템의 모든 자원들이 한 사용자에게 귀속 운영체제는 사용자에 대한 관리만 수행 -> 단순
다중 사용자 시스템의 각 자원을 여러 사용자가 공유 운영체제는 실행 뿐만 아니라 자원 보호에 대한 책임을 수행 -> 복잡
단일 태스킹 (tasking) vs. 다중 태스킹 단일 태스킹
운영체제가 한번에 하나의 작업만을 수행 메모리와 CPU 는 하나의 프로그램만을 적재 , 실행
다중 태스킹 동시에 여러 프로그램 실행 가능 여러 프로그램이 메모리에 적재 , CPU 는 번갈아 실행
2. 운영체제의 종류 사용 환경에 따른 구분
일괄 처리 시스템 사용자의 작업 요청을 모아 한꺼번에 실행 천공 카드 등의 형태로 운영
시분할 (time sharing) 시스템 터미널 + 통신 + 시분할 CPU 를 일정 시간 (time slice) 만큼 번갈아 사용 대화식 처리가 가능
분산 시스템 컴퓨터 시스템이 고속의 버스 등을 통하여 상호 연결 자원 공유 , 연산의 병행 수행등으로 속도 및 신뢰성 향상
실시간 시스템 작업이 제한 시간 (deadline) 내에 완료 그렇지 못한 경우 치명적 결과 ex) FA, 군사적 장치
3. 운영체제의 기능
user
Compiler, Assembler, Loader, Debugging Aids, Editor, DB, ...
O SMemMgmt
ProcessMgmt
FileMgmt
I/OMgmt
H / W
pagingsegment
schedulertraffic control
libraryfile
directory
Spoolingbuffer
Applications
3. 운영체제의 기능 프로세스 관리
프로세스 상태 , 프로세스의 요청 , 사건의 대기 , 총 실행 시간등에 대한 정보를 유지 , 관리
기억장치 관리 프로그램 수행에 필요한 정보들을 적재 메모리의 효율적 관리
파일 관리 사용자의 요청에 따라 주어진 영역에 저장 / 접근 사용자의 파일들을 관리 , 유지
입출력 관리 프로세스의 입출력 요구의 실행 인터럽트의 처리
프로세스의 상태 전이
Finish
Run
Processormanagement
Memorymanagement
Processormanagement
traffic controller
Devicemanagement
Processor managementex) Process Scheduler
ProcessorManagement
Processormanagement
traffic controller
Processormanagement
traffic controller
FileManagement
Memorymanagement
I/O Management
Wait
ReadyHoldSubmit
Device ManagementEx) Spooling
Information ManagementEx) File system
Processor managementEx) Job Scheduler
Processor ManagementEx) Traffic controller
Device ManagementEx) I/O traffic Controller
MemoryManagement
Processor Release
Memory Release
Device Release
Processor State
ProcessorManagement
Ex) Read Call
I/O Start I/O Processor Creation
Send Blocked Process
Timer Signal
Memory Allocation
Creation Processorfor JobCan use Device ?Possible Memory
CallRequest Space
1
3
4
5
6
Process Scheduler
2
Job Scheduler
4. 운영체제의 발전과정 (1)
초기 컴퓨터 H/W 만 존재 , 모든 운영을 전문 프로그래머가 수행 수행방법
기계어로 프로그램 작성 수작업으로 기억장치에 적재 시작 주소를 조정하여 프로그램 수행 시작 프로그래머가 수행과정 감시
특징 프로그래머가 프로그램 작성 , 시스템 조작 기계 사용은 신청이나 예약 기법을 이용
새로운 하드웨어 및 소프트웨어 추가 개발 장치 - 카드 판독기 라인 프린터 , 자기테이프 등 자동화 라이브러리 - 어셈블러 , 로더 , 링커 입출력 루틴 - device driver 컴파일러 - FORTRAN, COBOL 등 .
사용자프로그램 영역
4. 운영체제의 발전과정 (2)
상주 모니터 초기컴퓨터의 문제점 : CPU 의 idle time 발생 , 고가의 컴퓨터 기능
idle time 줄이기 위해 자동 작업순서위한 프로그램 개발 특성
모니터가 주기억장치에 상주 다음 프로그램 수행이 자동으로 전환 작업 제어 카드 활용
제어 카드 해석기작업 제어 카드Device driver
인터럽트 벡터
경계 레지스터
상주 모니터
4. 운영체제의 발전과정 (3)
일괄처리 시스템 (batch processing system) 입력되는 자료를 일정기간 ( 일정량 ) 모아 한꺼번에 처리 장단점
초기 시스템보다 효율적으로 사용 turn around time 이 길다 . 적절한 제어카드를 제공 프로그램의 오류 수정작업이 어려움 CPU 가 idle state 가 되기 쉬움
4. 운영체제의 발전과정 (4)
On-line system CPU 와 주변 장치가 on-line 으로 연결 사용자가 OS 나 프로그램에 직접 명령을 주고 응답을 받음
장단점 짧은 응답시간 결과 즉시 출력 - 프로그램 검사와 개발에 유용성 제공 상당한 유휴시간이 생김
Buffering vs. Spooling
Buffering m/m 에 버퍼를 할당하여 CPU 와 입출력사이의 유휴시간 감소
Spooling disc 의 일부를 스풀 공간으로 지정 , 매우 큰 버퍼처럼 사용 다수의 프로세스가 입출력을 동시에 수행
프로그램
버퍼
CPU
channel printer
CPU
Disc
PrinterCardreader
4. 운영체제의 발전과정 (5)
다중프로그래밍 시스템 (multi-programming system) 기억장치에 다수의 프로그램 적재 , 운영 CPU 이용률 높임 개발동기
buffering 과 spooling 이용하더라도 idle time 발생 특징
입출력시의 idle time 줄임 기억장치 관리와 CPU 스케줄링등 여러 프로그램 관리 기능 추가
모니터프로그램 1프로그램 2
….프로그램 n
기억장치 구성
P1
P2
P3
P1
P2
P3
P1
P2
P3
P1P2P3 P1P2P3 P1P2P3
실행과정
4. 운영체제의 발전과정 (6)
시분할 시스템 (Time Sharing System) 다중 프로그래밍 기능의 확장된 개념 수행 방법
제출된 프로그램들에 대해 일정한 시간 (time slice) 의 CPU 사용권 부여 multi-user 시스템은 대부분 이 기법을 적용
CRT
CRT
TTY
큐CPU M/M
I/O
Viewpoint of Resource Management (Hierarchical viewpoint)
User
Processor Management (High level)Process Create / KillProcess Send / ReceiveProcess Stop / Start
Job Management
Information Management File Create / DeleteFile Open / CloseFile Read / Write)
Peripheral Device ManagementState Recognition of I/O DeviceI/O ScheduleStart I/O Process
Main Memory ManagementAllocation of Main MemoryRelease of Main Memory
Processor Management (Low level)Process SchedulingSynchronization
H/W
(Job Mgt)
(File System)
I/O Mgt
P. Mgt(Upper bound)
M. Mgt
P. Mgt(Lower bound)
H/W
Kernel
Cor
e
Operating S
ystem
Evolution Process of O.S
1950 1960 1970 1980Mainframes
No software
Compilers Time-shared
Multics
Distributed system
batchResidentmonitors
1960 1970 1980Minicomputers
No software
Compilers
Time-sharedResident
monitors1970 1980
Microcomputers No software
Compilers
Residentmonitors
interactiveMulti-user
Unix
Unix
Multi-user
Multi-user
5. A Kind of O.S1) Early system
Depend on Computer H/W
2) Batch processing systemsCompiler, Loader, Job control card => Job Sequencing
3) Multiprogramming Maximize use of CPU
P1 P2
I. OS
4) Time-Sharing(Multitasking)- Transformation of multiprogramming
- User sharing by short time quantum on interactive Terminal Each user is under on illusion to monopolize System
5) Real time- For special purpose O.S of Control Device
ex) sensor or watch( observation )
- Hard Real time : Critical task on time
- Soft Read time : less restrictive
CPU M I/O
I. OS
I. OS
6) Parallel Systems : System consisted of multiple processors- For Speed up, Throughput increment
Symmetric multiprocessing Model
: The same OS
Asymmetric multiprocessing Model
: Master Processor controls the System
= Tightly coupled system
: Processors share the memory and the clock
P1 P2 Pn
Memory
I. OS
7) Distributed Systems= Loosely coupled system
: Each processor has its own local Memory and Clock
: Communicate Bus, various Lines
- The Reasons for building distributed system① Resource sharing
② Computation speed up Local sharing
③ Reliability
④ Communication : Network exchange information downsizing
P1 P2
MSG: RPC