王道计算机考研 操作系统学习笔记 + 完整思维导图篇章五: IO管理

news2024/11/19 4:26:08

目录

IO设备的基本概念和分类

IO设备的分类 

按使用特性分类

按传输速率分类 

按信息交换单位分类 

IO控制器

l/O设备的电子部件(I/O控制器) 

l/O控制器的组成

内存映像I/o vs.寄存器独立编址

IO控制方式

程序直接控制方式

中断驱动方式

DMA方式

​编辑通道控制方式

DMA与通道的区别

IO软件层次结构 

用户层IO软件 

设备独立性软件

主要功能

中断处理程序

输入/输出应用程序接口 & 设备驱动程序接口 

输入/输出应用程序接口

阻塞/非阻塞I/O

设备驱动程序接口 

IO核心子系统 

假脱机技术(SPOOLing ) 

什么是脱机技术

输入井和输出井

共享打印机原理分析 

设备的分配与回收

设备分配时应考虑的因素 

静态分配和动态分配

设备分配管理中的数据结构

设备分配的步骤

​编辑​编辑

设备分配步骤的改进 

缓冲区管理 

什么是缓冲区? 有什么作用?​编辑​编辑

单缓冲

双缓冲 

使用单/双缓冲在通信时的区别

高速缓存与缓冲区对比

相同点

不同

循环缓冲区

缓存池

磁盘管理 

磁盘的结构

磁盘、磁道、扇区 

如何在磁盘中读/写数据

盘面、柱面

磁盘的物理地址

​编辑 磁盘的分类

磁盘调度算法

一次磁盘读/写操作需要的时间 

先来先服务算法 (FCFS)

最短寻找时间优先 (SSTF)

扫描算法 (SCAN)

LOOK 调度算法

循环扫描算法 (CSCAN) 

C-LOOK 调度算法

磁盘的管理

磁盘初始化 

引导块 

坏块管理 

固态硬盘SSD 

IO设备的基本概念和分类

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

IO设备的分类 

按使用特性分类

按传输速率分类 

按信息交换单位分类 


IO控制器

I/0设备的机械部件主要用来执行具体I/O操作。如我们看得见摸得着的鼠标/键盘的按钮:显示器的LED屏:移动硬盘的磁臂、磁盘盘面


l/0设备的电子部件通常是一块插入主板扩充槽的印刷电路板 


l/O设备的电子部件(I/O控制器) 

l/O控制器的组成

值得注意的小细节:

  • 一个I/0控制器可能会对应多个设备;
  • 数据寄存器、控制寄存器、状态寄存器可能有多个(如:每个控制/状态寄存器对应一个具体的设备),且这些寄存器都要有相应的地址,才能方便CPU操作。有的计算机会让这些寄存器占用内存地址的一部分,称为内存映像l/0;另一些计算机则采用I/0专用地址,即寄存器独立编址

内存映像I/o vs.寄存器独立编址


IO控制方式

程序直接控制方式

 

中断驱动方式

DMA方式

通道控制方式


DMA与通道的区别

DMA需要CPU来控制传输的数据块大小、传输的内存位置、而通道方式中这些信息是由通道控制

DMA控制器对应一台设备与内存传递数据,通道可以控制多态设备与内存的数据交换


IO软件层次结构 

用户层IO软件 

设备独立性软件

用于实现用户程序与设备驱动器的统一接口、设备命令、设备保护、差错控制及设备分配与释放,同时为设备管理与数据传送提供必要的存储空间

设备独立性也称为设备无关性,使得应用程序独立于具体使用的物理设备(使用逻辑设备名)

使用逻辑设备名的好处:增加设备分配的灵活性;易于实现IO重定向

主要功能

  • 执行所有设备的公有操作(设备的分配与回收,逻辑设备名映射为物理设备名,对设备进行保护,进制用户直接访问设备),屏蔽设备之间数据交换的速度差异等
  • 向用户层(文件层)提供统一接口∶无论哪种设备,他们向用户提供的接口都是相同的

不同设备的内部硬件特性也不同,这些特性只有厂家才知道,因此厂家须提供与设备相对应的驱动程序,CPU执行驱动程序的指令序列,来完成设置设备寄存器,检查设备状态等工作


中断处理程序


输入/输出应用程序接口 & 设备驱动程序接口 

输入/输出应用程序接口


阻塞/非阻塞I/O

  • 阻塞I/O: 应用程序发出I/O系统调用,进程需转为阻塞态等待

        eg:字符设备接口-一从键盘读一个字符 get

  • 非阻寨I/O:应用程序发出I/O系统调用,系统调用可迅速返回,进程无需阻塞等待

        eg:块设备接口--往磁盘写数据 write


设备驱动程序接口 

  • 不同的操作系统,对设备驱动程序接口的标准各不相同。
  • 设备厂商必须根据操作系统的接口要求,开发相应的设备驱动程序,设备才能被使用 

IO核心子系统 

 


假脱机技术(SPOOLing ) 

什么是脱机技术

输入井和输出井


