Interface PeProvisioner

All Superinterfaces:
ResourceProvisioner
All Known Implementing Classes:
PeProvisionerSimple

public interface PeProvisioner extends ResourceProvisioner
An interface that represents the provisioning policy used by a host to provide virtual Pes to its virtual machines. It gets a physical PE from a Host and manages it to provide this PE as a virtual PE for Vms. That way, a given PE might be shared between different VMs.
Since:
CloudSim Plus 1.1
Author:
Manoel Campos da Silva Filho
  • Field Details

    • NULL

      static final PeProvisioner NULL
      An attribute that implements the Null Object Design Pattern for PeProvisioner objects.
  • Method Details

    • setPe

      void setPe(Pe pe)
      Sets the Pe that this provisioner will manage.
      Parameters:
      pe - the Pe to set
    • allocateResourceForVm

      boolean allocateResourceForVm(Vm vm, long mipsCapacity)
      Allocates an amount of MIPS from the physical PE to a new virtual PE for a given VM. The virtual PE to be added will use the total or partial MIPS capacity of the physical PE.
      Specified by:
      allocateResourceForVm in interface ResourceProvisioner
      Parameters:
      vm - the virtual machine for which the new virtual PE is being allocated
      mipsCapacity - the MIPS to be allocated to the virtual PE of the given VM
      Returns:
      true if the virtual PE could be allocated; false otherwise
    • getAllocatedResourceForVm

      long getAllocatedResourceForVm(Vm vm)
      Gets the amount of allocated MIPS from the physical PE to a virtual PE of a VM.
      Specified by:
      getAllocatedResourceForVm in interface ResourceProvisioner
      Parameters:
      vm - the virtual machine to get the allocated virtual PE MIPS
      Returns:
      the allocated virtual PE MIPS
    • deallocateResourceForVm

      long deallocateResourceForVm(Vm vm)
      Releases the virtual PE allocated to a given VM.
      Specified by:
      deallocateResourceForVm in interface ResourceProvisioner
      Parameters:
      vm - the vm to release the virtual PE
      Returns:
      the previously allocated MIPS for the VM's virtual PE
    • getTotalAllocatedResource

      long getTotalAllocatedResource()
      Specified by:
      getTotalAllocatedResource in interface ResourceProvisioner
      Returns:
      the total allocated MIPS from the physical PE.
    • getUtilization

      double getUtilization()
      Returns:
      the utilization percentage of the PE (in scale from 0 to 1).