云计算仿真软件cloudsim介绍以及类的功能介绍

文洁丫头 文洁丫头     2022-08-13     197

关键词:

一·云计算的介绍  

   云计算仿真软件,称为CloudSim。它是在离散事件模拟包SimJava上开发的函数库,可在Windows和Linux系统上跨平台运行,CloudSim继承了GridSim的编程模型,支持云计算的研究和开发,并提供了以下新的特点: (1)支持大型云计算的基础设施的建模与仿真;(2)一个自足的支持数据中心、服务代理人、调度和分配策略的平台。其中CloudSim 独特功能有:一是提供虚拟化引擎,旨在数据中心节点上帮助建立和管理多重的、独立的、协同的的虚拟化服务;二是在对虚拟化服务分配处理核心时能够在时间共享和空间共享之间灵活切换。CloudSim平台有助于加快云计算的算法、方法和规范的发展。CloudSim的组件工具均为开源的。CloudSim的软件结构框架和体系结构组件包括SimJava、GridSim、CloudSim、UserCode四个层次。

     CloudSim是在GridSim模型基础上发展而来,提供了云计算的特性,支持云计算的资源管理和调度模拟。云计算与网格计算的一个显著区别是云计算采用了成熟的虚拟化技术,将数据中心的资源虚拟化为资源池,打包对外向用户提供服务,CloudSim体现了此特点,扩展部分实现了一系列接口,提供基于数据中心的虚拟化技术、虚拟化云的建模和仿真功能。通常,数据中心的一台主机的资源可以根据用户的需求映射到多台虚拟机上,因此,虚拟机之间存在对主机资源的竞争关系。CloudSim提供了资源的监测、主机到虚拟机的映射功能。CloudSim的CIS(Cloud Information Service)和DataCenterBroker实现资源发现和信息交互,是模拟调度的核心。用户自行开发的调度算法可在DataCenterBroker的方法中实现,从而实现调度算法的模拟。

   二·cloudSim几个核心类介绍:

   (1)Cloudlet类:构建云环境下的任务。
    (2)DataCenter类:数据中心,提供虚拟化的网格资源,处理虚拟机信息的查询,包含虚拟机对资源的分配策略,云计算采用VMProvisioner处理虚拟机。
    (3)DataCenterBroker类:隐藏了虚拟机的管理,如创建、任务提交、虚拟机的销毁等。
    (4)Host类:扩展了机器对虚拟机除处理单元(PE)之外的参数分配策略,如带宽、存储空间、内存等,一台Host可对应多台虚拟机。
    (5)VirtualMachine类:虚拟机类,运行在Host上,与其它虚拟机共享资源,每台虚拟机由一个拥有者所有,可提交任务,并由VMScheduler类定制该虚拟机的调度策略。
    (6)VMScheduler类:虚拟机的调度策略,用来管理执行任务,实现了任务接口。
    (7)VMCharacteristics类:提供虚拟机描述。
    (8)VMMAllocationPolicy类:虚拟机监视器策略类,描述同一Host上的多台虚拟机共享资源的策略。
    (9)VMProvisioner类:实现数据中心的主机到虚拟机的映射。

三· CloudSim的下载安装

请参考我的另一篇博文:http://www.cnblogs.com/wenjieyatou/p/6061044.html

四·使用CloudSim仿真的一般步骤

 

(1) 初始化GridSim 库

GridSim.init(num_user, calendar, trace_flag, exclude_from_file,exclude_from_processing, report_name);
(2) 创建数据中心,在CloudSim仿真平台中,一个数据中心由一个或多个Machine组成,一个Machine是由一个或多个PEs或CPUs组成。
DataCenter datacenter0 = createDatacenter("Datacenter_0");
(3) 创建代理Broker
DatacenterBroker broker = createBroker();
int brokerId = broker.get_id();
(4) 创建虚拟机
vmlist = new VirtualMachineList();
//创建时为虚拟机指定Broker
VirtualMachine vm1 = new VirtualMachine(
new VMCharacteristics(vmid,brokerId,size,memory,bw,vcpus,priority,vmm,
new TimeSharedVMScheduler()));
//将虚拟机加入虚拟机列表
vmlist.add(vm1);
//向相应代理Broker提交虚拟机列表
broker.submitVMList(vmlist);
(5) 创建云任务
cloudletList = new CloudletList();
//创建时指定任务的用户ID,BrokerID           
Cloudlet cloudlet1 = new Cloudlet(id, length, file_size, output_size);
    cloudlet1.setUserID(brokerId);
……
//将任务加入任务列表
cloudletList.add(cloudlet1);
……
//向代理Broker提交任务列表
broker.submitCloudletList(cloudletList);
(6) 启动仿真
GridSim.startGridSimulation();
(7) 在仿真结束后统计结果
CloudletList newList = broker.getCloudletList();
GridSim.stopGridSimulation();
printCloudletList(newList);
datacenter0.printDebts();

 

云计算介绍tcp/ip协议及配置(代码片段)

...,用户账户root密码Taren1虚拟系统管理器(软件):虚拟计算机的硬件典型服务模式?C/S,Client/Server架构–由服务器提供资源或某种功能–客户机使用资源或功能#####################################################TCP/IP是最广泛支持的通信协议... 查看详情

云计算介绍tcp/ip协议及配置(代码片段)

