【操作系统之进程综合测试】

操作系统之进程综合测试


1.某单道批处理系统中,5个作业进入系统时间、 要求运行时间及优先级如表所示:

并假设数字大的优先级较高。

采用不可抢占的优先级调度算法时,每个作业的周转时间是A_ B_ C_ D_ E_ 。

解答:

周转时间 = 作业完成时间 - 进入系统时间

作业进入系统时间要求运行时间作业完成时间周转时间
A3529答案:26
B2912答案:10
C033答案:3
D0635答案:35
E21224答案:22




2.我是一个线程,编号: 0x3704,我出生后就被塞了一个沉甸甸的包裹,来到一间明亮的大屋子,我刚进屋子,就听见广播: "0x3704,进入车间。” 我听到有其他人议论,说我的优先级好高,所以这么快就能运行。我进入车间,打开包裹,把包裹里的userName、password交给数据库服务员。就在这时,车间里的广播响了: "0x3704,,我是CPU,记住你正在执行的步骤,然后马上带着包裹离开!”我离开这个车间,又来
到一个大屋子,这里有很多线程在等待。等了很久,大喇叭又开始广播了: "0x3704,你的数据来了,快去执行!” 我赶紧跑回那间明亮的大屋子,这次没有那么好运了,等了好久才被再次叫进车间。当我正在紧张的制作HTML时,CPU又开始叫了: "0x3704,,我是CPU ,记住你正在执行的步骤,然后马上带着包裹离开!” 因为每个线程只能在CPU上运行一段时间,到了时间就得让别人用了”。就这样,轮转了很多次,
我终于按照步骤清单把工作做完了。

(1).文中明亮的大屋子是指___状态的线程队列 (从下面选项中选择)
答案:C
A 等待

B 新
C 就绪
D 运行

(2)."0x3704,进入车间,这句话中的车间指的是___
答案:B
A 内存

B CPU

C 文件

D I/O

(3).我刚进屋子,就听见广播: "0x3704,,进入车间。此处的调度可能采取的调度算法是___
答案:D
A先来先服务

B最短作业优先

C 时间片轮转

D高优先级优先

(4).CPU又开始叫了: "0x3704, 我是CPU,记住你正在执行的步骤,然后马上带着包裹离开! ,此处的调度可能采取的调度算法是
答案:C
A先来先服务

B最短作业优先

C时间片轮转

D高优先级优先

(5).我离开这个车间,又来到一个大屋子这里有很多线程在等待此处指的是线程0x3704进入了__ _状态
答案:A
A等待

B新

C就绪

D运行






3.若后备作业队列同时有J1,J2,J3三个作业,已知其各自运行时间为a,b,c,且满足a<b<c,
___算法能获得 最小的平均作业周转时间?

答案:短作业优先

最小的周转时间是__ 答案:B
A a+b+c

B 3a+2b+c

C 3c+2b+a

D 3(a+b+C)





4.有进程调度策略称作彩票调度算法,算法基本思想是为进程发放针对各种资源(如CPU时间)的彩票,在进行资源分配时,进程调度程序随机。
选择一张彩票, 持有该彩票的进程获得资源。假设在低级调度时采用该调度算法,

请分析(1) 就绪队列的进程是否有平等的调度机会?__(填是或否)
答案:是

