[운영체제] C++ 언어를 이용하여 페이지 교체 알고리즘 FIFO, OPT, LRU알고리즘의 페이지 부재를 계산하는 프로그램
- 최초 등록일
- 2005.06.26
- 최종 저작일
- 2004.12
- 10페이지/ 한컴오피스
- 가격 1,500원
소개글
운영체제 과목을 수강하였을때 레포트로 제출한 것으로 C++ 언어를 이용하여 페이지 교체 알고리즘 FIFO, OPT, LRU알고리즘의 페이지 부재를 계산하는 프로그램입니다. 참고 되셨으면 하네요..결과화면도 같이 올렸습니다.
컴파일 실행환경
없음
본문내용
C++ 언어를 이용하여 페이지 교체 알고리즘 FIFO, OPT, LRU알고리즘의 페이지 부재를 계산하는 프로그램을 만들었습니다.
빈 페이지의 기본 값은 9로 하였는데 이는 참조 스트링 중 0이 있어 기본 값과 탐조 스트링의 0이 겹치는 관계로 9로 주었습니다.
참조스트링은 7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1로 하였습니다.
소스코드
#include <iostream.h>
void FIFO(int*); //함수의 프로토 타입 선언
void OPT(int*);
void LRU(int*);
void main()
{
int rs[20]={7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1}; //참조 스트링 배열로 입력
FIFO(rs); //FIFO 함수 호출
OPT(rs); //OPT 함수 호출
LRU(rs); //LRU 함수 호출
}
void FIFO(int* r)
{
cout<<"FIFO 알고리즘 pagefault 횟수"<<endl;
int pagefault=0;
int c[3]={NULL,NULL,NULL};
int f[3]={9,9,9};
int fc[3]={0,0,0};
for (int i=0 ; i<20 ; i++)
{
if (f[0]==9) //페이지 1번이 비었을 때
{
f[0]=*(r+i);
pagefault++;
fc[0]++;
}
else if (f[1]==9) //페이지 2번이 비었을 때
{
f[1]=*(r+i);
pagefault++;
참고 자료
없음