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());
	}
相关推荐
karry_k7 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k7 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking10 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩13 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码15 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
plainGeekDev16 小时前
Gson → kotlinx.serialization
android·java·kotlin
小bo波1 天前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
咖啡八杯1 天前
GoF设计模式——备忘录模式
java·后端·spring·设计模式