SPOOLING技术模拟实现 操作系统原理课程设计

*******************

实践教学

*******************

兰州理工大学

计算机与通信学院

2010年秋季学期

操作系统原理课程设计

题 目: SPOOLING技术模拟

专业班级: 08级计算机(5)班

姓 名: 赵永丽

学 号:

指导教师: 庞淑侠

成 绩:

目 录

摘 要 …………………………………………………1

正 文 ………………………………………………… 2

1.设计思想……………………………………………2

2.各模块的伪码算法…………………………………3

3.函数的调用关系图…………………………………5

4.测试…………………………………………………6

总结 ……………………………………………………14

参考文献 ………………………………………………15

致 谢 …………………………………………………16

附件I 源程序代码 …………………………………17

摘 要

SPOOLING假脱机输入\输出技术广泛应用于各种计算机的I/O。该技术通过采用预输入和缓输出的方法,使用共享设备的一部分空间来模拟独占设备,以提供独占设备的利用率。

本设计程序就是一个能实现spooling技术的进程,并采用随机调度算法模拟spooling进程的调度过程。在设计过程中,我们不仅要理解spooling技术原理,学会利用数据结构算法,学会利用调用函数的方法,还要巧妙地利用随机函数,才能更好地设计出本程序SPOOLING假脱机输入\输出技术广泛应用于各种计算机的I/O。该技术通过采用预输入和缓输出的方法,使用共享设备的一部分空间来模拟独占设备,以提供独占设备的利用率。

关键字: SPOOLING假脱机 共享设备 模拟独占设备  随机函数

正 文

设计思想

本课题是设计了一个SPOOLING输出进程和两个请求输出的用户进程,以及一个SPOOLING输出服务程序。SPOOLING输出进程工作时,根据请求块记录的各进程要输出的信息,将其实际输出到打印机或显示器。这里,SPOOLING进程与请求输出的用户进程可并发运行。

进程调度采用随机算法,这与进程输出信息的随机性相一致。两个请求输出的用户进程的调度概率各为45%,SPOOLING输出进程为10%,这由随机数发生器产生的随机数模拟决定。进程基本状态有3种,分别为可执行,等待和结束。可执行态就是进程正在运行或等待调度的状态;等待状态又分为等待状态1,等待状态2,等待状态3。

状态变化的条件为:

1>进程执行完成时,置为“结束”态。

2>服务程序在将输出信息送输出井时,如发现输出井已满,将调用进程置为“等待状态1”。

3>SPOOLING进程在进行输出时,若输出井空,则进入“等待状态2”。

4>SPOOLING进程输出一个信息快后,应立即释放该信息快所占的输出井空间,并将正在等待输出的进程置为“可执行状态”。

5>服务程序在输出信息到输出井并形成输出请求信息快后,若SPOOLING进程处于等待态则将其置为“可执行状态”。

6>当用户进程声请请求输出快时,若没有可用请求快时,调用进程进入“等待状态3”。程序为两个请求输出的用户进程设计两个输出井。每个可存放10个信息,即buffer[2][10]。 当用户进程将其所有文件输出完时,终止运行。为简单起见,用户进程简单地设计成:每运行一次,随机输出数字0~9之间的一个数,当输入10个数时形成一个请求信息块,填入请求输出信息块reblock结构中。

各模块的伪码算法

1.包含几个函数的头文件

#include/*调用随机函数的头文件*/

#include/*调用时间函数的头文件*/

#include/*标准输入输出的头文件*/

2.定义结构体

struct pcb{/*进程状态*/

int status;

int length;

}*PCB[3];

struct req{/*定义请求输出快结构体*/

int reqname;

int length;

int addr;

}reqblock[10];/*申请10个输出请求块*/

3.定义指针

pcb *tmpPcb=(struct pcb*)malloc(sizeof(struct pcb)); /*为pcb申请空间*/

tmpPcb->status=0;

tmpPcb->length=0;

PCB[n]=tmpPcb;/*初始化pcb*/

