public abstract class CloudletScheduler
extends java.lang.Object
| Constructor and Description |
|---|
CloudletScheduler()
Creates a new CloudletScheduler object.
|
| Modifier and Type | Method and Description |
|---|---|
abstract Cloudlet |
cloudletCancel(int clId)
Cancels execution of a cloudlet.
|
abstract void |
cloudletFinish(ResCloudlet rcl)
Processes a finished cloudlet.
|
abstract boolean |
cloudletPause(int clId)
Pauses execution of a cloudlet.
|
abstract double |
cloudletResume(int clId)
Resumes execution of a paused cloudlet.
|
abstract double |
cloudletSubmit(Cloudlet gl)
Receives an cloudlet to be executed in the VM managed by this scheduler.
|
abstract double |
cloudletSubmit(Cloudlet gl,
double fileTransferTime)
Receives an cloudlet to be executed in the VM managed by this scheduler.
|
abstract int |
getCloudletStatus(int clId)
Gets the status of a cloudlet.
|
java.util.List<java.lang.Double> |
getCurrentMipsShare()
Gets the current mips share.
|
abstract java.util.List<java.lang.Double> |
getCurrentRequestedMips()
Gets the current requested mips.
|
abstract double |
getCurrentRequestedUtilizationOfBw()
Gets the current requested bw.
|
abstract double |
getCurrentRequestedUtilizationOfRam()
Gets the current requested ram.
|
abstract Cloudlet |
getNextFinishedCloudlet()
Returns the next cloudlet in the finished list, $null if this list is empty.
|
double |
getPreviousTime()
Gets the previous time.
|
abstract double |
getTotalCurrentAllocatedMipsForCloudlet(ResCloudlet rcl,
double time)
Gets the total current allocated mips for cloudlet.
|
abstract double |
getTotalCurrentAvailableMipsForCloudlet(ResCloudlet rcl,
java.util.List<java.lang.Double> mipsShare)
Gets the total current mips for the Cloudlet.
|
abstract double |
getTotalCurrentRequestedMipsForCloudlet(ResCloudlet rcl,
double time)
Gets the total current requested mips for cloudlet.
|
abstract double |
getTotalUtilizationOfCpu(double time)
Get utilization created by all cloudlets.
|
abstract boolean |
isFinishedCloudlets()
Informs about completion of some cloudlet in the VM managed by this scheduler.
|
abstract Cloudlet |
migrateCloudlet()
Returns one cloudlet to migrate to another vm.
|
abstract int |
runningCloudlets()
Returns the number of cloudlets runnning in the virtual machine.
|
protected void |
setCurrentMipsShare(java.util.List<java.lang.Double> currentMipsShare)
Sets the current mips share.
|
protected void |
setPreviousTime(double previousTime)
Sets the previous time.
|
abstract double |
updateVmProcessing(double currentTime,
java.util.List<java.lang.Double> mipsShare)
Updates the processing of cloudlets running under management of this scheduler.
|
public CloudletScheduler()
public abstract double updateVmProcessing(double currentTime,
java.util.List<java.lang.Double> mipsShare)
currentTime - current simulation timemipsShare - array with MIPS share of each processor available to the schedulerpublic abstract double cloudletSubmit(Cloudlet gl, double fileTransferTime)
gl - the submited cloudletfileTransferTime - time required to move the required files from the SAN to the VMpublic abstract double cloudletSubmit(Cloudlet gl)
gl - the submited cloudletpublic abstract Cloudlet cloudletCancel(int clId)
clId - ID of the cloudlet being cancealedpublic abstract boolean cloudletPause(int clId)
clId - ID of the cloudlet being pausedpublic abstract double cloudletResume(int clId)
clId - ID of the cloudlet being resumedpublic abstract void cloudletFinish(ResCloudlet rcl)
rcl - finished cloudletpublic abstract int getCloudletStatus(int clId)
clId - ID of the cloudletpublic abstract boolean isFinishedCloudlets()
public abstract Cloudlet getNextFinishedCloudlet()
public abstract int runningCloudlets()
public abstract Cloudlet migrateCloudlet()
public abstract double getTotalUtilizationOfCpu(double time)
time - the timepublic abstract java.util.List<java.lang.Double> getCurrentRequestedMips()
public abstract double getTotalCurrentAvailableMipsForCloudlet(ResCloudlet rcl, java.util.List<java.lang.Double> mipsShare)
rcl - the rclmipsShare - the mips sharepublic abstract double getTotalCurrentRequestedMipsForCloudlet(ResCloudlet rcl, double time)
rcl - the rcltime - the timepublic abstract double getTotalCurrentAllocatedMipsForCloudlet(ResCloudlet rcl, double time)
rcl - the rcltime - the timepublic abstract double getCurrentRequestedUtilizationOfRam()
public abstract double getCurrentRequestedUtilizationOfBw()
public double getPreviousTime()
protected void setPreviousTime(double previousTime)
previousTime - the new previous timeprotected void setCurrentMipsShare(java.util.List<java.lang.Double> currentMipsShare)
currentMipsShare - the new current mips sharepublic java.util.List<java.lang.Double> getCurrentMipsShare()