운영체제 chapter1

35
운운운운 Sig Chapter 1 : Introduction

Upload: younggun-na

Post on 25-May-2015

675 views

Category:

Documents


3 download

DESCRIPTION

operating system 1

TRANSCRIPT

Page 1: 운영체제 Chapter1

운영체제 SigChapter 1 : Introduction

Page 2: 운영체제 Chapter1

목적

Operating System 의 주요 구성 요소에 대한 전체적인 그림

Computer System 구조에 대한 기본 지식

Page 3: 운영체제 Chapter1

Computer System 의 구성요소

Hardware – 기본적인 Computing resource CPU, memory, I/O device

Operating system 다양한 Application Program 과 유저가 Hardware

를 사용하는 것을 제어 , 조정 Application program

사용자의 Computing problem 를 해결하기 위해 System resource 를 사용하는 방법을 정의

Word processor, compiler, web browser, data-base system, game

User 사람 , 기계 , 다른 컴퓨터 등

Page 4: 운영체제 Chapter1

Computer System 의 구성

memory 에 대한 접근을 제공하는 공통 bus 에 의해 연결된 여러개의 device controller와 하나 이상의 CPU 로 구성

CPU 와 device controller 는 memory cycle 을 얻기 위해 경쟁

Page 5: 운영체제 Chapter1

Bootstrap

Bootstrap 은 power-up 이 되거나 reboot 할 때 읽어짐 보통 ROM 이나 EPROM 에 저장 Firmware

역할 System 의 모든 것을 초기화 Operating system kernel 을 memory 에 적재하고 실행

Page 6: 운영체제 Chapter1

Operating System?

다양한 사용자를 위한 다양한 응용 프로그램간의 하드웨어 사용을 제어하고 조정

Computer System 이 동작할 때 resource 를 적절하게 사용하는 방법을 제공

Operating System 의 목적 응용프로그램을 실행하고 사용자의 문제를 해결 Computer system 을 사용하기 편하게 만드는 것

Operating System 의 정의 OS is a Resource allocator

OS is a Control program

Page 7: 운영체제 Chapter1

Interrupt

hardware 나 software 는 interrupt 를 통해 event 발생의 신호를 알린다 Hardware 는 system bus 를 통해 Software 는 system call operation 을 통해 Interrupt 를 발생시킨다 .

Page 8: 운영체제 Chapter1

Interrupt Handling

Interrupt 발생 Operating system 은 register 와 program counter 를

저장함으로써 CPU 의 상태를 저장 Interrupt 에 따라 다른 Service routine 이 실행 Service routine 이 끝나면 interrupt 되기 전의

실행중이였던 Process 를 다시 시작

Page 9: 운영체제 Chapter1

I/O Structure

일반적인 순서 I/O request CPU 는 Device Controller 의 Register 에 필요한 값을

Store Device Controller 는 Register 의 내용을 조사 연산 연산 완료를 CPU 에 interrupt

Page 10: 운영체제 Chapter1

I/O Structure

Synchronous Asynchronous

Page 11: 운영체제 Chapter1

I/O Structure

Synchronous Asynchronous

Page 12: 운영체제 Chapter1

Device Status Table

Page 13: 운영체제 Chapter1

I/O Structure

Direct Memory Access Structure (DMA structure) I/O device 의 데이터는 Device controller 에 의해 local buffer 로 이동 But 데이터의 크기가 클 경우 memory 적재에 부담이 생긴다 DMA 는 이 이동에 CPU 의 개입을 피하는 방식 Device controller 는 block 단위의 data 를 buffer 에서 main memory

로 store

Block 전송 완료마다 interrupt 를 보내 CPU 에 알림

Page 14: 운영체제 Chapter1

Storage Structure

Main memory 유일하게 CPU 가 직접적으로 접근할 수 있는 대량 storage device

Load, Store 명령 Dynamic Random-Access Memory(DRAM)

폰 노이만 구조 시스템 Memory 에서 instruction 을 load 해 instruction register 에 적재 Instruction 해독 필요한 Operand 을 memory 에서 load 한다 Instruction 실행 이후 memory 에 다시 store 할 수 있다 .

Main memory 의 한계 저장공간이 적다 휘발성 storeage

Page 15: 운영체제 Chapter1

Storage Structure

Secondary storage Main memory 의 한계를 깨기 위해 등장 대량의 자료를 영구하게 보존할 수 있음

Magnetic disk - 일반적인 Secondary storage

Cash memory, CD-ROM, 자기 테이프

Page 16: 운영체제 Chapter1

Storage Structure

Page 17: 운영체제 Chapter1

Computer system Architecture

Single-Processor System 하나의 CPU

Multiprocessor System 여러개의 CPU

성능이 좋으며 신뢰성 , 융통성 , 모듈 단위의 확장이 가능

Page 18: 운영체제 Chapter1

Computer system Architecture

Clustered system 여러 개의 시스템을 결합 LAN 같은 고속 connection 으로 연결 높은 availability

Asymmetric Clustering 한 컴퓨터가 hot-standby mode 유지

Symmetric Clustering 모든 Computer 가 서로 감시

Page 19: 운영체제 Chapter1

Operating System Structure

Multiprograming 여러 job 를 memory 에 적재 Memory 에 있는 job 중 하나를 선택 실행 I/O 의 종료를 기다리는 등의 상황이 생기면 다른 job 를 수행 기다리는 상황이 끝나면 CPU 는 다시 하던 job 수행

Time sharing / multi-tasking 여러 작업이 동시에 수행 - 즉 memory 에 동시에 유지 모든 process 들을 Disk 의 job pool 에 보관 Job pool 에서 메모리에 적재할 job 을 선택하는 것이 Job scheduling

