28
Operating System 운운운운 4190.307 운운운운 OSLab

Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Embed Size (px)

Citation preview

Page 1: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Operating System

운영체제

4190.307

Ⓒ 서울공대 OSLab

Page 2: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.2Operating System Concepts

• 연구실 : 302 동 324 호

전화 : 880-5583이메일 : [email protected]홈페이지 : dcslab.snu.ac.kr 내 course 참조

Office Hours: 화 , 목 14:30 -15:30 or by appointment

염헌영 ( 컴퓨터공학부 교수 )

Page 3: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.3Operating System Concepts

담당조교 김형석

302 동 311-2 호실 전화 : 880-1856 이메일 : [email protected] Office Hours: 월 , 수 2-3 시

Page 4: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.4Operating System Concepts

Course Information 교재 :

(1) 주교재 :Silberschatz, P. Galvin & G. Gagne, Applied Operating System Concepts, First Ed., (Windows XP Update), Wiley. (2) 참고도서 :L. F. Bic & A. Shaw, Operating Systems Principles, Prentice-

Hall.

Page 5: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.5Operating System Concepts

Course Information

평가중간고사 (4 월 말 예정 ): 30% 기말고사 (6 월 초 예정 ): 60%출석 및 기타 : 10% ( 부정기적 Quiz 등

)

Page 6: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.6Operating System Concepts

Chapter 1: Introduction

What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Computing Environments

Page 7: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.7Operating System Concepts

What is an Operating System?

A program that acts as an intermediary between a user of a computer and the computer hardware. Operating system goals:

Execute user programs Make solving user problems easier. Make the computer system convenient to use. Use hardware in an efficient manner.

“Performance” Throughput --- jobs / sec. system oriented Utilization --- % of time busy system oriented Response time --- sec / job user oriented user oriented index conflicts with system oriented indices user (R) 보다 system (U, T) 이 소중하면 batch 로 처리 (eg 동회 ) 어떤 작업은 그 자체가 결정 ( 전화요금 – batch) (Web – 즉시처리 )

UserOSHW

Page 8: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.8Operating System Concepts

Computer System Components

1. Hardware – provides basic computing resources(CPU, memory, I/O devices, …).

2. Operating system – controls and coordinates the use of the hardware among the various application programs for the various users.

3. Applications programs – define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, games, business programs).

4. Users (people, machines, other computers).

Page 9: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.9Operating System Concepts

Abstract View of System Components

Page 10: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.10Operating System Concepts

Operating System Definitions

Definition 1 -- Resource allocator manages and allocates resources.

Definition 2 -- Control program controls the execution of user programs and operations of

I/O devices .

Definition 3 -- Kernel one program running at all times memory resident all the time all else depend on this program.

Page 11: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.11Operating System Concepts

Mainframe Systems Batch:

동회 인감증명 (system 위주 , batch 처리의 사례 ) 쌓이면 서류창고 복사 수입인지 서류 창고 대장기록 여러 사람 것을 한꺼번에 모아 (batch) 처리 자원의 절약 -- by batching similar jobs

Batch 이전의 초기 컴퓨터 (card reader, 프린터 … ) Load compiler from card reader into main memory Put Bob’s source program (punch card) on card reader Run Compiler, which reads Bob’s program from card reader Generate Bob’s binary to card puncher

Batch 시스템의 등장– 당시에는 user 보다 HW 가 더 중요 (VLSI 이전 ) Compile in batch (many source programs are on card reader)

Automatic job sequencing automatically transfers control from one job to another. First rudimentary operating system.

Job Control -- (load cc, read src, compile, load bin, run, output 처리 … ) Resident monitor

initial control in monitor Job control (load, run) When a user job completes -- control transfers back to monitor

Page 12: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.12Operating System Concepts

Memory Layout for a Simple Batch System

Monitor

CPU is idle While I/O is in progress

Card Reader

Printer

Page 13: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.13Operating System Concepts

Multiprogrammed Batch Systems

Several jobs are kept in main memory at the same time, and the CPU is multiplexed among them.

CPU tape …

CPU Network

CPU

Page 14: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.14Operating System Concepts

OS Features Needed for Multiprogramming

I/O routine supplied by the system.

Memory management – the system must allocate the memory to several jobs. 할당되는 크기 , memory 를 할당하는 순서

CPU scheduling – must choose among several jobs ready to run on CPU 순서

Allocation of devices. 순서

Page 15: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.15Operating System Concepts

Time-Sharing Systems–Interactive Computin(multi-user system)

