毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

操作系统课程设计_先进先出页面置换算法

更新时间:2007-10-30:  来源:毕业论文
操作系统课程设计_先进先出页面置换算法|课程设计|计算机数据库课程设计

页式虚拟存储管理程序模拟
一、    实验题目:先进先出页面置换算法
三、    实验内容:
这个算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰.
三、程序设计及实现过程
        先产生一串随机数放在数组中,然后输出这个数组,表示页面号引用串.然后进行计算并输出结果.这里我使用了一个数组来存放当前内存的页面号,当产生新的页面申请时,判断数组中有与之相同的数吗,若有则直接输出这个数组,若没有则舍去最下面的数让上面的数依次放在下面,把新产生的数放在最上面.然后在数据下面输出一个*号,代表发生了缺页中断.
四、实验结果及分析
    结果: 输出发生几次缺页中断和页面置换.
    分析: 利用一个计数变量,只要发生中断就加1,最后输出就行了.

#include<iostream.h>
void main()
{
    cout<<"****************************************"<<endl;
    cout<<"         FIFO算法置换                   "<<endl;
    cout<<"****************************************"<<endl;
    
    int n,m,k;
    int i=0,j=0,count=0;
    
    int a[32],b[32];
    cout<<"请输入内存容量m:";
    cin>>m;
    cout<<"请输入页面次序:"<<endl;
    for(i=0;i<10;i++)
    {
        cin>>n;
        a[i]=n;
    }
    for(j=0;j<m;j++)                      //初始化b[j];使等于-1,表示开始时内存中无页面.
    {
        b[j]=-1;                         
    }
    
    
    i=0;
    j=0;
    
while(i<10)
{
        
for(k=0;k<m;k++)
{
        
    if(b[k]==a[i])
    {
    cout<<"内存中有这个页面,直接访问."<<endl;
        break;
    }
    }                               // 判断内存中是否有该页面.
    if(k==m)
    {    
    if(b[m-1]<0)
    {
        b[j]=a[i];  
        cout<<b[j]<<"页面进入内存 ,  ";
        count++;
        cout<<"产生"<<count<<"次缺页"<<endl;
        j++;
        j=j%m;
    }
            
    else
    {
    count++;
    cout<<b[j]<<"被置换出去,产生"<<count<<"次缺页" <<endl;            
    b[j]=a[i]; 
    j++;
    j=j%m;
    }
            
}
i++;
}    
}

操作系统课程设计_先进先出页面置换算法下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。