资源简介

1、设计一个程序实现基于优先数的时间片轮转调度算法调度处理器。 2、假定系统有5个进程,每个进程用一个进程控制块PCB开代表,进程控制块的结构 /*例如一组进程如下表: 进程名 A B C D E F G H J K L M 到达时间 0 1 2 3 6 8 12 12 12 18 25 25 服务时间 6 4 10 5 1 2 5 10 4 3 15 8 */ PCB:进程名 指针 到达时间 要求运行时间 已运行时间 优先

资源截图

代码片段和文件信息


/*
进程名:作为进程的标识。
指针:进程按顺序排成循环链表,
用指针指出下一个进程的进程控制块首地址,
最后一个进程中的指针指出第一个进程的进程控制块首地址。
要求运行时间:假设进程需要运行的单位时间数。
已运行时间:假设进程已经运行的单位时间数,初值为0。
状态:可假设有两种状态,就绪状态和结束状态。
进程的初始状态都为就绪状态。
*/
public class PCB extends Work{
public PCB(String name int t1 int t2 ) {
super(name t1 t2);
// TODO Auto-generated constructor stub
}
/** 下一个进程*/
private PCB next=null;
/**已运行的时间*/
private int usedTime;
/** 进程的状态ready 和 done两种*/
private Status status=Status.ready;
private int proir;
/**
 * 得到下一个进程
 * @return
 */
public PCB getNext(){
return this.next;
}
/**
 * 执行一个时间片
 */
public void goOneStep(){
this.usedTime++;
}
/**
 * 设置优先数
 * @param p
 */
public void setProir(int p){
this.proir=p;
}
/**
 * 取优先数
 * @return
 */
public int getPr

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-05-13 13:20  New\
     文件         232  2013-05-13 13:21  New\.classpath
     文件         379  2013-05-13 10:19  New\.project
     目录           0  2013-05-13 13:20  New\.settings\
     文件         629  2013-05-13 10:19  New\.settings\org.eclipse.jdt.core.prefs
     目录           0  2013-05-13 13:21  New\bin\
     文件        1009  2013-05-13 15:07  New\bin\PCB.class
     文件         873  2013-05-13 15:07  New\bin\Status.class
     文件        3732  2013-05-13 17:36  New\bin\Test.class
     文件        1543  2013-05-13 13:21  New\bin\Work.class
     目录           0  2013-05-13 13:20  New\src\
     文件        1237  2013-05-13 15:07  New\src\PCB.java
     文件          83  2013-05-13 15:07  New\src\Status.java
     文件        3133  2013-05-13 17:36  New\src\Test.java
     文件        1802  2013-05-13 10:59  New\src\Work.java

评论

共有 条评论