3) 输出井有作业,则逐个打印。
4) 无事可做,则阻塞。
3. Spooling 系统当前多用于共享打印机和网络通信中
l 进程请求打印, Spo 给进程分配虚打印机(输出井中若干盘块),将进程输出数据送虚打印机。
l 输出井中的输出数据通过一个类似目录的 Spool 表来检索。
l 根据输出次序建立一个“请求打印表”的输出队列(可考虑挂到 SPo 的 PCB 上)。请求打印表包括:要打印的文件名、打印要求、井中地址等。
l SPo 逐个打印,队列空则阻塞。
4. Spooling 系统优点
l I/O 速度提高。
l 独占设备改造为共享设备。
l 进程的并发度提高。
八.
请求者 |
设备独立性软件 |
设备驱动程序 |
设备操作 |
驱动程序通过控制器控制对设备的操作 |
功能:
请求者对设备的通信:查询设备、控制设备定位、对设备读 / 写。
1. 设备处理方式
l 每类设备一个驱动进程:由设备独立性软件、或设备中断处理程序唤醒。
l 整个系统设置一个驱动进程:由设备独立性软件、或设备中断处理程序唤醒。
l 设备驱动程序不以进程方式运行:作为一个模块供独立性软件和中断处理程序调用。
2 .设备驱动程序功能
l 将抽象请求转为具体要求:抽象请求来自无关性软件。如:磁盘一维地址转为三维地址;打印机换页转为前进若干行;等等。
l 检查 I/O 请求合法性:只读设备不能写;只写的设备不能读;可读可写的设备根据打开的权限确定。
l 读出并检查设备的状态:读状态端口或 CSW 了解设备与控制器的状态,以便确定下一步的操作。
l 传送必要的参数:读 / 写字节数、内存地址。
l 方式设置:对控制器进行初始化。
l 发 I/O 命令:总线结构,把命令送入控制器的命令端口; CH 结构,组织完 CH 程序,启动通道。
l 设备 I/O 结束,中断处理程序发来的情况进行处理。
3 .中断处理程序( P170 )
I/O 完成,控制器或 CH 发中断请求信号, CPU 响应。
l 唤醒设备驱动进程。
l 根据中断字内容分析中断原因、转向相关中断处理程序入口。
l 进行中断处理:若正常结束,通知设备驱动进程;若异常结束,分析状态端口 /CSW 内容,查出出错原因,通知设备驱动进程。
l 恢复现场,返回。
九. 问题:
1. CH 程序如何形成、并被执行?
2. 缓冲池工作原理?
3. 设备无关性软件功能?
4. 独占设备分配流程?
5. Spooling 输出进程的工作原理?
6. 设备驱动程序功能?
中断处理程序流程?
第六章 文件管理
一. 文件概念及分类( P182 )
1. 文件体:文件本身信息。
2. 文件说明
l 文件标识:文件名、内部名、别名。
l 文件属性:文件类型、长度、物理地址、存取权限等。
3. 目录:由文件说明组成,用于文件检索的特殊文件。