WonYong-Jang / algorithm

0 stars 0 forks source link

운영체제 #17

Open WonYong-Jang opened 6 years ago

WonYong-Jang commented 6 years ago

운영체제 개요

정의

목적

1) 사용자에게 편리한 환경 제공 2) 시스템의 성능 향상

역할

프로그램 빌드 되는 과정 (링커와 로더)

운영체제의 유형별 특징

일괄처리시스템(Batch Processing System)

다중프로그래밍 시스템(Multi-Programming System) : CPU 1개

시분할 시스템(Time Sharing System)

분산 처리 시스템

다중 처리 시스템 : CPU N개

프로세스와 스레드

프로세스 정의

2018-08-14 7 37 29

인터럽트 : 컴퓨터 시스템에서 발생하는 예외적인 사건을 신속히 처리하기 위한 기법으로, 인터럽트가 발생하면 해당 인터럽트 처리 루틴을 먼저 수행한 후 원래의 프로그램으로 되돌아 온다.

문맥교환( Context Switching )

2018-08-20 2 26 15

스레드 ( Thread )

스케줄링 ( Scheduling )

스케줄링 하는 이유

프로세스 스케줄링 종류

비선점 ( non-preemptive )

- 현재 실행중인 프로세스가 끝나야 다음 프로세스 CPU 를 할당

1) FCFS 스케줄링

2) SJF 스케줄링( Shortest Job First )

2018-08-21 2 16 34 2018-08-21 2 17 36

3) HRN 스케줄링

2018-08-21 2 29 41

선점 ( preemptive )

- 현재 실행중인 프로세스보다 높은 우선순위를 가진 프로세스가 등장하면 스케줄러에 의해 실행 순서 조절

1) SRT 스케줄링 ( Shortest Remaining Time First )

2018-08-21 3 12 38

2) Round Robin

2018-08-21 3 16 02

3) 다단계 큐 알고리즘

4) 다단계 피드백 큐 알고리즘

병행 프로세스와 교착상태

임계구역 ( Critical Section )

다중 프로그래밍 운영체제에서 여러 개의 프로세스가 공유하는 데이터 및 자원에 대하여 어느 한 시점에서는 하나의 프로세스만 자원 또는 데이터를 사용하도록 지정된 공유 자원을 의미

상호배제 ( Mutual Exclusion ) 와 동기화

세마포어 ( Semaphore )

모니터 ( Monitor)

교착상태(Deadlock)

교착상태 처리 기법

1) 교착상태 예방(Prevention) : 교착상태 발생 조건 들 중 하나를 제거함으로써 해결 / 자원 낭비가 심함!

WonYong-Jang commented 5 years ago

프로세서와 프로세스의 차이

고아 프로세스와 좀비 프로세스

고아 프로세스

PCB 에 대해 설명

프로세스의 고유번호(PIN ; Process Identification Number) ==> 커널이 프로세스 관리하는데 있어서 편리성을 위하여 프로세스마다 다르게 부여되는 번호 / 프로세스 생성될때 부여 됨 CPU 스케줄링 정보 : 프로세스의 우선순위 ( ex) 다른 프로세스와 경쟁 했을때 우선순위 ), cpu 점유시간 등 프로세스 현재 상태(생성, 준비, 실행, 대기, 완료) 프로세스가 할당받은 자원 정보

스레드 장점

스레드 종류 2가지

프로세스와 스레드 차이( 작업을 실행할때 자원을 할당 하는 단위 위주 설명)

멀티 프로세스와 멀티 스레드 차이 (장단점 위주)

멀티 프로세싱

장점

멀티 스레드

장점

단점

Tread Pool(스레드 풀) 이란 ?

사용 이유 :

단점