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());
	}
相关推荐
Thinker QAQ11 分钟前
并发编程(九):BlockingQueue 与 Channel——语言层的原子性、可见性与有序性
java·python·go·并发编程·channel·blockingqueue·message passing
霸道流氓气质2 小时前
RAG 可观测性与生产监控实战:四层遥测模型、五大仪表盘与 OpenTelemetry 全链路追踪的 Java 生产级实现
java·人工智能·python
AOI小白新手上路2 小时前
autodl常用的tar 打包下载(数据集)命令手册:逐段拆解与套用模板
java·大数据·数据库
dishugj3 小时前
系统架构风险点、敏感点和权衡点的概念和区分
java·开发语言
苜蓿muxu4 小时前
常用代码命名规范
java
马优晨4 小时前
JAVA 中 VO 实体类是什么意思,为什么要做这个
java·开发语言·状态模式·java vo·java vo是什么
Baron X4 小时前
Eclipse Temurin 21 (JRE) Alpine 镜像获取、离线导入与推送操作
java·docker·eclipse·temurin
孙浩君4 小时前
我用 Spring Boot + xterm.js 写了个终端风格互动叙事游戏引擎:游戏即文件,上传一个 JSON 就能玩
java
jose5 小时前
URL 里多写了一个端口,为什么请求还能调通?
java·后端