位置: IT常识 - 正文

操作系统的设备管理(运行网络操作系统的设备)

编辑:rootadmin

推荐整理分享操作系统的设备管理(运行网络操作系统的设备),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:局域网中进行网络操作系统的设备,运行网络操作系统的设备,运行网络操作系统的设备,操作系统的设备管理具有什么功能,操作系统的设备管理对所有硬件的管理,操作系统的设备管理对所有硬件的要求,操作系统的设备管理对所有硬件的管理,操作系统的设备管理对所有硬件的管理,内容如对您有帮助,希望把文章链接给更多的朋友!

除了 CPU资源管理、内存管理、文件管理外,操作系统还有一个重要的功能,就是管理连接到计算机的所有输入输出设备(简称 I/O 设备),包括鼠标、键盘、显示器、打印机、硬盘、USB 设备等等。

如同将操作系统中的文件管理功能称为文件系统,我们习惯将操作系统中实现设备管理的部分功能称为 I/O 系统。

I/O 设备的分类

I/O 设备的分类标准有很多,表 1 为大家罗列了一些常见的分类标准。

表 1 I/O 设备的分类分类标准I/O 设备类别按使用特性分类分为存储型设备、输入型设备、输出型设备以及输入/输出型设备。

其中输入型设备指的是 CPU 从中读取数据的设备;输出型设备指的是接收数据的设备。按数据组织分类分为字符设备和块设备。

字符设备指的是以单个字符为单位传输数据的 I/O 设备,传输速率较低,例如交互式终端、打印机等;块设备指的是以数据块为单位传输数据的 I/O 设备,传输速率高,例如硬盘。按外部设备的从属关系分类分为系统设备和用户设备。

系统设备指的是安装操作系统时就已经登记在系统中的 I/O 设备;除系统设备外的,都属于用户设备。按资源的分配角度分类分为独占设备和共享设备。

独占设备指的是一段时间内只允许一个进程使用的设备;共享设备指的是一段时间内允许多个进程同时使用的设备。

当然,I/O 设备的分类标准还有很多,这里不再一一举例。

设备控制器

设备控制器又称适配器,是计算机中的一种硬件设备。设备控制器扮演着 CPU 和 I/O 设备之间的中介(中间人)的角色,因为 CPU 是无法直接控制 I/O 设备的,当运行的进程请求执行 I/O 操作时,CPU 需要将控制 I/O 操作的指令发送给设备控制器,由设备控制器控制相应的 I/O 设备完成操作。

因此,每个 I/O 设备都必须配备一个设备控制器,一个设备控制器可以控制多个 I/O 设备。

设备控制器具有如下几个功能:

接收并识别 CPU 发送来的指令;实现 CPU 与 I/O 设备之间的数据交换;设备控制器中设有状态寄存器,能够记录 I/O 设备是处于忙碌状态还是空闲状态;具备地址识别功能 ,能够根据 CPU 发送来的指令,准确控制某一个 I/O 设备去运行;为了解决 CPU 和 I/O 设备之间速度不匹配的问题,设备控制器中设有数据缓冲器;能够检测 CPU 所发送指令的正确性,确定无误后,设备控制器才控制相应的 I/O 设备完成操作;反之,如果发现指令有问题,设备控制器会报告给 CPU,CPU 会重新发送一份新的指令。I/O控制方式

所谓 I/O 控制方式,是指文件系统控制 I/O 设备工作的方式。

文件系统的整个发展历程,一直以“尽量减少 CPU 对 I/O 控制的干预,减少 I/O 操作对 CPU 执行效率的影响”为目标,先后设计了 4 种 I/O 控制方式,分别称为程序 I/O 控制方式、中断驱动 I/O 控制方式、DMA 方式和通道方式。

1) 程序I/O控制方式

程序 I/O 控制方式又称程序轮询方式,每一次 I/O 操作可以完成 1 个字符的读取或者写入。

操作系统的设备管理(运行网络操作系统的设备)

