05设备管理

  • 5.1 I/O控制方式
  • 5.2 I/O层次结构
  • 5.3 SPOOLing技术
  • 5.4 缓冲区

5.1 I/O控制方式

1.程序直接控制方式
2.中断驱动方式
3.DMA方式:

DMA控制方式的顺序:

目的:更大程度的解放CPU

1.当cpu想要读数据时,cpu把任务交给DMA(初始化相关寄存器)
2.DMA控制数据传输
3.DMA控制器发出中断请求
4.终端服务程序

5.2 I/O层次结构

5.3 SPOOLing技术

1.SPOOLing技术的作用
将独占设备改造为共享设备

2.如何将独占设备改造为共享设备:
SPOOLing存储区中为其分配一块存储空间,进程以文件的形式输出数据。
各进程的数据输出文件形成了一个输出队列,由输出SPOOLing系统控制这台打印机进程,依次将队列中的输出文件实际打印输出。
在SPOOLing系统中,实际上并没有为任何进程分配,而只是在输入井和输出井中,为进程分配一存储区和建立一章I/O请求表。这样,便把独占设备改造为共享设备。

3.如何以空间换时间
cpu和打印机的速度不匹配,cpu速度快,打印机速度慢,而磁盘是一个高速设备。因此,
cpu要打印的数据可以先输出到磁盘的输出井中,然后做其他的事情。

5.4 缓冲区

从磁盘把数据输入缓冲区的时间为T
操作系统将缓冲区的数据传送到用户区的时间为M
cpu对这一块数据处理的时间为C

1.单缓存
max(C,T)+M

2.双缓存
max(C+M,T)

千万不要忘记cpu处理最后一个数据块的时间

操作系统--05输入输出相关推荐

  1. 操作系统之输入输出(I/O)

    操作系统之输入输出 I/O设备 块设备 块设备的缺点 字符设备 设备控制器 内存映射I/O 内存映射I/O的优点和缺点 直接内存访问 DMA工作原理 重温中断 精确中断和不精确中断 I/O软件原理中 ...

  2. [Python基础05]输入输出选择和循环

    文章目录 输入输出 1. 数据输出 2.数据输入 3. python中的输入输出 4.扩展:格式化输出 选择和循环 1.程序结构 1.2. 选择结构 2. 循环结构 2.1. for..in循环结构 ...

  3. 【操作系统】输入输出系统(上)-思维导图

    http://www.liuchuo.net/archives/1733 由于图片上传大小限制,会不清晰,直接放原链接吧~

  4. 【操作系统】输入输出系统(中)-思维导图

    http://www.liuchuo.net/archives/1744 由于图片上传大小限制,会不清晰,直接放原链接吧~

  5. 【操作系统】输入输出系统(下)-思维导图

    http://www.liuchuo.net/archives/1748 由于图片上传大小限制,会不清晰,直接放原链接吧~

  6. 【操作系统】输入输出系统(下下)-思维导图0.0

    http://www.liuchuo.net/archives/1751 由于图片上传大小限制,会不清晰,直接放原链接吧~

  7. python应用领域有开发操作系统吗_python 全栈开发,Day37(操作系统的发展史)

    昨日内容回顾: # C/S和B/S架构 # osi五层模型 # 应用层 # 自定义协议(struct) _ 解决黏包 # 验证客户端合法性 _ hmac os.urandom # 解决TCP协议的se ...

  8. 【自制操作系统06】终于开始用 C 语言了,第一行内核代码!

    一.整理下到目前为止的流程图 写到这,终于才把一些苦力活都干完了,也终于到了我们的内核代码部分,也终于开始第一次用 c 语言写代码了!为了这个阶段性的胜利,以及更好地进入内核部分,下图贴一张到目前为止 ...

  9. Linux 操作系统 10 - 软件安装管理

    Hello~大家好!我是今越,本文内容来源于平时的学习笔记,希望对大家有所帮助.鉴于个人水平有限,文中难免会有不足之处,欢迎留言评论.需要转载的朋友,请注明出处.感谢点赞和收藏.一起加油!:) 往期文 ...

最新文章

  1. SVN版本控制系统使用
  2. LL(1)预测分析表的构造
  3. matlab土体变形实例,ansys案例——20例ansys经典实例】.pdf
  4. 《Imperfect C++中文版》——第2章 对象生命期
  5. shell 练习题01:列出使用最多的命令是哪些并且将这些命令输入到chy1.txt中
  6. 基于MATLAB的小波收缩法信号去噪
  7. 什么是计算机独立显卡,独立显卡是什么
  8. ubuntu nano的使用 nano的关闭快捷键
  9. 玩转Linux必备知识(一)
  10. 一文讲清如何正确选择图表,学会后再也不会用错图表
  11. 多线程(一):初识多线程
  12. 蓝桥杯 ALGO-142 算法训练 P1103
  13. java spring boot 项目 热加载 有利于快速开发
  14. 计算机拓展名cad,CAD用到的各种文件格式有哪些
  15. 简单欧拉公式c语言算法,算法之_欧拉公式
  16. Android 支付宝支付功能实现
  17. (HYSBZ - 4198)荷马史诗
  18. 09组团队项目-Alpha冲刺-4/6
  19. 1051 复数乘法 (C++)
  20. java如何将mp4写入光盘_iOS - 读取/写入mp4视频的XMP元数据

热门文章

  1. Excel表格如何筛选出重复的数据?
  2. css位置-moz-兼容,兼容不同浏览器的CSS前缀-webkit-,-ms-,-moz-,-o-
  3. layui框架轮播图实现轮播图片自适应视口缩放
  4. 成功解决 -- flink.shaded.guava18.NumberFormatException: Not a version
  5. Abeam德硕深耕中国市场,赋能数字经济高质量发展
  6. android手机api等级_什么是Android API 级别?
  7. 蓝桥杯 算法提高 矩阵乘方
  8. Mac 查找软件安装位置
  9. 微信抢抢票服务器,已有多人被坑!抢票“加速包”慎用!
  10. 5G消息应用号推荐|官方种草清单第六期