前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >spooling技术介绍

spooling技术介绍

作者头像
全栈程序员站长
发布2022-11-03 15:18:25
1.6K0
发布2022-11-03 15:18:25
举报
文章被收录于专栏:全栈程序员必看
spooling技术介绍
spooling技术介绍

SPOOLing(Simultaneous Peripheral Operation On-Line)技术,即外部设备联机并行操作,是为实现低速输入输出设备与高速的主机之间的高效率数据交换而设计的。通常称为“假脱机技术”,又称为排队转储技术。

  具体来说,SPOOLing技术在输入输出之间增加了“输入井”和“输出井”的排队转储环节,以消除用户的“联机”等待时间。而所谓“输入井”和“输出井”则是在高速辅存(外存)中开辟的两个固定的转储区。在系统输入模块收到作业输入请求信号后,“输入管理模块”中的读过程负责将信息从输入装置中通过“通道”读入内存中的缓冲区,当缓冲区满时,则由写过程将信息从缓冲区写到外存的输入井中,读过程和写过程反复循环,直到一个作业输入完毕。当读过程读到一个硬件结束标志之后,系统再次驱动写过程把最后一批信息写入输入井并调用中断处理程序结束该次输入。然后,系统为该作业建立作业控制块,从而使输入井中的作业进入作业等待队列,等待作业调度程序选中后进入内存运行。系统在管理输入井过程中可以“不断”读入输入的作业,直到输入结束或输入井满而暂停。   对于其输出过程,可以以打印机为例来进行说明。当有进程要求对它打印输出时,SPOOLing系统并不是将这台打印机直接分配给进程,而是在输出井中为其分配一块存储空间,进程的输出数据以文件形式存在。各进程的数据输出文件形成了一个输出队列,由“输出管理模块”控制这台打印机进程,依次将队列中的输出文件实际打印输出。   从打印机的例子中,我们可以看到,在SPOOLing技术的支持下,系统实际上并没有为任何进程分配设备,而只是在输入井和输出井中为每个进程分配了一块存储区并建立了一张I/O请求表。这样,便把独占设备改造为共享设备,因此SPOOLing技术也是一种虚拟设备技术。   最后,通过总结,可知SPOOLing技术具有如下三个特点:   (1)提高了I/O速度。从对低速I/O设备进行的I/O操作变为对输入井或输出井的操作,如同脱机操作一样,提高了I/O速度,缓和了CPU与低速I/O设备速度不匹配的矛盾。   (2)设备并没有分配给任何进程。在输入井或输出井中,分配给进程的是一存储区和建立一张I/O请求表。   (3)实现了虚拟设备功能。多个进程同时使用一个独享设备,而对每一进程而言,都认为自己独占这一设备,从而实现了设备的虚拟分配。不过,该设备是逻辑上的设备。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/201116.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月22日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云硬盘
云硬盘(Cloud Block Storage,CBS)为您提供用于 CVM 的持久性数据块级存储服务。云硬盘中的数据自动地在可用区内以多副本冗余方式存储,避免数据的单点故障风险,提供高达99.9999999%的数据可靠性。同时提供多种类型及规格,满足稳定低延迟的存储性能要求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档