操作系统复习4.2.0-磁盘组织和管理

news2024/11/19 17:33:51

磁盘的结构

磁盘、磁道、扇区

磁盘划分n圈磁道,每条磁道划分为多个扇区
在这里插入图片描述

磁盘读写

磁头移动到需要读写的扇区所在的磁道来完成读写
磁盘转起来让目标扇区在磁头下面划过

盘面和柱面

在这里插入图片描述

分类

按磁头分类:磁头可伸缩移动、不可伸缩移动(同一盘面上有多个磁头)
按盘片分类:盘片不可换的固定磁盘和盘片可换的可换盘磁盘

磁盘调度算法

磁盘读写耗时

寻找时间/寻道时间

读写数据时,将磁头移动到指定磁道所花的时间:启动磁头臂、移动磁头
T = 启动磁头臂时间 + 越过一个磁道耗时 * 跨越磁道数
寻找时间与磁盘调度算法相关

延迟时间

通过旋转磁盘,将磁头定位到目标扇区所需时间,设磁盘转速为r,平均所需的延迟时间为 1/2 * 1/r,即1/2转除以转速

传输时间

从磁盘读写数据耗时,设转速r,读写字节数b,每个磁道上的字节数n,T = 1/r * b/n
与转速线性相关,即与硬件相关,操作系统无法优化

FCFS

在这里插入图片描述

SSTF

在这里插入图片描述

SCAN

在这里插入图片描述

LOOK

在这里插入图片描述

S-SCAN

在这里插入图片描述

C-LOOK

在这里插入图片描述

总结

FCFS先来先服务带有公平属性,但在访问的磁道分散时会疲于寻道,降低性能
SSTF则是优先处理离磁头近的磁道,保证每次寻道时间短,但可能产生饥饿,且整体时间未必最优
SCAN则是每次扫描到磁道边界才返回,平均寻道时间短,不饥饿,但移动强制碰到边界才能改变方向,磁道响应频率不平均
LOOK则是解决了SCAN的扫描方向问题,移动方向上没有别的请求就改变磁头移动方向
S-SCAN则解决SCAN对各个磁道的响应频率不平均,在碰到边界才返回的基础上,增加了返回时不处理任何请求,直至返回起始端
C-LOOK则是S-SCAN基础上无需碰到边界才返回

磁盘减少延迟

若要读取的扇区连续分布,会造成时间浪费
因为磁头读取数据后,需要时间处理数据,而此时磁盘继续转动,只有等下一次转到磁头下才能继续读取,这增加了延迟时间

交替编号

逻辑上相邻的扇区在物理上有一定间隔,使得延迟时间减少

错位命名

在这里插入图片描述
在这里插入图片描述

磁盘地址结构的设计

在这里插入图片描述
按照(柱面号、盘面号、扇区号)方便连续读取

磁盘管理

磁盘初始化

在这里插入图片描述
物理格式化—>磁盘分区—>逻辑格式化

引导块

计算机开机时需要通过执行初始化程序(自举程序)进行一系列初始化的工作
磁盘的启动块(引导块/启动分区)中存放着自举程序,位置固定
拥有启动分区的磁盘称为启动磁盘和系统磁盘
ROM中只存放很小的自举装入程序,开机时先运行此程序,通过此程序可以找到引导块,并将完整的自举程序读入内存,完成初始化

坏块

无法正常使用的扇区就是坏块,系统无法修复,因此需要标记出来

对于简单磁盘,可以在逻辑格式化时对整个硬盘进行坏块检查,在FAT表中标明坏扇区
对于复杂硬盘,磁盘内部有个磁盘控制器来维护一个坏块链表,磁盘出厂前进行物理格式化时就将坏块链进行初始化,并保留一些备用扇区用于替换坏块

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

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

相关文章

chatgpt赋能python:Python加入Path的好处及操作方法

Python加入Path的好处及操作方法 什么是Path? Path,顾名思义就是文件路径的意思。每当我们需要执行某些程序或打开某个文件,电脑都会按照这个文件路径来查找需要的文件或程序。在Windows系统中,文件路径是由一连串的路径名组成的…

DiffRate详解:高效Vision Transformers的可微压缩率

DiffRate详解:高效Vision Transformers的可微压缩率 0. 引言1. 相关内容介绍1.1 Transformer Block1.2 令牌修剪和合并1.3 修剪和合并的统一 2 DiffRate中的创新点2.1 令牌排序2.2 压缩率重参数化2.3 训练目标 3. 算法流程4. 总结 0. 引言 就当前的Vision Transfor…

决策树分类算法

#CSDN AI写作助手创作测评 目录 ID3算法 1.算法原理 2.代码实现 3.ID3算法的优缺点分析 C4.5算法 1.原理 2.优缺点 心得感受 决策树表示方法是应用最广泛的逻辑方法之一,它从一组无次序、无规则的事例中推理出决策树表示形式的分类规则。在决策树的内部…

Vue+springboot医院住院挂号登记收费系统7ui9s

医院信息管理系统的开发过程中,采用B / S架构,主要使用java语言进行开发,结合最新流行的springboot框架。使用Mysql数据库和idea开发环境。该医院信息管理系统包括用户、医生和管理员。其主要功能包括用户管理、医生管理、医生信息管理、预约…

chatgpt赋能python:Python删除非字母的SEO文章

