进程调度模拟程序设计 是自己上机实验 和你的要求也许不知道一样但是你可以看看啊 模拟进程调度算法:用C++的代码描述:#include\"iostream.h\"/define pcb typedef struct pcb { char name[10];进程调度算法的模拟与实现 import java.util.Arrays;public class SCAN {public static void main(String[]args){SCAN s=new SCAN();int[]a={ 55,58,39,18,90,160,150,38,184 };int nowway=100;int[]high=s.high(nowway,a);高磁道int hl=high.length;int[]low=s.low(nowway,a);低磁道int ll=low.length;int[]all=new int[hl+ll];for(int i=0;i;i+){all[i]=high[i];}for(int i=0,j=0;i;i+,j+){all[hl+i]=low[j];}int[]movelength=new int[all.length];for(int i=0;i;i+){System.out.print(all[i]+\"\");int move=0;if(i=0){move=all[0]-100;movelength[i]=move;System.out.println(\"移动磁道数\"+move);continue;}if(all[i]>all[i-1]){move=all[i]-all[i-1];movelength[i]=move;} else {move=all[i-1]-all[i];movelength[i]=move;}System.out.println(\"移动磁道数\"+move);}int summovelentgth=0;for(int i=0;i;i+){summovelentgth+movelength[i];}System.out.println(\"平均寻道长度:\"+(double)summovelentgthmovelength.length);}public int[]low(int nowway,int[]a){int mincount=0;for(int i=0;i;i+){if(a[i]){mincount+;小于磁道数的}}int[]a1=new int[mincount];int j=0;for用c语言编写设计一个模拟有N个进程并行的进程调度程序 起码100分啊100分我给你编进程调度算法模拟程序设计 public class PrivilegeProcess {public static void main(String[]args){MyQueue myqueue=new MyQueue();声明队列PCB[]pcb={new PCB(001,8,1),new PCB(002,7,9),new PCB(003,3,8),new PCB(004,1,7),new PCB(005,7,4)};PCB para=new PCB();for(int i=0;i;i+){/初始化后首先执行一次排序,这里使用的是选择排序,优先级高的先入队for(int j=i;j;j+){if(pcb[i].privilege[j].privilege){para=pcb[i];pcb[i]=pcb[j];pcb[j]=para;}}}System.out.println(\"初次入队后各进程的顺序:\");for(int i=0;i;i+){System.out.println(\"初次入队后#processname:\"+pcb[i].name+\"totaltime:\"+pcb[i].totaltime+\"privilege:\"+pcb[i].privilege);}System.out.println();myqueue.start(pcb);}}class MyQueue {int index=0;PCB[]pc=new PCB[5];PCB[]pc1=new PCB[4];PCB temp=new PCB();public void enQueue(PCB process){/入队算法if(index=5){System.out.println(\"out of bounds!return;}pc[index]=process;index+;}public PCB deQueue(){/出队算法if(index=0)return null;for(int i=0;i;i+){pc1[i]=pc[i+1];}index-;temp=pc[0];for(int i=0;i;i+){pc[i]=pc1[i设计一个按优先数调度算法实现处理器调度的程序. include#include/提供atoi()函数#include/提供clrscr()函数#define M 10/字符串大小常量#define N 3/进程数常量#d求进程调度算法 http://hi.baidu.com/vivian_716/blog/item/9c4db3506a54c86384352468.html进程调度模拟程序 #includeincludeincludedefine P_NUM 3/进程数define P_TIME 1/时间片长度define MIN-9999enum state/进程状态{ready,/就绪run,/执行wait,/阻塞finish/完成};class Pcb{public:static void print(){};Pcb();protected:char*name;进程名int allTime;需要运行时间int cpuTime;已用cpu时间state process;进程状态};class HPcb:public Pcb{public:static void print();static void highS();static int getFirst();private:int firstNum;};HPcb hpcb[P_NUM];class FPcb:public Pcb{public:static void print();static void fcfs();private:int comeTime;};FPcb fpcb[P_NUM];int HPcb:getFirst()/得到优先级最高的进程{int k=0;for(int i=1;i;i+)if(hpcb[k].firstNum[i].firstNum)k=i;return k;}void HPcb:highS()/最高优先数优先的调度算法{int ii,f,i=0;for;i;i+){char*ch;ch=new char[1];cout请输入第\"个进程的“进程名”、“优先数”、“需要运行的时间”:\";cin>>ch;hpcb[i].name=new char[strlen(ch)+1];strcpy(hpcb[i].name,ch);cin>>hpcb[i].firstNum>>hpcb[i].allTime;hpcb[i].cpuTime=0;hpcb[i].process=ready;}do{f=用C语言编写并调试一个模拟的进程调度程序,采用“简单时间片轮转法”调度算法对五个进程进行调度。 #include\"stdio.hinclude\"stdlib.hinclude\"string.hstruct PCB {char NAME[10];进程名*/int ROUND;进程轮转时间片*/int REACHTIME;进程到达时间*/int CPUTIME;进程占用CPU时间*/int COUNT;计数器*/int NEEDTIME;进程完成还要的CPU时间*/char STATE;进程的状态*/struct PCB*NEXT;链指针*/};struct LINK {/*PCB的链结构*/struct PCB*RUN;当前运行进程指针*/struct PCB*READY;就绪队列头指针*/struct PCB*TAIL;就绪队列尾指针*/struct PCB*FINISH;完成队列头指针*/};void INIT(LINK*);对PCB的链结构初始化*/void INSERT(LINK*);将执行了一个单位时间片数且还未完成的进程的PCB插到就绪队列的队尾*/void FIRSTIN(LINK*);将就绪队列中的第一个进程投入运行*/void PRINT(LINK*);打印每执行一个时间片后的所有进程的状态*/void PR(PCB*);打印一个进程的状态*/int CREATE(LINK*,int);创建新的进程*/void ROUNDSCH(LINK*);按时间片轮转法调度进程*/void main(){LINK pcbs;int i;INIT(&pcbs);i=0;printf(\"创建5个进程\\n\\n\");while(i){if(CREATE(&pcbs,i+1)=1){printf(\"进程已创建\\n\\n\");i+;}elseprintf(\"进程创建失败\\n\\n\");}FIRSTIN(&pcbs);设计一个按优先数调度算法实现处理器调度的程序. include#include/提供atoi()函数#include/提供clrscr()函数#define M 10/字符串大小常量#define N 3/进程数常量#define SLOT 2typedef struct node{ char name[M];int prio;优先级 int round.求编程模拟进程调度算法,c语言版,要求用先来先服务。 先来先服务:用队列来实现,至于是循环队列,链队还是顺序队列,那要看具体问题决定进程调度:可以将要处理的任务集成为函数,并定义函数指针,最后将指针入队就行了说白了,就是对队列的各种操作~
随机阅读
- 汽车仪表盘上有个黄色圆圈里面有个感叹号是什么意思 汽车仪表盘有个黄色圆圈带感叹号
- 潘家园依视路是正品么 您好,我在潘家园买了依视路A2的镜片,有一个包装没有防伪标签,但是哈气会显示字,这是真的依视路吗?
- 去九寨沟旅游,想找一家信誉好的旅行社,选中了四川中国旅行社,但有好多家。想知道谁是正宗。 四川省中国旅行社附近地铁
- 昆明汇仁堂是药店吗 谁能提供国企医药公司排名~谢谢~~
- 马池口村北 朝阳门到昌平马池口村
- 重庆韩式隆鼻价格贵不贵?重庆做韩式隆鼻最好的整形医院? 重庆韩式隆鼻整形医院6征询-星宸
- 为什么微信?对方星标朋友了,对方朋友圈还是看不全,只能偶尔看到当天发的几个。? 微信能看到对方的星标朋友嘛
- 非因工死亡待遇 济宁永丰街小学分校电话
- 重庆云阳小江快速路 寻仙怎样升级快?谁能详细说说???
- 带违规物品上飞机该如何处罚 飞机行李违规比如装了个打火机不管的话我飞走了行李会扣押还是怎么办。
- 什么是一个中心 三重防护 等保 边界防护设备是什么
- 单根粗钢筋用作预应力钢筋,张拉端应该采用什么锚具? 预应力是依靠钢筋端部的锚具来传递的
- 石头剪刀布游戏的效果观察 现有甲、乙、丙三个儿童玩石头、剪刀、布的猜拳游戏,观察其出拳情况.
- 去云南旅游团去购物点不买会怎么样 跟团到云南旅游不购物的话会被导游刁难么?
- 永丰县县长信箱 江西省永丰县农村水井饮用水被邻居化粪池污染怎么投诉
- 你觉得卡牌大师哪个皮肤用起来手感最好? 卡牌未来战士原画
- 柯镇恶是因为什么到桃花岛上 江南七怪之首的飞天蝙蝠柯镇恶为什么到桃花岛的?
- 重庆南滨路巴味堂的公交路线 新山村到南滨路
- 调音台的调音技巧 调音台调试图
- 天边在那个地方 中国哪个城市最靠近天边