Download presentation
Presentation is loading. Please wait.
1
운영체제(Operating System)
운영체제 1장 운영체제(Operating System) 담당교수: 성미영 교재: Operating System Concepts, Fifth Edition, Silberschats, Galvin 공저, 김영찬 역, 홍릉과학출판사, 1999. 참고서적: 운영체제론, H.M. Deitel저, 조유근, 고건 공역, 홍릉과학출판사, 1994. Unix 운영체제(The Unix Operating System), Kaare Christian, Susan Richter 저, 석상기 역, 희중당, 1997.
2
제1장: 서론(INTRODUCTION) 1.1 운영체제란 무엇인가? (What Is an Operation System?)
운영체제 1장 제1장: 서론(INTRODUCTION) 1.1 운영체제란 무엇인가? (What Is an Operation System?) OS란 사용자의 응용 소프트웨어와 하드웨어와의 interface 역할을 하는 프로그램으로서 컴퓨터 시스템을 효율적으로 사용하는 환경제공 하드웨어를 제어하는 소프트웨어(S/W that controls H/W) S/W -> firmware: micro code program in ROMs and PROMs (예) MS-DOS, OS/2, Windows, Windows/NT, Multics, Unix, Mach, MVS, VMS, Mac OS, ... 2 views 자원할당자/관리자(resource allocator/manager) 서비스 제공자(Service Provider) OS의 주 목적 컴퓨터 시스템을 편리하게 이용 컴퓨터 하드웨어를 효율적으로 사용 운영체제는 컴퓨터 시스템에서 가장 ??? 부분 (P6 그림1.1)
3
1.2 단순 일괄처리 시스템(Simple Batch Systems)
운영체제 1장 1.2 단순 일괄처리 시스템(Simple Batch Systems) 21.1 초기 시스템 참조 초기 컴퓨터 1 machine … 1 user 작업준비시간(job set-up time) 줄여 컴퓨터 이용율 높이고자 ① computer operator 고용 ② batched together -> 작업전환 동안 여전히 idle time 자동작업순서(autmatic job sequencing)로 idle time의 제거 상주 모니터(resident monitor)가 담당 (p8 그림1.2, p702 그림2.1) control cards이용 사용자와 작업 간 상호작용 부족 CPU idle time 발생 이유 CPU : 전자적, MIPS I/O device : 기계적, 17 카드/초 CPU idle time 줄이고자 ① Off-line processing 느린 입출력 장치를 Off-line으로 하고 입출력은 magnetic-tape으로 대치 장점 ① on-line I/O device보다 빠름 ② multiple reader-to-tape & tape-to-printer 단점: 한 Job이 실제로 run될 때까지의 준비시간이 길어짐
4
1.2 단순 일괄처리 시스템(Simple Batch Systems) (cont.)
운영체제 1장 1.2 단순 일괄처리 시스템(Simple Batch Systems) (cont.) ② spooling(Simultaneous Peripheral operation On-Line) (p9 그림 1.3) tape : sequential-access disk : random-access I/O 와 계산을 Overlap 1.3 다중 일괄처리 시스템(Multiprogrammed Batched Systems) Spooling job pool 제공 direct access device job scheduling이 가능 -> multiprogramming이 가능 (Cf.) sequential access device : FCFS(First-come First-Served) only) Multiprogramming 여러 개의 프로그램을 동시에 주기억 장치에 넣고 CPU를 분할 사용하여 CPU 이용율을 높이는 기법 Job Scheduling job pool에 있는 job중에서 실행을 위해 주기억 장치로 읽어 들임 다음 수행할 job을 결정하는 작업 CPU Scheduling 주기억 장치 안의 준비 상태 job중에서 실행할 job을 선택하는 작업
5
1.4 시분할 시스템(Time-Sharing Systems)
운영체제 1장 1.4 시분할 시스템(Time-Sharing Systems) 다중 일괄처리 시스템의 단점 User는 job이 실행되는 동안 interact할 수 없음. 시분할 기법 Multiprogramming의 확장 -> interactive 하게함 CPU시간을 아주 짧게 나누어 interact할 수 있게 함 시분할 운영체제가 지원해야 하는 기법들 메모리 관리(virtual memory등) On-Line file system -> 사용자가 data를 편리하게 이용 디스크 관리 병행 수행(concurrent execution)을 위한 CPU scheduling 작업사이의 동기화와 통신(job synchronization and communication) 실행순서 제어를 위해 Deadlock 처리 Time-sharing = CPU Scheduling + Multiprogramming
6
1.5 Personal-Computer Systems
운영체제 1장 1.5 Personal-Computer Systems H/W cost 절감 -> PCs IBM PC Family : MS-DOS, Windows, OS/2 multitasking system, Windows NT Apple Macintosh : Mac OS -> virtual memory mainframe computer 의 OS개념들이 PC의 OS로 전이됨 Personal workstation : 큰 PC, Sun, HP/Apple, IBM RS/6000 p16 그림1.5 운영체제 개념과 특징의 변천 참조 1.6 병렬 시스템(Parallel Systems) 1 CPU -> multiple CPU(multiprocessor systems) 밀결합(tightly coupled systems) : BUS, Clock, Memory, 주변기기를 공유 병렬시스템의 효과 increased throughput Save money : 자원의 공유(deivce) reliability(신뢰성) 향상 Multiprocessing의 구분 Symmetric-multiprocessing : 각 Processor가 OS를 가짐(동등한관계) SunOS Version5(Solaris 2.x) Asymmetric multiprocessing : master processor가 각 processor에게 일 시킴 SunOS Version4(Solaris 1.x)
7
1.7 분산 시스템(Distributed Systems)
운영체제 1장 1.7 분산 시스템(Distributed Systems) Loosely coupled systems(이완결합) 각 processor 는 자신의 local memory를 가짐 communication line 통해 교류 Processors: micro processors, workstations, minicomputers, large general-purpose computer systems sites, nodes, computers 분산시스템의 효과 Resource sharing(자원공유) Computation speedup(계산속도 증가) : load sharing Reliability(신뢰성) Data communication(통신) : 정보 교환 (예) FTP,
8
1.8 실시간 시스템(Real-Time Systems)
운영체제 1장 1.8 실시간 시스템(Real-Time Systems) 엄격한 시간제약 하에서 수행되는 시스템 특정응용의 제어 장치 sensor -> computer -> control (예) automobile-engine fuel-injection, weapon 종류 Hard real-time system 특정 작업이 실제시간에 완료되어야 함 Kernel delay(data를 가져와서 처리를 완료하는 데까지 걸리는 지연시간) 가 특정 한계 이내로 제한됨 Data를 short-term memory나 ROM에 저장(Virtual memory기법은 hard-real-time system에 부적합) hard real-time기능을 지원하는 범용 computer는 없음(hard read-time 과 time-sharing은 상극) (예) industrial control and robotics (제어시스템 또는 로보틱스)
9
1.8 실시간 시스템(Real-Time Systems) [cont.]
운영체제 1장 1.8 실시간 시스템(Real-Time Systems) [cont.] Soft real-time system 중요한 실시간 작업은 다른 작업에 우선해서 실행 완료 (예) multimedia, virtual reality, advanced scientific projects 고급 OS의 기능들이 필요함(참조:UNIX Version에서의 soft real-time기능) Real-time OS(real-time scheduling 가능) EDF(Earliest Deadline First) Algorithm Monotonic Rate Algorithm CPU scheduling (Multimedia p257) Rate monotonic Algorithm Disk scheduling(Multimedia P282) EDF disk scheduling SCAN-Earliest Deadline First 참고자료 : Multimedia: Computing Communication & Applications, Steinmets and Nahrstedt, Prentice-Hall, 1995.
10
Hard 한 걸 Hard 하게 하면 Hard해 진다.
운영체제 1장 Hard Hard 한 걸 Hard 하게 하면 Hard해 진다. Hard 한 것은 아름답다.
Similar presentations