I/O设备管理是操作系统设计中最凌乱也最具挑战性的部分。由于它包含了很多领域的不同设备以及与设备相关的应用程序,因此很难有一个通用且一致的设计方案。所以在理解设备管理之前,应该先了解具体的I/O设备类型。

计算机系统中的I/O设备按使用特性可分为以下类型:

1) 人机交互类外部设备:用于同计算机用户之间交互的设备,如打印机、显示器、鼠标、键盘等。这类设备数据交换速度相对较慢,通常是以字节为单位进行数据交换。

2) 存储设备:用于存储程序和数据的设备,如磁盘、磁带、光盘等。这类设备用于数据交换,速度较快,通常以多字节组成的块为单位进行数据交换。

3) 网络通信设备:用于与远程设备通信的设备,如各种网络接口、调制解调器等。其速度介于前两类设备之间。网络通信设备在使用和管理上与前两类设备也有很大不同。

除了上面最常见的分类方法,I/O设备还可以按以下方法分类:

1) 按传输速率分类:

  • 低速设备:传输速率仅为每秒几个到数百个字节的一类设备,如键盘、鼠标等。
  • 中速设备:传输速率在每秒数千个字节至数万个字节的一类设备,如行式打印机、 激光打印机等。
  • 高速设备:传输速率在数百个千字节至千兆字节的一类设备,如磁带机、磁盘机、 光盘机等。

2) 按信息交换的单位分类:

  • 块设备:由于信息的存取总是以数据块为单位,所以存储信息的设备称为块设备。它属于有结构设备,如磁盘等。磁盘设备的基本特征是传输速率较高,以及可寻址,即对它可随机地读/写任一块。
  • 字符设备:用于数据输入/输出的设备为字符设备,因为其传输的基本单位是字符。它属于无结构类型,如交互式终端机、打印机等。它们的基本特征是传输速率低、不可寻址,并且在输入/输出时常釆用中断驱动方式。

《操作系统》— I/O设备及其分类相关推荐

  1. 【操作系统】—操作系统的发展与分类

    [操作系统]-操作系统的发展与分类 本章的思维导图如下 一.手工操作阶段 手工操作阶段的主要缺点:用户独占全机.人机速度矛盾导致资源利用率很低 二.批处理阶段-单道批处理系统 引入脱机输入/输出技术( ...

  2. 电力设备状态检修信息管理系统--开篇 电力设备检修分类【文摘】

    电力设备检修分类:故障检修.计划检修.状态检修. 早期的检修方式为故障检修,也称故障后检修,其主要是对功能失效的设备或设备部件进行维护.修理或更换,检修工作在故障发生后才进行.由于故障的不可预期性,设 ...

  3. 【科普】关于操作系统(桌面操作系统/服务器操作系统/嵌入式/移动设备操作系统)基础概念

    没有安装操作系统的计算机,称为"裸机". 操作系统主要包括以下四个: 1>桌面操作系统 2>服务器操作系统 3>嵌入式操作系统 4>移动设备操作系统 1&g ...

  4. 设备驱动分类、设备号、字符设备

    一.设备驱动分类 设备驱动分为三大类:字符设备.块设备.网络设备 1.字符设备 该设备对数据的处理按照字节流的形式进行的,支持顺序访问(是有时间的概念),也可以支持随机访问 典型的字符设备:串口.键盘 ...

  5. 操作系统之Linux设备分类,字符设备与块设备的区别

    Linux按照信息组织特征将设备分为三类,分别是 字符设备:以字符为单位发送或接收一个字符流,而不考虑任何块结构.字符设备是不可寻址的,也没有寻道操作.例如打印机,网络接口,鼠标. 块设备:把信息存储 ...

  6. 操作系统中文件系统-文件的分类

    一.文件的概念 1. 文件(file) (1) 文件是软件机构,软件资源的管理方式: (2) 具有符号名的一组相关元素的有序序列,是一段程序或数据的集合: (3) 一组赋名的相关联字符流的集合,或者是 ...

  7. 冷月手撕408之操作系统(3)-操作系统的发展及分类

    操作系统的发展及分类主要是介绍了操作系统从诞生到现在的发展,重点掌握批处理阶段和分时操作系统. 主要的重点冷月做出了标识,知识点如下图(pdf版或xmind源文件请关注公众号:学长冷月,回复操作系统) ...

  8. 【操作系统】IO设备

    第五章 IO设备 文章目录 第五章 IO设备 I/O设备的基本概念和分类 I/O控制器 I/O软件层次结构 I/O核心子系统 假脱机技术(SPOOLing技术) 设备的分配与回收 缓冲区管理 I/O设 ...

  9. 使用userAgent检测内核、平台、Windows 操作系统、移动设备..

    使用代码来自JS高程设计第9章 客户端检测方式: 能力检测:在编写代码之前先检测特定浏览器的能力.例如,脚本在调用某个函数之前,可能要先检测该函数是否存在.这种检测方法将开发人员从考虑具体的浏览器类型 ...

最新文章

  1. Python大佬 | 菜鸟进阶必备的九大技能!
  2. evnetlet hub
  3. 使用EditPlus打造一个Python IDE
  4. python显示1000以内的斐波拉契数列_python实现斐波那契数列
  5. FIR调用DSP48E_05
  6. Qt resizeEvent 控件居中设置
  7. 单个对象和多个对象在内存中的结构图
  8. Deno 冲上榜首,Vue.js 首次屈居第二,JavaScript 2020 年度“新起之秀”都有谁?
  9. C# Windows 窗体的.Net 框架绘图技术
  10. Ovi商店开发者注册发布指南
  11. 小米4刷魅族系统后无服务器,小米4线刷魅族Flyme OS系统的教程_小米4 Flyme OS刷机包...
  12. 菜鸟Python实战-05爬虫之爬取视频
  13. 传输层常见的协议及端口
  14. gcf,gca,gco的区别
  15. 最新消息:原谷歌中国副院长刘骏任职人民搜索首席科学家
  16. 【非同局域网】vue调取本地后台服务解决方法
  17. ES pinyin 插件 拼音搜索 原理 match_phase
  18. 浅浅总结一下HTML吧
  19. 【创建一个网页,实现猜数字游戏】
  20. Java web+MySQL编写简易候选人投票(完整代码)

热门文章

  1. 微服务之间的服务治理 方案
  2. 免root安卓11也可以用的闪照获取软件
  3. 基于 mykernel 实现具有进程切换的基本内核
  4. oracle透明网关访问sqlserver_汽车之家从 SQL Server 到 TiDB 的异构变迁
  5. PMP考下来需要多少钱?你知道吗?
  6. ERP实施之7步方法
  7. 云计算行业的前景如何?
  8. Unity3D之MeleeWeaponTrail武器轨迹插件的使用
  9. OUTLOOK邮件导入到thunderbird
  10. java梯形法的递推化_计算方法实验指导书(2011[1].7.19)