req*run;/*给req定义一个指针ru

spooling技术课程设计 linux环境,SPOOLING技术模拟实现 操作系统原理课程设计.doc相关推荐

  1. spooling技术课程设计 linux环境,《SPOOLING技术模拟实现 操作系统原理课程设计》.doc...

    <SPOOLING技术模拟实现 操作系统原理课程设计> ******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2010年 ...

  2. linux文件管理课程设计,操作系统原理课程设计-Linux文件管理系统的仿真.doc

    操作系统原理课程设计 实践报告 全套设计加扣 3012250582 题 目: Linux文件管理系统的仿真 姓 名: 学 院: 信息科学技术学院 专 业: 计算机科学技术系 班 级: 计科121 是否 ...

  3. Linux安全增强技术,采用MAC技术的嵌入式Linux安全增强技术研究.pdf

    采用MAC技术的嵌入式Linux安全增强技术研究.pdf Practical Method .实践方法 采用 MAC 技术的 嵌入式 Linux 安全增强技术研究 吴新勇 1 杨霞2 (1.四川九於1 ...

  4. Linux环境下EDA软件的使用——数字IC设计DC综合篇

    Linux环境下EDA软件的使用--数字IC设计DC综合篇   目前,绝大部分集成电路设计所用到EDA软件都是Linux版本,对于芯片工程师,熟悉一款EDA软件是入门的必修课,当然要真正的掌握会是十分 ...

  5. 操作系统原理课程设计任务书

    操作系统原理课程设计任务书 设计目的: 操作系统原理是计算机专业的核心课程,本课程设计旨在让学生学习完理论课程后进行一次全面的综合训练.通过课程设计,让学生更好地掌握操作系统的原理及实现方法,加深对操 ...

  6. linux环境c语言课程设计,linux环境下c语言编程课程设计

    linux环境下c语言编程课程设计 (14页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 1/14LINUX操作系统教程课程设计题目算术 ...

  7. 基于linux的软plc设计,Linux环境下软PLC开发系统的设计与实现

    文章主要介绍了在Linux操作系统环境下,软PLC梯形图的编辑技术.采用基于面向对象的方法,在分析了梯形图组成元素的基础上,阐述了设计过程中使用的类层次结构,并根据梯形图动态存储的特点,描述了存储梯形 ...

  8. linux简单命令解释器设计,Linux环境下模拟实现命令解释器

    在Linux环境下模拟实现命令解释器 一.程序概述 1.进入系统概述 本次课程设计是在红帽Linux发行版(Red Hat Enterprise Linux AS release 4 (Nahant ...

  9. 在linux中 要删除abc目录,操作系统原理与应用(linux)A卷

    福州外语外贸职业技术学院 2010-2011学年第一学期(期末)试卷 09 级网络系统管理专业操作系统原理与应用(linux)科目(A )卷课程代码考试形式闭卷考试时量 120 分钟姓名__ ____ ...

最新文章

  1. 求小数的小数点的第n位是什么
  2. node.js 多个异步过程判断执行是否完成
  3. hdu 5419(数学期望)
  4. Linux系统\Centos没有网卡eth0配置文件怎么办?
  5. python 正则表达式语法大全_Python 之父撰文回忆:为什么要创造 pgen 解析器?
  6. Python用过的小知识备忘录
  7. (纪录片)电的故事 Shock Awe The Story of Electricity
  8. java.io.IOException: Too many open files错误解决方案
  9. day 22 封装 + property + classmethod + staticmethod
  10. 最新黑马java十次方社交项目教程
  11. 流程工业MES管理系统有什么特点
  12. 东方联盟郭盛华:坚定站在移动安全的最前沿
  13. 求解Ax=b的克莱默法则
  14. MySQL基础系列之 记一次利用存储过程实现2600万数据水平分表
  15. java.lang.NoClassDefFoundError: org/dom4j/io/SAXReader
  16. 实验二+070+胡阳洋
  17. 关于字符串旋转问题的一些心得
  18. 思维模型 塔西陀陷阱
  19. P7毕业项目,猫狗大战。详解,含全部代码
  20. 模式识别更接近计算机还是自动化,2020中科院自动化所考研初试经验

热门文章

  1. 大笨钟的心情(java)
  2. 2023面试题汇总二
  3. 高职计算机基础教案ppt,计算机数学基础 高职计算机大类专业基础 郭宝玉 PPT计算机数学基础 第2章.ppt...
  4. 想你是一种说不出的痛
  5. openresty 概述
  6. 反派经典台词(暴笑)
  7. iphone个系列尺寸_神似iPhone 4,四款新iPhone机模全曝光
  8. PX4FLOW光流模块DIY(含部分代码讲解)
  9. 中公教育计算机老师笔试面试题,信息技术教师考试面试“答辩”技巧
  10. matlab数据平滑 smooth函数的python实现