《操作系统》实验题目
操作系统 上机操作实验题目

实验一批处理系统的作业调度一、实验目的1.加深对作业概念的理解。
2.深入了解批处理系统如何组织作业、管理作业和调度作业。
二、实验预备知识1.作业的概念。
2.作业的创建。
3.作业的调度。
三、实验内容编写程序完成批处理系统中的作业调度,要求采用响应比高者优先的作业调度算法。
实验具体包括:首先确定作业控制块的内容,作业控制块的组成方式;然后完成作业调度;最后编写主函数对所做工作进行测试。
四、提示与讲解操作系统根据允许并行工作的道数和一定的算法从系统中选取若干作业把它们装入主存储器,使它们有机会获得处理器运行,这项工作被称为“作业调度”。
实现这部分功能的程序就是“作业调度程序”。
作业调度的实现主要有两个问题,一个是如何将系统中的作业组织起来;另一个是如何进行作业调度。
为了将系统中的作业组织起来,需要为每个进入系统的作业建立档案以记录和作业相关的信息,例如作业名、作业所需资源、作业执行时间、作业进入系统的时间、作业信息存储器中的位置、指向下一个作业控制块的指针等信息。
这个记录作业相关信息的数据块称为作业控制块(JCB),并将系统中等待作业调度的作业控制块组织成一个队列,这个队列称为后备队列。
一个作业全部信息进入系统后,就为其建立作业控制块,并挂入后备队列。
当进行作业调度时,从后备队列中查找选择作业。
由于实验中没有实际作业,作业控制块中的信息内容只使用了实验中需要的数据。
作业控制块中首先应该包括作业名;其次是作业所需资源,根据需要,实验中只包括需要主存的大小(采用可移动的动态分区方式管理主存,作业大小就是需要主存的大小)、需要打印机的数量和需要磁带机的数量;采用响应比作业调度算法,为了计算响应比,还需要有作业的估计执行时间、作业在系统中的等待时间;另外,指向下一个作业控制块的指针必不可少。
实验中,作业控制块及队列的数据结构定义如下:typedef struct jcb {char name[4]; //作业名int length; //作业长度,所需主存大小int printer; //作业执行所需打印机的数量int tape; //作业所需磁带机的数量int runtime; //作业估计执行时间int waittime; 作业在系统中的等待时间int next; //指向下一个作业控制块的指针}JCB //作业控制块类型定义存放作业控制块的区域:define n 10 //假定系统中可容纳的作业数量为nJCB jobtable[10]; //作业表int jobcount ; //系统内现有作业数量将作业控制块组织成一个队列,实验中采用静态链表的方式模拟作业的后备队列,如下图所示。
操作系统实验题

1、在操作系统中,进程与线程的主要区别是什么?A. 进程是资源分配的基本单位,线程是处理器调度的基本单位B. 进程和线程都是资源分配和处理器调度的基本单位C. 线程是资源分配的基本单位,进程是处理器调度的基本单位D. 进程和线程都不涉及资源分配问题(答案:A)2、以下哪种调度算法可能会导致饥饿问题?A. 先来先服务(FCFS)B. 短作业优先(SJF)C. 时间片轮转(Round Robin)D. 优先级调度(非抢占式)(答案:B)3、在操作系统的存储管理中,分段存储管理方式的主要目的是?A. 提高内存利用率B. 实现内存保护C. 方便用户编程D. 提高程序运行速度(答案:C)4、关于死锁,以下哪个说法是正确的?A. 死锁是指多个进程因竞争资源而无限期等待的现象B. 死锁只可能发生在多道批处理系统中C. 死锁发生时,系统中一定存在多个进程同时处于就绪状态D. 预防死锁的方法之一是破坏“请求和保持”条件,即要求进程一次性申请所有所需资源(答案:A,注:同时D也是预防死锁的一种方法,但题目要求选择正确说法,A更直接描述了死锁的定义)5、在操作系统的文件系统中,目录结构的主要作用是?A. 实现文件的按名存取B. 提高文件存储的效率C. 增强文件系统的安全性D. 便于用户对文件进行备份(答案:A)6、下列哪一项不是虚拟内存技术的优点?A. 扩大内存容量B. 提高内存利用率C. 简化内存管理D. 加快程序运行速度(在某些情况下可能因换页开销而减慢)(答案:D)7、在操作系统的设备管理中,缓冲区的设置主要是为了?A. 提高设备利用率B. 缓和CPU与I/O设备之间速度不匹配的矛盾C. 实现设备的即插即用D. 减少I/O操作的次数(答案:B)8、关于操作系统的中断机制,以下哪个说法是错误的?A. 中断是由硬件或软件发出的,用于请求CPU处理的事件B. 中断处理过程中,CPU会暂停当前程序的执行,转而执行中断处理程序C. 中断向量表是存储中断处理程序入口地址的表D. 在所有情况下,中断处理程序的执行优先级都高于当前正在运行的程序(答案:D,注:中断处理程序的优先级通常较高,但并非在所有情况下都绝对高于所有正在运行的程序,特别是在某些实时系统中可能有更复杂的优先级策略)。
操作系统课程实验题目

实验1 进程调度算法的模拟(6学时)1.用语言来实现对n个进程采用不同调度算法的进程调度。
2.每个用来标识进程的进程控制块PCB用结构来描述,包括以下字段:(1)进程优先数ID,其中0为闲逛进程,用户进程的标识数为1,2,3…。
(2)进程优先级Priority,闲逛进程(idle)的优先级为0,用户进程的优先级大于0,且随机产生,优先数越大,优先级越高。
(3)进程占用的CPU时间CPUtime,进程每运行一次,累计值等于4。
(4)进程总共需要运行时间Alltime,利用随机函数产生。
(5)进程状态,0:就绪态;1:运行态;2:阻塞态。
(6)队列指针next,用来将多个进程控制块PCB链接为队列。
3.优先数改变的原则(1)进程在就绪队列中每呆一个时间片,优先数增加1。
(2)进程每运行一个时间片,优先数减3。
4.在调度前,系统中拥有的进程数PCB_number由键盘输入,经初始化后,所有的进程控制块PCB链接成就绪队列。
实验2 系统动态分配资源的模拟(6学时)编程序模拟银行家算法,要求能体现算法的全过程实验3 内存分配算法模拟(6学时)设计一个虚拟存储区和内存工作区,编程序演示下述算法的具体实现过程,并计算访问命中率:1、先进先出的算法(FIFO)2、最近最少使用算法(LRU)3、最佳淘汰算法(OPT)4、最不经常使用算法(LFU)实验4 磁盘调度算法模拟(4学时)编程序实现下述磁盘调度算法,并求出每种算法的平均寻道长度:1、先来先服务算法(FCFS)2、最短寻道时间优先算法(SSTF)3、扫描算法(SCAN)4、循环扫描算法(CSCAN)附:实验报告文档格式1.设计目的2.算法及数据结构2.1算法的总体思想(流程)2.2 XXX模块2.2.1 功能2.2.2 数据结构2.2.3 算法2.3 YYY模块3.3.1功能3.3.2 数据结构3.3.3算法3.调试问题及解决过程4.实验结果及分析4.1 实验结果4.2 结果分析。
操作系统实验二报告-时间片轮转进程调度算法1

操作系统实验报告实验二时间片轮转进程调度算法学号:班级:姓名:【实验题目】: 时间片轮转进程调度算法【实验目的】通过这次实验, 加深对进程概念的理解, 进一步掌握进程状态的转变、进程调度的策略与对系统性能的评价方法。
【实验内容】问题描述:设计程序模拟进程的时间片轮转RR 调度过程。
假设有n 个进程分别在T1, … ,Tn 时刻到达系统, 它们需要的服务时间分别为S1, … ,Sn 。
分别利用不同的时间片大小q, 采用时间片轮转RR 进程调度算法进行调度, 计算每个进程的完成时间, 周转时间和带权周转时间, 并且统计n 个进程的平均周转时间和平均带权周转时间。
程序要求如下:1)进程个数n ;每个进程的到达时间T 1, … ,T n 和服务时间S 1, … ,S n ;输入时间片大小q 。
2)要求时间片轮转法RR 调度进程运行, 计算每个进程的周转时间, 带权周转时间, 并且计算所有进程的平均周转时间, 带权平均周转时间;3)输出: 要求模拟整个调度过程, 输出每个时刻的进程运行状态, 如“时刻3: 进程B开始运行”等等;4)输出:要求输出计算出来的每个进程的周转时间, 带权周转时间, 所有进程的平均周转时间, 带权平均周转时间。
实现提示:用C++语言实现提示:1)程序中进程调度时间变量描述如下:int ArrivalTime[100];int ServiceTime[100];int PServiceTime[100];int FinishTime[100];int WholeTime[100];double WeightWholeTime[100];double AverageWT,AverageWWT;bool Finished[100];➢2)进程调度的实现过程如下:➢变量初始化;➢接收用户输入n, T1, … ,Tn, S1, … ,Sn;时间片大小q;➢按照时间片轮转RR算法进行进程调度, 计算进程的完成时间、周转时间和带权周转时间;➢计算所有进程的平均周转时间和平均带权周转时间;➢按格式输出调度结果。
操作系统原理与实践试题及解析

