2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel...

21
2 장 장장장장 제 03 제 : 제제제제

description

CPUmemdisk tty CPUmemdisk tty OS Kernel a.out Hardware : Table (Data Structure) : Object (hardware or software)

Transcript of 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel...

Page 1: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

2 장 프로세스

제 03 강 : 프로세스

Page 2: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Multi-user System

OSboot

탐색기

hwp

OS kernel

a.out

game

Page 3: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

CPU mem disk tty

OS Kernel a.out

Hardware

: Table (Data Structure): Object (hardware or software)

Page 4: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

web

hwp

Multi-user System

OS

User A:

User B:

탐색기

hwp

a.out

game

OS kernel

Page 5: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Process Control Block (PCB)Process 상태 process 에 대한 일체 정보CPU 정보

Program counterCPU 레지스터 값스케줄링 정보

메모리 정보주소

I/O 정보상태

요금 정보 각 자원 사용량

기타 각종 자원

Page 6: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Process Control Block (PCB)Process 상태 process 에 대한 일체 정보CPU 정보

Program counterCPU 레지스터 값스케줄링 정보

메모리 정보주소

I/O 정보상태

요금 정보 각 자원 사용량

기타 각종 자원 terminal 현재 directory (folder) open 한 file 들

Page 7: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU

PCB

mem disk

PCB

tty

hwp

CPU mem disk tty

User a.out

Kernel a.out

Hardware

Web

: Table (Data Structure): Object (hardware or software)

web

hwp

OS

Page 8: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

User a.out

Hardware

Process 3

memoryqueue mem

ory

신청

/대기

hwp Web

PCBPCB PCB

Page 9: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

User a.out

Hardware

CPU (ready)queue

memoryqueue

Process 3

loaded

hwp Web

PCBPCB PCB

Page 10: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

User a.out

Hardware

CPU (ready)queue

memoryqueue

Process 3

runs

hwp Web

PCBPCB PCB

Page 11: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

User a.out

Hardware

Process 3

CPU (ready)queue

memoryqueue

diskqueue I/O

신청

/대기

hwp Web

PCBPCB PCB

Page 12: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

스케줄러 (scheduler)

Page 13: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

User a.out

Hardware

Process 3

memoryqueue

memory

신청

/대기

hwp Web

PCBPCB PCB

Job QueueMemory 기다림

Page 14: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Process Scheduling Queues• Job queue – 메모리를 기다리는 프로세스들 .

Long-term scheduler (or job scheduler)

degree of Multiprogramming 결정

• Ready queue – 메모리에서 CPU 를 기다리는 프로세스들 Short-term scheduler (or CPU scheduler)

• Device queues – I/O 를 기다리는 프로세스들 • disk scheduler

Page 15: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

User a.out

Hardware

CPU (ready)queue

memoryqueue

Process 3

loaded

hwp Web

PCBPCB PCB

Ready QueueCPU 기다림

Page 16: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Process Scheduling Queues• Job queue – 메모리를 기다리는 프로세스들 .

Long-term scheduler (or job scheduler)

degree of Multiprogramming 결정

• Ready queue – 메모리에서 CPU 를 기다리는 프로세스들 Short-term scheduler (or CPU scheduler)

• Device queues – I/O 를 기다리는 프로세스들 • disk scheduler

Page 17: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

CPU mem disk tty

User a.out

Hardware

Process 3

CPU (ready)queue

memoryqueue

diskqueue I/O

신청

/대기

hwp Web

PCBPCB PCB

I/O QueueI/O 를 기다림

Page 18: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Process Stateready: CPU 에서 실행할 준비됨 메모리 공간도 할당 받음 선택되면 CPU 를 차지 (dispatch)

running: CPU 를 할당받고 실행 Time slice 동안만 CPU 사용

(Time quantum)

waiting: I/O 등 요청 CPU 포기 /양도 (blocked)

Page 19: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

main(){ int x; y = 30; x = read (file); y = x + 10; ….. …..

}

Page 20: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Process Stateready: CPU 에서 실행할 준비됨 메모리 공간도 할당 받음 선택되면 CPU 를 차지 (dispatch)

running: CPU 를 할당받고 실행 Time slice 동안만 CPU 사용

(Time quantum)

waiting: I/O 등 요청 CPU 포기 /양도 (blocked)

Page 21: 2 장 프로세스 제 03 강 : 프로세스. Multi-user System OS boot 탐색기 hwp OS kernel a.out game.

Process 상태

ready

dispatch

timerinterrupt

I/O requestor

other requestI/O 끝남

request 만족

memory할당 exit

running

blocked