转 SPOOLING技术——操作系统

传送门

SPOOLING技术——操作系统

SPOOLING技术(Simultaneous Peripheral Operating On Line)

同时联机外围操作技术,它是关于慢速字符设备如何与计算机主机进行数据交换的一种技术,通常又称假脱机技术。

在多道程序环境下,利用多道程序中的一道或者两道程序来模拟脱机输入/输出中的外围控制机的功能,以达到“脱机”输入/输出的目的。

利用这种技术可把独占设备转变成共享的虚拟设备,从而提高独占设备的利用率和进程的推进速度。

SPOOLING系统 是对脱机输入/输出工作的模拟,它必须有大容量的且可随机存取的存储器
的支持。

其主要思想是在联机的条件下,进行两个方向的操作,在数据输入时,将数据从输入设备传送到磁盘或磁带(块设备),然后把这些块设备与主机相连;反过来,在数据输出时,将输出数据传送到磁盘或磁带上,再从磁盘或磁带传送到输出设备。

这样,可以将一台独占的物理设备虚拟为并行使用的多态逻辑设备,从而使该物理设备被多个进程共享。


输入进程SPI是模拟脱机输入时的外围控制机,它将用户要求处理的数据从输入设备通过输入缓冲区再送到输入井(磁盘上开辟的一块区域),当CPU处理这些数据数据时,就直接从输入井读入内存。

输出进程SPO是模拟脱机输出时的外围控制机,把用户要求输出的数据,先从内存送到输出井,待输出设备空闲时,再将输出井中的数据通过输出缓冲区(内存中一块区域)传送到输出设备上。

实例——利用打印机实现打印机共享

已经被广泛用于多用户系统和计算机网络中,它实际上就是利用SPOOLING技术将独占的打印机改造为一台供做个用户共享的设备,只要有足够的外存空间和多道程序操作系统的支持即可。

1、当用户进程请求打印输出时,SPOOLING系统立即同意为该进程执行打印输出,但并不是真正地把打印机分配给该用户进程,而只是为该进程做两项工作: 一项是由输出进程SPO在输出井中为之申请一个空闲的存储空间,并将要打印的数据传送其中存放;另一项工作就是由输出进程SPO再为用户进程申请一张空白的用户请求打印表,并将用户的打印请求填入其中,然后将该表挂到打印机的请求队列上。这时,如果还有另一个进程请求打印机时,则系统仍同意为该进程执行打印输出,当然,系统所做的工作仍是以上两项内容。

2、在打印机执行实际打印时,如果打印机空闲,输出进程SPO将从请求打印队列的队首取出一张打印表,根据打印表中的要求将要打印的数据从输出井传送到内存输出缓冲区,再传送到打印机打印。打印完后,输出进程SPO将再检查请求打印队列中是否还有待打印的请求表,若有则再取出一张请求打印表,将新的但因要求继续打印。如此反复,直到请求打印队列空为止,输出进程才将自己阻塞起来,并在下次再有打印请求时被唤醒。

时间: 2024-10-18 21:08:32

转 SPOOLING技术——操作系统的相关文章

spooling技术和通道及实现打印机共享

spooling技术的作用:  1.spooling技术的引入是为了缓和高速CPU和低速I/O设备之间的矛盾: 2.spooling技术能够允许多台外部设备进行联机并发操作,实现虚拟性: 在这个技术中用到了缓冲区和通道,缓冲区大家都比较熟悉,这里就不做介绍了,这里就简单的介绍一下通道. 通道:  1.通道技术的引入使得CPU与外设并行操作成为可能: 2.通道可看做专门的I/O处理机,它可以实现外设和主存直接交换数据: 3.CPU和通道的关系: (1)在采用通道方式的指令系统中,有供通道专用的一组

网络技术教程笔记(3)

操作系统 操作系统 0.操作系统概述 1.进程管理 11进程管理--进程的概念 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位.它由程序块.进程控制块(PCB)和数据块三部分组成. 进程和程序的区别:进程是程序的一次执行过程,没有程序就没有进程.程序是完成某个特定功能的一系列程序语句的集合,只要不被破坏,它就永远存在.程序是一个静态测试的概念,而进程是一个动态的概念,它由创建而产生,完成任务后因撤销而消亡:进程是程序进行资源分配和调度的独立单位,而程序不是. 1.