Python删除非字母的SEO文章 Python是一个功能强大的编程语言,广泛应用于各类领域,包括搜索引擎优化(SEO)。在进行SEO优化时,有时需要从文本中删除非字母字符。这可以用Python快速高效地完成。本文将介绍如何使用Pytho…

基于PyQt5的图形化界面开发——堆栈动画演示

目录 0. 前言1. 了解堆栈2.代码实现3. 演示效果其他PyQt5文章 0. 前言 本文使用 PyQt5制作图形化界面演示数据结构中的堆栈操作 操作系统:Windows10 专业版 开发环境:Pycahrm Comunity 2022.3 Python解释器版本:Python3.8 第三方库&…

图文并茂教你快速入门React系列03-事件

事件 使用 React 可以在 JSX 中添加 事件处理函数。其中事件处理函数为自定义函数,它将在响应交互(如点击、悬停、表单输入框获得焦点等)时触发。 事件处理 // 这样写:export default function Button() {function handleClic…

chatgpt赋能python:Python删除文件的方法与注意事项

Python删除文件的方法与注意事项 在Python中,删除文件是很常见的操作。通常,我们需要在程序中删除不再需要的文件,或者在清理本地存储空间时删除缓存文件。本文将重点介绍Python如何删除文件以及可能涉及到的注意事项。 如何删除文件 Pyth…

redis设计原理009持久化策略

目录 RDB 备份原理 优点 缺点 AOF 不能保证绝对不丢失数据 重写 流程 结论 优点 缺点 如何选择RDB和AOF 同时开启 混合模式 运行过程 数据 数据恢复 优点 缺点 优化方案 总结 RDB 通过快照(snapshotting)完成的,当符合一定…

写一个python文件,在shell脚本中运行

最近要复现论文了,发现代码的主函数在.py文件中,运行脚本是在.sh中。 要命的事,我不懂,我怎么debug。 1.新建一个pycharm项目,新建main.py import argparsedef get_args():parser argparse.ArgumentParser()parser…

chatgpt赋能python:Python模块的优势和局限性

Python模块的优势和局限性 引言 Python作为一门高级编程语言,被广泛应用于各种领域。其中,Python内置的模块系统,为Python在编程中的灵活性和可扩展性提供了很大的优势。在本文中,我们将探讨Python模块的优势和局限性及其对Web优…

chatgpt赋能python:用Python剔除重复内容提升SEO效果

用Python剔除重复内容提升SEO效果 SEO是指通过优化网站结构和内容,在搜索引擎中获得更高的排名,从而提升网站流量和曝光度的一种网络营销方式。网站内容是SEO工作的重要组成部分,而剔除重复的内容对于SEO效果的提升有着重要的作用。本文将介…

chatgpt赋能python:Python制作人机交互界面:完美融合技术和用户体验

Python 制作人机交互界面:完美融合技术和用户体验 随着人工智能和互联网技术的发展,人机交互一直是非常热门的话题。Python 作为一门功能强大,应用广泛的高级编程语言,同样在这个领域发挥了重要作用。Python 制作人机交互界面&am…

【列表迭代器和增强for循环】

列表迭代器和增强for循环 1.列表迭代器 ListIterator:列表迭代器 通过List集合的listIterator()方法得到,所以说它是List集合特有的迭代器用于允许程序员沿任一方向遍历列表的列表迭代器,在迭代期间修改列表,并获取列表中迭代器…

SAP ABAP smartforms 创建并实现调用源码(下)

SAP ABAP smartforms 创建并实现调用源码(上) smartforms 入门详见上一篇博文。 一:报表程序调用 smartforms 示例:报表选中一行,将这行机相关数据通过表单打印出来。实际例子:采购订单表,销售订单。 调…

低代码平台iVX

一、ivx是啥 编写复杂的代码仍然是一项具有挑战性的任务。然而,现在有一种令人振奋的解决方案出现了——iVX,这是一种创新的可视化编程语言,为每个人提供快速掌握的能力。 iVX 是一个 “零代码” 的可视化编程语言,“零代码” 是…

基于flask的web应用开发——认识@app.route

目录 0. 前言1. flask简介2. 编写你的第一个网页3. 运行效果查看4. 本节小结 0. 前言 本专栏以基于flask实现web前端,即制作一个自己的网页 本节学习路由装饰器app.route() 操作系统:Windows10 专业版 开发环境:Pycahrm Comunity 2022.3 …

chatgpt赋能python:Python加R:让数据科学更加高效

Python加R:让数据科学更加高效 在过去的几年里,Python和R成为数据科学领域中最受欢迎的编程语言。它们提供了丰富的库和工具,帮助从事数据分析和机器学习的人们更加高效地完成任务。然而,Python和R都有其各自的优缺点。 Python的…

代理IP基础、实际运用,以及如何获取

代理IP是指通过一个中间服务器来转发用户的网络请求,从而在网络上隐藏用户的真实IP地址,或者绕过网络限制以达到访问特定内容的目的。下面是代理IP的一些基础知识: 1、代理IP的分类:代理IP可以分为普匿代理IP、透明代理IP和高匿代…

互联网医院牌照申请的资料以及流程

随着互联网的发展,互联网医院逐渐成为一个热门话题,越来越多的医疗机构开始尝试在互联网上提供医疗服务。然而,想要在互联网上开展医疗服务,必须获得互联网医院牌照。本文将介绍互联网医院牌照申请需要的资料、条件,以…