当前位置: 首页 > news >正文

减少磁盘读/写中延迟时间的方法(交替编号,错位命名)

目录

  • 1.延迟时间的优化空间
  • 2.交替编号
  • 3.磁盘地址结构的设计
    • 1.若物理地址结构是(盘面号,柱面号,扇区号)
    • 2.若物理地址结构是(柱面号,盘面号,扇区号)
  • 4.错位命名

关于磁盘延迟时间的概念请看博主的上一篇文章: 磁盘调度算法

1.延迟时间的优化空间

在这里插入图片描述

假设要连续读取橙色区域的2、3、4扇区:
磁头读取一块的内容(也就是一个扇区的内容)后,需要一小段时间处理,而盘片又在不停地旋转。
因此,如果2、3号扇区相邻着排列,则读完2号扇区后无法连续不断地读入3号扇区,必须等盘片继续旋转,3号扇区再次划过磁头,才能完成扇区读入。

结论:磁头读入一个扇区数据后需要一小段时间处理,如果逻辑上相邻的扇区在物理上也相邻,则读入几个连续的逻辑扇区,可能需要很长的“延迟时间”。

2.交替编号

若采用交替编号的策略,即让逻辑上相邻的扇区在物理上有一定的间隔,可以使读取连续的逻辑扇区所需要的延迟时间更小。

在这里插入图片描述

3.磁盘地址结构的设计

假设某磁盘有8个柱面/磁道(假设最内侧柱面/磁道号为0 ) ,4个盘面,8个扇区。
则可用3个二进制位表示柱面,2个二进制位表示盘面,3个二进制位表示扇区。

1.若物理地址结构是(盘面号,柱面号,扇区号)

在这里插入图片描述

转动两圈读完一个柱面后,需要移动磁头臂,将磁头移动到下一个磁道。
移动磁头是一种物理上的移动,所需花费的时间是比较高的。

2.若物理地址结构是(柱面号,盘面号,扇区号)

在这里插入图片描述

先依次读取不同盘面的扇区,由于柱面号(磁道号)相同,只是盘面号不同,因此不需要移动磁头臂。
只需要激活相邻盘面的磁头即可
因此读取地址连续的磁盘块时,采用(柱面号,盘面号,扇区号)的地址结构可以减少磁头移动消耗的时间

4.错位命名

优化原因:如果不同盘面的扇区的相对位置一致,同样会导致存在读取时间差,导致磁盘多余旋转,从而增长了延迟时间。

解决方案:不同盘面之间的扇区采用错位命名法,假如磁头读取完0号盘面的1号扇区后,需要一段时间处理,再读取与前者错位的1号磁盘的1号扇区,就可以直接读取数据。从而减少了延迟时间。

http://www.lryc.cn/news/210941.html

相关文章:

  • Perl爬虫程序
  • UE5使用Dash插件实现程序化地形场景制作
  • 23种设计模式(10)——门面模式
  • 磨人的Ts
  • 一个基于Excel模板快速生成Excel文档的小工具
  • 服务器动态/静态/住宅/原生IP都是什么意思
  • 缓解大模型幻觉问题的解决方案
  • Python装饰器进阶:深入理解与最佳实践
  • 数据库数据恢复—Oracle数据库报错ORA-01110错误的数据恢复案例
  • 如何通过adb控制安卓手机wifi
  • VR全景应用广泛体现在哪里?有何优势?
  • 【深度学习】Python使用指定gpu运行代码
  • 二叉树的遍历
  • 分布式限流:Redis
  • python excel接口自动化测试框架
  • Java开发面试--MongoDB专区
  • 当『后设学习』碰上『工程学思维』
  • 一表谈现实、系统、流程、报表与BI
  • 数据结构顺序栈例题一
  • 大模型在百度智能问答、搜索中的应用
  • ARPG----C++学习记录01日志和调试
  • 3302. 表达式求值, 栈的应用
  • 论文写作框架示例:论软件系统建模方法及其应用
  • Godot 官方2D C#重构(4):TileMap进阶使用
  • Ubuntu系统编译调试QGIS源码保姆级教程
  • 电源控制系统架构(PCSA)之系统控制处理器
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • Redis实现方式开启新篇章,解决分布式环境下的资源竞争问题,提升系统稳定性
  • Go命令行参数操作:os.Args、flag包
  • 在Go中处理时间数据