操作系统入门 -- 磁盘管理

news2024/11/18 7:31:34

操作系统入门 – 磁盘管理

1.磁盘结构

1.1 磁盘

表盘有一些磁性物质组成的盘片,可以利用这些磁性物质存储二进制数据

1.2 磁道

一个盘片上被划分为很多圆环,这些圆环就是磁道

1.3 扇区

上述的圆环又被分为很多部分,这些部分称为扇区。

1.4 磁盘物理地址

磁盘中可以使用柱面号、盘面号、扇区号来定义任意磁盘块。文件存储的块号就可以转换为对应的物理地址。磁盘读取一个块时首先按照柱面号摆动磁臂到对应磁道,激活指定盘面对应的磁头。磁盘在旋转过程中,指定扇区会从磁头下经过,这样就完成了文件读写。


2.磁盘调度算法

磁盘调度算法可以让计算机控制磁盘以最短的时间找到对应的内容

2.1 一次磁盘读/写操作需要的时间

  • 寻道时间TS:在读/写数据前,将磁头移动到指定磁道所花费的时间。磁头启动时间为s,磁头经过每个磁道的时间为m,此时经过n个磁道的寻道时间为
    T s = s + m ∗ n T_s = s + m * n Ts=s+mn

  • 延迟时间TR:通过旋转磁盘,使磁头定位到目标扇区所需的时间。设磁盘转速为r(转/分),则平均需要延迟时间为 T R = 1 2 ∗ 1 / r = 1 2 / r T_R = \frac{1}{2} * 1/r = \frac{1}{2}/r TR=211/r=21/r

  • 传输时间Tt:从磁盘读出或写入数据经历的时间,假设磁盘转速为r,读/写字节数为b,每个磁道上字节数为N则传输时间为 T t = ( 1 / r ) ∗ ( b / N ) = b / ( r N ) T_t = (1/r)*(b/N) = b/(rN) Tt=(1/r)(b/N)=b/(rN)

2.2 磁道调度算法

2.2.1 先来先服务(FCFS)

和进程调度的FCFS一样,这里磁盘将会根据请求访问的先后顺序控制磁臂摆动。

  • 例子:假设磁头初始位置为100号磁道,目前有多个进程先后请求访问55、58、39、18、90、160、150、38、184。按照FCFS思想来看,上述几个磁道都要依次访问,因此磁头将会从100磁道触发,先到55磁道,并按照顺序依次访问。此时次都一共移动了45+3+19+21+72+70+10+112+146=498个磁道。

alt text

2.2.2 最短寻找时间优先(SSTF)

SSTF算法会优先处理距离磁头所在磁道最近的磁道,可以保证每次寻道时间最短,但是无法保证总体寻道时间最短。

  • 例子:设磁头所在磁道为100,目前有多个进程先后请求访问55、58、39、18、90、160、150、38、184。按照SSTF思想,磁头首先会摆动到90磁道,然后是58,以此类推。总共移动(100 - 18) + (184 - 18) = 248个磁道。

alt text

2.2.3 扫描算法(SCAN)

SSTF算法容易产生饥饿,因为请求磁道的不同,磁头可能只会在很小的区间内摆动,因此当存在距离较远的磁道时可能无法响应请求。因此规定当磁头到最外侧时才能向内移动,到最内侧时才能向外移动。

  • 例子:

alt text

2.2.4 Look算法

上述算法中了解到,只有当磁头到达边缘,即最外侧或最内侧时才能改变磁头方向,但如果磁头摆动到边缘之前就已经完成请求响应那这样做会产生不必要的浪费,因此Look算法会在没有更上方的请求后立即改变磁头的方向。

  • 例子:

alt text


3.磁盘管理

3.1 磁盘初始化

文件物理结构为链式结构,把文件的数据块用链接的方式连起来形成类似单向链表的结构,这样的话可以方便操作系统进行管理,另外管理扇区所需要的数据结构一般都是放在头和尾的位置,比如说扇区校验码。