操作系统原理与实践试题及解析第一部分:选择题1. 操作系统的作用是:A. 管理计算机硬件和软件资源B. 提供用户接口C. 控制程序运行D. 执行输入输出操作答案:A2. 操作系统中负责调度进程的是:A. 进程管理器B. 文件管理器C. 内存管理器D. 网络管理器答案:A3. 以下哪个不是操作系统的核心功能:A. 处理器管理B. 文件管理C. 网络管理D. 内存管理答案:C4. 操作系统调度算法中,最短作业优先算法适用于:A. 短作业B. 长作业C. 实时作业D. 批处理作业答案:A5. 在分页系统中,页面置换算法中最优算法的缺点是: A:实现复杂B:无法实时进行C:产生大量的页面失效D:存在局部性原理答案:C第二部分:简答题1. 解释进程和线程的区别。
答:进程是资源分配的最小单位,拥有独立的内存空间和上下文,而线程是CPU调度的最小单位,存在于进程内部,共享相同的内存空间和上下文。
2. 什么是死锁?如何避免死锁的发生?答:死锁是指多个进程或线程因相互请求对方占用的资源而陷入无限等待的状态。
避免死锁的方法包括破坏死锁产生的四个必要条件:互斥条件、请求与保持条件、不剥夺条件和环路等待条件。
3. 请简要解释分页系统和分段系统的原理。
答:分页系统将物理内存和逻辑内存划分为固定大小的页和页面框,通过页表实现页的映射和置换;分段系统根据程序的逻辑结构将程序的地址空间划分为若干段,通过段表实现段的映射和保护。
4. 请简要解释页面置换算法中的FIFO算法和LRU算法。
答:FIFO算法是最简单的页面置换算法,选择最早进入内存的页面进行置换;LRU算法则选择最近最久未使用的页面进行置换。
第三部分:计算题1. 假设一个操作系统具有3个可执行程序,分别需要占用400KB、600KB和800KB的内存空间。
系统的物理内存有1.5MB。
若系统采用固定分区分配方式,分区大小为500KB、800KB和1MB。
请计算内存碎片大小。
操作系统课程设计题目

