话不多说直接放代码吧…………

#include <iostream>
#include <cstring>
using namespace std;
void dayinwulikuai(int *wulikuai,int wulikuaicnt)
{int j;for(j=0;j<wulikuaicnt;j++){if(wulikuai[j]!=-1){cout<<"block"<<j+1<<"   "<<wulikuai[j]<<endl;}else{cout<<"block"<<j+1<<"   "<<endl;}}
}
int maxx(int *zhuliucnt,int wulikuaicnt)
{int zuida=0;int zuidaxiabiao=0;int t;for(t=0;t<wulikuaicnt;t++){if(zhuliucnt[t]>zuida){zuida=zhuliucnt[t];zuidaxiabiao=t;}}return zuidaxiabiao;
}
void tihuan(int dangqianpage,int *wulikuai,int wulikuaicnt,int *zhuliucnt)
{int xiabiao=maxx(zhuliucnt,wulikuaicnt);wulikuai[xiabiao]=dangqianpage;zhuliucnt[xiabiao]=0;
}
void insertpage(int dangqianpage,int *wulikuai,int wulikuaicnt,int *zhuliucnt)
{int k;int flag1=0;//标志物理块中是否有已经存了该页面的,0表示没有int flag2=0;//标志是否还有没存页面的物理块,0表示没有,即不缺页for(k=0;k<wulikuaicnt;k++){if(wulikuai[k]==dangqianpage){flag1=1;break;}}if(flag1==0){for(k=0;k<wulikuaicnt;k++){if(wulikuai[k]==-1){flag2=1;wulikuai[k]=dangqianpage;break;}}if(flag2==0){tihuan(dangqianpage,wulikuai,wulikuaicnt,zhuliucnt);}}
}int main()
{int pagecnt;//定义页面访问顺序数组的长度int wulikuaicnt;//定义物理块个数cout<<"input the number of page"<<endl;cin>>pagecnt;cout<<"input the number of block"<<endl;cin>>wulikuaicnt;int wulikuai[wulikuaicnt];//定义物理块数组int zhuliucnt[wulikuaicnt];//用于记录物理块中各元素的滞留时间memset(wulikuai,-1,sizeof(wulikuai));//将物理块中的所有元素先置为-1memset(zhuliucnt,0,sizeof(zhuliucnt));//将滞留时间数组全部置为0int i;int dangqianpage;//定义目前访问的页面for(i=0;i<pagecnt;i++){cout<<"input the rank of page"<<endl;cin>>dangqianpage;insertpage(dangqianpage,wulikuai,wulikuaicnt,zhuliucnt);cout<<"the situation of block"<<endl;dayinwulikuai(wulikuai,wulikuaicnt);for(int jj=0;jj<wulikuaicnt;jj++){if(wulikuai[jj]!=-1){zhuliucnt[jj]=zhuliucnt[jj]+1;}}}return 0;
}

