【正确答案】
【答案解析】Spooling系统由磁盘上的输入井和输出井、内存中的输入缓冲区和输出缓冲区以及输入进程和输出进程构成。
在用Spooling技术共享打印机时,对所有提出输出请求的用户进程,系统接受它们的请求时,并不真正把打印机分配给他们,而是为每个进程做两件事情:
(1)由输出进程在输出井中为它申请一空闲缓冲区,并将要打印的数据送入其中。
(2)输出进程再为用户进程申请一张空白的用户打印请求表,并将用户的打印请求填入表中,再将该表挂到打印队列上。
至此,用户进程觉得他的打印过程已经完成,而不必等待真正的慢速的打印过程的完成。当打印机空闲时,输出进程从请求队列首取出一张打印请求表,根据表中的要求将要打印的数据从输出井传送到内存输出缓冲区,再由打印机进行输出打印。打印完后,再处理打印队列中的下一个打印请求表,直至打印队列空。这样,虽然系统中只有1台打印机,但系统并未将它分配给任何进程,而只是为每个提出打印请求的进程在输出井中分配一个存储区(相当于一个逻辑设备),使每个用户进程都觉得自己在独占一台打印机,从而实现了对打印机的共享。