实验一进程调度一、实验目的观察、体会Linux 系统的进程调度方法,并通过一个简单的进程调度模拟程序的实现,加深对进程调度算法,进程切换的理解。
二、实验内容采用动态优先数的方法,编写一进程调度程序模拟程序。
模拟程序只进行相应的调度模拟操作,不需要实际程序。
[提示]:(1) 假定系统有五个进程,每一个进程用一个进程控制块PCB来代表,进程控制块的格式为:进程名指针要求运行时间优先数状态其中,进程名——作为进程的标识,假设五个进程的进程名分别为P1,P2,P3,P4,P5。
指针——按优先数的大小把五个进程连成队列,用指针指出下一个进程的进程控制块的首地址,最后一个进程中的指针为“0”。
要求运行时间——假设进程需要运行的单位时间数。
优先数——赋予进程的优先数,调度时总是选取优先数大的进程先执行。
状态——可假设有两种状态,“就绪”状态和“结束”状态。
五个进程的初始状态都为“就绪”,用“R”表示,当一个进程运行结束后,它的状态为“结束”,用“E”表示。
(2) 在每次运行你所设计的处理器调度程序之前,为每个进程任意确定它的“优先数”和“要求运行时间”。
(3) 为了调度方便,把五个进程按给定的优先数从大到小连成队列。
用一单元指出队首进程,用指针指出队列的连接情况。
(4) 处理器调度总是选队首进程运行。
采用动态改变优先数的办法,进程每运行一次优先数就减“1”。
由于本实习是模拟处理器调度,所以,对被选中的进程并不实际的启动运行,而是执行:优先数-1要求运行时间-1来模拟进程的一次运行。
提醒注意的是:在实际的系统中,当一个进程被选中运行时,必须恢复进程的现场,让它占有处理器运行,直到出现等待事件或运行结束。
在这里省去了这些工作。
(5) 进程运行一次后,若要求运行时间?0,则再将它加入队列(按优先数大小插入,且置队首标志);若要求运行时间=0,则把它的状态修改成“结束”(E),且退出队列。
(6) 若“就绪”状态的进程队列不为空,则重复上面(4)和(5)的步骤,直到所有进程都成为“结束”状态。
操作系统实验题目

