SOOLING 打印模拟系统
一、算法或原理的实现思想
在程序内设计一个输出井。当生成打印任务后,若输出井中无等待执行的
打印任务且打印机状态为空闲,则立即送入打印机开始打印;若打印机正在执行
上个打印任务,则新任务暂存于输出井。若输出井中有等待执行任务,将新任务
添加到已有任务之后,输出井中的任务按先进先出顺序在打印机空闲时依次送入
打印机执行。
二、程序(带注释)
定义进程控制块 !"
struct
#$int%###### 进程号
##char&%#### 进程状态
##int"'&(%#### 输出时的临时变量
##int%##### 要输出的文件数
#)!"*+,%
请求输出块
struct
#$int-.%##### 请求进程名
##int/%##### 本次输出信息长度
##int&-%##### 信息在输出井的手首址
#)-."0*,%
int1*,2-"3*4,*,23*+,%## 输出井,-"3*,*,为进程用户 的输出井,3 为输出井的空间
int"!52"52"!52%######### 第一个空闲输出块指针,剩余指针,下一个空闲指针
int1/521!-5%
int!-6-7int!2int8%
oat-&978 产生随机数
$int9%
#staticint%
#if779588
##95:9%
#57;<4=>4?+@8AB4B%
#return79 4;<B<8%
)
生成文件
void-!-7int8
$
##staticintC%
##int%
评论0
最新资源