Thread Thread Thread Thread Scheduling Thread Synchronization Process

  • Slides: 14
Download presentation
Thread와 Thread동기화 Thread와 Thread Scheduling Thread Synchronization(동기화)

Thread와 Thread동기화 Thread와 Thread Scheduling Thread Synchronization(동기화)

목차 Process와 Thread 리뷰 Thread Scheduling • Process와 Thread 개념도 • 남은 문제들 •

목차 Process와 Thread 리뷰 Thread Scheduling • Process와 Thread 개념도 • 남은 문제들 • • Thread Synchronization • Thread 상태 우선순위 알고리즘 Process와 Thread 우선순위의 관계 Preemptive Scheduling 필요성 Critical Section Mutex Semaphore Event

Thread의 상태

Thread의 상태

Thread Synchronization 필요성 Thread가 할당받은 시간 Thread 코드 실행 H/W Interrupt DPC큐 루틴 •

Thread Synchronization 필요성 Thread가 할당받은 시간 Thread 코드 실행 H/W Interrupt DPC큐 루틴 • Multi Threading 방식에서는 각 Thread들 이 어떤 순서로 실행되는지 예측할 수 없 다. 내문서/VS 2008/Proj/CH 6/Critical. Section

Event • Signaled/Nonsignaled 상태를 원하는 때에 바꿀 수 있는 동기화 객 체. • Named

Event • Signaled/Nonsignaled 상태를 원하는 때에 바꿀 수 있는 동기화 객 체. • Named Event 가능. • Auto Reset모드 – Wait. For. Single. Object() 를 통해 진입 후 자동으로 Nonsignaled 상태로 변경 • Manual Reset 모드 – Reset. Signal()을 호출하기 전까지 Signaled 상태를 유지. 내문서/VS 2008/Proj/CH 6/String. Event 2

Thread 대기블록 KTHREAD #1 Wait. Block. List Wait. List. Entry Thread Object Next. Wait.

Thread 대기블록 KTHREAD #1 Wait. Block. List Wait. List. Entry Thread Object Next. Wait. Block KTHREAD #2 Wait. Block. List Wait. List. Entry Thread Object Next. Wait. Block 동기화 객체 #1 동기화 객체 #2 Wait. List. Head