操作系统实验上机准备:➢熟悉Cygwin环境➢编译源程序使用gcc 源程序名–o 目标文件名(缺省为a.out)。
➢学习Linux(Unix)的常用命令。
➢学习vi 编辑器的使用。
➢C语言语法1 进程管理1.1 实验目的加深对于进程并发执行概念的理解。
实践并发进程的创建和控制方法。
观察和体验进程的动态特性。
进一步理解进程生命期期间创建、变换、撤销状态变换的过程。
掌握进程控制的方法,了解父子进程间的控制和协作关系。
练习Linux系统中进程创建与控制有关的系统调用的编程和调试技术。
1.2 实验说明1)与进程创建、执行有关的系统调用说明进程可以通过系统调用fork()创建子进程并和其子进程并发执行.子进程初始的执行映像是父进程的一个复本.子进程可以通过exec()系统调用族装入一个新的执行程序。
父进程可以使用wait()或waitpid()系统调用等待子进程的结束并负责收集和清理子进程的退出状态。
fork()系统调用语法:#include <unistd.h>pid_t fork(void);fork成功创建子进程后将返回子进程的进程号,不成功会返回-1. exec 系统调用有一组6个函数,其中示例实验中引用了execve 系统调用语法:#include <unistd.h>int execve(const char *path, const char *argv[], const char * envp[]); path 要装入的新的执行文件的绝对路径名字符串.argv[] 要传递给新执行程序的完整的命令参数列表(可以为空).envp[] 要传递给新执行程序的完整的环境变量参数列表(可以为空). Exec 执行成功后将用一个新的程序代替原进程,但进程号不变,它绝不会再返回到调用进程了。
如果exec 调用失败,它会返回-1。
getpid()---获取进程的pid● 每个进程都执行自己独立的程序,打印自己的pid ,每个父进程打印其子进程的pid;● 每个进程都执行自己独立的程序,打印自己的pid ,父进程打印其子进程的pid;● 编写一个命令处理程序,能处理max(m,n), min(m,n)和 average(m,n,l)这几个命令。
操作系统实践试题及答案

