操作系统概念第十二章 大容量存储器的结构

大容量存储器结构简介

磁盘

  • 常用磁盘片的直径为1.8~5.25英寸。
  • 每个磁盘片的两面都涂着磁质材料。
  • 相关概念:磁头、磁臂、磁道、扇区、柱面。
  • 常用磁盘驱动器的容量是按照GB来算的。
  • 大多数驱动器,磁盘每秒可转动60~200圈。
  • 传输速率(每秒数兆)
  • 定位时间(随机访问时间):寻道时间+旋转等待时间(毫秒)。
  • 磁头碰撞:磁头接触到磁盘面而损坏磁盘。

磁带
访问速度慢常用于备份数据。

磁盘结构

  • 现代磁盘驱动器可以看做一个一维的逻辑块的数组,逻辑块是最小的传输单位。逻辑块的大小通常为 512 B。
  • 扇区0是最外面柱面的第一个磁道的第一个扇区。该映射是先按磁道内扇区顺序,再接柱面内磁道顺序,最后接从外到内的柱面顺序来排序的。
  • 通过映射,至少从理论上能将逻辑块号转换为由磁盘内的柱面号、柱面内的磁道号、磁道内的扇区号所组成的老式磁盘地址。
  • 事实上,执行这种转换并不容易,这有两个理由:
    第一,绝大多数磁盘都有一些缺陷扇区,因此映射必须用磁盘上的其他空闲扇区来替代这些缺陷扇区。
    第二,对有些磁盘,每个磁道的扇区数并不是常量。
  • 常量线性速度:每个磁道的位密度是均匀的,从外到内时,每个磁道的扇区数也会减少。随着磁头由外移到内,驱动器会增加速度以保持磁头续写的数据速率恒定。
  • 恒定圆角速度:磁盘转动速度可以保持不变,因此内磁道到外磁道的位密度要不断降低以保持数据率不变。这种方法被用在硬盘中。

磁盘附属

计算机访问磁盘存储有两种方式:

  • 一种方式是通过I/O 端口(或主机附属存储 (hostattached storage) ) ,小系统常采用这种方式。
  • 另一方式是通过分布式文件系统的远程主机,这称为网络附属存储 (network-attached storage) 。

磁盘调度

FCFS

按照请求到达顺序进行访问。
统计总的走过的柱面数,柱面数越多,所需时间越长。
缺点:花费时间太长

SSTF(最短寻道时间优先算法)

寻找离当前位置最近的磁道访问。
缺点:有可能位置较远的请求永远得不到响应。

SCAN(电梯算法)

磁臂从磁盘的一端向另一端移动,同时当磁头移过每个柱面时,处理位于该柱面上的服务请求。当到达另一端时,磁头改变移动方向,处理继续。磁头在磁盘上来回扫描。

缺点:假设磁盘服务请求均匀地分布在各个柱面上, -f面来研究一下当磁头移到磁盘一端并掉转方向时请求的分布情况。这时,紧靠磁头之前的请求只有少数,因为这些柱面上的请求刚刚处理过。而在磁盘的另一端的请求密度却最大。

C-SCAN(circular SCAN)

C-SCAN (circular SCAN, C-SCAN) 调度是 SCAN 调度的变种,主要提供一个更为均匀的等待时间。与 SCAN →样, C-SCAN 将磁头从磁盘一端移到磁盘的另一端,随着移动不断地处理请求。不过,当磁头移到另一端时,它会马上返回到磁盘开始,返回时并不处理请求(参见图 12.7)0 C-SCAN 调度算法基本上将柱面当做一个环链,以将最后的柱面和第一个柱面相连。

C-LOOK

正如以上所述, SCAN 和 C-SCAN 使磁头在整个磁盘宽度内进行移动。事实上,这两个算法都不是这么实现的。通常,磁头只移动到一个方向上最远的请求为止。接着,它马上回头,而不是继续到磁盘的尽头。这种形式的 SCAN 和 C-SCAN 称为 LOOK 和 C-LOOK调度,这是因为它们在朝一个方向移动会看 (look) 是否有请求 。

磁盘管理

磁盘格式化

在磁盘能存储数据之前,它必须分成扇区以便磁盘控制器能读和写,这个过程称为低级格式化(或物理格式化)

为了使用磁盘存储文件,操作系统还需要将自己的数据结构记录在磁盘上。这分为两步:

  • 将磁盘分为一个或多个柱面组成的分区。
  • 逻辑格式化(创建文件系统)。操作系统将初始的文件系统数据结构存储到磁盘上。这些数据结构包括空闲和已分配的空间(FAT或者inode)和一个初始为空的目录

为了提高效率,大多数操作系统将块集中到一大块,通常称作簇(cluster)。磁盘IO通过块完成,但是文件系统IO通过簇完成。

引导块

初始化自举程序初始化系统的各个方面,随后启动操作系统。

坏块

比较常见的磁盘问题是一个或多个扇区坏掉,绝大多数磁盘从工厂里出来时就有坏块。

对于复杂的磁盘,通常采用扇区备用(sector sparing)/ 转寄(forwarding):

  • 磁盘的控制器维护一个磁盘坏块链表,该链表在低级格式化时已经初始化,并在磁盘整个使用过程中不断更新。
  • 低级格式化时将一些块放在一边作为备用,操作系统看不到这些备用的块。控制器可以用备用块来逻辑地替代坏块。

交换空间管理

当物理内存的数量到达临界低点,进程(通常选择最不活跃的进程)从内存转移到交换空间以释放内存空间。

交换空间管理是操作系统的另一底层任务。虚拟内存使用磁盘空间作为内存的扩充。交换空间设计和实现的主要目的是为虚拟内存提供最佳吞吐量。

交换空间的使用

不同的操作系统有不同的使用方式,如:

  • 保存整个进程映像
  • 换页系统可能只用交换空间以存储换出内存的页
  • 有的操作系统允许使用多个交换空间。

交换空间的位置

交换空间可以有两个位置:

  • 在普通文件系统上创建
  • 在一个独立的磁盘分区上进行
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SIR怀特

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值