검색어 입력폼

[운영체제]커널을 통한 스케줄링 및 메일박스 구현

등록일 2004.04.29 한글파일한글 (hwp) | 7페이지 | 가격 1,500원

목차

■ PicoKernel을 수정하여 스케줄링 알고리즘을 우선순위 대신 FCFS가 되도록 구현하라. (PJT 1)

■ PicoKernel의 메일박스를 변경하여 메시지를 수신할 때 송신 스레드의 번호를 함께 알 수 있도 록 구현한다. 송수신을 위한 함수의 형식은 mbox2Send(int mboxid, int msg)와 mbox2Receive(int mboxid, int *msgp, int *sender)형태로 하여 수신 시 sender 부분에 송신 스레드의 번호가 반환되도록 한다. (PJT 2)

본문내용

■ PicoKernel을 수정하여 스케줄링 알고리즘을 우선순위 대신 FCFS가 되도록 구현하라. (PJT 1)

주어진 PicoKernel은 우선순위 기반의 스케줄링을 사용하는데 스레드를 생성하고 스레드 대기 리스트에 삽입할 때 우선순위가 높은 스레드를 앞쪽에 위치시킴으로써 먼저 실행되도록 하고 있다. PicoKernel의 경우 tPrio 항목의 값이 큰 것을 높은 우선순위로 취급한다. 새로 생성된 스레드가 있을 경우 기존의 스 레드 대기리스트에 있는 스레드들과 우선순위를 비교하여 대기리스트의 끝까지 while 문을 사용하여 비교 해나가면서 삽입할 적당한 위치를 찾아 삽입한다. 이러한 우선순위 기반의 PicoKernel을 FCFS가 되도록 하기 위해서는 새로 생성된 스레드를 스레드 대기리스트의 가장 끝에 삽입하는 것이다. 이때 대기리스트 가 비어있다면 스레드 레디리스트가 삽입된 스레드를 가리키도록 하면 되고 만약 비어있지 않다면 while 문을 사용하여 대기 리스트의 끝인 (threadEntT *)0을 만날때까지 이동하여 대기리스트의 끝에 삽입한다. 이렇게 함으로써 프로세스가 레디 큐에 들어온 순서대로 실행하는 FCFS를 구현할수 있다.
다운로드 맨위로