...,用户账户root密码Taren1虚拟系统管理器(软件):虚拟计算机的硬件典型服务模式?C/S,Client/Server架构–由服务器提供资源或某种功能–客户机使用资源或功能#####################################################TCP/IP是最广泛支持的通信协议... 查看详情

硬件开发平台介绍

...第一步的软件仿真结束后,将所有的仿真结果与传感器、计算单元集合在一起,在硬件环境里测试。车辆在环:车辆在环是基于车辆执行。 查看详情

操作系统定义功能特征介绍

现代计算机系统由一个或多个处理器、主存、磁盘、打印机、键盘、鼠标、显示器、网络接口以及各种其他输入/输出设备组成软件与操作系统底层是硬件。硬件包括芯片、电路板、磁盘、键盘、显示器以及类似的设备。在硬件... 查看详情

openstack介绍

一、背景OpenStack是一个开源的云计算项目,里面包含了许多的组件,可以提供免费下载,对一些想要搭建公有云和私有云的公司或个人提供了非常好的帮助。国内OpenStack最大的用户是华为云,由于华为本身发展云服务比较慢,软... 查看详情

delmia教程:仿真视频录制功能介绍与使用方法

...参数设置视频图像采集参数设置视频编码与播放参数设置仿真视频录制操作仿真视频播放功能简介使用DELMIA软件制作好的虚拟仿真项目,往往需要通过视频的形式记录并保存下来,以便于在不同的专业人士中传播和展示... 查看详情

华为云计算基础之fusioncompute介绍

华为云计算基础之FusionCompute介绍一、Fusioncompute1.FusionCompute解释2.FusionCompute特性3.华为FusionSphere4.华为云计算各组件关系5.华为fusioncompute软件包版本6.fusioncompute逻辑节点二、华为CNA节点介绍1.CNA介绍2.CNA组成三、FusionCompute部署原则... 查看详情

云计算与大数据介绍(非原创)

文章大纲一、什么是云计算二、什么是大数据三、云计算与大数据、人工智能关系四、参考文章一、什么是云计算云计算(CloudComputing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给... 查看详情

云计算的介绍(代码片段)

什么是云计算(资源与服务的交互方式)云计算就是按需使用,按需付费定义:云计算是一种能通过网络以便利的、按需付费的方式获取计算资源(网络、服务器、存储、应用、和服务)并提高其可用性的模式,这些资源来自一... 查看详情

量子计算:量子计算软件介绍

文章目录量子计算软件介绍一、量子语言二、量子软件开发包三、量子云平台量子计算软件介绍一、量子语言由于当前量子计算机的通用体系架构未得到统一,在硬件层面上的技术路线也未最终确定,所以目前还无法确... 查看详情

云计算基础-虚拟化软件介绍

参考技术AKVM全称Kernel-basedVirtualMachine(基于内核的虚拟机),寄居在linuxkernel中(寄居架构),这样就直接使系统内核成为一个虚拟机管理程序(VMM)。它使用Linux自身的调度器进行管理。KVM是基于硬件的全虚拟化,需要硬件技术支持(如I... 查看详情

阿里云odps介绍

https://help.aliyun.com/product/27797.htmlmaxCompute(大数据计算服务,原名ODPS)是一种快速、完全托管的TB/PB级数据仓库解决方案。MaxCompute向用户提供了完善的数据导入方案以及多种经典的分布式计算模型,能够更快速的解决用户海量数据... 查看详情

云计算对传统软件工程的影响

 摘要:云技术是在计算机技术的一种变革。在云计算之前,也出现了网络计算以及自主计算等等,云计算与这几种计算都不同,它结合了这几种技术的优点而出现。云计算的结构为软件工程的发展带来了新契机。使用云计算会大... 查看详情

免费下载全套最新1linux基础知识视频教程+教学资料+学习课件+源代码+软件开发工具

...获取更多新教程教程目录大纲./1Linux基础知识├──00云计算-Linux系统管理-行业介绍│??├──001云计算-Linux系统管理-行业介绍-IT主流行业1.avi│??├──002云计算-Linux系统管理-行业介绍-IT主流行业2.avi│??├──003云计算-Linux系... 查看详情

氚云平台介绍

氚云平台介绍一、概述氚云,自由构建一切应用 1、属于PaaS+SaaS;2、提供开发与运行业务应用程序的所有功能(包括数据库、业务定制、工作流与审批、数据分析、可编程云逻辑、实时部署)以及丰富的模板SaaS应用(包括CRM、进... 查看详情

umc中命令管理模块功能调整说明

随着互联网、云计算技术深入发展,为降低企业大规模云应用建设的难度和成本,支持云应用开发、运行、维一体化的云应用平台软件应运而生。云应用平台软件,是支持云计算技术下业务应用软件建设的软件基础平... 查看详情

电路设计与仿真各种类软件工具介绍

电路设计与仿真各种类软件工具介绍一个完整的电子产品设计流程要用到大量的软件工具,各位大学生在学校里学习时或是普通电子爱好者通过互联网艰难自学时难免被各式各样的软件搞得晕头转向。其实有大部分软件大部... 查看详情

concurrentihawk—实时并行计算机仿真系统(代码片段)

Concurrent公司的iHawk并行计算机仿真系统是具有高实时特性的实时仿真系统,该仿真系统包含对称多处理器计算机平台、实时操作系统、实时开发工具以及应用软件。系统以MATLAB?/Simulink?软件作为前端建模工具,并可兼容C/C++、Ada... 查看详情