3.1.1 初始化

  • 首先磁盘进行物理格式化,将磁盘各个磁道划分扇区。每个扇区分为头、数据区域、尾组成。管理扇区的各种数据结构一般存放在头、尾两个部分,包括扇区校验码
  • 将磁盘分区,每个分区由若干柱面组成。
  • 逻辑格式化,创建文件系统。包括文件系统根目录、初始化存储空间管理所用的数据结构

3.1.2 引导块

完成初始化后,就需要把操作系统相关数据写入磁盘中。而引导块中的数据就是计算机启动是第一个执行的程序,其中包括了CPU初始化、内存初始化等功能。

3.2 坏块处理

对磁盘来说,在逻辑格式化时会对整个磁盘进行坏块检查,标明哪些扇区为坏扇区。而某些复杂磁盘中磁盘控制器会维护一个坏块表,同时也会保留一些备用扇区用于替换坏块。这就是磁盘实际容量无法达到标称容量的原因之一。

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

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

相关文章

Toshiba东芝TB6612FNG电机驱动IC:释放性能与多功能性

在嵌入式系统和机器人技术领域,电机控制是一个关键方面,对项目的性能和可靠性有着显著影响。东芝的TB6612FNG电机驱动IC作为一个稳健且多功能的解决方案,在驱动双直流电机方面脱颖而出,提供了高性能、可靠性和易用性。本文将深入探…

计算机视觉 | 基于 PointNet 网络的飞机零件 3D 点云分割

目录 一、简要介绍二、环境设置2.1 实验配置2.2 必要库安装 三、数据集解析3.1 数据集加载3.2 数据文件夹结构3.3 点云数据可视化3.4 数据获取与预处理3.5 数据集定义 四、模型组网4.1 PointNet 介绍4.2 Paddle模型组网4.3 模型概要 五、模型训练六、模型预测七、总结 Hi&#…

MySQL之高可用性和应用层优化(一)

高可用性 故障转移和故障恢复 在应用中处理故障转移 有时候让应用来处理故障转移会更加简单或者更加灵活。例如,如果应用遇到一个错误,这个错误外部观察者正常情况下是无法察觉的,例如关于数据库损坏的错误日志信息,那么应用可…

硬件开发笔记(二十三):贴片电阻的类别、封装介绍,AD21导入贴片电阻原理图封装库3D模型

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/140110514 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…

一文全概括,建议收藏,那些你不可错过的IC设计书籍合集(可下载)

集成电路设计工程师的角色不仅是推动技术创新的中坚力量,更是实现产品从概念到现实的关键桥梁。随着对高性能、低功耗芯片的需求不断增长,IC设计工程师的专业技能和知识深度成为了衡量其职业价值的重要标准。无论是在数字逻辑设计、功能验证、可测试性设…

【Python机器学习】模型评估与改进——分组交叉验证

分组交叉验证是非常常见的一种交叉验证策略,它适用于数据中的分组高度相关时。比如我们想构建一个从人脸图片中识别情感的系统,并且收集了100个人的照片的数据集,其中每个人都进行了多次拍摄,分别展示了不同的情感。我们的目标是构…

新开发的应用做ASO服务有必要吗

如果您开发了一款应用并希望在竞争激烈的应用市场中获得更多的曝光和下载,那么ASO服务通常是很有必要的。以下是几个关于ASO服务必要性的主要观点: 1、提高应用的可见性 ASO的最主要目标就是提高应用的排名,使应用在众多应用中脱颖而出让用…

Coze搭建《测测你的本命宠物》

前言 本文讲解如何从零开始,使用扣子平台去搭建《测测你的本命宠物》 《测测你的本命宠物》:测测你的本命宠物 - 扣子 AI Bot (coze.cn) 欢迎大家去体验一下!!! 正文 接下来我们开始讲解制作这个bot的流程吧&#…

Perl语言入门指南

