操作系统--磁盘和IO

磁盘

构成

image-20220809202344032

  • 盘面:一般磁盘有多个盘片,一个盘片的正反两面有两个盘面

image-20220809202916719

  • 柱面:一个盘面上相同的一个圈,被称为磁道。所有盘面中相对位置,相同的磁道组成柱面

  • 扇区:一个磁道被划分为多个扇区,一个扇区也被称为盘块

可用(柱面号,盘面号,扇区号)来定位任意一个“磁盘块”

如何读写数据

image-20220809202551327

磁盘分类

image-20220809203357518

image-20220809203446816

磁盘调度算法

一次磁盘读写时间

image-20220809203824232

先来先服务算法

image-20220809204036291

最短时间优先算法

image-20220809204300182

扫描算法

image-20220809204533579

LOOK调度算法

image-20220809204704679

循环扫描算法

image-20220809204859853

C-LOOK调度算法

image-20220809205016796


IO

IO设备

IO就是输入/输出(Input/ Output)设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机中的硬件部件

I/O设备类型

  • 按使用特性划分

    • 人机交互类设备。用于与计算机用户之间交互的设备,如打印机、显示器、鼠标和键盘等

    • 存储设备。用于存储程序和数据的设备,如磁盘、磁带和光盘等

    • 网络通信设备。用于与远程设备通信的设备,如各种网络接口、调制解调器等

  • 按传输速率划分

    • 低速设备。传输速率仅为每秒几字节到数百字节的一类设备,如键盘、鼠标等

    • 中速设备。传输速率为每秒数千字节至数万字节的一类设备,如打印机等

    • 高速设备。传输速率在数百千字节至千兆字节的一类设备,如磁带机、磁盘机等

  • 按信息交换单位划分

    • 块设备。由于信息的存取总是以数据块为单位的,所以存储信息的设备称为块设备。传输速率高、可寻址

    • 字符设备。用于数据输入输出的设备为字符设备,因为其传输的基本单位是字符。传输速率低、不可寻址

IO控制器

CPU无法直接控制IO设备的机械部件,因此IO设备还要有一个电子部件作为CPU和IO设备机械部件之间的“中介”,用于实现CPU对设备的控制。这个电子部件就是IO控制器,又称设备控制器。CPU可控制IO控制器,又由IO控制器来控制设备的机械部件

image-20220809210821729

IO控制方式

程序直接控制

计算机从外部设备读取数据到存储器,每次读一个字的数据。对读入的每个字,CPU需要对外设状态进行循环检查,直到确定该字已经在I/O控制器的数据寄存器中

image-20220809211500913

中断驱动方式

引入中断机制。由于IO设备速度很慢,因此在CPU发出读/写命令后,可将等待IO的进程阻塞,先切换到别的进程执行。当IO完成后,控制器会向CPU发出一个中断信号,CPU检测到中断信号后,会保存当前进程的运行环境信息,转去执行中断处理程序处理该中断。处理中断的过程中,CPU从IO控制器读一个字的数据传送到CPU寄存器,再写入主存。接着CPU恢复等待IO的进程(或其他进程)的运行环境,然后继续执行

注意:

①CPU会在每个指令周期的末尾检查中断

②中断处理过程中需要保存、恢复进程的运行环境这个过程是需要一定时间开销的。可见,如果中断发生的频率太高,也会降低系统性能

image-20220809212021372

DMA方式

image-20220809212216433

image-20220809212742068

DMA组成

image-20220809212544901

通道控制方式

image-20220809212925662

image-20220809213049433

总结

image-20220809213239068

posted @ 2022-08-09 21:38  伊文小哥  阅读(535)  评论(0编辑  收藏  举报