文章目录
- 什么是脱机技术
- 假脱机技术——SPOOLing
- 输入井和输出井
- 输入进程与输出进程
- 输入输出缓冲区
- 共享打印机原理分析—假脱机技术的一种应用
什么是脱机技术
- 因为我们的手工操作阶段,主机之间从I/O设备获得数据,由于设备由人工操作,主机速度很快,但是人机速度很慢,主机会浪费很多时间来等待设备
- 批处理阶段引入了脱机输入/输出技术
- 在外围控制机的控制下,慢速输入设备的数据提前被输入到速度更快的磁带上,之后主句可以从快速的磁带读入数据
- 我们从I/O设备将数据放入我们的高速磁带中,是不需要主机的控制,所以叫脱机
假脱机技术——SPOOLing
- 在脱机技术的基础上人们发明了更好的假脱机技术
输入井和输出井
- 输入井和输出井在我们的磁盘上
- 输入井模拟脱机输入时的磁带,用于收容I/O设备的输入的数据
- 输出井模拟脱机输出时的磁带,用于收容用户进程输出的的数据
输入进程与输出进程
- 输入进程模拟脱机输入时的外围控制机
- 输出进程模拟脱机输出时的外围控制机
- 所以要实现假脱机的基础是必要有多道程序技术的支持
输入输出缓冲区
- 输入缓冲区和输出缓冲区是在内存中的
- 在输入进程的控制下,输入缓冲区用于暂存从输入设备输入的数据,之后再转存到输出井中
- 在输出进程的控制下,输出缓冲区用于暂存从输出井送来的数据,之后再传送到输出设备上
共享打印机原理分析—假脱机技术的一种应用
- 我们的打印机是一种输出设备
- 在多个用户进程提出输出打印的请求的时候,系统会答应它们的请求,但是并不是把真正的打印机分配给它们,而是由假脱机管理进程为每个进程做两件事
- 在磁盘输出井中为进程申请应该空闲缓冲区(在磁盘上的),并将要打印的数据送入其中
- 为用户进程申请一张空白的打印请求表,并将用户的打印请求填入表中(其实就是用来说明用户打印数据的存放位置等),在将该表挂到假脱机文件队列上
- 当打印机空闲的时候,输出进程会从文件队列的队头取出一张打印请求表,并根据表中的要求将打印的数据从输出井传送到输出缓冲区,再输出到打印机进行打印