一、绪论 1.1 Perl语言概述 1.2 Perl的特色 1.3 Perl面临的问题 1.4 Perl语言的应用领域 二、Perl语言基础 2.1 Perl语言的历史发展 2.2 Perl语言的基本语法 2.3 Perl语言的数据类型 三、Perl语言控制结构 3.1 条件语句 3.2 循环结构 3.3 函数和子程序 四、Perl语…

Gavin大咖亲自授课:将大语言模型与直接偏好优化对齐

Gavin大咖亲自授课:将大语言模型与直接偏好优化对齐 Align LLMs with Direct Preference Optimization 直接偏好优化( Direct Preference Optimization)这绝对是天才性的算法。你会看到数学的巨大力量和巨大价值,你一定会很兴奋和…

基于X86+FPGA+AI的芯片缺陷检测方案

应用场景 随着半导体技术的发展,对芯片的良率要求越来越高。然而集成电路芯片制造工艺复杂,其制造过程中往往产生很多缺陷,因此缺陷检测是集成电路制造过程中的必备工艺。 客户需求 小体积,低功耗 2 x USB,1 x LAN Core-i平台无…

WhatsApp:连接世界的即时通讯巨头

在数字化浪潮席卷全球的今天,即时通讯工具已成为人们日常生活中不可或缺的一部分。其中,WhatsApp凭借其卓越的功能、出色的用户体验和广泛的用户基础,在全球通讯领域崭露头角,成为连接世界的即时通讯巨头。今天将带您深入了解What…

.NET项目使用Devexpress控件DiagramControl和QuikGraph类库实现最短路径算法可视化

说明: 使用控件:DevExpress V24.1.3(链接:https://pan.baidu.com/s/1FosVrpyE7q_XvwhZK7ad3w?pwdtw64提取码:tw64)项目地址:https://github.com/VinciYan/Diagram_NET.git可以帮助学习和理解数…

【区块链+基础设施】珠三角征信链 | FISCO BCOS应用案例

“珠三角征信链”是中国人民银行广州分行、中国人民银行深圳市中心支行按照中国人民银行总行工作部署,积 极贯彻珠三角一体化发展、粤港澳大湾区建设等国家战略而建设的跨区域征信一体化数据中心枢纽,以 FISCO BCOS 为底链构建应用平台,并由微…

跨越界限,巴比达带你访问远程桌面【内网穿透技术分享】

在远程工作的时代,远程桌面访问成为了许多职场人士的日常。Windows系统默认的远程桌面服务监听在3389端口,但对于内网环境下的机器来说,直接从外部访问这个端口常常面临重重阻碍。不过,有了巴比达内网穿透,这一切都将不…

填志愿选专业,文科男生如何选专业?

又到了高考分数出炉,无数学子收获喜悦的季节,在分数刚出炉时,很多学生表现的异常兴奋,于他们而言,这么多年的努力终于有了收获,自己该考虑选择什么专业了。而毫不夸张的说,很多人在拿到专业目录…

[leetcode]minimum-absolute-difference-in-bst 二叉搜索树的最小绝对差

. - 力扣(LeetCode) /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(null…

RANSAC空间圆拟合实现

由初中的几何知识我们可以知道,确定一个三角形至少需要三个不共线的点,因此确定一个三角形的外接圆至少可用三个点。我们不妨假设三个点坐标为P1(x1,y1,z1),P2(x2,y2,z2),P3(x3,y3,z3)。 圆方程的标准形式为: (xi-x)2(yi-y)2R2 (1…

[吃瓜教程]南瓜书第4章决策树

1.决策树的算法原理 从逻辑角度,条件判断语句的组合;从几何角度,根据某种准则划分特征空间; 是一种分治的思想,其最终目的是将样本约分约纯,而划分的核心是在条件的选择或者说是**特征空间的划分标准 ** …

Fooocus模型配置中文教程

很多同学这里不知道该怎么选择。不知道每个模型效果,针对这个整理了一个表格。参考表格就可生成预期效果图。 下载地址: https://download.csdn.net/download/yuanshiren133/89503764