多道程序设计的概念

多道程序设计是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制之下,相互穿插的运行。 两个或两个以上程序在计算机系统中同处于开始或结束之间的状态。这就称为多道程序技术运行的特征:多道、宏观上并行、微观上串行。

为什么说多道程序概念得到了中断和通道技术的支持?

采用多道程序设计减少了CPU时间的浪费,增加了系统吞吐量,提高了系统的效率。为什么引入多道程序呢?说白了就是为了提高系统的吞吐量和效率。 在多道程序系统中,能做到单处理机多程序并发,但是,当存在I/O任务时,CPU要去处理I/O任务,此时就没空来处理多道程序的执行了,所以就要想办法使I/O的处理尽可能少影响到CPU(也就是说让别的东西来处理I/O,而让CPU专心处理多程序并发),此时CPU处理多道程序可以与I/O操作并发,即通过CPU操作与外设传输在时间上的重叠减少CPU时间的浪费,并提高了系统的效率。实现CPU操作与外设传输在时间上的重叠必须有中断和通道技术支持,其原因如下:
(1) 通道是一种控制一台或多台外部设备的硬件机构,它一旦被启动就独立与CPU运行,因而做到了输入输出操作与CPU并行工作。但早期CPU与通道的联络方法是由CPU向通道发出询问指令来了解通道工作是否完成(中间过程还是需要CPU参与)。若未完成,则主机就循环询问直到通道工作结束为止。因此,这种询问方式是无法真正做到CPU与I/O设备并行工作的。
(2) 在硬件上引入了中断技术。所谓中断,就是在输入输出结束时,或硬件发生某种故障时,由相应硬件(即中断机构)向CPU发出信号(解决了上面的问题:通道工作完成时由中断向CPU发出信号,而不需要CPU不断发信号给通道去询问工作是否完成)。这时CPU立即停下手头的工作而转向处理中断请求,道处理完中断后再继续原来手头的工作。 因此,通道技术和中断技术结合起来就可实现CPU与I/O设备并行工作,即CPU启动通道传输数据后便去执行其他程序的计算工作,而通道则进行输入输出操作;当通道工作结束时,再通过中断机构向CPU发出中断请求,CPU则暂停正在执行的操作,对出现的中断进行处理,处理完后则继续原来的工作。这样,就真正做到了CPU与I/O设备并行工作。此时,多道程序的概念才变为现实。

总而言之,通道 代替了CPU管理I/O的工作,中断 会在I/O工作完成时通知CPU。

参考资料:
什么是多道程序设计?多道程序设计的特点是什么?
为什么说直到出现中断和通道技术后,多道程序概念才变为有用的?

为什么说多道程序概念得到了中断和通道技术的支持?相关推荐

  1. 2022年推荐6G网络未来前景报告白皮书应用场景与分析概念及愿景展望关键技术(共55份,256M)

    2022年推荐6G网络未来前景报告白皮书应用场景与分析概念及愿景展望关键技术(共55份,256M). 6G必然是未来发展的趋势,随着未来元宇宙.VR技术的发展6G必然是大势所趋,为此整理了55份6G方 ...

  2. 小程序开发:概念、特点、原理及技术架构解析

    前言 本文将深入探讨小程序开发的概念.特点.原理和技术架构.通过对小程序的全面解析,帮助大家更好地理解小程序的本质和优势. 文章目录 前言 一.小程序的概念 二.小程序的特点和优势 三.基本原理 四. ...

  3. Linux--缺页中断和交换技术

    1.请求调页中断: 进程线性地址空间里的页面不必常驻内存,例如进程的分配请求被理解满足,空间仅仅保留vm_area_struct的空间,页面可能被交换到后援存储器,或者写一个只读页面(COW).Lin ...

  4. VRAR概念的定义和要素以及技术定义和应用

    1.概念 一.三个概念的定义和要素. 1.VR,Virtual Reality,虚拟现实 是一种通过计算机模拟真实感的图像,声音和其他感觉,从而复制出一个真实或者假想的场景,并且让人觉得身处这个场景之 ...

  5. 设计模式之工厂方法模式、抽象工厂模式的概念和实现及使用“反射技术+读取配置文件”的方法对工厂模式进行改进(软件工程综合实践课程第三周个人作业)

    文章目录 一.实验目的 二.知识总结 1.工厂方法模式简介 2.抽象工厂模式简介 3.工厂模式小结 4.利用"反射技术+读取配置文件"的方法改进程序 三.实验内容 1. 工厂模式实 ...

  6. 开放环境下的群智决策:概念、挑战及引领性技术

    摘要 开放环境下的群智决策是一种群体参与.人机交互.大数据驱动的新型决策模式,致力于借助开放的互联网环境实现复杂问题求解和智能决策.然而,互联网具有高度开放.复杂交互.行为涌现的特性,使得基于互联网的 ...

  7. 扩频时钟(SSC)概念以及Lattice FPGA对扩频时钟的支持

    由于FCC.IEC等规定电子产品的EMI辐射不能超出一定的标准.因此电路设计者需要从多个角度来思考如何降低系统的EMI辐射,如进行合理的PCB布线.滤波.屏蔽等.由于信号的辐射主要是由于信号的能量过于 ...

  8. 小米的隔空充电技术或许是概念产品,需要跨越的技术难点太多

    近日小米创始人兼董事长雷军的隔空充电技术被炒热,其实这种技术早已在国外传出,不过由于技术难点太多,一直都没有变成现实,小米能将它变成现实么? 小米提出的隔空充电技术其实在国外已有许多的理论,不过由于种 ...

  9. java hook 和反射_反射基本概念与Class(四):Hook技术动态编程

    背景介绍 很多时候系统处于安全考虑,将很多东西对外隐藏,而有时我们偏偏又不得不去使用这些隐藏的东西.甚至,我们希望向系统中注入一些自己的代码,以提高程序的灵活性.刚好有这么一种特殊的回调模式,Hook ...

最新文章

  1. 以太坊开发实战:通过truffle-contract与智能合约交互
  2. IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0 实际解决方案
  3. Android Bitmap和Canvas学习笔记
  4. IOS选中按钮状态的记录
  5. mex 1 hello,world
  6. excel合并多个工作表_多个Excel工作表合并到一个工作簿
  7. Android系统信息获取 之十四:获取WIFI热点相关信息
  8. 总体和样本、统计量和抽样分布
  9. regexp函数mysql_mysql中regexp_like()函数的例子解析
  10. 宽凳公司关于无人驾驶高精地图的看法(2018.8)
  11. Kafka 常用命令
  12. 树莓派ONVIF推流做网络摄像头
  13. BNN-PYNQ安装
  14. 【摘抄】领导力21法则-约翰·C·马克斯韦尔
  15. 实时获取SDN网络拓扑中交换机流表项的思路
  16. CSS中常用的几种选择器是哪几种呢?
  17. draco安装与测试
  18. MySQL之建表时[Err] 1050 - Table ‘users‘ already exists异常解决方法
  19. pandas中的.astype()使用规范问题——以.astype(int)的一种str类型数据转int类型数据报错为例
  20. 数据库可视化查询工具

热门文章

  1. hdu 5497 Inversion(树状数组)
  2. hdu 5273(递推)
  3. NYOJ 139 我排第几个?
  4. NYOJ 660 逃离地球
  5. 代码审计之CVE-2018-7600-Drupal远程代码执行漏洞-Render API
  6. 频繁项集挖掘之Aprior和FPGrowth算法
  7. Hive Sql 时间格式化处理
  8. Github注册过程以及对管理软件的了解
  9. To-do-List
  10. 2008秋季-计算机软件基础-0917课堂用例(2)