|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecthu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler
hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.FirstFitScheduler
public class FirstFitScheduler
This class implements one of the simplest VM schedulers: it places every VM on the first PM that would actually accept it. The scheduler does not rearrange the queue, thus if there would be some queued entities that would be possible to schedule this scheduler just ignores them until they reach the head of the queue.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler |
---|
Scheduler.QueueingEvent |
Field Summary | |
---|---|
private PMIterator |
it
the iterator of the running PMs allowing to easily traverse the PM set in a predefined order. |
(package private) PhysicalMachine.ResourceAllocation |
raBiggestNotSuitable
the largest allocation that was possible to collect from all running PMs in the infrastructure. |
(package private) PhysicalMachine.ResourceAllocation[] |
ras
The set of resource allocations made for the current VM request (this is important for multi VM requests) |
Fields inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler |
---|
freeCapacity, parent, pmComparator, pmstateChanged, publicTQ, queue |
Constructor Summary | |
---|---|
FirstFitScheduler(IaaSService parent)
the constructor of the scheduler that passes on the parent IaaS service and initiates the basic PM iterator for this scheduler which will |
Method Summary | |
---|---|
protected PMIterator |
getPMIterator()
Resets the iterator then offers it to the caller |
protected PMIterator |
instantiateIterator()
Allows the customization of the PM iterator by subclasses. |
protected ConstantConstraints |
scheduleQueued()
The actual first fit scheduling implementation. |
Methods inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler |
---|
dropVMrequest, getQueuedVMs, getQueueLength, getTotalQueued, manageQueueRemoval, manageQueueRemoval, scheduleVMrequest, subscribeQueueingEvents, unsubscribeQueueingEvents |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
PhysicalMachine.ResourceAllocation[] ras
PhysicalMachine.ResourceAllocation raBiggestNotSuitable
private final PMIterator it
Constructor Detail |
---|
public FirstFitScheduler(IaaSService parent)
parent
- Method Detail |
---|
protected PMIterator instantiateIterator()
protected PMIterator getPMIterator()
protected ConstantConstraints scheduleQueued()
scheduleQueued
in class Scheduler
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |