《信息存储与管理(第二版):数字信息的存储、管理和保护》—— 2.11 磁盘原生命令排序(disk native command queuing)

简介:

本节书摘来异步社区《信息存储与管理(第二版):数字信息的存储、管理和保护》一书中的第2章,第2.11节,作者:【新加坡】G.Somasundaram ,【美】Alok Shrivastava,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.11 磁盘原生命令排序(disk native command queuing)

信息存储与管理(第二版):数字信息的存储、管理和保护
命令排序是应用于磁盘驱动器的一项技术,它决定接收到的I/O请求的执行顺序,以减少不必要的磁盘头移动,提高磁盘性能。当磁盘控制器接收到I/O请求时,命令排序算法会为此I/O分配一个标签,确定该命令的执行次序。使用命令排序技术,命令按照数据在磁盘上的组织确定执行顺序,而非按照接收顺序依次执行。

最常用的命令排序算法叫做寻道时间优化(seek time optimization)。命令的执行以实现读写头移动的最优化为目的,可能会对命令重新排序。如果不使用寻道时间优化,命令会按接收顺序先后执行。如图2-16(a)所示,命!

eb4de45a7ce49549588d505e9333705a746f597b

令会按A,B,C,D的顺序执行。A之后马上执行C,所需的磁头半径移动幅度小于执行B。应用寻道时间优化技术,命令的执行顺序为A, C, B, D,如图2-16(b)所示。

访问时间优化(Access Time Optimization)是另外一个命令排序算法。使用这种算法,命令的执行顺序会综合考虑寻道时间优化和对于旋转延迟的分析,以实现最佳性能。

命令排序技术也应用在现代存储阵列控制器中,有时候会与应用于磁盘的命令排序并用。

相关文章
|
4月前
|
存储 Shell Linux
【Shell 命令集合 磁盘维护 】Linux 创建一个用作交换空间(swap space)的特殊文件或设备 mkswap命令使用教程
【Shell 命令集合 磁盘维护 】Linux 创建一个用作交换空间(swap space)的特殊文件或设备 mkswap命令使用教程
68 0
|
26天前
|
存储 数据中心 数据安全/隐私保护
【Azure 存储服务】ADLS Gen 2 Backup/软删除/Version管理/快照等功能参考资料
【Azure 存储服务】ADLS Gen 2 Backup/软删除/Version管理/快照等功能参考资料
|
25天前
|
存储 容器
【Azure 存储服务】多设备并发往 Azure Storage Blob 的 Container 存数据是否可以
【Azure 存储服务】多设备并发往 Azure Storage Blob 的 Container 存数据是否可以
|
3月前
Inno Setup磁盘跨越必须启用,因为程序大于21000000000
Inno Setup磁盘跨越必须启用,因为程序大于21000000000
|
存储 缓存 固态存储
【Linux】基础IO --- 内核级和用户级缓冲区、磁盘结构、磁盘的分治管理、block group块组剖析…
【Linux】基础IO --- 内核级和用户级缓冲区、磁盘结构、磁盘的分治管理、block group块组剖析…
|
IDE 开发工具 内存技术
推荐一种超简单的硬件位带bitband操作方法,让变量,寄存器控制,IO访问更便捷,无需用户计算位置
51 单片机中通过关键字 sbit来实现**位**定义,操作时除了被操作的那一位发生改变之外,其它位不受影响。不过在STM32里面就没有 sbit 关键字了,不能直接对寄存器的进行单个位操作,如果你想单独修改寄存器某一位的话,其实还是有办法的—位带操作。
411 0
推荐一种超简单的硬件位带bitband操作方法,让变量,寄存器控制,IO访问更便捷,无需用户计算位置
|
存储 Linux Shell
RH358提供基于文件的网络存储--自动化调配基于文件的存储
RH358提供基于文件的网络存储--自动化调配基于文件的存储
181 0
RH358提供基于文件的网络存储--自动化调配基于文件的存储