欢迎来到天天文库
浏览记录
ID:58234928
大小:106.00 KB
页数:9页
时间:2020-05-19
《用c#FCFS与SJF算法实现作业调度.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、郑州轻工业学院本科实验报告设计题目:实现FCFS与SJF作业调度算法学生姓名:系别:计算机与通信工程学院专业:网络运维班级:13-01学号:指导教师:吴庆岗实验目的编写程序,实现FCFS和SJF算法,模拟作业调度过程,加深对作业调度的理解。实验内容实现FCFS和SJF调度算法。–数据结构设计(JCB,后备作业队列)–算法实现与模拟(排序、调度)–输出调度结果,展示调度过程并解释实验结果FCFS算法SJF算法源代码本次试验使用c#的winform界面实现。Jcb类usingSystem;usingSystem.Collections.Generic;us
2、ingSystem.Linq;usingSystem.Text;namespacejob{publicclassjcb{//////作业编号///publicintID{get;set;}//////优先级///publicintlevel{get;set;}//////到达时间///publicdoubleArriveTime{get;set;}//////开始运行时间///publicdoubleS
3、tartTime{get;set;}//////服务时间///publicdoubleServeTime{get;set;}//////完成时间///publicdoubleFinishTime{get;set;}//////周转时间///publicdoubleCyclingTime{get;set;}//////带权周转时间///publicdoubleWeight_CyclingTime{get;
4、set;}}}Form1类usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Threading;namespacejob{publicpartialclassForm1:Form{publicForm1(){InitializeComponent(
5、);radioButton_fcfs.Checked=true;}//////用来给作业编号;///intindex=0;Listlist=newList();privatevoidbtnAddJob_Click(objectsender,EventArgse){jcbj=newjcb();j.ID=index;j.ArriveTime=double.Parse(textBox_arrive.Text);j.ServeTime=double.Parse(textBox_serve.Text);l
6、ist.Add(j);index++;refreshGrid();}//////刷新列表///privatevoidrefreshGrid(){dataGridView1.DataSource="";dataGridView1.DataSource=list;}privatevoidtimer1_Tick(objectsender,EventArgse){list.Remove(list[0]);timer1.Enabled=false;refreshGrid();}//////调度函数用来排列好
7、作业的调度顺序;///privatevoiddispatcher(){if(radioButton_fcfs.Checked==true){inti,j;jcblittle,big;for(j=0;jlist[i+1].ArriveTime){//用big表示到达晚的作业,little代表早的作业;big=list[i];little=list[i+1];list[i]=little;list
8、[i+1]=big;}}}}else{inti,j;jcblittle,big;for(j=0
此文档下载收益归作者所有