共享打印机原理分析 


设备的分配与回收

设备分配时应考虑的因素 


静态分配和动态分配

  • 静态分配:进程运行前为其分配全部所需资源,运行结束后归还资源(破坏了“请求和保持”条件,不会发生死锁)
  • 动态分配:进程运行过程中动态申请设备资源

设备分配管理中的数据结构


设备分配的步骤

根据进程请求的物理设备名查找SDT(注:物理设备名是进程请求分配设备时提供的参数)

根据SDT找到DCT,若设备忙碌则将进程PCB挂到设备等待队列中,不忙碌则将设备分配给进程。

根据DCT找到COCT,若控制器忙碌则将进程PCB挂到控制器等待队列中,不忙碌则将控制器分配
给进程 

根据COCT找到CHCT,若通道忙碌则将进程PCB挂到通道等待队列中,不忙碌则将通道分配给进
程。


设备分配步骤的改进 


缓冲区管理 

什么是缓冲区? 有什么作用?


单缓冲

结论:采用单缓冲策略,处理一块数据平均耗时 Max(C, T)+M


双缓冲 

结论:采用双缓冲策略,处理一个数据块的平均耗时为 Max(T, C+M)


使用单/双缓冲在通信时的区别

显然,若两个相互通信的机器只设置单缓冲区,在任一时刻只能实现数据的单向传输。 


高速缓存与缓冲区对比

相同点

都介于高速设备和低速设备之间

不同
  • 存放数据

    高速缓存:存放的是低速设备上的某些数据的复制数据

    缓冲区:存放的是低速设备传递给高速设备的数据,这些数据在低速设备上不一定有备份,这些数据再从缓冲区传送到高速设备

  • 目的

    高速缓存∶高速缓存存放的是高速设备经常要访问的数据,如高速缓存中数据不在,高速设备就要访问低速设备

    高速设备和低速设备的通信都要经过缓冲区高速设备永远不会去直接访问低速设备


循环缓冲区

缓存池


磁盘管理 

磁盘的结构

磁盘、磁道、扇区 

如何在磁盘中读/写数据

        需要把“磁头”移动到想要读/写的扇区所在的磁道磁盘会转起来,让目标扇区从磁头下面划过,才能完成对扇区的读/写操作。

盘面、柱面

磁盘的物理地址

 磁盘的分类


磁盘调度算法

一次磁盘读/写操作需要的时间 

操作系统的磁盘调度算法会直接影响寻道时间 


先来先服务算法 (FCFS)


最短寻找时间优先 (SSTF)


扫描算法 (SCAN)


LOOK 调度算法


循环扫描算法 (CSCAN) 


C-LOOK 调度算法


磁盘的管理

磁盘初始化 

引导块 

坏块管理 

固态硬盘SSD

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1120703.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Cesium添加自己的专属Logo(2023.10.22)

Cesium添加专属Logo 2023.10.22 引言1、现有网站实例展示1.1 Cesium官方Logo1.2 SuperMap官方Logo1.3 Mars3D官方Logo1.4 Xt3d个人Logo1.5 Digital Visual官方Logo1.6 AirLook官方Logo 2、两种常见的实现思路2.1 思路1(静态或动态引入Div)2.1.1 静态Div&…

Swift 判断 A B 两个时间是不是同一天,A 是不是 B 的昨天

1. 今天要做这个效果(在时间旁边显示今天,昨天) 2. Preview 3. Code: // 添加 今天 昨天 func show_today_yesterday(d: Date Date()) -> String {let calendar Calendar.currentlet today: Date Date()if calendar.isDate(today, inS…

文具办公品经营小程序商城的作用是什么

在购买文具方面,线下文具品牌门店除了疫情冲击外,还有同行间的激烈竞争,消费者对品牌概念较为模糊,同质化产品严重,消费者选择度高,店铺流量稀少,线下经营成本变高。 如今很多消费者已经习惯于线…

DigiCert证书——银行官网的首选

在当今数字化时代,互联网成为了人们获取金融服务的主要途径之一。随着在线银行交易的增加,确保用户数据安全和建立信任成为银行官网的首要任务。因此,越来越多的银行官网选择DigiCert证书作为其网络安全解决方案。那么,为何DigiCe…

Rust之自动化测试(三): 测试组合

开发环境 Windows 10Rust 1.73.0 VS Code 1.83.1 项目工程 这里继续沿用上次工程rust-demo 测试组合 正如本章开始时提到的,测试是一个复杂的学科,不同的人使用不同的术语和组织。Rust社区根据两个主要类别来考虑测试:单元测试和集成测试。单元测试很…

【java爬虫】使用selenium获取某交易所公司半年报数据

引言 上市公司的财报数据一般都会进行公开,我们可以在某交易所的官方网站上查看这些数据,由于数据很多,如果只是手动收集的话可能会比较耗时耗力,我们可以采用爬虫的方法进行数据的获取。 本文就介绍采用selenium框架进行公司财…

服务器通过scp传送数据,提示验证失败的问题