FIFO算法 C++实现相关推荐

  1. fifo算法模拟_[源码和文档分享]基于C++的请求分页虚拟页面替换算法

    一.需求分析 实现OPT.FIFO.LRU.Clock等页面替换算法.接收用户输入参数,包括程序长度(页面数).页框个数及页面大小,输出结果采用不同颜色区分命中.替换及直接加入空闲块. OPT(最佳置 ...

  2. fifo算法_缓存算法FIFO、LFU、LRU

    阅读文本大概需要3分钟. 0x01:FIFO算法 FIFO(First in First out),先进先出.其实在操作系统的设计理念中很多地方都利用到了先进先出的思想,比如作业调度(先来先服务),为 ...

  3. FIFO算法与LRU算法

    #include<iostream.h> #include<stdio.h> #include<iomanip.h> const int Max = 10;     ...

  4. C#之FIFO算法实现页面置换算法

    实现原理:淘汰最先进入内存的ye页面,即选择页面在内存中停留时间最长的页面调出内存! 本程序使用到了两个数组:一个数组用于初始化存放内存外页面的序号,存放的页面序号是和网上大多数例子序号是一样的其实也 ...

  5. 操作系统:页面置换算法(FIFO算法、LRU算法、LFU算法、NRU算法)实验报告

    操作系统实验报告 一.实验名称 :页面置换算法 二.实验目的: 在实验过程中应用操作系统的理论知识. 三.实验内容: 采用C/C++编程模拟实现:FIFO算法.LRU算法.LFU算法.NRU算法四个页 ...

  6. Java:实现先进先出缓存FIFO算法(附完整源码)

    Java:实现先进先出缓存FIFO算法 import java.util.HashMap; import java.util.Map.Entry; public class FIFOCache {pu ...

  7. fifo算法c语言程序代码,c语言实现fifo算法及代码

    C语言是一门通用计算机编程语言,应用广泛.C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言. 尽管C语言提供了许多低级处理的功 ...

  8. 2021-06-04 操作系统FIFO算法C语言实现

    操作系统FIFO算法C语言实现 前言 本机为微软Surface pro4,为64位,所用操作系统为Windos 10.本机虚拟机版本为Oracle VM VirtualBox 6.1.8,所用操作系统 ...

  9. 操作系统——FIFO算法解析与代码实现

    FIFO算法 文章目录 FIFO算法 概念 一.解析 二.代码实现 概念 FIFO(First Input First Output),即先进先出队列.可以类比 我们在饭堂排队打饭,先排到队伍的最后, ...

  10. 缓存淘汰策略:LRU、LFU、FIFO 算法原理

    通常来说,Redis 一共有 6 种缓存淘汰策略,其中,常用的 allkeys-lru 和 volatile-lru 里面都提到了 LRU 的概念,实际上 LRU 就是缓存淘汰策略的基础算法.现在,就 ...

最新文章

  1. mysql字符串相加函数concat()
  2. Linux环境安装、卸载Docker
  3. HTTP状态码(HTTP Status Code),常见的error 404, error 504等的意思
  4. Javascript自由拖拽类
  5. 2019 IROS—终生机器视觉数据集全球挑战赛
  6. POJ2318 TOYS / POJ2398Toy Storage判断点与直线位置关系 【计算几何】
  7. C++ i/o类库中 常用流类
  8. data.frame类型数据如何将第一列值替换为行号
  9. arcgis中python窗口在哪_python在arcgis中的应用
  10. 计算营业额python_ARIMA时间序列分析-----Python实例(一周销售营业额预测)
  11. HXSafeGuard工程通过VS2010编译未安装VS2008出现以下错误
  12. SQLServer数据库增、删、改、查简单操作示例
  13. PHPExcel基本使用
  14. Day_04 显示条纹 图案
  15. vue+高德地图 点击地图获取经纬度和详细地址
  16. 分享128个简约模板PPT模板,总有一款适合你
  17. 查询某一日期所在的自然周,以周一为开始
  18. 担忧民众隐私 欧委会要求美国澄清雅虎电邮扫描
  19. 公允价值变动及公允价值变动损益
  20. UTC、GMT、时间戳之间的关系

热门文章

  1. java文件的后缀.kt_移动端Kotlin 基础语法.kt 为后缀
  2. 【从零开始学习光流算法(0)】——基本假设及Lucas-Kanade(LK)光流法
  3. Qt实现的宠物小精灵对战游戏阶段三-联网对战
  4. linux下tar zip rar 解压缩
  5. 2022危险化学品经营单位主要负责人操作证考试题库及在线模拟考试
  6. 【MATLAB基础绘图第10棒】绘制各种面积图
  7. java程序能不能手动gc_java中到底该不该手动调用gc?Objective-c 和 Java
  8. windows10 AppStore安装 应用商店重新安装
  9. 立体匹配的研究背景以及意义
  10. 哈尔,那个失心的少年