sts-semi.co.kr [Now] 스레드 관련 루틴 분석 > stssemi5 | sts-semi.co.kr report

[Now] 스레드 관련 루틴 분석 > stssemi5

본문 바로가기

뒤로가기 stssemi5

[Now] 스레드 관련 루틴 분석

페이지 정보

작성일 22-10-14 12:38

본문




Download : 스레드 관련 루틴 분석.hwp





▪ FindNextToRun()함수는 단순히 ready list의 앞에 있는 thread를 return한다.alarmschedulerthreadsclass분석 , 스레드 관련 루틴 분석기타레포트 ,
순서

Download : 스레드 관련 루틴 분석.hwp( 14 )




스레드 관련 루틴 분석에 대한 글입니다.


설명


레포트/기타

,기타,레포트
alarmschedulerthreadsclass분석
스레드 관련 루틴 분석에 대한 글입니다.
▪ 만약 previous Thread가 스스로 종료되었다면 s…(省略)
스레드 관련 루틴 분석



스레드%20관련%20루틴%20분석_hwp_01.gif 스레드%20관련%20루틴%20분석_hwp_02.gif 스레드%20관련%20루틴%20분석_hwp_03.gif 스레드%20관련%20루틴%20분석_hwp_04.gif 스레드%20관련%20루틴%20분석_hwp_05.gif 스레드%20관련%20루틴%20분석_hwp_06.gif


다.

+ Scheduler::Run(Thread *nextThread, bool finishing)
▪ current thread를 suspend하고 새로운 thread를 switch하는 작업을 한다.
▪ item를 return한다.
- ready list에 thread가 없다면 NULL을 return한다.





+ Scheduler::FindNextToRun()
▪ read 상태에 있는 thread을 선택하고 이 thread를 return한다.
▪ thread는 더 이상 실행하기를 원하지 않을때 이 루틴을 호출한다.
▪ lock->Release()함수를 호출한다.
- ready list에 thread가 존재한다면 readyList->RemoveFront()의 return값을 return한다.
▪ code分析(분석)
- ASSERT()함수를 이용하여서 (kernel->interrupt->getLevel() == IntOff) 가 true일 경우
즉, interrupt가 disable하게 되었을 경우 계속 실행한다.
▪ 새로운 thread를 switch하기 전에 current thread가 자신의 stack를 overflow했는지
를 검사한다.

+ SynchList::RemoveFront()
▪ lock->Acquire()함수를 호출하여서 list의 mutual exclusive access를 실시한다.
▪ ready list가 비워 있지 않을 때까지 기다린다.
▪ list의 제일 앞의 item을 취해서 item변수에 저장한다.
▪ Run()을 호출한 것은 현재 실행하고 있는 thread이다.
전체 41,150건 1 페이지
해당자료의 저작권은 각 업로더에게 있습니다.

evga.co.kr 은 통신판매중개자이며 통신판매의 당사자가 아닙니다.
따라서 상품·거래정보 및 거래에 대하여 책임을 지지 않습니다.
Copyright © sts-semi.co.kr. All rights reserved.
PC 버전으로 보기