-The CPU is multiplexed among several jobs that are kept in memory and on disk (not on card reader ! ) (the CPU is allocated to a job only if the job is in memory).

-A job is swapped in and out of memory to the disk (not card reader). Eg 한글 97, 탐색기 한가해지면 disk 로 (not card reader)

-Users use (keyboard, mouse, CRT screen) to interact with program instead of (card reader, printer, etc). -On-line communication between the user and system is provided

when the operating system finishes the execution of one command, OS asks next “control statement” from the user’s keyboard.

Eg 한글 97, 탐색기 , …. -Response time should be short. (few seconds) Users are given illusion that he is using the whole system.

Page 16: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.16Operating System Concepts

Desktop (PC) Systems

Personal computers computer system dedicated to a single user.

I/O devices keyboards, mice, display screens, personal printer (from old system’s card readers, shared line printers)

Goal change: From Maximum hardware utilization To User convenience and responsiveness ( 혼자서 HW 다사용 ).

Do not need protection (Single user system) Among users Among user and system (minimum system is in ROM) Vulnerable to worm, virus, etc.

PC operating systems (Windows, MacOS, Linux)

Page 17: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.17Operating System Concepts

Real-Time Systems

Eg: missile control, medical equipment control system.

sensor system computer control

Rigid response time requirement (milli-seconds 단위 or 더 빠름 )

Real-Time systems may be either hard or soft real-time. Hard 절대로 지켜야 원자력 발전소 제어기 Soft 가급적 지켜야 인터넷 강연 , robot arm control

Page 18: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.18Operating System Concepts

Real-Time Systems (Cont.)

Hard real-time: Secondary storage limited or absent (disk access time is not predictable) data stored in memory 다른 OS 와 상이한 policy 를 사용해야

( 일반 OS -- no response time guarantee) general-purpose operating systems. Timesharing Systems

Soft real-time Limited utility in industrial control of robotics Useful in some applications (multimedia, virtual reality) .

Page 19: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.19Operating System Concepts

Parallel Systems

Multiprocessor system: Many CPU’s in close communication.

Tightly coupled system – processors share memory and a clock; communication usually takes place through the shared memory.

Advantages of parallel system: Increased throughput (# of jobs / second) Economical Increased reliability

graceful degradation fail-soft systems (fault tolerance – fault avoidance 와 비교 ) 용어 fault -- 고장자체

error – fault 의 파급효과

Page 20: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.20Operating System Concepts

Parallel Systems (Cont.)

Symmetric multiprocessing (SMP) Each processor runs identical copy of the operating system. Many processes can run at once without performance

deterioration. Most modern operating systems support SMP

Asymmetric multiprocessing Each processor is assigned a specific task; master processor:

schedules and allocates work to slave processors. More common in extremely large systems

Page 21: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.21Operating System Concepts

Symmetric Multiprocessing Architecture

Page 22: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.22Operating System Concepts

Distributed Systems

Distribute the computation among several physical processors. Loosely coupled system –

each processor has its own local memory; processors communicate with one another through various

communications lines, such as high-speed buses or telephone lines.

Advantages of distributed systems. Resources Sharing ( 다른 노드에 있는 자원 활용 ) illusion that there is only one OS Computation speed up – load sharing Reliability Communications

Page 23: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.23Operating System Concepts

Distributed Systems (cont)

Requires networking infrastructure. Local area networks (LAN) or Wide area networks (WAN)

Network Operating System Each node (processor + OS) is autonomous Aware of network

Page 24: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.24Operating System Concepts

General Structure of Client-Server

Page 25: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.25Operating System Concepts

Clustered Systems

Clustering allows two or more systems to share storage. Provides high reliability.

Asymmetric clustering: one server runs the application while other servers standby.

Symmetric clustering: all N hosts are running the application.

Page 26: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.26Operating System Concepts

Handheld Systems

Personal Digital Assistants (PDAs) Cellular telephones Issues:

Limited memory Small display screens Limited power Slow processors

차세대 3G 무선전화기

Page 27: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.27Operating System Concepts

Migration of Operating-System Concepts and Features

Page 28: Operating System 운영체제 4190.307 Ⓒ 서울공대 OSLab. Silberschatz, Galvin and Gagne 2002 1.2 Operating System Concepts 연구실 : 302 동 324 호 전화 : 880-5583 이메일

Silberschatz, Galvin and Gagne 20021.28Operating System Concepts

Computing Environments

Traditional computing Web-Based Computing Embedded Computing