如何理解SPOOling(假脱机)技术

如何理解spooling技术?

只需要理解——

① 为什么有个“假”字?

② 假脱机技术的应用对象是?

一、概念引入

经过查阅相关资料,SPOOling的全称是:Simultaneous Peripheral Operations On-Line,直译一下就是“即时同步外设操作”,从名称推测,SPOOling技术主要是实现“即时”和“同步”,而且是基于“外设“。其较为完整的定义是:
SPOOling技术是一种用于提高计算机系统性能和效率的数据处理技术。它通过将输入和输出的数据暂存到磁盘或其他存储设备中,然后按照一定的顺序进行处理,从而实现了数据的高效管理和处理。

从概念表达可以看出,基本环节有三个:

① 获取数据;

② 将数据暂存在存储设备中;

③ 执行/处理任务;

可以想到,②中暂存的数据、③中要执行的任务一定是有选择性的,不然无法实现“数据的高效管理和处理”。

二、原理

在了解假脱机技术时,自然而然了解到了脱机技术和联机处理,对比来看:

脱机处理时,外部设备数据先存缓冲区,等缓冲区满或时间到再处理。输出时,结果先放缓冲区再慢慢输出,主机同时处理其他任务。输入数据需验证合法性时,用联机处理;若是从网络或磁盘读数据,可考虑脱机处理,因这些数据可不校验直接再加工。也就是老师上课举的例子:
    人——> 纸带机——> 外围控制机——>磁带机——>主机——>磁带机——>外围控制机——>纸带机——>人

与脱机技术相比,假脱机SPOOling技术的输入/输出不直接送往输入/输出设备或计算机,而是先送到外存储器(前面提到的“外设“)。将假脱机技术的原理概述如下:
1. 输入井和输出井:在磁盘上开辟出两个存储区域:“输入井”和“输出井”。

  • “输入井”模拟脱机输入时的磁带,用于收容I/O设备输入的数据。
  • “输出井”模拟脱机输出时的磁带,用于收容用户进程输出的数据。

2. 输入进程和输出进程

  • “输入进程”模拟脱机输入时的外围控制机,负责将用户要求的数据从输入设备,通过输入缓冲区送到输入井。
  • “输出进程”模拟脱机输出时的外围控制机,负责把用户要求输出的数据,先从主存送到输出井,待输出设备空闲时,再将输出井中的数据,经过输出缓冲区送到输出设备上。

3. 输入缓冲区和输出缓冲区

  • 在输入进程的控制下,“输入缓冲区”用于暂存从输入设备输入的数据,之后再转存到输入井中。
  • 在输出进程的控制下,“输出缓冲区”用于暂存从输出井送来的数据,之后再传送到输出设备上。

4. 共享设备

     假脱机技术将所有用户进程的输出都送入输出井,然后再由输出进程完成打印工作。由于输出井在磁盘上,为共享设备,因此假脱机技术可以把打印机等独占设备改造成共享设备。

      根据原理,我们也可以理解“假”的含义——在多道程序系统中,对于正在运行的程序而言,正在运作的IO设备是脱机的;但是对于整个系统而言,IO设备是联机的,因而称为“假脱机”。

     假脱机技术通过软件模拟的方式,实现了类似脱机技术的数据流转和处理过程,但更加高效和灵活。它允许多个用户进程同时提交打印任务,并将这些任务存储在磁盘的输入井和输出井中排队等待处理,从而提高了设备的利用率和系统的效率。

看到这里如果可以解答开头提出的两个问题那目的就达成啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值