【操作系统系统/Golang】实验5:磁盘调度(FCFS,SSTF,SCAN与循环SCAN)

news2024/11/30 14:33:13

1 实验问题描述

设计程序模拟先来先服务FCFS,最短寻道时间优先SSTF,SCAN和循环SCAN算法(对应其他参考书的LOOK和C-LOOK)的工作过程。假设有trackNum个磁道号所组成的磁道访问序列,给定开始磁道号initTrackNum和磁头移动的方向direction(正向或者反向),分别利用不同的磁盘调度算法访问磁道序列,给出每一次访问的磁头移动距离,计算每种算法的平均寻道长度。最后,对四种算法做出比较评价。

程序要求如下:

  1. 利用先来先服务FCFS,最短寻道时间优先SSTF,SCAN和循环SCAN算法模拟磁道访问过程。

  1. 模拟四种算法的磁道访问过程,给出每个磁道访问的磁头移动距离。

  1. 输入:磁道个数n和磁道访问序列,开始磁道号initTrackNum和磁头移动方向direction(对SCAN和C-SCAN算法有效)。
    其中,输入与算法的对应关系如下表:

输入

对应算法

1

FCFS

2

SSTF

3

SCAN

4

C-SCAN

  1. 输出:四种算法的每次磁头移动寻道长度和平均寻道长度。
    输出示例如下:

2 测试数据

trackNum=9, initTrackNum=143;

trackOrder = [86 1470 913 1774 948 1509 1022 1750 130]

3 流程图

4 实验结果

  1. FCFS

  1. SSTF

  1. SCAN(一些教材书上是LOOK)

  1. direction=0,即从外到内;

  1. direction=1,即从内到外;

  1. C-SCAN(一些教材书上是C-SCAN)

  1. direction=0,即从外到内;

  1. direction=1,即从内到外;

5 实验代码

请见GitHub。

OS-Experiments/exp5 at main · Jackkee27/OS-Experiments

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/152237.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java项目管理工具:Maven介绍

Maven 简介下载与环境配置Maven仓库仓库类型本地仓库配置简介 Maven ,一款跨平台的项目管理工具。它主要服务于基于 Java 平台的项目构建与依赖管理。即可以将项目的开发和管理过程抽象成一个项目对象模型(POM),开发人员只需要做一些简单的配置,Maven 便可自动完成项目构建…

HRNet源码阅读笔记(4),庞大的PoseHighResolutionNet模块-stage1

一、图和代码上一讲的图中,有stage1图例如下;关键是看pose_hrnet.py中PoseHighResolutionNet模块的forward函数相关部分如下:def forward(self, x):x self.conv1(x)x self.bn1(x)x self.relu(x)x self.conv2(x)x self.bn2(x)x self.relu(x)x self…

一辈子干好一件事,你就了不起

人生的道路和轨迹,就像是射出去的箭。假如左拐右拐,不但不能射中靶心,达不到目标,还有可能拐弯回到原点,原地踏步。日复一日,年复一年,没有成长和收获,这很可怕。 短暂的2022年&…

设计测试用例的万能公式 + 6大具体方法 = 面试就像聊天?

目录 一、设计测试用例的万能公式 二、设计测试用例的具体方法 2.1、等价类 2.2、边界值 2.3、判定表(因果图的另一种形式) 2.4、场景设计法 2.5、正交法(用的少,基本不可见) 2.4.1、使用allparis构建正交表 2.…

算法之动态规划理论

目录 前言 一个模型三个特征理论讲解 1.最优子结构 2.无后效性 3.重复子问题 一个模型三个特征实例剖析 两种动态规划解题思路总结 1.状态转移表法 2.状态转移方程法 四种算法思想比较分析 总结: 参考资料 前言 本篇博文主要讲解动态规划的理论&am…

行业分析| 交通综合执法对讲系统

随着社会的经济发展,人口的增加城市的不断壮大,城市交通情况越来越复杂,交警承担的执法任务越来越重,通信作为交警综合执法对讲调度的重要组成部分,也随之提出了更高的要求。综合执法对讲系统的出现使执法变得高效规范…

【Redis】高级进阶

🌟个人博客:www.hellocode.top🌟 🌟Java知识导航:Java-Navigate🌟 ⭐想获得更好的阅读体验请前往Java-Navigate 🔥本文专栏:《流行框架》 🌞如没有JavaWEB基础&#xff0…

【ZooKeeper】第三章 集群搭建

