1. 仍然是从硬件开始

操作系统-生磁盘的使用 Linux 第1张

2. 认识磁盘

操作系统-生磁盘的使用 Linux 第2张

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

3. 磁盘的IO过程

  1. 磁头移动到相应的磁道上
  2. 然后磁道开始旋转,转到相应的扇区
  3. 此时再转的时候磁生电,磁信号就变成了电信号,然后就读回去
  4. 读到了内存的缓冲区,将这个内存缓冲区修改一个字节,
  5. 然后仍然到里面再转,此时是电生磁,再把字节写到这里面

总的来说:移动磁头,移动到对应的磁道上,然后转动磁道,移动到对应的扇区上,一边旋转一边进行磁生电,电生磁,和内存缓冲区进行数据的交互读和写

操作系统-生磁盘的使用 Linux 第3张

4. 最直接的使用磁盘

操作系统-生磁盘的使用 Linux 第4张

5. 通过盘块号写磁盘(一层抽象)

操作系统-生磁盘的使用 Linux 第5张

一个盘块就是连续的几个扇区

盘块越大效率越高,但碎片也越大,以浪费空间换取时间

操作系统-生磁盘的使用 Linux 第6张
操作系统-生磁盘的使用 Linux 第7张

6. 多个进程通过队列使用磁盘(第二层抽象)

操作系统-生磁盘的使用 Linux 第8张

FCFS磁盘调度算法

操作系统-生磁盘的使用 Linux 第9张

SSTF磁盘调度

操作系统-生磁盘的使用 Linux 第10张

SCAN磁盘调度

操作系统-生磁盘的使用 Linux 第11张

C-SCAN磁盘调度(电梯算法)

最实用的

操作系统-生磁盘的使用 Linux 第12张

多个进程共同使用磁盘

操作系统-生磁盘的使用 Linux 第13张

7. 生磁盘的使用过程

操作系统-生磁盘的使用 Linux 第14张

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