概述:
在本系统中虚拟软件运行环境主要目的,是为了隔离不同应用程序的运行,提高系统的稳定性,同时可以节省成本。用户处于较高层次中,无需知道软件运行的具体位置以及运行环境,做到对用户透明。
以下从最底层向上逐层分析:
1.
运算节点层(运算层):是最底层,多个安装了Xen(Vmware等虚拟机软件)的计算机或者是一般的实体计算机,真实的应用程序的运行需要在这些机器上进行,它们是实际运算节点。在这里我们分别把它们叫做虚拟计算节点和实体计算节点。
因为每个应用程序都有其特殊性,所以需要针对每个应用程序进行包装,然后将其部署在WebService容器中,对于已知的应用程序,可以提前包装好WS,并部署运行,向服务中心注册(该部分应该属于服务封装部分)。对于未知的应用程序(也就是在系统使用阶段,用户添加进入的应用程序),才是该部分的重点和难点。
a)
其中虚拟计算节点可以运行多个操作系统,当然也就可以运行多个应用程序,而且互不干扰,独立运行。(暂默认一个每个虚拟计算节点上的一个虚拟操作系统中运行一个应用程序)需要提供WS服务,供上层调用。
b)
而实体计算节点为安装了某种操作系统的计算机,它已经提前配置好软件运行环境,并且将其打包成webservice,供其上层调用。它需要一个webservice的运行环境,同时需要将自己的WS注册到服务中心。这样的工作同样需要在虚拟计算节点进行。
c)
在不同的计算节点上(这两种类型都包括),配置一个客户端,其监听上层传递的消息,并在该节点上实施具体操作。但是对于两种不同类型的计算节点,该客户端控制程序有所不同。
上图中的红色部分为我们需要实现的模块,蓝色箭头为消息和数据传递,灰色箭头为服务的调用。
最上端的中控层为一个协调控制层。它负责接收来自用户的请求,并将其转化为传递给运算节点的消息,
同时接受由运算节点发送的反馈信息,传递给上层用户。主要功能模块如下:
提供一个统一的API接口,屏蔽下层接口的异构性,向上层展现统一调用接口。
监视底层运算节点运行状况。接收底层计算节点发送到状态信息,分配任务。
运算节点监控层。部署于每个运算节点上,控制其上的虚拟机的运行以及其上程序的执行。
监听模块:与中控层进行交互,接受上层消息,传递给下一个处理模块进行消息的解释执行。
执行模块:接受由监听模块传递来的消息,分析其内容,根据所接收到的命令向虚拟机控制器发送相关命
令。如果需要从资源库取得资源,则需要与资源库传递资源数据,并将其部署在某个虚拟操作系统之上。
反馈模块:根据这个请求的执行情况,向中控层返回消息。
状态消息发送模块:根据该虚拟计算节点的状态信息,向中控层定时发送该计算节点信息。
资源库。一个实体服务器,提供WebService安装包,其中包括了操作系统、应用程序、WebService容器以及相关的WSDL文件,供虚拟机使用。
资源库需要能够接受由运算节点监控层中的执行模块发送到消息,根据消息内容与运算节点监控层传递所需数据。
在虚拟计算节点上,这个客户端控制程序完成的功能包括:
1)与上层系统通信(接受上层系统传递的消息,同时需要将执行结果返回);
2)虚拟机的创建(根据上层传递消息制定虚拟机创建参数,或者系统部署时候初始创建好);
3)应用程序的安装。实际应该是一个应用程序环境的再现(应用程序首先封装成为WS,并且部署在WS容器中,已经可以供外部系统调用,这一切都在虚拟机上完成,并不是某个运算节点,然后由虚拟机将该环境导出,保存在一个资源库中。在上层需要使用到该应用程序时,由客户端控制程序从资源库中下载该已打包好的应用程序,然后再将该应用程序环境重现,最后需要修改WS的服务地址,并通知上层应用程序环境构建完成);
4)虚拟机生命周期控制,该虚拟机所提供的服务长期未被使用,可以将该虚拟机关闭,节省资源;
5)向上层系统报告节点当前运行状态、性能、负荷等信息(用于上层系统任务分配的依据)。
- 大小: 151.2 KB
- 大小: 62.9 KB
分享到:
相关推荐
在“杭电操作系统课程设计虚拟文件系统”项目中,开发者构建了一个原始的虚拟文件系统,这涉及到了多个关键知识点: 1. 文件描述符:每个打开的文件在VFS中都有一个唯一的文件描述符,用于后续的读写操作。文件描述...
操作系统课程设计是学习计算机科学与技术专业的重要环节,它涵盖了操作系统的基本原理和实践应用。本课程设计的主题是“使用...同时,这个过程也是对软件工程实践经验的积累,有助于培养良好的编程习惯和系统设计思维。
传统实验需要在特定实验室中配合特定人员和特定器材进行,具有时间和空间上的限制,而且部分实验由于过程短暂难以观察,因此通过计算机设计一整套虚拟实验系统,模拟真实实验环境的实验过程,显得尤为重要.文章利用MATLAB...
基于Cesium的虚拟校园系统设计与开发 摘要:基于Cesium三维引擎设计了虚拟校园系统架构,并开发实现了中国矿业大学(北京)虚拟校园系统和功能。该系统解决了多源数据传输、组织与建模等关键技术基础问题,融合了三...
本系统设计报告旨在详细阐述一个基于虚拟现实的建筑漫游系统,该系统能够为用户带来身临其境的体验,使用户能够在虚拟环境中自由探索建筑空间。 1. 编写目的 本报告的编写主要目的是提供一份详尽的系统设计方案,...
1. **页表**:页表是操作系统维护的一个数据结构,记录了虚拟地址到物理地址的映射关系,以及关于页面状态(如是否在内存中、访问位、修改位等)的信息。 2. **缺页中断**:当进程试图访问的页面不在物理内存中时,...
本文主要探讨了如何使用面向对象的设计方法及UML(Unified Modeling Language,统一建模语言)来构建一个小型虚拟超市管理系统的模型。文章重点介绍了UML在软件开发中的应用,包括如何利用UML的各种图来描述系统的...
在这个案例中,"磁盘虚拟"是一个关键主题,它指的是通过软件模拟硬件磁盘的功能,提供一种抽象的存储层,可以实现磁盘分区、文件系统管理等多种功能。这个课程设计报告可能包含了对这一技术的深入探讨,以及实际编写...
操作系统课程设计中的虚拟内存是一个关键话题,它涉及了计算机存储管理的核心原理,是现代操作系统实现高效资源调度和分配的重要机制。虚拟内存的概念是为了解决物理内存容量有限以及程序地址空间与实际内存空间不...
1. **虚拟磁盘概念**:虚拟磁盘是一种抽象的存储设备,它通过软件模拟物理磁盘的功能,提供给操作系统和应用程序一个与物理磁盘相似但不完全相同的接口。虚拟磁盘可以实现存储空间的管理和优化,例如磁盘分区、文件...
虚拟仪器设计基础是现代电子测量和自动化领域中的一个重要分支,它结合了计算机技术、软件工程和传统硬件设备,为测试、测量和控制系统提供了一种高效、灵活的解决方案。本教程部分答案涵盖了第六到十二章的关键内容...
虚拟磁盘驱动程序是操作系统课程设计的一个重要组成部分,对于计算机科学与技术学院的学生来说是一个具有挑战性的项目。 虚拟磁盘驱动程序的设计 虚拟磁盘驱动程序是指模拟真实磁盘的驱动程序,可以模拟磁盘的读写...
虚拟存储系统通过将物理内存与硬盘上的交换空间结合,创建了一个逻辑上比实际物理内存大得多的地址空间,即虚拟存储区。每个进程都有自己独立的虚拟地址空间,使得多个进程可以并发运行,而不会相互干扰。 虚拟...
为了解决这些问题,本文针对智能家居系统进行整体设计与分析,旨在提出一个基于虚拟仪器技术的智能家居系统设计方案,利用NI公司提供的LabVIEW软件和NI ELVIS II硬件平台完成系统的软硬件设计,并通过功能及可靠性...
多线程编程是现代操作系统中另一个重要的话题,它涉及到同时执行多个任务的能力。OS试验程序会提供一个实践平台,让你掌握多线程编程的技巧。多线程可以提高程序的效率,特别是在需要等待I/O操作完成(如磁盘读写)...
综上所述,配电线路维护机器人虚拟现实仿真系统的设计是一个结合了机器人学、虚拟现实技术、机械臂运动学仿真等多学科知识的研究课题。通过该系统的开发与应用,可以显著提高电力系统维护作业的自动化程度和安全性,...
在基于LabVIEW的虚拟仪器设计中,开发者需要考虑以下几个方面: 1. 虚拟仪器的功能设计:开发者需要根据测量和分析需求,设计虚拟仪器的功能和界面。 2. 数据采集和分析:开发者需要使用LabVIEW的数据采集和分析...