본문 바로가기

반응형

전체 글

(645)
Semaphore P : Probern(검사) V : Verhogen(증가) 임의의 s변수 하나에 ready queue 하나가 할당 된다. Binary semaphore S가 0과 1 두 종류만 값만 갖는 경우 상호배제나 프로세스 동기화의 목적으로 사용 Counting semaphore S가 0이상의 정수값을 가질 수 있는 경우 Producer-Consumer 문제 등을 해결하기 위해 사용 초기화 연산 S 변수에 초기값을 부여하는 연산 스핀락과 달리 Queue 로 들어간다. Semaphore로 해결 가능한 동기화 문제들 - 상호배제 문제 - 프로세스 동기화 문제 - 생산자-소비자 문제 - Reader-Writer 문제 세마포어를 이용해서 실행 순서를 맞출 수 있다.
Spinlock Spinlock 쉽게 말하면 정수형 변수이다. 초기화, P() , V() 연산으로만 접근 가능 위 연산들은 atomic한 연산들이다. P(S){ while(S
크리티컬섹션 HW 솔루션 TestAndSet TAS instruction Test 와 Set을 한번에 수행하는 기계어 위에 TestAndSet이 한번에 수행이 된다. boolean 의 주소값을 받고 temp에 저장한다음 불러온 target의 값을 true로 만들고 temp를 반환한다. 타겟값을 반환하면서 현재값을 true로 바꾸어준다. 이 연산이 있으면 ME 문제가 한방에 해결된다.
크리티컬 섹션 해결 알고리즘 Dekker's Algorithm Tow process Me 을 보장하는 최초의 알고리즘 turn 과 flag를 둘다 사용하여처리 소스코드 간편화 먼저 깃발을 들고 양보를 한다(니턴이다) 그때 상대가 깃발을 들고 있고 상대턴이면 기다리고 아니면 크리티컬 섹션을 실행하는 알고리즘 N-Process Mutual Exclusion Dijkstra's Algorithm SW solution 들의 문제점 - 속도가 느림 - 구현이 복잡한
프로세스 동기화 방법 Process Synchronizeation (동기화) 다중 프로그래밍 시스템 - 여러 개의 프로세스들이 존재 - 프로세스들은 서로 독립적으로 동작 - 공유 자원 또는 데이터가 있을 때 , 문제 발생 가능 동기화(Synchronization) - 프로세스 들이 서로 동작을 맞추는 것 - 프로세스 들이 서로 정보를 공유 하는 것 비동기적 - 프로세스들이 서로에 대해 모름 병행적 - 여러 개의 프로세스들이 동시에 시스템에 존재 병행 수행중인 비동기적 프로세스들이 공유 자원에 동시 접근 할 때 문제가 발생 할 수 있음 용어정리 Shared data (공유데이터) = > 크리티컬 데이터 - 여러 프로세스들이 공유하는 데이터 Critical section (임계 영역) - 공유 데이터를 접근하는 코드 영역(cod..
SPN / SRTN / HRRN Shortest-Process-Next SPN - Non-preemptive scheduling - 스케줄링 기준(Criteria) - 실행시간 (bust time 기준) - Bust time 가장 작은 프로세서를 먼저처리 SJF(Shortest Job First) 장점 - 평균 대기시간 WT 최소화 - 시스템 내 프로세스 수 최소화 - 많은 프로세스들에게 빠른 응답 시간 제공 단점 - Starvation (무한대기) 현상 발생 , 기아현상 발생 SRTN ( Shorest Remaining Time Next) SPN의 변형 Preemptive scheduling - 잔여 실행 시간이 더 적은 프로세스가 ready 상태가 되면 선점됨 장점 - SPN의 장점 극대화 단점 - 프로세스 생성시, 총 실행 시간 ..
FCFS/RR Waiting time : 프로세스가 도착하고 실제로 실행이 시작될때 까지 기다리는시간 Turnarounde : 프로세시가 도착하고 실제로 끝나는 시간 Normalized TT (NTT) : (Turnaround time / Burst time) First-Come-First-Service FCFS 선착순 알고리즘 Non-preemptive scheduling 도착시간 기준으로 처리한다. 자원을 효율적으로 사용 가능 Batch system 에 적합, interactive system에 부적합 단점 - convoy effect - 하나의 수행시간이 긴 프로세스에 의해 다른 프로세스들이 긴 대기시간을 갖게 되는 현상 - 긴 평균 응답시간(respone time) RR (Round-Robin) - Preemp..
프로세스 스케줄링 스케줄링의 목적 - 시스템의 성능 향상 대표적 시스템 성능 지표 - 응답시간 - 작업 처리량 - 자원 활용도 대기시간 응답시간 반환시간 스케줄링의 단계 발생하는 빈도 및 할당 자원에 따른 구분 I/O -bounded 와 coumpute- bounded 프로세스들을 잘 섞어서 선택해야한다. 보통 시분할 시스템을 사용한다. 스케줄링 정책(Poicy) 선점 vs 비선점 Non-preemptive scheduling - 할당 받을 자원을 스스로 반납할 때까지 사용 쉽게 말하면 한번 할당받으면 다쓸때까지 자원을 안놓아주는 거임 ex) system call, I/O 장점 - Context switch overhead 가 적음 안주니깐 콘텍스 스위치가 적지 단점 - 잦은 우선순위 역전, 평균 응답 시간 증가 평균응답..

반응형