메일로 받은 질문에 대해 추가 답변을 올립니다.


2) 보장되어 있지 않습니다.

3) 보장되어 있지 않다는 증거입니다.

4)

커널에서 스케쥴러가 컨텍스트 스위칭을 하여 task를 할당할때
OS마다 다양한 방식이 있는것으로 알고 있습니다.

Unix나 Linux같은 경우는 Process나 스레드 단위로
정확하게 시간분배를 하는 것으로
Windows는 시간분배로 task를 할당하지만 예외적으로
한 프로세스가 거의 독점이 가능하다고 알고 있습니다.


따라서 2의 경우는 운좋게 시간분배 안에 두 스레드의 task가
순차적으로 받아진 경우이며
3의 경우는 그렇지 못한 경우입니다


만약 위의 두 스레드에서 한쪽에서 메모리를 할당하고
또다른 한쪽에서 할당된 메모리를 썼다면 어떻게 되었을까요?
보장되어있지 않기때문에 언젠가 할당되지 않은
메모리를 쓰려할때도 있을것입니다.


이런 에러를 막기위해 스레드 프로그래밍에서 Critical Section등을
이용해 임계영역을 구분짓는 것도 관련지어 생각할수 있겠지요.

HiDy



'내발자국[동호회]' 카테고리의 다른 글

사회생활  (0) 2000.12.08
[잡담] Directplay 8에 대해  (0) 2000.12.07
[답변] 2091 SetEvent  (0) 2000.12.07
내가 아는 어떤 아름다움은  (0) 2000.11.28
잘자요  (0) 2000.11.22

+ Recent posts