操作系统磁盘调度算法及模拟实验三
更新时间:2024-01-03 07:42:01 阅读量: 教育文库 文档下载
- 操作系统磁盘调度算法例题推荐度:
- 相关推荐
江西理工大学软件学院
《计算机操作系统》实验报告
实验名称: 磁盘调度算法及模拟 姓 名: 专 业: 软件开发 学 号: 指导教师:
实验日期: 2012-11-20
江西理工大学软件学院 《计算机网络基础》 实验报告
【实验目的、要求】
(1)设计一个磁盘调度模拟程序,从而使磁盘调度算法更加形象化,容易使人理解,使磁盘调度的特点更简单明了;
(2)加深对先来先服务算法、最短寻道时间优先算法、扫描算法以及循环扫描算法等磁盘调度算法的理解;
(3)针对给定的磁盘访问序列,运行各种调度算法得出调度过程 (4)算法所需的各种参数由输入产生(手工输入或者随机数产生) 输出调度过程。 【实验环境】
WindowsXP操作系统平台及C++软件 【实验步骤】 #include
void FCFS(int *data,int n,int *order){ }
2
for(int i=0;i<=n;i++){ }
order[i]=data[i];
江西理工大学软件学院 《计算机网络基础》 实验报告
/*2、SSTF算法*/
void SSTF(int *data,int n,int *order) { for(int i=0;i<=n;i++) {
}
order[i]=data[i];
for(int j=1;j<=n;j++){ int p=j;
for(int k=j+1;k<=n;k++){
}
if(abs(order[k]-order[j-1])
p=k;
if(p!=j) { }
//均向磁道增加方向访问 /*3、SCAN算法*/
void SCAN(int *data,int n,int *order) { int j=1; int q=n; order[0]=data[0]; for(int i=1;i<=n;i++){
if(data[i]>order[0]) {order[j]=data[i];j++;}
3
}
int temp=order[j]; order[j]=order[p]; order[p]=temp; }
江西理工大学软件学院 《计算机网络基础》 实验报告
else{order[q]=data[i];q--;} }
for(int z=1;z for(int k=z+1;k for(int h=j;h<=n;h++) { int p=h; for(int k=h+1;k<=n;k++) { if(order[k]>order[p]) { p=k;} } if(p!=h) { int temp=order[h]; order[h]=order[p]; order[p]=temp; } } } //均向磁道增加方向访问 /*4、CSCAN算法*/ void CSCAN(int *data,int n,int *order) { int j=1; int q=n; order[0]=data[0]; for(int i=1;i<=n;i++) { if(data[i]>order[0]) {order[j]=data[i];j++;} else {order[q]=data[i];q--;} } for(int z=1;z 4 江西理工大学软件学院 《计算机网络基础》 实验报告 int p=z; for(int k=z+1;k for(int h=j;h<=n;h++) { int p=h; for(int k=h+1;k<=n;k++) { if(order[k] }/*5、主函数*/ void main() { int data[100]; data[0]=100; int n=0;//要寻访磁道个数 srand((int)time(0)); n=rand() +5; for(int i=1;i<=n;i++) {data[i]=rand() 0+1;} int order[100]; int length=0; FCFS(data,n,order); cout<<\ for(int j=1;j<=n;j++) { length+=abs(order[j]-order[j-1]); cout< 5 江西理工大学软件学院 《计算机网络基础》 { length+=abs(order[g]-order[g-1]); cout< cout<<\平均寻道长度\ SCAN(data,n,order); cout<<\ for(int d=1;d<=n;d++) { length+=abs(order[d]-order[d-1]); cout< cout<<\平均寻道长度\ CSCAN(data,n,order); cout<<\ for(int k=1;k<=n;k++) { length+=abs(order[k]-order[k-1]); cout< cout<<\平均寻道长度\} 6 实验报告 \} \} \} 江西理工大学软件学院 《计算机网络基础》 实验报告 【实验总结】 先来先服务算法(FCFS)这是一种比较简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况。 最短寻道时间优先算法(SSTF)该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,该算法可以得到比较好的吞吐量,但却不能保证平均寻道时间最短。 扫描算法(SCAN)扫描算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。例如,当磁头正在自里向外移动时,扫描算法所选择的下一个访问对象应是其欲访问的磁道既在当前磁道之外,又是距离最近的。这样自里向外地访问,直到再无更外的磁道需要访问才将磁臂换向,自外向里移动。 循环扫描算法(CSCAN)是对扫描算法的改进。如果对磁道的访问请求是均匀分布的,当磁头到达磁盘的一端,并反向运动时落在磁头之后的访问请求相对较少。这是由于这些磁道刚被处理,而磁盘另一端的请求密度相当高,且这些访问请求等待的时间较长,为了解决这种情况,循环扫描算法规定磁头单向移动。 7
正在阅读:
操作系统磁盘调度算法及模拟实验三01-03
党政班子及领导成员职权和风险点目录10-16
卧式钻镗动力头液压系统课程设计10-22
03质量管理体系内审制度(2014版)04-10
从写花词看李清照的人生风貌07-22
三年级下册数学教案吨的认识2 - 北京版03-21
高中会考英语词汇表03-29
八年级上期物理半期考试题(人教版)10-02
高中生物必修三第三章第一节学案11-22
软件工程模拟试题104-05
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 调度
- 磁盘
- 算法
- 操作系统
- 模拟
- 实验
- 钢筋施工方案6.24
- 专题作文写作知识,序列化教学研究
- 2018-2024年中国婚庆市场全景调查与未来前景预测报告(目录) - 图文
- 凤凰大视野全部节目(2004-2012)
- 沪教版化学九年《(期中)》word同步测试题
- 硝基呋喃类兽药残留检测中LC-MSMS技术的应用研究
- Verilog HDL十进制计数器实验Quartus90非常详细的步骤 - 图文
- 市政道路安全监理细则 - secret - 图文
- 三级数据库技术笔试真题及答案(2006.3-2011.3)
- 运筹学-第3次实验内容(信计专业)打印
- 金凤煤矿厚煤层无煤柱开采应用研究实施方案(8) - 图文
- 低压集中抄表工程现场竣工验收大纲
- 第14课 匈奴的兴起及与汉朝的和战 学案(人教版七年级上)
- 停车场贪吃蛇游戏实训报告
- 南航研究生英语课后翻译
- 二年级看图写话范文大全
- 在初三部分尖子生座谈会上的讲话
- 影响锤片式粉碎机工作性能的主要因素
- PEP小学英语五年级上册第五单元第四课时教学案例
- 对外经济贸易大学金融硕士复试指导建议推荐阅读