Class CloudletSchedulerSpaceShared

java.lang.Object
org.cloudbus.cloudsim.schedulers.cloudlet.CloudletSchedulerAbstract
org.cloudbus.cloudsim.schedulers.cloudlet.CloudletSchedulerSpaceShared
All Implemented Interfaces:
Serializable, CloudletScheduler

public class CloudletSchedulerSpaceShared extends CloudletSchedulerAbstract
Implements a policy of scheduling performed by a virtual machine to run its Cloudlets. It considers there will be only one Cloudlet per VM. Other Cloudlets will be in a waiting list. It also considers that the time to transfer Cloudlets to the Vm happens before Cloudlet starts executing. I.e., even though Cloudlets must wait for CPU, data transfer happens as soon as Cloudlets are submitted.

This scheduler does not consider Cloudlets priorities to define execution order. If actual priorities are defined for Cloudlets, they are just ignored by the scheduler.

Since:
CloudSim Toolkit 1.0
Author:
Rodrigo N. Calheiros, Anton Beloglazov, Manoel Campos da Silva Filho
See Also:
  • Constructor Details

    • CloudletSchedulerSpaceShared

      public CloudletSchedulerSpaceShared()
  • Method Details

    • cloudletResume

      public double cloudletResume(Cloudlet cloudlet)
      Description copied from interface: CloudletScheduler
      Resumes execution of a paused cloudlet.
      Parameters:
      cloudlet - the cloudlet being resumed
      Returns:
      expected finish time of the cloudlet, 0.0 if queued or not found in the paused list
    • canExecuteCloudletInternal

      protected boolean canExecuteCloudletInternal(CloudletExecution cle)
      The space-shared scheduler does not share the CPU time between executing cloudlets. Each CPU (Pe) is used by another Cloudlet just when the previous Cloudlet using it has finished executing completely. By this way, if there are more Cloudlets than PEs, some Cloudlet will not be allowed to start executing immediately.
      Specified by:
      canExecuteCloudletInternal in class CloudletSchedulerAbstract
      Parameters:
      cle -
      Returns:
      See Also:
      • CloudletSchedulerAbstract.canExecuteCloudlet(CloudletExecution)