
SPOOLING是一种模拟脱机技术。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
设计一个SP00LING输出流程和两个请求输出的用户流程,以及一个SP00LING输出服务程序。当请求输出的用户流程需要发送一系列信息时,它会调用输出服务程序,由该服务程序将这些信息传递至输出井。一旦检测到输出结束标志,则表明该流程本次的输出文件已完成。随后,流程会申请一个输出请求块,该块用于记录请求输出用户流程的名称、信息在输出井中的位置以及需要输出信息的长度等关键数据,并等待SP00LING进程进行实际的输出操作。SP00LING输出进程在运行期间,会根据请求块中记录的各进程要输出的信息内容,将其实际发送到打印机或显示器上。值得注意的是,SP00LING输出进程与请求输出的用户进程可以同时并发执行。
(1)功能分析:当输入“第一个用户进程的请求为:”,以及“第二个用户进程的请求为:”,并按下“确定”键后,右侧文本区将显示这两个请求输出的用户进程所提交的数据,以及SP00LING输出进程产生的相应数据。其中,两个请求输出的用户进程被调用的概率分别为 0.45,而 SP00LING 输出进程的调度概率为 0.10。这个调度过程模拟使用随机数发生器生成的随机数来决定每个进程是否被选中执行。
(2)进程状态:该系统中的进程基本状态共有三种:可执行、等待和结束。可执行态指的是进程正在运行或等待被调度执行的状态;等待状态又细分为等待状态1、等待状态2和等待状态3。状态变化的主要条件包括:①当一个进程执行完成时,其状态会被设置为“结束”态;②服务程序在将输出来到输出井的过程中,如果发现输出井已满,则会调用该进程置为“等待状态1”;③SP00LING 进程在进行输出来自时若发现 输出井为空, 则会进入“等待状态2”;④ SP00LING 进程在向 输出井写入一个信息块后应立即释放该信息块所占用的空间, 并将正在等待输出的流程置为“可执行状态”;⑤服务程序在向 输出井写入信息并生成了相应的输 出请求信息块后, 若 SP0OLING 进程处于等待态, 则将其置为 “可执行状态”;⑥当用户流程申请到一个 请求 输出块时, 如果没有可用的 请求 输出块可用, 则调用该流程进入 “等待状态3”。
全部评论 (0)


