CloudSim 里CloudletSchedulerTimeShared类

CloudletSchedulerTimeShared

简介

  • 时间共享执行:Cloudlets共享虚拟机的CPU时间,每个Cloudlet按照调度策略分配到一定的时间片来执行。
  • 每个虚拟机的独立实例:每个虚拟机都需要有自己的 CloudletScheduler 实例,这意味着调度策略和状态是针对每个虚拟机独立维护的。

CloudletSchedulerTimeShared 类是CloudSim仿真工具包中的一部分,用于模拟云计算环境中的资源调度。通过使用时间共享调度策略,它可以更真实地模拟多任务环境,其中多个任务需要共享有限的计算资源。这种调度方式在实际的云计算环境中非常常见,尤其是在多用户或多任务的服务器上。

类方法

从暂停的任务列表中选择一个执行

java 复制代码
	@Override
	public double cloudletResume(int cloudletId)

将收到的任务加到控制调度中

java 复制代码
	@Override
	public double cloudletSubmit(Cloudlet cl, double fileTransferTime) {

返回当前任务下可以用的CPU计算能力

java 复制代码
	// Simple policy, there is no real scheduling involved
	@Override
	public double getTotalCurrentAvailableMipsForCloudlet(Cloudlet cl, List<Double> mipsShare) {
		return getCurrentCapacity() * cl.getNumberOfPes();
	}

返回当前任务下已经使用的的CPU计算能力

java 复制代码
	@Override
	public double getTotalCurrentAllocatedMipsForCloudlet(Cloudlet cl, double time) {
		return getTotalCurrentAvailableMipsForCloudlet(cl, getCurrentMipsShare());
	}

返回当前任务下CPU计算能力的需求量

java 复制代码
	@Override
	public double getTotalCurrentRequestedMipsForCloudlet(Cloudlet cl, double time) {
		return getTotalCurrentAvailableMipsForCloudlet(cl, getCurrentMipsShare());
	}
相关推荐
程序员清风17 小时前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
皮皮林55118 小时前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
华仔啊1 天前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing1 天前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠2 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840822 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide2 天前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家2 天前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺2 天前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602732 天前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端