(2) 若系统中有一些进程具有较高的优先级, 本算法是否能适用___(填能或不能)
答案:能

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
操作系统实验三实验报告 基本信息 1.1 实验题目 进程调度算法实验 1.2完成人 王召德 1.3报告日期 2015-4-16 实验内容简要描述 2.1实验目标 加深对进程调度概念的理解,体验进程调度机制的功能,了解 Linux 系统进程 调度策略的使用方法。 练习进程调度算法的编程和调试技术。 2.2实验要求 设有两个并发执行的父子进程,不断循环输出各自进程号、优先数和调度策 略。进程初始调度策略均为系统默认策略和默认优先级。当某个进程收到 SIGINT 信号时会自动将其优先数加 1,收到 SIGTSTP 信号时会自动将其优先数减 1。请编 程实现以上功能。 2.3实验的软硬件环境 Ubuntu14.04 intelPC 操作系统实验三实验报告全文共5页,当前为第1页。 操作系统实验三实验报告全文共5页,当前为第1页。 报告的主要内容 3.1实验的思路 父进程生成子进程分别都绑定SIGINT和SIGTSTP信号,并且在函数中分别让优先级加一和减一,然后分别打印二十次自己的PID,优先级,调度策略。每次按Ctrl-C优先级会加一,按Ctrl-Z优先级会减一。 3.2实验模型的描述 无 3.3主要数据结构的分析说明 无 3.4主要算法代码的分析说明 无 3.5项目管理文件的说明 无 实验过程和结果 4.1实验投入的实际学时数 1学时 4.2调试排错过程的记录 在调试过程中,两个进程id搞错导致处理错误 操作系统实验三实验报告全文共5页,当前为第2页。4.3多种方式测试结果的记录 操作系统实验三实验报告全文共5页,当前为第2页。 4.4实验结果的分析综合 无 实验的总结 系统可以有多种不同的策略调度进程,其中按照优先级调度,可以给某个进程设置优先级,这个优先级可正可负,可以根据优先级的大小进行调度,而且这个优先级可以在进程执行中改变。 附录 程序源代码 #include <sched.h> #include <sys/time.h> #include <sys/resource.h> 操作系统实验三实验报告全文共5页,当前为第3页。#include <signal.h> 操作系统实验三实验报告全文共5页,当前为第3页。 #include <stdio.h> #include <stdlib.h> // SIGINT 程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出,用于通知前台进程组终止进程。 // SIGTSTP 停止进程的运行, 但该信号可以被处理和忽略. 用户键入SUSP字符时(通常是Ctrl-Z)发出这个信号 typedef void (*sighandler_t) (int); void sigcat_1(){ printf("SIGINT信号,优先度加一\n"); setpriority(PRIO_PROCESS,getpid(),getpriority(PRIO_PROCESS,getpid())+1); } void sigcat_2(){ printf("SIGTSTP信号,优先度减一\n"); setpriority(PRIO_PROCESS,getpid(),getpriority(PRIO_PROCESS,getpid())-1); } int main(int argc, char *argv[]){ int i,j,pid; //srand((unsigned)time(0)); printf("Ctrl-C让进程优先度加一,Ctrl-Z让进程优先度减一"); if((pid=fork())==0) { signal(SIGINT,(sighandler_t)sigcat_1); signal(SIGTSTP,(sighandler_t)sigcat_2); for(i=0;i<20;i++){ printf("子进程 PID = %d 优先级= %d ,调度策略= %d\n",getpid(),getpriority(PRIO_PROCESS,0),sched_getscheduler(getpid())); /* if(rand()%2){ printf("子进程发送SIGINT信号给父进程\n"); kill(getppid(),SIGINT); }else{ printf("子进程发送SIGTSTP信号给父进程\n"); 操作系统实验三实验报告全文共5页,当前为第4页。 kill(getppid(),SIGTSTP); 操作系统实验三实验报告全文共5页,当前为第4页。 } pause(); */ sleep(1); } }else{ signal(SIGINT,(sighandler_t)sigcat_1); signal(SIGTSTP,(sigha
计算机操作系统综合设计 实验一 实验名称: 进程创建模拟实现 实验类型:验证型 实验环境: win7 vc++6.0 指导老师: 专业班级: 姓 名: 学 号: 联系电话: 实验地点:东六 E507 实验日期: 2017 年 10 月 10 日 实验报告日期: 2017 年 10 月 10 日 实验成绩: 、实验目的 1)理解进程创建相关理论; 2)掌握进程创建方法; 3)掌握进程相关数据结构。 、实验内容 windows 7 Visual C++ 6.0 三、实验步骤 1、 实验内容 1) 输入给定代码; 2) 进行功能测试并得出正确结果。 2、实验步骤 1)输入代码 A、打开 Visual C++ 6.0 ; B、新建 c++ 文件,创建 basic.h 头文件,并且创建 main.cpp 2)进行功能测试并得出正确结果 A 、编译、运行 main.cpp B、输入测试数据 创建 10个进程;创建进程树中 4 层以上的数型结构 结构如图所示: createpc 创建进程命令。 参数: 1 pid (进程 id )、 2 ppid (父进程 id )、 3 prio (优先级)。 示例: createpc(2,1,2) 。创建一个进程,其进程号为 2,父进程号为 1, 优先级为 2 3) 输入创建进程代码及运行截图 4)显示创建的进程 3、画出 createpc 函数程序流程图 分析 createpc 函数的代码,画出如下流程图: T丄人 輸入迸程的三个参数 滸入forts;1- 潘Λi2程ID 是否応 创建节点I进行 3S λ 设置兰前插入的迸 程Id啓FIag的值 返叵示 添加迸 四、实验总结 1、实验思考 (1) 进程创建的核心内容是什么? 答: 1) 申请空白 PCB 2) 为新进程分配资源 初始化进程控制块 4) 将新进程插入到就绪队列 (2)该设计和实际的操作系统进程创建相比,缺少了哪些步骤? 答: 只是模拟的创建,并没有分配资源 2、个人总结 通过这次课程设计, 加深了对操作系统的认识, 了解了操作系 统中进程创建的过程,对进程创建有了深入的了解,并能够用高 级语言进行模拟演示。一分耕耘,一分收获,这次的课程设计让 我受益匪浅。 虽然自己所做的很少也不够完善, 但毕竟也是努 力的结果。 另外, 使我体会最深的是: 任何一门知识的掌握, 仅靠学习理论知识是远远不够的, 要与实际动手操作相结合才能 达到功效。 计算机操作系统综合设计实验报告实验一
一.项目简介 基于UDP的聊天系统 要求: 1.应用 IO 进程 线程 进程间通信, 网络相关内容。 2.C/S模型 3.僵尸进程一定要求处理 4.服务器尽量写成守护进程 5.应用链保存在线用户信息 6.将所有用户信息保存到sqlite数据库中 7.能够导出相关数据到文本文档中(如聊天记录。。) 二.分工与描述 功能:1.(数据库及其涉及函数、查看在线用户、登录、注册) 2.(makeflie、私聊群聊完善) 3.(写入文件(存取聊天记录)、帮助文档、超级用户) 文档:三人共同完成 三.需求分析及界面设计 1. 引言 编写基于UDP的网络聊天室,该文档是给项目的需求分析,包括编写目的,项目要实现的功能,如何实现该项目。 1.1 编写目的 该项目是为分析基于UDP的网络聊天室项目的需求设计的,开发基于UDP的网络聊天室实现不同客户端的通信功能,具有重大意义,最终可以实现不同用户畅聊的功能。 1.2 项目风险 ●无; 1.3 文档约定 ●无; 1.4 预期读者和阅读建议 ●开发人员;全读 ●测试人员;了解 ●文档编写入员。全读 1.5 产品范围 ●Linux涉及UDP领域; 1.6 参考文献 ●基于UDP的聊天系统需求报告 ●基于UDP的聊天系统详细设计 2. 综合描述 这一部分概述了正在定义的软件产品的作用范围以及该软件产品所运行的环境、使用该软件产品的用户、对该软件产品己知的限制、有关该软件产品的假设和依赖。 2.1 产品的状况 描这是基于UDP的网络聊天室,基于Linux系统,用于聊天。 特点:  1)便捷性:摆脱了传统的通信方式,利用网络的廉价性,可以使用户更加自由地相互交流。  2) 安全性:网络环境下,用户可以针对地去了解自己想要了解的信息,交流时可以使用虚拟的身份, 一定程度上很好地保护了用户的个人隐私信息。  3) 实时性:用户只要与想要通信的另一方取得联系,即可想面对面对话一样交流。 2.2 产品的功能 ●实现登录 注册 聊天 查看在线用户 返回在线用户列 下线等功能; 2.3 用户类和特性 ●无; 2.4 运行环境 ●Linux系统; 2.5 设计和实现上的限制 确定影响开发人员自由选择的问题,并且说明这些问题为什么成为一种限制。可能的限制包括下列内容: ●必须使用的特定技术、工具、编程语言和数据库; 1)Linux C编程工具:GCC和GDB  2)文件I/O操作 技术 3)文件属性及目录操作  4)终端控制与信号处理  5)进程控制  6)进程间通信  7)流式套接字编程  8)线程管理 9)数据库工具sqlite3 ●避免使用的特定技术、工具、编程语言和数据库;
分布式温控系统基本要求 假定,某快捷廉价酒店响应节能绿色环保理念,推行自助式房间温度调节的空调系统,经过初步分析该系统的基本需求如下: 1. 空调系统由中央空调和房间空调两部分构成; 2. 中央空调是冷暖两用,根据季节进行模式调整。 a) 当设置为供暖时,供暖温度控制在25°C~30°C之间; b) 当设置为制冷时,制冷温度控制在18°C~25°C之间。 3. 中央空调具备开关按钮,只可人工开启和关闭,中央空调正常开启后处于待机状态。 a) 中央空调开机后,无论哪一种工作模式,缺省工作温度为25°C; b) 当关闭后,不响应来自房间的任何温控请求; c) 当有来自从控机的温控要求时,中央空调开始工作; d) 当所有房间都没有温控要求时,中央空调的状态回到待机状态。 4. 房间内有独立的从控空调机,但没有冷暖控制设备。 a) 从控机具有一个温度传感器,实时监测房间的温度,并与从控机的目标设置温度进行对比,并向中央空调机发出温度调节请求。 b) 如果从控机发出的请求和中央空调设置的冷暖控制状态发生矛盾时,以中央空调机的状态优先,否则中央空调机不予响应。 5. 从控机只能人工方式开闭,并通过控制面板设置目标温度,目标温度有上下限制。 a) 从控机开机后动态获取房间温度,并将温度显示在控制面板上; b) 从控机开机后与中央空调连接获取工作模式,并将工作模式显示在控制面板上; 6. 控制面板的温度调节可以连续变化也可以断续变化: a) 温度调节按钮连续两次或多次指令的时间间隔小于1s时,从控机只发送最后一次的指令参数; b) 如果温度调节按钮连续两次的时间间隔大于1s时,从控机将发送两次指令参数; 7. 房间目标温度达到后,从控机自动停止工作。 a) 房间温度随着环境温度开始变化,当房间温度超过目标温度1 °C时,重新启动; b) 房间不考虑大小和管道的分布及大小问题,在达到目标温度后,房间温度每分钟上下变化X°C(各小组自行定义环境温度的变化曲线)。 8. 中央空调能够实时监测各房间的温度和状态,并要求实时刷新的频率能够进行配置; 9. 要求分控机的控制面板能够发送高、中、低风速的请求,要求各小组自定义高、中、低风情况下的温度变化值;比如以中风为基准,高速风的温度变化曲线可以提高25%,低速风的温度变化曲线可以降低25%。 10. 系统中央空调部分具备计费功能:可根据中央空调对分控机的请求时长及高中低风速的供风量进行费用计算; a) 每分钟中速风的能量消耗为一个标准功率消耗单位; b) 低速风的每分钟功率消耗为0.8标准功率; c) 高速风的每分钟功率消耗为1.3标准功率; d) 并假设,每一个标准功率消耗的计费标准是5元。 11. 中央空调监控具备统计功能,可以根据需要给出日报、周报和月报;报内容如下:房间号、开关机的次数、温控请求起止时间、温控请求的起止温度及风量大小 12. 中央空调同时只能处理三台分控机的请求,为此主机要有负载均衡的能力,能够保证所有房间的请求都能进行温度调整。 该程序的配置环境文档: http://download.csdn.net/detail/zly9923218/6328843 有问题咨询作者qq:1632310768 该程序是温控的主控机,空调运行效果如下: http://hi.baidu.com/123ktjt/item/03e7047170f95a2b6cc37cea
一、实验目的 本实验要求学生模拟作业调度的实现,用高级语言编写和调试一个或多个作业调度的模拟程序,了解作业调度在操作系统中的作用,以加深对作业调度算法的理解。 二、实验内容和要求 1、编写并调度一个多道程序系统作业调度模拟程序。   作业调度算法:采用基于先来先服务的调度算法。可以参考课本中的方法进行设计。 对于多道程序系统,要假定系统中具有的各种资源及数量、调度作业时必须考虑到每个作业的资源要求。 三、实验主要仪器设备和材料 硬件环境:IBM-PC或兼容机 软件环境:C语言编程环境 四、实验原理及设计方案 采用多道程序设计方法的操作系统,在系统中要经常保留多个运行的作业,以提高系统效率。作业调度从系统已接纳的暂存在输入井中的一批作业中挑选出若干个可运行的作业,并为这些被选中的作业分配所需的系统资源。对被选中运行的作业必须按照它们各自的作业说明书规定的步骤进行控制。 采用先来先服务算法算法模拟设计作业调度程序。 (1)、作业调度程序负责从输入井选择若干个作业进入主存,为它们分配必要的资源,当它们能够被进程调度选中时,就可占用处理器运行。作业调度选择一个作业的必要条件是系统中现有的尚未分配的资源可满足该作业的资源要求。但有时系统中现有的尚未分配的资源既可满足某个作业的要求也可满足其它一些作业的要求,那么,作业调度必须按一定的算法在这些作业中作出选择。先来先服务算法是按照作业进入输入井的先后次序来挑选作业,先进入输入井的作业优先被挑选,当系统中现有的尚未分配的资源不能满足先进入输入井的作业时,那么顺序挑选后面的作业。 (2) 假定系统可供用户使用的主存空间共100k,并有5台磁带机。 3)流程图:

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值