[운영체제]C로 구현한 OS 스케쥴러 FCFS, NP-SJF, P-SJF, RR(소스, 레포트포함)
- 최초 등록일
- 2007.02.01
- 최종 저작일
- 2006.11
압축파일
- 가격 5,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
C로 구현한 스케쥴러 입니다. 운영체제가 프로세스 스케쥴링 하는 4가지 방법을 구현하였으며, C로 쉽게 작성하였습니다. 콘솔 형태로 되어 있으며, 필요하신 분은 여기서 GUI만 MFC로 입혀도 될 것 같네요..^^
요구 사항
프로세스 스케쥴링을 하는 4가지 방법 대한 스케쥴링을 구현하여라.
1. FCFS ( First-Come, First-Served ) Scheduling
2. Non-Preemptive SJF ( Shortest-Job-First) Scheduling
3. Preemptive SJF Scheduling
4. Round Robin Scheduling
사용 방법
1. Visual C++ 6.0 으로 dsw파일 오픈 및 컴파일
2. 컴파일 된 후 실행
3. 메뉴에 따른 입력 후 결과 출력
구현 설명
1. FCFS ( First-Come, First-Served ) Scheduling
- 먼저, 각 프로세스들을 Arrived_Time으로 정렬을 한 뒤 차례대로 프로세스를 실행하며,
프로세스 종료시 다음 프로세스를 차례대로 실행한다.
2. Non-Preemptive SJF ( Shortest-Job-First) Scheduling
- 역시 Arrived_Time으로 정렬 후 각 시간마다 프로세스가 도착하면 이를 큐에 삽입한다.
현재 프로세스 종료 후 큐의 내용을 Burst_Time으로 정렬 후 가장 작은 값을 가진 프로세스를
실행하며 이를 반복한다.
3. Preemptive SJF Scheduling
- 2번과 동일한 케이스이나 궁극적으로 한가지 다른 부분은 큐에 삽입하고 정렬시 NP_SJF는
현재 프로세스를 제외한 큐의 나머지 프로세스를 Burst_Time으로 정렬하는데 반해 이는
선점형이므로 현재 프로세스도 포함하여 정렬을 시킨다.
4. Round Robin Scheduling
- 시간을 Quantum단위로 쪼개어 각 프로세스를 Circular_Queue에 넣고 돌아가며 실행시키되
Quantum보다 먼저 처리가 종료된 프로세스가 있다면 Quantum을 무시한채 다른 프로세스를
연이어 실행한다.
컴파일 실행환경
개발 환경
O/S : Windows XP SP2(5.1.2600)
Tool & Compiler : Visual C++ 6.0 SP6 Compiler / Visual C++ .Net 2005
Language : C
본문내용
개발 환경
O/S : Windows XP SP2(5.1.2600)Tool & Compiler : Visual C++ 6.0 SP6 Compiler / Visual C++ .Net 2005Language : C
요구 사항
프로세스 스케쥴링을 하는 4가지 방법 대한 스케쥴링을 구현하여라. 1. FCFS ( First-Come, First-Served ) Scheduling2. Non-Preemptive SJF ( Shortest-Job-First) Scheduling3. Preemptive SJF Scheduling4. Round Robin Scheduling
사용 방법
1. Visual C++ 6.0 으로 dsw파일 오픈 및 컴파일2. 컴파일 된 후 실행3. 메뉴에 따른 입력 후 결과 출력
압축파일 내 파일목록
scheduler_20012548.cpp
Scheduler_20012548.dsp
Scheduler_20012548.dsw
scheduler_20012548.h
Scheduler_20012548.ncb
Scheduler_20012548.opt
Scheduler_20012548.plg
Scheduler_20012548.sln
Scheduler_20012548.suo
Scheduler_20012548.vcproj
Scheduler_20012548.vcproj.WHITE-MAIN.박종식.user
[운영체제] 과제5_스케쥴러(20012548 박종식).doc
~$영체제] 과제5_스케쥴러(20012548 박종식).doc
Debug/Scheduler_20012548.exe
참고 자료
없음