【ZooKeeper】第三章 集群搭建 文章目录【ZooKeeper】第三章 集群搭建一、ZooKeeper 集群介绍1.Leader 选举2.集群角色二、搭建 ZooKeeper 集群1.安装2.配置集群3.启动集群三、故障模拟一、ZooKeeper 集群介绍 1.Leader 选举 Serviceid:服务器 ID 比如有三台服务器…

分享84个NET源码,总有一款适合您

分享84个NET源码,总有一款适合您 链接:https://pan.baidu.com/s/1r7_yrTfQrg-5whL7AYJiLA?pwdeem6 提取码:eem6 import os from time import sleepimport requests from bs4 import BeautifulSoup from docx import Document from docx.sh…

iOS ReplayKit 屏幕共享,屏幕直播实现

使用replayKit iOS12 之后相关 api 完成系统/app 内 屏幕采集直播视频数据, 采用 socket进行进程间Broadcast Unload Extension 向 宿主 app 传输数据, 后台保活持续采集屏幕数据, 摄像头采集, 数据编码解码 编译环境 Xcode14.2, iOS12 系统屏幕数据采集app 内屏幕共享使用so…

FPGA与数字IC求职知识准备 - 数字电路知识总结

前言 本文整理了数字电路课程中的相关基本的知识点和较为重要的知识点,用于求职的数电部分的知识准备,差缺补漏。 二进制数的算术运算 无符号二进制数的算术运算 加法:同十进制加法,逢二进一,无符号二进制数的加法…

Redis源码篇(8)——集群模式

1、集群模式的启动和初始化 当开启了cluster-enabled,在初始化服务initServer方法中会调用clusterInit方法将redis带入cluster模式。 clusterInit void clusterInit(void) {int saveconf 0;//初始化clusterState结构 server.cluster zmalloc(sizeof(clusterSta…

LaTeX代码宏包listings的使用

LaTeX代码宏包listings的使用 文章目录LaTeX代码宏包listings的使用1 需求2 verbatim环境简介3 listings设置代码高亮4 代码样式和颜色5 为listings添加题注6 listings支持的语言格式7 附录 listings样式的自定义参数1 需求 LaTeX\LaTeXLATE​X适合用来进行结构化文档的编辑。如…

[5]. 最长回文子串

[5]. 最长回文子串题目算法设计:双指针算法设计:Manacher 算法题目 传送门:https://leetcode.cn/problems/longest-palindromic-substring/ 算法设计:双指针 检查回文串的通用解决方案是,双指针。 寻找回文串的思…

什么是地理围栏

一、地理围栏算法简介 地理围栏(Geo-fencing)是LBS的一种典型应用,就是用一个虚拟的栅栏围出一个虚拟地理边界。地理围栏更侧重于对区域边界的界定,不再是以某点为圆心向外等距离画圆,而是准确勾勒出小区、写字楼等特…

wpf实现FFmpeg获取摄像头实时画面

gitee地址如下源码地址如何获取摄像头验证码和ip首先获取摄像头底部的验证码及ip(测试使用的是萤石摄像头,需要PC下载萤石客户端查看ip)未连接之前可以通过VLC进行测试在左上角(媒体)--》(流)--》(网络&…

openGauss中Schema赋权小试

目录 概述 1.关于public的权限要点: 2.关于用户同名的schema的权限要点: 3.关于普通schema的权限要点: 概述 下面是openGauss官网对Schema的介绍: Schema又称作模式。通过管理Schema,允许多个用户使用同一数据库而…

MATLAB-二维线性插值运算

二维插值在图像处理和数据可视化方面得到了大量的应用,二维插值的基本原理与一维插值一样,但二维插值是对两个变量进行函数的插值。在MATLAB中,主要使用interp2()函数进行二维插值的实现,其调用格式如下,zi interp2(z,…

Nodejs也能做文本数据处理了,快来看看吧!

随着汉语言的广泛应用,中文信息处理成了一个重要的研究课题,常见于搜索引擎:信息检索、中外文自动翻译、数据挖掘技术、自然语言处理等领域。在处理的过程中,中文分词是最基础的一环。 nodejieba 简介 nodeJieba 是结巴中文分词…

安装thinkphp

[TOC]目录 1. 安装composer 方法:https://www.kancloud.cn/manual/thinkphp6_0/1037481 官网教程中安装composer 2. 配置文件 在命令行中 阿里云: composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 华为云&#x…