Memory 에 있는 job 의 처리하는 순서를 CPU scheduling

Page 20: 운영체제 Chapter1

Operating System Structure

Swapping 적절한 respond time 보장 한가지 process 가 main memory 보다 클 경우 process 을 Main memory -> Disk Disk -> Main memory

Virtual Memory 실제 main memory 크기 보다 logical memory 를 크게 잡게 해줌 .

Page 21: 운영체제 Chapter1

Operating System Operations

OS 는 Interrupt driven

Software 의 error 나 request 는 exception/trap 발생 이는 software 에서 interrupt 를 발생 나누기 0 이나 요청 등등 .

Interrupt 에 대해 다른 처리를 결정 Interrupt service routine

Program 의 error 는 program 내에서만 문제를 일으키도록 보장

Page 22: 운영체제 Chapter1

Operating System Operations

Dual-mode operation 잘못된 user 로부터 OS 를 , 잘못된 user 서로를 보호하는 방법 제공 Mode bit

User mode(1)/kernel mode(0)

몇몇 instruction 는 kernel mode 에서만 수행 가능 System call – kernel mode 로 전환 / 실행 / 돌아갈때 user mode

Page 23: 운영체제 Chapter1

Operating System Operations

Timer OS 가 CPU 에 대한 제어를 유지할 수 있도록 보장 무한루프 방지 OS 는 할당된 제한 시간을 초과하면 그 프로그램을 종료

Page 24: 운영체제 Chapter1

Process Management

Process – 실행중인 program Program – passive / 파일 내용같은 ..

Process – active / program counter 를 가진 ..

Process 는 수행하기 위해 여러 resource 를 필요로 함 / 끝나면 반환 CPU 는 process 의 instruction 을 차례대로 수행 Multi thread process 의 경우 여러개의 Program counter

Page 25: 운영체제 Chapter1

Process Management

OS 의 Process Management User process / system process 의 생성 및 제거 Process 의 일시 중지와 재실행 Process synchronize 를 위한 기법 제공 Process communication 을 위한 기법 제공 Deadlock 을 처리하는 기법 제공

Page 26: 운영체제 Chapter1

Memory Management

Program 수행을 위해서는 반드시 절대주소로 mapping

절대 주소를 생성 / memory 의 Program Instruction 과 자료에 접근 Program 종료 시 memory 공간을 가용으로 선언

Memory 에 여러 개의 Program 을 유지 Memory Management 필요

Page 27: 운영체제 Chapter1

Memory Management

OS 의 Memory Management Memory 의 어느 부분이 현재 사용되고 있으며 누구에 의해 사용되고 있는지 추적 어떤 process 들을 memory 에 store 하고 delete 할 것인지를 결정 필요에 따라 memory 공간을 Allocating / deallocating

Page 28: 운영체제 Chapter1

Storage Management

OS 는 Storage Device 의 Physical 특성을 추상화 Logical 한 저장 단위인 file 정의

File 을 physical 매체로 mapping 하여 접근

File System Management OS 는 large Storage device 와 그것을 제어하는 device 를 관리함 추상적 개념 구현

OS 의 File Management File 생성 / 제거 Directory 생성 / 제거 File / Directory 조작을 위한 primitive 제공 File 을 Secondary Storage device 로 mapping

비휘발성 Storage device 에 파일을 backup

Page 29: 운영체제 Chapter1

Storage Management

Large Storage Device Management Secondary Storage Device 는 빈번하게 사용

효율적으로 사용해야한다 .

OS 의 Disk Management Free-space 관리 Storage Device 할당 Disk Scheduling

Page 30: 운영체제 Chapter1

Storage Management

Cashing 빠른 연산 속도의 저장공간 다시 사용될 활률이 높은 Data 를 담는다 CPU 는 Cash 를 확인하고 없다면 main memory 에서 가져온다 .

Index register 같은 CPU 내부의 Register

Main Memory

Page 31: 운영체제 Chapter1

Storage Management

Cashing 빠른 연산 속도의 저장공간 다시 사용될 활률이 높은 Data 를 담는다 CPU 는 Cash 를 확인하고 없다면 main memory 에서 가져온다 .

Index register 같은 CPU 내부의 Register

Main Memory

Magnetic Disk

Main Mem-ory

Cash HardwareRegister

Page 32: 운영체제 Chapter1

Storage Management

I/O system 특정 Hardware Device 의 특성을 숨김

Device Driver 만 특성을 알고 있다

구성요소 Buffering, Cashing, Spooling – Memory Management 요소 Device Driver Interface

Page 33: 운영체제 Chapter1

Protection and Security

Protection Resource 에 대해 Program, Process, user 의 접근을 제어 Subsystem 간의 Interface 에서 잠재적인 오류를 검출

신뢰성 증가

Security 외부 또는 내부의 공격을 방어

이 둘을 제공하기 위해 사용자를 구별 식별자의 리스트 프로세스나 쓰레드에 사용

Page 34: 운영체제 Chapter1

Distribute System

Distribute System 은 물리적으로 떨어져 있는 Computer 들의 집합 네트워크로 연결

Resource 접근 TCP/IP

유형 LAN ( 근거리 통신망 )

한 방 , 한층 , 또는 한 건물 연결 WAN ( 원거리 통신망 )

건물 , 도시 , 국가 사이를 연결 MAN ( 매트로 폴리턴 에어리어 네트워크 )

도시 내의 건물들을 연결 SAN ( 스몰 에어리어 네트워크 )

짧은 거리를 연결

Page 35: 운영체제 Chapter1

Storage Management

I/O system 특정 Hardware Device 의 특성을 숨김

Device Driver 만 특성을 알고 있다

구성요소 Buffering, Cashing, Spooling – Memory Management 요소 Device Driver Interface