2022年操作系统课程设计spooling课程设计报告 .docx
《2022年操作系统课程设计spooling课程设计报告 .docx》由会员分享,可在线阅读,更多相关《2022年操作系统课程设计spooling课程设计报告 .docx(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选学习资料 - - - - - - - - - 1 需求分析SPOOLING是 Simultaneous Peripheral Operation On-Line (即外部设备联机并行操作)地缩写 , 它是关于慢速字符设备如何与运算机主机交换信息地一种技术 , 通常称为“ 假脱机技术”机操作技术 , 又称为排队转储技术“ 输出井” 地排队转储环节 . .SPOOLING技术实际上是一种外围设备同时联 . 它在输入和输出之间增加了“ 输入井” 和进程基本状态有 3 种, 分别为可执行 , 等待和终止 . 可执行态就是进程正在运行或等待调度地状态;等待状态又分为等待状态 状态变化地条件为:1进程
2、执行完成时 , 置为“ 终止” 态 . 1, 等待状态 2, 等待状态 3. 2服务程序在将输出信息送输出井时 , 如发觉输出井已满 , 将调用进程置为“ 等待状态 1” . 3SPOOLING进程在进行输出时 , 如输出井空 , 就进入“ 等待状态 2” . 4SPOOLING进程输出一个信息快后, 应立刻释放该信息快所占地输出井空间, 并将正在等待输出地进程置为“ 可执行状态”. 5服务程序在输出信息到输出井并形成输出恳求信息快后 , 如 SPOOLING进程处于等待态就将其置为“ 可执行状态”. 6当用户进程声请恳求输出快时 , 如没有可用恳求快时 , 调用进程进入“ 等待状态 3” .
3、 满意条件:1 设计一个实现 SPOOLING技术地进程设计一个 SPOOLING输出服务进程、一个SPOOLING输出进程、两个用户请求进程 . 用户进程恳求输出一系列信息 , 调用输出服务进程 , 由输出服务进程将该信息送入输出井 . 等待 SPOOLING进程进行输出 .SPOOLING输出进程工作时 , 依据恳求块记录地各进程要输出地信息将其输出 . 2)设计进程调度算法进 程 调 度 采 用 随 机 算 法 , 两 个 请 求 输 出 地 用 户 进 程 地 调 度 概 率 各 为45%,SPOOLING 输出进程为 10%,这由随机数发生器产生地随机数来模拟打算 .2 概要设计数据
4、结构:名师归纳总结 - - - - - - -第 1 页,共 13 页精选学习资料 - - - - - - - - - 1 进程掌握块( PCB)Struct pcb int id;/ 进程标示 int status; / 进程状态 int firstaddr; int length;/ 输出长度 int outbufword;*PCB3 ;PCB(Process Control Block), 进程掌握块是操作系统用于记录和刻画进程状态及有关信息地数据结构 , 也是操作系统把握进程地唯独资料结构 , 是操作系统掌握和治理进程地主要依据 . 它包括了进程执行时地情形 , 以及进程让出处理器所处
5、地状态、断点等信息 . 对于输出进程和 spooling 进程两种不同地进程 ,采纳相同地结构处理 , 包括进程标识 , 进程状态 , 输出缓冲 , 输出指针 , 信息块首地址, 输出长度等内容 . 需要支持在不同状态之间地转换(2)恳求输出快 reqblock struct int reqname ; / 恳求进程名int length; / 输出长度int addr; / 信息在输出井地首地址reqblock10;, 输出缓冲晴空等操作 . 输出恳求块地作用是定义标识要求输出进程地变量和相关信息并且定义输出首地址 . 要求输出地进程标识 , 输出长度 , 输出首地址等内容 . 3 输出井
6、BUFFER SPOOLING系统为每个恳求输出地进程在输出井中分别开创一个区 . 本试验可设计一个二维数组 int buffer210 作为输出井 . 每个进程在输出井最多可占用 10 个位置 . 函数调用关系图:程序框图如下:名师归纳总结 - - - - - - -第 2 页,共 13 页精选学习资料 - - - - - - - - - 入口PCB、输出恳求块、输出井等初始生成随机数 x ( 0-1)判 x 及进程状态均不满意x=0.45 且进程0.45x0.9且 进 程1 为 可 执 行 状程 1 为可执行SPOOLING态状态为可执行状态执行恳求输出进执行恳求输出进执 行 请 求输 出
7、 进程 1( r=1)程2 int 程 3(r=3)reqname; / 恳求输出恳求完 成全部终止 SPOOLING 模拟系统主控图 3 运行环境 Windows xp 系统下 vc+6.0 4 开发工具和编程语言 Vc+6.0 开发工具 c 语言编程 5 具体设计名师归纳总结 - - - - - - -第 3 页,共 13 页精选学习资料 - - - - - - - - - 恳求函数:void requestint i / 定义恳求函数 int j,m,length=0; struct req*run; ifi=1 t1-; else t2-; printf 用户 %d恳求数据 :n,i;
8、/ 输出标注 run=&reqblocktail%10;/ 定义输出块 run-reqname=i; run-length=0; iftail=0 run-addr=0; else int index=tail-1%10; run-名师归纳总结 addr=reqblockindex.addr+reqblockindex.length;第 4 页,共 13 页- - - - - - -精选学习资料 - - - - - - - - - for m=0;maddr=m; break while1 j=rand%10; ifj=0 run-length=length; break; bufferi-1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年操作系统课程设计spooling课程设计报告 2022 操作系统 课程设计 spooling 报告
限制150内