当进程请求 I/O 操作时,CPU 向设备控制器发送 I/O 指令,设备控制器根据指令启动相应的 I/O 设备,同时将设备状态设为忙碌状态(状态寄存器的值由 0 变为 1)。虽然执行的进程会因 I/O 操作转入等待状态,但进程调度程序并不会将 CPU 资源分配给其它进程。

执行 I/O 操作的过程中,CPU 会不断地检测设备控制器中记录的 I/O 设备状态是否发生改变,一旦变化(状态寄存器中的值由 1 变为 0),则表明 I/O 操作执行完毕(I/O 操作的处理结果会保存在设备控制器的数据寄存器中),CPU 会立即从设备控制器中将处理结果取出,并存储在指定的内存空间中。如此,就完成了 1 个字符的 I/O 操作。

显然,此方式最大的不足是,CPU 在整个 I/O 操作过程中一直处于检测状态,CPU 资源没有得到充分利用。

2) 中断驱动 I/O 控制方式

中断驱动 I/O 控制方式对程序 I/O 控制方式做了改进。

当进程请求 I/O 操作时,CPU 向设备控制器发送 I/O 指令,随后进程调度程序将 CPU 资源分配给其他进程使用,整个 I/O 操作由设备控制器负责完成。

当 I/O 操作完成后,设备控制器会向 CPU 发送一个中断信号,CPU 会检测 I/O 操作的处理结果,确认没有问题之后,会读取结果并将其存储到指定位置。由此,就完成了 1 个字符的读写操作。此方式中,进程调度程序及时将 CPU 分配给其它进程使用,提高了 CPU 资源的利用率。但问题在于,每个字符的 I/O 操作都需要向 CPU 发送中断信号,频繁的中断会影响 CPU 的执行效率。

3) DMA I/O控制方式

DMA(Direct Memory Access) I/O 控制方式又称直接内存访问 I/O 控制方式,进一步减少了输入输出操作对 CPU 的干扰。

此方式实现 I/O 控制的核心思想是:新增一个 DMA 控制器,由它代替 CPU 控制内存和 I/O 设备之间的数据交换过程。也就是说,当进程发出 I/O 操作的请求后,CPU 会初始化 DMA 控制器(例如数据的存储位置、数据量等等),同时向设备控制器发送 I/O 指令,之后 CPU 资源由进程调度程序分配给其它进程。

整个 I/O 操作过程中,DMA 控制器将内存中存储的数据不断地传输给 I/O 设备(完成写操作),或者将 I/O 设备处理后的结果不断地传输到内存(完成读操作)。整个 I/O 操作完成之后,DMA 控制器会发送给 CPU 一个中断信号,通知 I/O 操作完成。

DMA 之所以能控制内存和 I/O 设备之间的数据传输,是因为 DMA 可以窃取 CPU 系统总线的使用权,从而代替 CPU 管理数据的存入和取出。甚至于,DMA 可以强迫 CPU 暂停相关工作,从而强行使用系统总线控制数据的传输。

整个 DMA I/O 控制方式的实现,CPU 只需要对 I/O 操作的开始和结束阶段进行干预,数据传输过程全部都由 DMA 负责控制。

相比前两种 I/O 控制方式,DMA 方式可以实现对一个内存块中数据的 I/O 操作,而不再是一个字符一个字符的处理,大大减少了中断 CPU 的次数,提高了 CPU 资源的利用率。

4) I/O通道控制方式

虽然 DMA 方式已经显著提高了 CPU 的利用率,但面对输入输出多个内存块数据的时候,CPU 的中断仍然比较频繁。这种情况下,可以选择 I/O 通道控制方式。

讲解 I/O 通道控制方式之前,我们先了解什么是 I/O 通道。所谓 I/O 通道,它是独立于 CPU、专门控制 I/O 操作的处理器,它可以执行 I/O 控制程序(又称通道程序),一个通道程序可以处理多个内存块数据的 I/O 操作。

通道程序本质也是程序,是一些指令的集合,通道程序通常由一些读指令、写指令以及控制转移指令构成。

一个 I/O 通道可以连接多个设备控制器,一个设备控制器可以连接多个 I/O 设备,I/O 通道能够代替 CPU 实现对 I/O 设备的统一管理。

