운영체제
- 최초 등록일
- 2011.10.27
- 최종 저작일
- 2011.03
- 13페이지/ 한컴오피스
- 가격 3,000원
소개글
스케줄링 알고리즘
목차
없음
본문내용
1. 우선순위(priority) 스케줄링 - none preemptive
각 작업마다 우선순위가 주어지며, 우선순위가 제일 높은 작업에 먼저 CPU가 할당되는 방법이다. 우선순위가 낮은 작업은 무한 봉쇄(Indefinite blocking) 또는 기아 상태(starvation)에 빠질 수 있고, 이에 대한 해결책으로 체류 시간에 따라 우선순위가 높아지는 노화(Aging)기법을 사용할 수 있다.
#include "stdio.h"
struct member{
int na, burst, pr, turn, time;
}teen[4], so[4], tp[1];
void main()
{
int st = 0, ft = 0;
int i,j = 0;
int t, sum1 = 0, sum2 = 0;
double avg1, avg2;
for(i = 0; i < 4; i++)
{
printf("\n P%d : 버스트시간과 우선순위를 입력하세요. ▶ ", i+1);
scanf("%d %d", &teen[i].burst, &teen[i].pr);
teen[i].na = i+1;
ft += teen[i].burst;
teen[i].turn = 0;
so[i] = teen[i];
}
for(i = 0; i < 4; i++)
{
for(j = i + 1; j < 4; j++)
{
if(so[i].pr > so[j].pr)
{
tp[0] = so[i];
so[i] = so[j];
so[j] = tp[0];
참고 자료
없음