操作系统学习

本文原创,转载请注明来至:http://blog.csdn.net/j903829182/article/details/38060553 1.计算机发展的4个时代:电子管时代,晶体管时代,集成电路时代和大规模集成电路时代 2.操作系统发展过程:(1)单道批处理,(2)多道批处理,分时和实时系统时代,(3)多方式系统时代(4)并行与分布式系统时代. 3.操作系统:是一种系统软件,是软硬件资源的控制中心,它以尽量合理有效的方法组织单个或多个用户以多任务方      式共享计算机的各种资源,并提供编

计算机操作系统学习笔记_13_I/O管理 --I/O核心子系统

h1 { margin-bottom: 0.21cm; }h1.western { font-family: "Liberation Sans",sans-serif; font-size: 18pt; }h1.cjk { font-family: "微软雅黑"; font-size: 18pt; }h1.ctl { font-family: "AR PL UMing CN"; font-size: 18pt; }h2.western { fon

【操作系统】设备管理(五)

一.前言 学习了存储器管理后,继续学习设备管理,设备管理的主要功能有缓冲区管理.设备分配.设备处理.虚拟设备及实现设备独立性等,由于I/O设备不仅种类繁多,而且他们的特性和操作方式往往相差甚大,使得设备管理称为操作系统中最繁杂且与硬件最紧密的部分,下面开始正式的学习. 二.I/O系统 2.1 I/O设备 I/O设备类型繁多,在OS观点看,设备使用特性.数据传输速率.数据的传输单位.设备共享属性等都是重要的性能指标.可以按照不同角度对他们进行分类 ① 按设备的使用特性分类,可把设备分为两类,第一类

【操作系统常考知识总结】-转

1.进程是并发过程中程序的执行过程 2.进程的特征:结构特征动态性并发性独立性异步性 3.临界区指在每个进程中访问临界资源的那段代码 4,现在操作系统中申请资源的基本单位是进程,在CPU得到执行的基本单位是线程,进程是由程序段.数据段.PCB组成的 5,对临界资源应采取互斥访问方式来实现共享 6,P.V操作是一种低级进程通信原语 7,对于记录性信号量,在执行一次P操作时,信号量的值应当减1,当其值为小于0时进程应阻塞:在执行V操作时,信号量的值应当加1:当其值小于等于0时,应唤醒阻塞队列中的进程

计算机操作系统

基于<计算机操作系统>(第四版)总结:OS引论.进程描述与控制.处理机调度与死锁.存储器管理.虚拟存储器.输入输出系统.文件系统 一.操作系统引论 1.目标:方便性.有效性.可扩充性.开放性 2.作用: 1.作为用户与计算机硬件系统之间的接口 2.作为计算机系统资源的管理者 3.实现对计算机资源的抽象 3.发展过程: 1.人工操作方式:用户独占全机,CPU等待人工操作--带(卡)装卸 2.脱机输入/输出方式:事先将装有用户程序和数据的纸带装入纸带输入机,外围机控制,把纸带内容输入到磁带上(类似

计算机网络基础-操作系统

一.为什么要有操作系统? 现代计算机系统是由一个或者多个处理器,主存,磁盘,打印机,键盘,鼠标显示器,网络接口以及各种其他输入 输出设备组成的复杂系统,每位程序员不可能掌握所有系统实现的细节,并且管理优化这些部件是一件挑战性极强 的工作.所以,我们需要为计算机安装一层软件,成为操作系统,任务就是用户程序提供一个简单清晰的计算机模 型,并管理以上所有设备. 定义也就有了:操作系统是一个用来协调.管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用程序之间. (程序是运行在系统上的具有某种功能

计算机基础之操作系统

一.为何要有操作系统 操作系统(Operating System)是控制计算机硬件和软件资源的控制程序.我们知道,应用程序要通过操作系统才能对硬件进行操作,计算机由主板.硬盘.内存.cpu.声卡.网卡.鼠标.键盘等硬件组成,每个硬件的正常运行都需要控制器和驱动程序.如果用户需要操作硬件的时候,还要在手动编写或者加载这些程序或驱动,那就太浪费时间了.所以为了提高计算机的使用效率,计算机安装了一层系统软件,它能管理刚才提到的那些硬件,为用户程序提供一个更简单,更有效,更人性化的计算机模型,让用户在一