您现在的位置是:主页 > news > 做动态网站 和数据库交互/百度一下免费下载安装
做动态网站 和数据库交互/百度一下免费下载安装
admin2025/5/8 23:31:50【news】
简介做动态网站 和数据库交互,百度一下免费下载安装,江西省建设厅网站,wordpress是一种. . . .. .学习好帮手静态优先权优先算法的进程调度程序学 院专 业学 生 姓 名学 号指导教师姓名21014年 3 月 19 日目 录TOC \o "1-3" \h \z \u 1.系统需求分析 11.1问题描述 11.2功能要求 12.总体设计 12.1总体设计图 12.2各模块功能 22.3相关数据结构设计 33.详细…
. . . .. .
学习好帮手
静态优先权优先算法的进程调度程序
学 院
专 业
学 生 姓 名
学 号
指导教师姓名
21014年 3 月 19 日
目 录
TOC \o "1-3" \h \z \u 1.系统需求分析 1
1.1问题描述 1
1.2功能要求 1
2.总体设计 1
2.1总体设计图 1
2.2各模块功能 2
2.3相关数据结构设计 3
3.详细设计 3
3.1采用C语言定义的相关数据类型 3
3.2调度算法的主要实现 4
4.运行结果4
4.1系统调试4
4.2功能实现界面5
5.使用说明7
6.心得体会8
7.附录8
7.1 源代码8
7.2 参考文献17
. . . .. .
学习好帮手
1.系统需求分析
1.1问题描述
1)设计并实现一个采用静态优先权算法的进程调度演示程序。并且求出每个进程的周转时间以及带权周转时间。
2) 静态优先权是在创建进程时确定的,且在进程的整个运行期间保持不变.
一般地,优先权是利用某一范围内的一个整数来表示的,例如,0~7或0~255中的某一整数, 又把该整数称为优先数.只是具体用法各异:有的系统用"0"表示最高优先权,当数值愈大时,其优先权愈低;而有的系统恰恰相反.
确定进程优先权的依据有如下三个方面:
a.进程类型.(系统进程/用户进程)
b.进程对资源的需求.(需求量的大小)
c.用户要求.(用户进程紧迫程度)
3)本程序采用优先级数字大的优先权大。
1.2功能要求
1)每一个进程有一个PCB,其内容可以根据具体情况设定。
2)进程数、进入内存时间、要求服务时间、优先级等均可以在界面上设定。
3)可读取样例数据(要求存放在外部文件中)进行进程数、进入内存时间、进程优先级的初始化。
4)可以在运行中显示各进程的状态:就绪、执行 (由于不要求设置互斥资源与进程间的同步关系,故只有两种状态)。
5)具有一定的数据容错性。
2.总体设计
2.1总体设计图
系统总体设计如图2.1所示。
0、
0、结束
1、进程的创建及模拟
输入进程数
输入优先级
输入进入内存时间
输入服务时间
输出运行结果
静态优先权优先算法
2、读取文件数据及模拟
输出运行结果
图2.1 系统总体设计
2.2各模块功能
1) void buildProcess():手动创建进程。
2) struct PCB * callMemory():将符合条件的进程调入内存。
3) void ListAllPCB(struct PCB *h):打印所有进程到屏幕上。
4) void Menu():菜单以及执行。
5) void newPCB():创建进程。在1)中被调用。
6) void readFromFile():从文件中读取数据。
7) void readyList(struct PCB *pcb):就绪列表。
8) void release(struct PCB *pcb),void releaseR(struct PCB *pcb):释放进程。
9) void run():执行静态优先级进程调度算法。
10)struct PCB * runTheProcess():标识要执行的进程。
11)void setNewPCB(char *name,int pri,int entime,int sertime):创建进程。在6)中被调用。
12) int timeOfData(FILE *f):计算文件中进程数量。在6)中被调用。
2.3相关数据结构设计
结构体:struct PCB{} *head,*readyHead;
3.详细设计
3.1采用C语言定义的相关数据类型
struct PCB
{
int ArrivalTime;
int ServiceTime;
char number[10]