I/O 通道控制方式的实现流程是:

当进程发出 I/O 请求后,CPU 会根据请求生成相应的通道程序(存储到内存中),然后向通道发送启动 I/O 操作的指令;通道接收到指令后,会去内存中取出通道程序,同时向 CPU 发送信号,令 CPU 执行其他工作。之后,通道开始执行通道程序,向设备控制器发送 I/O 指令,启动 I/O 设备完成相应的工作。当通道完成最后一条指令后,会向 CPU 发送中断信号,通知 CPU 完成 I/O 操作,同时通道停止运行。

以上 4 种 I/O 控制方式中,程序 I/O 控制方式的 CPU 需要等待 I/O 操作完成后才能继续执行其它任务,这样的 I/O 控制方式称为同步 I/O 控制方式;其它 3 种 I/O 控制方式中,CPU 可以与 I/O 操作并行执行,它们统称为异步 I/O 控制方式。

本文链接地址:https://www.jiuchutong.com/zhishi/276376.html 转载请保留说明!

上一篇:WmiPrvSE.exe是什么进程?WmiPrvSE.exe会是病毒吗?(wcu.exe是什么)

下一篇:谈谈CentOS发布内核安全补丁:修复Meltdown和Spectre漏洞(centos停止发布)

  • 红米note11怎么设置定时开关机(红米note11怎么设置来电铃声)

    红米note11怎么设置定时开关机(红米note11怎么设置来电铃声)

  • mac任务管理器怎么开(mac 任务管理)

    mac任务管理器怎么开(mac 任务管理)

  • 淘宝怎么换优酷会员(淘宝怎么换优酷会员账号)

    淘宝怎么换优酷会员(淘宝怎么换优酷会员账号)

  • 拼多多系统繁忙请稍后再试解决(拼多多系统繁忙提现)

    拼多多系统繁忙请稍后再试解决(拼多多系统繁忙提现)

  • 服务器有辐射吗(监控服务器有辐射吗)

    服务器有辐射吗(监控服务器有辐射吗)

  • 苹果有手写功能吗(苹果手机怎么设置手写功能)

    苹果有手写功能吗(苹果手机怎么设置手写功能)

  • 荣耀30pro有没有红外(荣耀30pro有没有海拔)

    荣耀30pro有没有红外(荣耀30pro有没有海拔)

  • 小米手机进水了声音变了怎么办(小米手机进水了修一下要多少钱)

    小米手机进水了声音变了怎么办(小米手机进水了修一下要多少钱)

  • vsco是什么(vsco是什么风格)

    vsco是什么(vsco是什么风格)

  • 11处理器是多少(iphone11处理器是多少)

    11处理器是多少(iphone11处理器是多少)

  • 小米应用商店闪退解决方法(小米应用商店闪退打不开了)

    小米应用商店闪退解决方法(小米应用商店闪退打不开了)

  • qq会员可以同时几个人用

    qq会员可以同时几个人用

  • 腾讯云是腾讯公司的吗(腾讯云是公有云吗)

    腾讯云是腾讯公司的吗(腾讯云是公有云吗)

  • dub一al00a什么型号(dub-al00什么型号)

    dub一al00a什么型号(dub-al00什么型号)

  • 手机软件升级后怎么还原(手机软件升级后越来越卡)

    手机软件升级后怎么还原(手机软件升级后越来越卡)

  • 怎么用ios唤醒小爱同学(怎么用ios唤醒小布助手)

    怎么用ios唤醒小爱同学(怎么用ios唤醒小布助手)

  • 荣耀3手环怎么调时间(荣耀3手环怎么连接手机蓝牙)

    荣耀3手环怎么调时间(荣耀3手环怎么连接手机蓝牙)

  • 苹果手机怎么填表格(苹果手机怎么填报高考志愿)

    苹果手机怎么填表格(苹果手机怎么填报高考志愿)

  • 荣耀9x有没有指纹解锁(荣耀9x有没有指纹锁)

    荣耀9x有没有指纹解锁(荣耀9x有没有指纹锁)

  • 1050ti和1050差多少(1050ti对比1050差多少)

    1050ti和1050差多少(1050ti对比1050差多少)

  • 苹果12系统耗电吗(苹果系统耗电排行)

    苹果12系统耗电吗(苹果系统耗电排行)

  • 小米旗下机器人叫什么(小米智能机器人是谁)

    小米旗下机器人叫什么(小米智能机器人是谁)

  • iphone x 分屏多任务(苹果x能分屏两个任务)

    iphone x 分屏多任务(苹果x能分屏两个任务)

  • iphonex电池多少毫安的(iphonex电池多少钱一个)

    iphonex电池多少毫安的(iphonex电池多少钱一个)

  • 飞行模式下微信能聊吗(飞行模式下微信运动计步吗)

    飞行模式下微信能聊吗(飞行模式下微信运动计步吗)

  • Web前端 | HTML嵌入JS代码的三种方式(嵌入html)

    Web前端 | HTML嵌入JS代码的三种方式(嵌入html)

  • 公司给员工租的宿舍怎么交税
  • 小规模免税收入账务处理
  • 服务费的增值税怎么算
  • 可供出售金融资产计入什么科目
  • 委托加工环节原材料收消费税吗
  • 贷款损失准备金怎么计算
  • 员工食堂报销的费用怎么做分录
  • 存货的计价方法有哪些,具体内容是什么
  • 无法支付的应付款怎么处理
  • 个人承包经营所得是什么意思
  • 已认证的红字发票怎么退
  • 分包管理费取费标准
  • 现金日记账年结图片
  • 企业认购普通股100万股作为交易性金融资产管理
  • 现金流量表借款还了流入和流出可以抵消吗
  • 公司去大厅交社保要带什么证件
  • 技术转让所得一百万交多少税
  • 个税申报表怎么打印
  • 社保行业费率是什么
  • 个人买卖二手房增值税
  • 出售股权收入会计分录
  • 政府补贴的银行卡注销了会怎么样
  • 过桥资金法律规定
  • 样品寄送时运费支付的对策
  • 承兑兑现违法吗
  • 发出商品与库存商品的区别
  • 合并报表抵消分录未分配利润怎么算
  • echarts3d地图
  • codeigniter 教程
  • 政府划入资产会计处理
  • 施工行业企业
  • 以土地投资溢价的公司
  • 公司偷税漏税有哪些表现形式
  • 股权转让有溢价分录怎么写
  • php遍历对象
  • php遍历结果集
  • 由浅入深英语怎么说
  • thinkphp分表查询
  • 前端不使用明文密码方案
  • php 循环
  • http上传错误
  • 学电脑的好网站
  • mongo删除数据库命令
  • 最好用的刷题笔
  • 跨年取得的发票金额大于暂估金额
  • 没有发票的费用支出怎么入账
  • 工地会计内账
  • 货物或应税劳务名称怎么填
  • 扣税8%
  • 保险合同包含什么
  • 简易征收应纳税额
  • 收到成本发票如何记账
  • 房屋租赁费怎么记账
  • 营改增后众筹融资业务的会计处理分析?
  • 汇票和本票的区别是
  • 用于研发购买的材料进项税额
  • 红冲上一年度销售收入
  • 固定资产计提折旧的方法
  • macbookpro mysql
  • openstack 创建云主机,计算节点磁盘不足
  • ubuntu如何截图快捷键
  • rsync如何同步隐藏文件和排除文件?rsync同步隐藏文件和排除文件的方法
  • 如何调整bios
  • win10苹果版
  • ubuntu 11
  • linux route -n命令结果详解
  • win8系统怎么激活
  • 华硕fx80g装系统
  • 四步清理手机垃圾的方法
  • xp远程连接win7
  • fedora系统安装软件
  • win7系统如何屏幕放满屏幕
  • win7怎么更改系统字体大小
  • 安装运行windows
  • Node.js中的全局对象有
  • selenium py
  • awk范围筛选
  • 深入php面向对象、模式与实践第5版 电子书
  • 科级干部试用期一年转正流程
  • 一般纳税人资格是什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设