什么是磁盘

一.磁盘的发展情况

    世界第一台硬盘存储器是由IBM公司在1956年发明的,其型号为IBM 350 RAMAC(Random Access Method of Accounting and Control)。这套系统的总容量只有5MB,共使用了50个直径为24英寸的磁盘。1968年,IBM公司提出“温彻斯特/Winchester”技术,其要点是将高速旋转的磁盘、磁头及其寻道机构等全部密封在一个无尘的封闭体中,形成一个头盘组合件(HDA),与外界环境隔绝,避免了灰尘的污染,并采用小型化轻浮力的磁头浮动块,盘片表面涂润滑剂,实行接触起停,这是现代绝大多数硬盘的原型。

    1979年,IBM发明了薄膜磁头,进一步减轻了磁头重量,使更快的存取速度、更高的存储密度成为可能。20世纪80年代末期,IBM公司又对磁盘技术作出一项重大贡献,发明了MR(Magneto Resistive)磁阻磁头,这种磁头在读取数据时对信号变化相当敏感,使得盘片的存储密度比以往提高了数十倍。1991年,IBM生产的3.5英寸硬盘使用了MR磁头,使硬盘的容量首次达到了1GB,从此,硬盘容量开始进入了GB数量级。IBM还发明了PRML(Partial Response Maximum Likelihood)的信号读取技术,使信号检测的灵敏度大幅度提高,从而可以大幅度提高记录密度。

    目前,硬盘的面密度已经达到每平方英寸100Gb以上,是容量、性价比最大的一种存储设备。因而,在计算机的外存储设备中,还没有一种其他的存储设备能够在最近几年中对其统治地位产生挑战。硬盘不仅用于各种计算机和服务器中,在磁盘阵列和各种网络存储系统中,它也是基本的存储单元。值得注意的是,近年来微硬盘的出现和快速发展为移动存储提供了一种较为理想的存储介质。在闪存芯片难以承担的大容量移动存储领域,微硬盘可大显身手。目前尺寸为1英寸的硬盘,存储容量已达4GB,10GB容量的1英寸硬盘不久也会面世。微硬盘广泛应用于数码相机、MP3设备和各种手持电子类设备。

    另一种磁盘存储设备是软盘,从早期的8英寸软盘、5.25英寸软盘到3.5英寸软盘,主要为数据交换和小容量备份之用。其中,3.5英寸1.44MB软盘占据计算机的标准配置地位近20年之久,之后出现过24MB、100MB、200MB的高密度过渡性软盘和软驱产品。然而,由于USB接口的闪存出现,软盘作为数据交换和小容量备份的统治地位已经动摇,不久会退出历史舞台。

二.为什么硬盘读写会消耗大量CPU?

普通机械硬盘读写:

    早期的硬盘读写都是通过CPU指令执行,这种读写方式叫PIO,(Programmed input/output,可编程输入输出),大概流程是程序发起读取指令,CPU找到硬盘映射的地址D1,然后发出指令,说需要从地址D1读取若干字节写入目标地址D2;硬盘控制器根据这个指令从硬盘读取若干数据,并写入内存地址D2后,告知CPU指令执行完毕;然后CPU从内存D1读取若干字节数据——期间CPU一直在等待硬盘控制器的返回,并不能执行其它指令,除非有更高优先级的中断。很显然,这种读写模式非常占用CPU资源。在老式电脑上,PIO方式的硬盘读写往往会消耗30%甚至更多的CPU资源。

    之后为了解决这个问题,硬盘读写使用了DMA模式。和PIO模式相比,只要硬盘控制器向CPU确认收到读写指令了,CPU就可以执行其它指令,直到硬盘控制器完成从硬盘读取数据到内存D2后发起中断,CPU再去处理D2里面的数据,这个过程对CPU资源的消耗很小——很显然,和PIO相比,这就是I/O方面的硬件加速:大部分的读写操作由硬盘控制器实现。当然,文件系统是软件层面的,假设我们要读取十个1MB大小的文件,不考虑目录结构的读取和文件碎片的情况下,会比读取一个10MB的文件消耗将近10倍的CPU资源——因为CPU需要发起10次读取指令。通常情况下,DMA方式读写数据消耗的CPU资源在3%以下甚至更低。

    新一代的NVMe SSD,因为通常使用4x PCI-E通道,新一代的NVMe SSD是要求PCI-E 3.0(1x带宽8GT/s, 4x带宽32GT/s,除掉检验位是4*985MB/s=3940MB/s);而旧平台(Intel六代之前)只支持PCI-E 2.0(1x带宽5GT/s,4x带宽20GT/s,除掉校验位是4*500MB/s=2000MB/s),对于部分高端NVMe SSD来说已经形成带宽瓶颈了,自然会导致硬盘读写性能下降。另外,更高速的读写速度自然也会消耗更多的CPU性能——一秒钟时间就能向CPU提供3GB+的数据等待CPU进行处理,显然和机械硬盘一秒钟才能读取到200+MB数据消耗的CPU资源不同。

 

更多回答

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值