|
context-switch를 이용하는데 producer나 consumer나 누군가가 슬롯에 액세스하는 작업을 하다가 context-switch에 의해 다른 쓰레드가 작업권한을 가지게 된다면 버퍼의 값에 오류가 생길수도 있게 때문에 lock을 사용합니다. 여기서 lock는 기존에 있던 것
|
- 페이지 30페이지
- 가격 1,000원
- 등록일 2007.06.23
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
context switching 을 수행한다. ]
# actually switch kernel contexts with ordinary exceptions disabled
andigr4,#~PSR_ET,gr5
movgsgr5,psr
or.pgr10,gr0,gr28 set __frame
or.pgr10,gr0,gr28 set __current
or.pgr12,gr0,sp
orgr13,gr0,fp
orgr19,gr0,gr15 set __current_thread_info
stigr7,@(gr6,#0) set __kernel_f
|
- 페이지 11페이지
- 가격 2,000원
- 등록일 2008.01.13
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
.
-switch_to 매크로 함수
#define switch_to(prev,next,last) do
-> prev : 바뀌는 process
next : 새로 실행할 process
last : 이전에 실행했던 process
{\\
unsigned long esi,edi;\\
asm volatile(\"pushfl\\n\\t\"
->esi레지스터를 stack에 push\\
\"pushl %%ebp\\n\\t\"
->edi레지스터를 stac
|
- 페이지 8페이지
- 가격 1,200원
- 등록일 2007.10.26
- 파일종류 한글(hwp)
- 참고문헌 있음
- 최근 2주 판매 이력 없음
|
|
라 다르며, 1~1000 microsecond 정도이다.
유닉스의 경우, 커널은 마음대로 context switch를 하지 못하게 해서 내부 데이타와 구조의 일관성을 유지한다. 커널은 exit 시스템 콜이 끝난 후, 프로세스가 휴면 상태에 들어갈 때 등에는 반드시 context switch를
|
- 페이지 3페이지
- 가격 1,000원
- 등록일 2006.05.31
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
context switch한다.
-Thread에 bool joined을 멤버변수로 둬서 둬서 부모가 join을 실행하면 자식은 부모
가 join을 실행했다는 증거로 이 변수를 TRUE로 만든다.
4) Thread::Finish()
-joined가 TRUE이면 부모가 BLOCKED상태라는 말이므로 다시 READY상태로 바꿔서
|
- 페이지 7페이지
- 가격 2,000원
- 등록일 2006.05.31
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|