操作系统9:大容量存储结构

别说谁变了你拦得住时间么 提交于 2020-02-09 23:27:33

大容量存储结构

这一章主要关注于磁盘的管理




硬盘转速快,读写就快

注意硬盘的转速说的是每分钟

计算机与外存的连接方式:


DAS就是磁盘直接和本地连接

而NAS和SAN是非常常见的两种网络存储方式

NAS与SAN

NAS:


SAN:


SAN是一个硬件设备

作者:LSI China
链接:https://www.zhihu.com/question/24335605/answer/27454928
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

DAS即直接连接存储(Direct Attached Storage),NAS即网络接入存储(Network Attached Storage),SAN即存储区域网络(Storage Area Network)。

DAS是指将外置存储通设备通过SCSI或FC接口直接连接到应用服务器上,存储设备是整个服务器结构的一部分。在这种情况下,数据和操作系统往往都未分离。

SAN是通过光纤交换机连接存储阵列和服务器,建立专用数据存储的存储私网。

NAS采用网络技术(TCP/IP、ATM、FDDI),通过网络交换机连接存储系统和服务器主机来建立存储私网。其主要特征是把存储设备、网络接口和以太网技术集成在一起,直接通过以太网网络存取数据。也就是把存储功能从通用文件服务器中分离出来。

三种模式中,DAS模式最简单,就是直接把存储设备连接到服务,而这种模式最大的问题是:每个应用服务器都要有独立的存储设备,这样增加了数据处理的复杂度,随着服务器的增加,网络系统效率也急剧下降。为了解决上述问题,提出了NAS和SAN两种模式。

NAS:通过TCP/IP协议访问数据,采用业界标准文件共享协议,如果NFS、HTTP、CIFS实现共享。

SAN:通过专用光纤交换机访问数据,采用SCSI、FC-AL接口。

NAS和SAN最本质的区别就是文件管理系统在哪里。如图1所示,SAN结构中,文件管理系统(FS)分别在每一个应用服务器上面,而NAS则是每个应用服务器通过网络共享协议,使用同一个文件管理系统。即NAS和SAN存储系统的区别就是NAS有自已的文件管理系统。

磁盘调度

img


调度算法要决定先给哪个进程读写,这决定了数据的位置,也就是寻道时间


主要研究的也就是寻道时间和旋转延迟


这个例子表示假设现在有200个柱面,现在有这些进程要在这些磁道读写,现在磁头在53磁道上

先来先服务算法(FCFS)


这种算法比较原始

最短寻道时间优先调度(SSTF)


这种算法显然有可能导致某些请求的饥饿

扫描调度(SCAN)


这种思路是,不考虑进程要求,而是以磁头移动为主考虑。“电梯算法”很生动

C-SCAN



SCAN算法进程最差的寻道时间是一个往返的时间,而C-SCAN则缩短为一个单程的时间(如果不考虑快速返回的时间的话)

LOCK和C-LOCK算法


不移动到一端,而是只移动到最远请求位置

磁盘管理

一种加密思路:磁盘的扇区大小和常用的不一样,虽然插入电脑操作系统不能直接读写,需要使用特定的软件

对硬盘进行分区,每个分区对应一个文件系统,每个文件系统都可以采用不一样的格式

坏块和坏道

可以通过操作系统提供的工具或者第三方工具对坏块和坏道进行检测,也有相应的修复手段,修复的思路一般就是屏蔽掉,但是屏蔽的方法有多种,从高级工具到低级格式化时的屏蔽都有。此外,坏道中的数据也不一定是一定不可读了,所以恢复数据还是不难的,要是一定不可读的数据,没有备份的话要恢复就很不容易了

来源:https://www.zbfix.com/a/faq/363.html

所谓坏道,是指磁盘碟片上无法正常读取或读取极为缓慢的区域,它通常是由于相应区域内磁性介质脱落或老化而引起的。对于目前大容量、高密度的硬盘来说,坏道的产生不可避免,在硬盘出厂时,厂商会将生产过程中产生的坏道进行屏蔽,即所谓的P表机制(P-List),同时P表内还隐藏着一部分“优良区域”(同一生产线上出产的碟片,容量是相同的,厂商通过将一部分区域屏蔽掉而使硬盘的出厂容量有所不同,例如同一系列的硬盘在市面上有160G、320G和500G的区别,但实际上它们碟片的容量均为500G,只是厂商将一部分容量屏蔽掉了)。P表位于硬盘的固件区域内。当硬盘由于坏道故障回到工厂维修时,厂商会将后续产生的坏扇区放入P表内,同时从P表中的“优良区域”开放相应容量的扇区,于是故障硬盘在容量不缺损的情况下又“满血复活”了。
硬盘在出厂以后,P表区域是无法被用户访问的,但其实坏道仍在不断产生,只是我们并未发觉,这是因为出厂后的硬盘对坏道也是有容灾机制的,少量坏道会通过硬盘的G表(G-List)进行屏蔽并再分配,硬盘就可以时刻保持最佳工作状态。但如果坏道数量超出G表的承受范围,无法为持续产生的坏道进行扇区再分配,这部分坏道就开始破坏用户数据,影响系统正常运转了。

这就是数据恢复公司的工作了

除此之外,例如我们在数据库中学到的RAID技术,就可以用来在服务器中进行数据恢复。但是RAID使用了磁盘阵列,所以个人电脑一般不能通过这个方式恢复

格式化

来源:https://zhuanlan.zhihu.com/p/76318959、https://www.zhihu.com/question/24735359

1、物理格式化=低级格式化,低级格式化是将硬盘划分出柱面和磁道,再将磁道划分为若干个扇区,每个扇区又划分出标识部分ID、间隔区、GAP和数据区DATA等。低级格式化是高级格式化之前的一件工作,每块硬盘在出厂前都进行了低级格式化。低级格式化是一种损耗性操作,对硬盘寿命有一定的负面影响。

2、逻辑格式化=高级格式化,它是指根据用户选定的文件系统(如FAT12、FAT16、FAT32、NTFS、EXT2、EXT3等),在磁盘的特定区域写入特定数据,以达到初始化磁盘或磁盘分区、清除原磁盘或磁盘分区中所有文件的一个操作。高级格式化又分为一般格式化与快速格式化。快速格式化就是清除FAT表(文件分配表),使系统认为盘上没有文件了,并不真正格式化全部硬盘,完全格式化就是把所有数据擦掉,有数据为1,没有数据为0


磁盘的分区,从操作系统的角度来看,分区是连续的。在机械硬盘上,还是连续的。固态硬盘因为它有重映射,所以往往是非连续的

交换空间(虚拟内存)管理


Windows这种简单大文件的好处就是可以自动扩展,而Linux就需要手动扩展了

RAID

这部分在数据库课上已经学过了


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!