- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
进程调度模拟设计—优先级法非强占式短进程优先算法
附件1: 学 号:
课 程 设 计
题 目 进程调度
课程设计任务书
学生姓名: 专业班级: 计科
指导教师: 工作单位: 计算机科学与技术学院
题 目: 进程调度能够处理以下的情形:能够选择不同的调度算法(要求中给出的调度算法)显示进程调度队列i)你认为你完成的设计哪些地方做得比较好或比较出色;
ii)什么地方做得不太好,以后如何改正;
iii)从本设计得到的收获(在编写,调试,执行过程中的经验和教训);
iv)完成本题是否有其他方法(如果有,简要说明该方法);
v)对实验题的评价和改进意见,请你推荐设计题目。
时间安排:
设计安排一周:周1、周2:完成程序分析及设计。
周2、周3:完成程序调试及测试。
周4、周5:验收、撰写课程设计报告。
(注意事项:严禁抄袭,一旦发现,抄与被抄的一律按0分记)
指导教师签名: 年 月 日
系主任(或责任教师)签名: 年 月 日
进程调度能够struct Time
{
int thour;
int tminute;
}; //时间
struct JinCheng
{
char name;//名称限字符
int precedence;//优先级限数字
Time In_time;
Time Run_time;
Time Zhouzhuan_time;
int ChuliBiaozhi; //用来判断是否已经处理过了 未处理为0
int ShijianBiaozhi;//用来判断进程是否已经到达
};
简要说明
两个标志ChuliBiaozhi和ShijianBiaozhi分别表示了进程是否已经处理,以及进程是否已经提交,有效都为1.这样设置方便了后面的算法设计。
2.3 模块说明
在此次课程设计中大体设置了四个模块。包括结构体定义、过程函数的构建、两种调度算法的实现、以及主函数。
结构体的定义如同2.2数据结构;此次课程设计中用到的过程函数有如下几个:
char Compare_time(Time time1, Time time2)
//时间之间的比较 返回大小用 =表示
Time ZhouZhuan_time(Time time1,Time time2)
//计算两个时间之差 主要用于计算周转时间 返回值为时间
Time QiuHe_time(Time time1,Time time2)
//用于计算时间的求和运算 返回值为时间
Time Div_time1(Time time1, int n)
//时间除以一个整型变量 返回值为时间 主要用于求平均周转时间
float Div_time2(Time time1,Time time2)
//时间之间的相除 返回值为浮点型 主要用于求带全周转时间
void BiaoJi_time(Time Sum, JinCheng a[],int n)
//标记函数 用来标记进程中的ShijianBiaozhi 标记已经提交的进程
void PaiXu_shijian(JinCheng bb[],int n)
//排序函数 对进程按照提交先后顺序排序 在此处使用了冒泡方法
void Print_answer(JinCheng bb[],int n)
//打印函数 用于结果的标准化输出
void CopyJC(JinCheng a[],JinCheng b[],int n)
//复制函数 把一个进程队列复制下来 在后面处理复制的进程队列 用于保护原始数据
两种调度算法的实现也是使用了函数的调用:
void YouXianJiFa(JinCheng a[],int n)//优先级法
void DuanJinCheng(JinCheng a[],int n)//非强占式短进程优先法
程序流程图
源程序
具体源程序见附表1。
以下为优先级法函数:
void YouXianJiFa(JinCheng a[],int n)
{
Time Sum_run;
Sum_run.thour=0;
Sum_run.tminute=0;
JinCheng temp;
JinCheng * bb= new JinCheng[n];
CopyJC(a,bb,n);
PaiXu_shijian(bb,n);
Sum_run=QiuHe_time(Sum_run,bb[0].In_time);
Sum_run=QiuHe_time(Sum_run,bb[0].Run_time);
bb[0].ChuliBiaozh
您可能关注的文档
最近下载
- 浙江省金砖联盟2024-2025学年高一上学期期中联考语文试卷(含答案).pdf VIP
- 创投行业的介绍.pptx VIP
- 视频处理软件:Adobe Premiere Pro二次开发_(10).转场效果脚本开发.docx VIP
- 上海华虹(集团)有限公司909工程升级改造——华虹集团建.PDF VIP
- 视频处理软件:Adobe Premiere Pro二次开发_(9).常用视频效果脚本开发.docx VIP
- 礼记:大同.ppt VIP
- 视频处理软件:Adobe Premiere Pro二次开发_(8).媒体文件导入导出脚本.docx VIP
- 视频处理软件:Adobe Premiere Pro二次开发_(7).项目和序列管理脚本.docx VIP
- 2024-2025学年七年级语文下学期期末真题分类汇编文言文阅读(湖南专用).docx VIP
- 视频处理软件:Adobe Premiere Pro二次开发_(6).视频处理自动化流程.docx VIP
原创力文档


文档评论(0)