操作系统实验笔试1.设周期性任务P1, P2, P3的周期T1, T2, T3分别为100, 150, 350; 执行时间分别为20,40,100. 试计算后回答是否可以用频率单调调度算法进行调度?答:频率单调调度算法是一种被广泛用于多周期性实时处理的调度算法。
频率单调调度算法的基本原理是频率越低(周期越长)的任务的优先级越低。
这时,设任务周期为T,任务的执行时间为C,则使用频率单调调度算法的必要条件是C<=T。
已经证明,对于n(n≥1)个周期的不同任务来说,设每个周期为Ti,其相应任务的执行时间为Ci,则使用频率单调调度算法的充分条件是:.对于由3个周期组成的实时任务序列来说,其执行时间与周期之比应是:.由于:所以, 可以用频率单调调度算法进行调度.2.假定某多道程序设计系统供用户使用的主存空间100K, 磁带机2台, 打印机1台, 采用可变分区方式管理主存, 采用静态分配方式分配磁带机与打印机. 忽略用户作业I/O时间. 现有如下作业序列:作业号进入输入井时间要求计算时间主存需求量磁带机需求打印机需求1 8:00 25分钟15K 1台1台2 8:20 10分钟30K 0台1台3 8:20 20分钟60K 1台0台4 8:30 20分钟20K 1台0台5 8:35 15分钟10K 1台1台作业调度策略先来先服务, 优先分配主存的低地址区域且不准移动已在主存的作业, 在主存中的各作业平分CPU时间, 问题如下:(1) 作业调度选中各作业的次序是什么? (2) 全部作业运行结束的时刻是什么? (3) 如果把一个作业从进入输入井到运行结束的时间定义为周转时间, 在忽略系统开销时间条件下, 最大的作业周转时间是多少? (4) 平均周转时间是多少?答:作业号装入主存时间开始执行时间执行结束时间周转时间1 8:00 8:00 8:25 25分钟2 8:45 9:05 9:15 55分钟3 8:20 8:25 8:45 25分钟4 8:30 8:45 9:05 35分钟5 9:15 9:15 9:30 55分钟(1) 1, 3, 4, 2, 5(2) 9:30(3) 55分钟(4) (25+55+25+35+55)/5=39(分钟)3. 设有n个缓冲区构成的循环缓冲区池, 每个缓冲区能容纳一个整数. 写进程Writer把整数逐个存入缓冲区池, 读进程Reader则逐个从缓冲区池中读出并打印输出, 要求打印的与输入的完全一样, 即个数,次序,数值一样. 试问:(1) 写进程与读进程间具体的制约关系如何? (2) 用PV操作写出这两个进程的同步算法程序.答:(1)写进程要领先于读进程, 但当缓冲区全填满时, 要等读进程取数; 读进程要后于写进程, 当缓冲去中无待读的整数时, 要等待写进程写数.(2)程序:beginB: array[0…n-1] of integerW, R: integer;SW, SR: Semaphore;W := 0; R := 0;SW := n; SR := 0;cobeginPROCESS WriterbeginL1: produce a integer into X; (或写生成一整数X;)P( SW );B[W] := X;W := (W+1) mod nV( SR );goto L1;end;PROCESS ReaderbeginL2: P( SR )Y := B[R];R := (R+1) mod nV( SW );Print y;goto L2;end;coend;end;4.某系统对主存采用页式管理, 供用户使用的主存区域共640K字节, 被分成160块, 块号为0,1,2......159. 现有一作业的地址空间共占4页, 其页号为0,1,2,3, 被分配到主存的第2,4,1,5块中, 回答:(1) 作业每一页的长度为多少字节? (2) 写出该作业被装入主存时, 其对应的页表. (3) 把该作业的每一页在主存中的起始地址(用16进制表示)填在下表中页号起始地址0 0020001 0040002 0010003 005000答:(1)每一页的长度为640K/160 = 4K 字节(2)页表1235.作业的调度算法有几种? 简述各自的优缺点.答:1、先来先服务算法.先来先服务算法是最简单的调度算法,它是按照作业进入“输入井”的先后次序来挑选作业,先进入的作业优先被挑选。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四、实验内容:
1、设计创建、终止、阻塞、唤醒原语功能函数。
2、设计主函数,采用菜单结构(参见后面给出的流程图)。
3、设计“显示队列”函数,目的能将就绪、阻塞队列中的进程信息显示在屏幕上,以供随时查看各队
列中进程的变化情况。
五、实验要求:
1、进程 PCB 中应包含以下内容:
进程名 优先级
其中: 进程名用 P1,P2 标识。
3、 界面应友好、美观,在任何情况下,都应有相应的提示信息。
例:创建进程时,屏幕上应提示用户输入什么信息:
进程名:
优先级:
运行时间:
4、 完成时间:三周(6 学时)。
5、 实验报告要求:第一页要求用专用的实验报告纸,其它可用 8 开的白纸。报告内容包括:
(1) 实验题目:
(2) 实验目的:
(3) 实验环境:
信息学院—计算机科学与技术专业
实验题目一:模拟进程创建、终止、阻塞、唤醒原语
一、题目类型:必做题目。
二、实验目的:通过设计并调试创建、终止、阻塞、唤醒原语功能,有助于对操作系统中进程控制功能的
理解,掌握操作系统模块的设计方法和工作原理。
三、实验环境:
1、硬件:pc 机及其兼容机。
2、软件:Windows OS,MS—DOS OS,Turbo C 或 C++、VC++等。
(4) 实验内容:
(5) 算法流程图:
(6) 程序清单:
(7) 程序中使用的数据结构及符号说明:
(8)调试程序《操作系统》实验指导书
信息学院—计算机科学与技术专业
实验题目二:模拟进程调度功能
一、题目类型:必做题目。 二、实验目的:通过本实验,进一步掌握进程调度的功能和实现原理。 三、实验环境:同实验一。 四、实验内容:
第 4 页 共 13 页
《操作系统》实验指导书
信息学院—计算机科学与技术专业
4、 时间充裕的同学,可参照下面的思想,对实验题目一、二进行修改:
(1) 为系统选定某种进程调度算法,选定后,系统将按照该调度算法进行进程的调度。
从相应队列中删除。若该进程不存在,需要给出提示。若就绪队列与阻塞队列均为空,则不能执行
该功能。
5、 显示:将就绪队列与阻塞队列中的进程列表显示出来。
七、其它注意事项:
1、 就绪队列与阻塞队列中不能存在同名进程,且总数最多为 10 个进程。
2、 系统应有出错处理,如:功能选择不在 0----5 之间,应给出相应的提示,并重新选择功能。
本实验指导书,根据教材中的重点内容设定了相应的实验题目,由于实验课程的学时有 限,我们规定了必做题目和选做题目,其中必做题目必须在规定的上机学时中完成,必须有 相应的预习报告和实验报告。选做题目是针对有能力或感兴趣的同学利用课余时间或上机学 时的剩余时间完成。
第 1 页 共 13 页
《操作系统》实验指导书
=0
返回上级菜单
X= ?
=2
? =1
转优先级调度算法
转时间片调度算法
六、各功能简要说明:
1、 返回主菜单:当用户选择该项功能时,系统退出进程调度功能,返回到实验题目一中的主菜单。
2、 优先级调度:选择该功能选项时,系统将从就绪队列中选择优先级最高的进程,使该进程处于执行
状态(将进程 PCB 的内容显示在屏幕上,显示完成后,该进程结束,即撤销该进程的 PCB)。
《操作系统》实验指导书
引言
信息学院—计算机科学与技术专业
操作系统是计算机专业一门重要的专业理论课程,了解和掌握操作系统的基本概念、功 能和实现原理,对认识整个计算机系统的工作原理十分重要。
操作系统实验是操作系统课程的一个重要组成部分,通过试验环节的锻炼使同学们不仅 能够对以前的所学过的基础知识加以巩固,同时能够通过上机实验,对操作系统的抽象理论 知识加以理解,最终达到融会贯通的目的,因此,实验环节是同学们理解、掌握操作系统基 本理论的一个重要环节。
运行时间
优先级及运行时间:为实验题目二做准备。
状态
状态为:就绪、运行、阻塞,三种基本状态。
指针
指针:指向下一个 PCB。
2、系统总体结构:
开始
系统主菜单
1…创建 2…阻塞 3…唤醒 4…终止 5…显示 0…退出 请输入您需要的功能(0-5):
0 退出 结束
1 创建
输入选择=?
2
3
5 4
阻塞
唤醒
终止
第 2 页 共 13 页
1、 设计进程调度功能,至少模拟两种以上调度算法。如:优先级调度算法、时间片调度算法等。 2、 进程调度功能作为一个函数 scheduler,加入到实验题目一中。 3、 进程调度程序从就绪队列中挑选进程,若队列为空,应显示“无就绪进程无法调度”的提示信息。 4、 若选上一个进程,以显示:进程名、状态、时间片、优先级等信息表示一个进程被执行。若运行完,
显示
《操作系统》实验指导书
信息学院—计算机科学与技术专业
六、各功能简要说明:
1、 创建:在本实验中,该功能仅实现建立 PCB,初始化 PCB,并将该 PCB 放入就绪队列中。
2、 阻塞:在本实验中,实现的功能为,根据用户输入的进程名称在就绪队列中查找该进程,若该进程
存在且在就绪队列中,则修改该进程 PCB 的状态,并将该进程从就绪队列转入阻塞队列;若该进程
3、 时间片调度:每选择一次该功能,将就绪队列中所有进程的内容显示在屏幕上,并将每个执行进程
的执行时间减去一个时间片,若某进程的剩余时间小于等于 0,则表明该进程运行结束,撤销该进
程的 PCB。
七、其它注意事项:
1、 设计界面要美观、友好。
2、 若显示信息较多时,应考虑分屏显示。
3、 完成时间:二周内。
应删除相应 PCB。 五、实验要求:
1、 在实验题目一中的主菜单中加入一个菜单项:6 调度,选择该菜单项后,系统进入进程调度。 2、 进程调度的结构:
进程调度子菜单 0---------返回主菜单 1---------优先级调度 2---------时间片调度 请选择您需要的功能选项:
读入选择=》x =》x
存在且已在阻塞队列中,则给出相应的提示信息;若该进程不存在,也需要给出相应的提示信息。
注意:若就绪队列为空,则不能执行阻塞功能。
3、 唤醒:功能类似阻塞功能,注意:若阻塞队列为空,则不能执行唤醒功能。
4、 终止:根据用户输入要结束的进程名称,从就绪队列或阻塞队列中找到相应的进程 PCB,并将该 PCB