VmSchedulerSpaceShared (cloudsim 3.1-SNAPSHOT API)

org.cloudbus.cloudsim

## Class VmSchedulerSpaceShared

- java.lang.Object
- - org.cloudbus.cloudsim.VmScheduler
  - - org.cloudbus.cloudsim.VmSchedulerSpaceShared

-     public class VmSchedulerSpaceShared
      extends VmScheduler

  VmSchedulerSpaceShared is a VMM allocation policy that allocates one or more Pe to a VM, and doesn't allow sharing of PEs. If there is no free PEs to the VM, allocation fails. Free PEs are not allocated to VMs
  Since:
    CloudSim Toolkit 1.0
  Author:
    Rodrigo N. Calheiros, Anton Beloglazov

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `VmSchedulerSpaceShared(List<? extends Pe> pelist)` Instantiates a new vm scheduler space shared.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `allocatePesForVm(Vm vm, List<Double> mipsShare)` Allocates PEs for a VM.
    `void` | `deallocatePesForVm(Vm vm)` Releases PEs allocated to a VM.
    `protected List<Pe>` | `getFreePes()` Gets the free pes vector.
    `protected Map<String,List<Pe>>` | `getPeAllocationMap()` Gets the pe allocation map.
    `protected void` | `setFreePes(List<Pe> freePes)` Sets the free pes vector.
    `protected void` | `setPeAllocationMap(Map<String,List<Pe>> peAllocationMap)` Sets the pe allocation map.

    - ### Methods inherited from class org.cloudbus.cloudsim.VmScheduler

      `deallocatePesForAllVms, getAllocatedMipsForVm, getAvailableMips, getMaxAvailableMips, getMaxPeCapacity, getMipsMap, getPeCapacity, getPeList, getPeMap, getPesAllocatedForVM, getTotalAllocatedMipsForVm, getVmsMigratingIn, getVmsMigratingOut, setAvailableMips, setMipsMap, setPeList, setPeMap, setVmsMigratingIn, setVmsMigratingOut`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### VmSchedulerSpaceShared

          public VmSchedulerSpaceShared(List<? extends Pe> pelist)

      Instantiates a new vm scheduler space shared.
      Parameters:
        `pelist` - the pelist

  - ### Method Detail

    - #### allocatePesForVm

          public boolean allocatePesForVm(Vm vm,
                                 List<Double> mipsShare)

      Description copied from class: `VmScheduler`
      Allocates PEs for a VM.
      Specified by:
        `allocatePesForVm` in class `VmScheduler`
      Parameters:
        `vm` - the vm
        `mipsShare` - the mips share
      Returns:
        $true if this policy allows a new VM in the host, $false otherwise

    - #### deallocatePesForVm

          public void deallocatePesForVm(Vm vm)

      Description copied from class: `VmScheduler`
      Releases PEs allocated to a VM.
      Specified by:
        `deallocatePesForVm` in class `VmScheduler`
      Parameters:
        `vm` - the vm

    - #### setPeAllocationMap

          protected void setPeAllocationMap(Map<String,List<Pe>> peAllocationMap)

      Sets the pe allocation map.
      Parameters:
        `peAllocationMap` - the pe allocation map

    - #### getPeAllocationMap

          protected Map<String,List<Pe>> getPeAllocationMap()

      Gets the pe allocation map.
      Returns:
        the pe allocation map

    - #### setFreePes

          protected void setFreePes(List<Pe> freePes)

      Sets the free pes vector.
      Parameters:
        `freePes` - the new free pes vector

    - #### getFreePes

          protected List<Pe> getFreePes()

      Gets the free pes vector.
      Returns:
        the free pes vector

Copyright © 2013 The Cloud Computing and Distributed Systems (CLOUDS) Laboratory, The University of Melbourne. All Rights Reserved.