【OS笔记44】:磁盘存储管理

文章目录

    • [7.8.1 磁盘物理特性](#7.8.1 磁盘物理特性)
      • [1. 物理结构](#1. 物理结构)
      • [2. I/O 操作步骤](#2. I/O 操作步骤)
    • [7.8.2 磁盘系统与磁盘分类](#7.8.2 磁盘系统与磁盘分类)
      • [1. 固定头磁盘](#1. 固定头磁盘)
      • [2. 移动头磁盘](#2. 移动头磁盘)
    • [7.8.3 磁盘调度算法](#7.8.3 磁盘调度算法)
      • [1. 先来先服务](#1. 先来先服务)
      • [2. 最短寻道时间优先](#2. 最短寻道时间优先)
      • [3. 电梯调度算法 / 扫描法 (SCAN)](#3. 电梯调度算法 / 扫描法 (SCAN))
      • [4. 单向扫描法](#4. 单向扫描法)
  • [第7章 本章小结](#第7章 本章小结)

核心目标:磁盘是计算机主要的辅助存储器。

7.8.1 磁盘物理特性

1. 物理结构

  • 盘面:磁盘由多个盘片叠在一起,每个盘片有两个面。
  • 磁道:盘面被划分成一个个同心圆,称为磁道。
  • 柱面 :所有盘面上半径相同的磁道构成了柱面。(注意:读写数据时,磁头是先定位到柱面,然后电子切换磁头,所以同一柱面的数据读写最快,不需要机械移动)。
  • 扇区:磁道被进一步划分为扇区,这是物理读写的基本单位。

2. I/O 操作步骤

要想读写数据,必须经历三个步骤:

  1. 寻找 :移动磁头臂,将磁头定位到指定的柱面 。(机械运动,最慢
  2. 旋转 :等待指定的扇区旋转到磁头下方。
  3. 传输:数据在磁头和内存之间传输。

7.8.2 磁盘系统与磁盘分类

1. 固定头磁盘

  • 特点:每个磁道都有一个专用的读写头。
  • 优缺点:读写时不需要移动磁头(无寻道时间),速度极快,但成本极高。

2. 移动头磁盘

  • 特点:每个盘面只有一个磁头,需要通过机械臂移动来跨越不同的磁道。
  • 优缺点:成本低,但速度慢(因为有物理移动)。
  • 重点 :因为移动慢,所以我们需要 "磁盘调度算法" 来规划路线,少走弯路。

7.8.3 磁盘调度算法

场景假设

当前磁头位置:53号 柱面。

请求队列(等待访问的柱面序列):98, 183, 37, 122, 14, 124, 65, 67

1. 先来先服务

FCFS - First Come First Serve

  • 原理:按请求产生的先后顺序进行访问,不进行任何优化。
  • 路线:53 -> 98 -> 183 -> 37 -> 122 -> 14 -> 124 -> 65 -> 67。
  • 结果 :总移动距离 640 个柱面。
  • 评价:公平,但效率极低,磁头来回大幅度摆动,寻找时间长。

2. 最短寻道时间优先

SSTF - Shortest Seek Time First

  • 原理 :贪心算法。每次都选择距离当前磁头最近的那个请求进行服务。

  • 路线

    1. 当前 53,最近的是 65。
    2. 当前 65,最近的是 67。
    3. ... 依次类推 ...
    • 序列:53 -> 65 -> 67 -> 37 -> 14 -> 98 -> 122 -> 124 -> 183。
  • 评价
    • 优点:平均寻道时间较短,性能好于 FCFS。
    • 缺点 :可能产生 "饥饿" 现象。如果一直有附近的请求源源不断地来,远处的请求(如 183)可能永远排不上队。

3. 电梯调度算法 / 扫描法 (SCAN)

  • 原理 :像电梯一样,磁头固定在一个方向 上移动(如向外),途中处理所有请求,直到到达边缘(或该方向无请求),然后改变方向(向里),继续处理。
  • 路线
    • 假设向磁道号增加的方向移动:53 -> 65 -> 67 -> 98 -> 122 -> 124 -> 183 -> (掉头) -> 37 -> 14。
  • 结果:总移动距离大幅减少。
  • 评价
    • 优点:消除了"饥饿"现象,效率高。
    • 缺点:对两端的请求不太公平(刚扫过去又要等一轮)。

4. 单向扫描法

C-SCAN / Circular SCAN

  • 原理 :规定磁头只在单方向移动 时读写。当磁头到达最远端时,立即快速返回到起始端(0号柱面),返回途中不进行读写。
  • 目的:为了减少最内侧和最外侧磁道的等待时间不均问题,提供更均匀的响应时间。

第7章 本章小结

  1. I/O 系统架构
    • 外设 -> 控制器 -> 通道 -> CPU。
  2. 数据传送方式 (CPU 逐渐解放的过程):
    • 程序轮询(忙等)。
    • 中断(并行,字传输)。
    • DMA(直接存储访问,块传输)。
    • 通道(I/O 处理机,负责复杂的 I/O 程序)。
  3. 核心技术
    • 中断技术:系统调用的基础,处理流程(保护现场/恢复现场)。
    • 缓冲技术:解决速度不匹配(单缓冲/双缓冲/循环缓冲)。
    • SPOOLing 技术:将独占设备虚拟化为共享设备(如虚拟打印机)。
  4. 设备分配
    • 数据结构:SDT -> DCT -> COCT -> CHCT。
    • 策略:先拿设备,再拿控制器,最后拿通道。
  5. 磁盘调度 (必考计算):
    • FCFS, SSTF, SCAN, C-SCAN 的算法逻辑及优缺点。
相关推荐
周周记笔记1 小时前
ESP32-S3 :开发方式笔记(五)
笔记·单片机·嵌入式硬件
June bug1 小时前
【实习笔记】Fiddler学习笔记
笔记·学习·fiddler
googleccsdn1 小时前
ENSP Pro Lab笔记:配置BGP EVPN VXLAN双栈(2)
网络·笔记·网络协议
炸膛坦客2 小时前
FreeRTOS 学习:(二十六)FreeRTOS 专用延时函数(相对延时、绝对延时)
stm32·操作系统·freertos
JeffDingAI2 小时前
【Datawhale学习笔记】动手学RNN及LSTM
笔记·rnn·学习
galaxyffang2 小时前
如何理解select、poll、epoll?
操作系统
风之子npu2 小时前
CPU基础知识(1)
笔记
JeffDingAI3 小时前
【Datawhale学习笔记】预训练模型实战
笔记·学习
来生硬件工程师3 小时前
【PCB设计笔记】PCB布局时,如何快速互换器件位置?(Altium Designer 25)
笔记