Nachos Java Overview - Project 1
- 최초 등록일
- 2008.04.18
- 최종 저작일
- 2008.03
- 7페이지/
한컴오피스
- 가격 1,500원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
Nachos는 미완성의 Thread System을 가지고 있다. 해야 할 일은 이것을 완성시키고 주어진 몇 가지 동기화문제를 풀어내는 것이다.
첫 번째 단계는 알려주는 몇 가지 부분적인 thread System을 일고 이해하는 것이다. 이 thread system은 thread fork, thread completion, 그리고 동기화를 위한 semaphore를 실행한다. 또한 Semaphore를 바탕으로 Lock과 Condition Variable을 제공해준다.
목차
1. Overview
1.1. Process Context Switch
1.2. Thread
1.3. Thread State (in nachos)
1.4. Scheduler
본문내용
1.1.1.1. New :
하나의 Thread는 여러개의 새로운 Thread를 만들어낼 수 있다. 생성해내는 Thread를 parent thread라 하고, 생성되는 새로운 Thread를 child thread라 한다. 생성된 각각의 thread들 역시 다른 Thread를 생성해낼 수 있으며 TREE 형태로 자라나게 된다.
Nachos- 새로운 TCB Object를 생성한다. 실제로 수행되는 내용은 없다.
- status = new- KThread.fork()
- 이 thread를 실행한다. 2개의 Thread, 즉 fork를 호출한 thread와 target의 run
이 호출된 thread가 각각 동시에 실행되는 상태가 된다.
- thread의 상태가 statusNew인지 확인하고, target이 지정되어 있는지를 확인
- Interrupt를 끄고, tcb.start 실행 : JAVA Thread가 생성되고 실행된다.
- Thread를 ready시키고 Interrupt를 다시 enable한다.
- KThread.ready()
- Thread를 ready 상태로 바꾸고, Scheduler의 readuQueue에 이 Trhead 를 추가
참고 자료
1.1. Reference
1.1.1. OS162 Operating Systems and System Programming
1.1.1.1.1. http://inst.eecs.berkeley.edu/~cs162/sp07/
1.1.2. Operation System Concepts Sixth Edition
1.1.2.1.1. Silberschatz, Galvin, Gagne
1.1.3. Operation System Principles
1.1.3.1.1. Lubomir F.Bic, Alan C.Shaw
1.1.4. Understanding the Linux Kernel
1.1.4.1.1. http://www.oreilly.com/catalog/linuxkernel/chapter/ch10.html
1.1.5. Nachos for Java README
1.1.5.1.1. Nachos 포함