场景提示如下 当使用scp传送数据时提示这个 分析: 目标服务器云盘被格式化过, 用之前的密钥校验新的系统时发现不匹配了,拒绝登录! 解决方法 需要把旧密钥换成新的密钥 先看源服务器已经有的密钥ssh-keygen -l -f ~/.ssh/known_hosts然后重新生成一下…

简道云出现问题及解决方法1

1、在制作仪表盘设计的时候没有统计表链接,点开统计表没有显示。 根据老师的手把手教导还是会出现错误,上网查询再加上多次看录播回放,私以为是不同网页版本的问题,包括一些应用的排版同样不一样。这里的解决办法是把刚才做的表盘…

MySQL binlog集市的项目小结

这是学习笔记的第 2478篇文章 MySQL binlog集市的事情我们做了有一段时间了,最开始的初衷是异常操作的数据恢复,主要的痛点是如果发生了业务误操作,需要紧急恢复数据的时候,通常这些误操作是对于字典配置数据的变更,而…

有哪些适用于 Windows 的PDF 阅读器?免费 PDF 阅读器清单

探索适用于 Windows 10 和 11 的最佳 PDF 阅读器 适用于 Windows 10 和 Windows 11 的最佳 PDF 阅读器让您可以在台式计算机上查看和共享文档。 最好的PDF 编辑器和免费的 PDF 编辑器配备了先进的工具,可以跨不同的操作系统工作。但是,当您只需要查看和…

Docker搭建Plex流媒体服务并播放自己本地视频

Docker搭建Plex流媒体服务 安装Docker创建存储配置文件的目录创建Plex容器配置Plex设置媒体库访问Plex 1 介绍 Plex是一个流媒体服务器,可以轻松地将你的媒体文件库(如电影、电视节目和音乐)通过网络流式传输到各种设备上。 Plex 是一套媒体…

信号量、互斥锁、计数信号量

大家好,我叫徐锦桐,个人博客地址为www.xujintong.com。平时记录一下学习计算机过程中获取的知识,还有日常折腾的经验,欢迎大家来访。 信号量(semaphores)一个多进程共享的非负整型全局变量。信号量常用于多进程的进程同步。 介绍 …

零基础学python:错误与异常

嗨喽,大家好呀~这里是爱看美女的茜茜呐 语法错误 异常:大多数的异常都不会被程序处理,都以错误信息的形式展现在这里 👇 👇 👇 更多精彩机密、教程,尽在下方,赶紧点击了解吧~ pyth…

【STM32】GPIO控制LED(寄存器版)

在开始之前记得先准备好环境: STM32F103核心板下载教程.pdf 林何/STM32F103C8 - 码云 - 开源中国 (gitee.com) 一、STM32的GPIO模块数据手册详解 每个GPIO端口对应16个引脚,例GPIOA(PA0~PA15)内核cpu就可以通过APB2总线对寄存器…

电路电子技术3 电位的计算受控源在电路分析中的作用

1.计算电压 思路:注意到这个串联电路,有两个电压源,所以我们首先可以将两个电压源串联等效为一个电压源。 即: 故可得答案选B. 2.计算点位 思路:题目说明了B点开路,所以没有流过电阻R的电流,…

光学配件简介

光学配件简介 延长管介绍 延长管,是加在镜头和相机之间的一根通心的环状管,但里面没有任何光学部件,也没有放大作用。它不会改变光圈值,但因为延长了镜头,光线会减弱。延长管可以使镜头的对焦距离缩短,也就…

Uniapp 酷炫钱包页面模板 直接引用

使用教程 直接引用Vue页面 即可 <template><view><TCqianbao></TCqianbao></view> </template> <script>import TCqianbao from /uni_modules/TC-qianbao/pages/index.vueexport default {components:{TCqianbao},} </script&…

【斗破年番】彩鳞送老公新挂,薰儿霸气回归,萧炎招揽古河,邀请美杜莎战魂殿

【侵权联系删除】【文/郑尔巴金】 斗破苍穹年番动画已经更新了&#xff0c;萧炎与美杜莎女王一起回娘家&#xff0c;并且也与小医仙制定了同盟计划&#xff0c;准备对金雁宗与慕兰谷斩草除根。从官方公布的第69集预告来看&#xff0c;慕兰三老与雁落天已经陨落&#xff0c;美杜…

Warning: [antd: Switch] `value` is not a valid prop, do you mean `checked`?

解决方案&#xff1a; <Form.Item label"更多设置" name"moreSetting" valuePropName"checked"><Switch onChange{handleMoreSetting} /></Form.Item> 参考链接&#xff1a; https://chat.xutongbao.top/

医药保健品经营小程序商城的作用是什么

互联网经济下&#xff0c;线上线下商家难以生存&#xff0c;自营平台成为各行业商家的选择&#xff0c;摆脱平台限制及线下门店地域的限制&#xff0c;多渠道线上获客引流转化营销、留存复购裂变等&#xff0c;更利于直接触达消费者&#xff0c;无其它商家夺流及坑位费、流量费…