|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--Scheduler
A Scheduler schedules jobs seeking service from a Device. The class Scheduler itself is "abstract", meaning that there are no instance of Scheduler, only of its subclasses. This simulation has two Schedulers: DiskScheduler for scheduling the disk and RRScheduler for scheduling the CPU. As part of the assignment, students will write other schedulers for the CPU. The base class takes care of maintaining statistics on queue lengths. The subclasses do all the actual work.
DiskScheduler
,
RRScheduler
Constructor Summary | |
Scheduler()
|
Method Summary | |
abstract boolean |
add(Job newJob,
Job currentJob)
A new job has just requested service for the device. |
void |
endBurst(Job job)
This method is called when a job finishes a burst. |
abstract void |
printQueue()
For debugging: print the queue of waiting jobs |
void |
printStats()
Print statistics about the history of this queue. |
protected void |
queueChanged(int amount)
This method should be called by a subclass whenever the queue length changes. |
abstract Job |
remove()
Retrieve (and remove) the next job to be served. |
abstract boolean |
reschedule(Job j)
This method is called when there is a clock interrupt. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Constructor Detail |
public Scheduler()
Method Detail |
public abstract boolean add(Job newJob, Job currentJob)
newJob
- the job newly awaiting service for the device.currentJob
- the job currently using the device, if any (may be
null).public abstract Job remove()
public abstract boolean reschedule(Job j)
j
- the job currently being serviced by the corresponding device.public void endBurst(Job job)
job
- the job that just finished its burst.public abstract void printQueue()
protected void queueChanged(int amount)
public void printStats()
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |