信息处理装置、方法及程序转让专利

申请号 : CN201880091301.6

文献号 : CN111868687B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 宫丸卓也

申请人 : 三菱电机株式会社

摘要 :

虚拟机(12)的客户操作系统(120)将以虚拟机(13)为发送目标的数据与发送目标ID和发送源ID一起写入至共享存储器(111)。分发管理部(181)如果判别为在分发信息表格(161)中指定了信息处理装置(21)作为与发送目标ID和发送源ID对应的分发目标,则将数据供给至通信部(182)。通信部(182)将从分发管理部(181)供给来的数据发送至信息处理装置。分发管理部(181)如果判别为在分发信息表格(161)中没有指定与发送目标ID和发送源ID对应的分发目标,则将第1数据写入至共享存储器(112)而分发至虚拟机(13)。

权利要求 :

1.一种信息处理装置,其构建了包含多个虚拟机的虚拟环境,该信息处理装置具有:

根操作系统,其在所述信息处理装置上运行;

客户操作系统,其在所述虚拟机上各自运行;

共享存储器,所述客户操作系统和所述根操作系统能够对该共享存储器进行访问;以及

分发信息存储单元,其指定表示由所述虚拟机指定的数据的发送目标的发送目标信息及表示该数据的发送源的发送源信息,与实际上对该数据进行分发的目标即分发目标之间的关系,

所述根操作系统包含:分发管理单元,其对由所述虚拟机输出的数据的分发进行管理;

以及通信单元,其与其它信息处理装置经由通信路径进行通信,如果多个所述虚拟机中的第1虚拟机的所述客户操作系统将以多个所述虚拟机中的第

2虚拟机为发送目标的第1数据,与所述发送目标信息及所述发送源信息一起写入至所述共享存储器,则所述分发管理单元对在所述分发信息存储单元中是否指定了与所述发送目标信息及所述发送源信息对应的分发目标进行判别,如果判别为在所述分发信息存储单元中指定了所述其它信息处理装置作为与所述发送目标信息及所述发送源信息对应的分发目标,则所述分发管理单元将所述第1数据供给至所述通信单元,所述通信单元将从所述分发管理单元供给来的所述第1数据发送至所述其它信息处理装置,

所述分发管理单元如果判别为在所述分发信息存储单元中指定了本信息处理装置上的第2虚拟机作为所述分发目标,或者判别为在所述分发信息存储单元中没有指定与所述发送目标信息及所述发送源信息对应的分发目标,则将所述第1数据分发至所述第2虚拟机。

2.根据权利要求1所述的信息处理装置,其中,所述分发管理单元如果判别为在所述分发信息存储单元中指定了所述信息处理装置上的多个所述虚拟机中的第3虚拟机作为与所述发送目标信息及所述发送源信息对应的分发目标,则将所述第1数据分发至所述第3虚拟机。

3.根据权利要求1或2所述的信息处理装置,其中,所述分发信息存储单元基于所述发送目标信息及所述发送源信息、对在所述虚拟机上运行的应用进行识别的识别信息,对在所述虚拟机之间交换的数据的分发目标进行指定,所述第1虚拟机的所述客户操作系统将由在所述第1虚拟机上运行的应用输出且以所述第2虚拟机为发送目标的数据与所述发送目标信息及所述发送源信息、所述识别信息一起写入至所述共享存储器,

所述分发管理单元基于从所述共享存储器读出的所述发送目标信息及所述发送源信息、所述识别信息,对分发所述第1数据的目标进行判别。

4.根据权利要求1或2所述的信息处理装置,其中,还具有有效无效设定条件存储单元,在该有效无效设定条件存储单元中设定了所述分发信息存储单元的所述分发目标的指定是否有效,所述分发管理单元在针对从所述共享存储器读出的所述第1数据而在所述分发信息存储单元中指定了所述分发目标的情况下,在判别为所述有效无效设定条件存储单元中所述分发目标的指定为有效的情况下,将所述第1数据分发至在所述分发信息存储单元中指定出的所述分发目标。

5.根据权利要求1或2所述的信息处理装置,其中,所述第1虚拟机的所述客户操作系统如果将所述第1数据写入至所述共享存储器,则对所述根操作系统通知已将数据写入至所述共享存储器这一状况,所述根操作系统如果从所述第1虚拟机的所述客户操作系统接收到已写入了数据这一状况的通知,则从所述共享存储器读出所述第1数据。

6.根据权利要求1或2所述的信息处理装置,其中,所述分发管理单元如果为了将所述第1数据分发至其分发目标而将所述第1数据写入至所述共享存储器,则对作为所述第1数据的分发目标的所述虚拟机的所述客户操作系统通知已将所述第1数据写入至所述共享存储器这一状况,作为所述第1数据的分发目标的所述虚拟机的所述客户操作系统如果从所述分发管理单元接收到已写入了所述第1数据这一状况的通知,则从所述共享存储器读出所述第1数据。

7.一种信息处理方法,其是通过构建了包含多个虚拟机的虚拟环境的信息处理装置,对在虚拟机之间交换的数据进行分发的方法,所述信息处理装置具有:

根操作系统,其在所述信息处理装置上运行;

客户操作系统,其在所述虚拟机上各自运行;

共享存储器,所述客户操作系统和所述根操作系统能够对该共享存储器进行访问;以及

分发信息存储单元,其指定表示由所述虚拟机指定的数据的发送目标的发送目标信息及表示该数据的发送源的发送源信息,与实际上对该数据进行分发的目标即分发目标之间的关系,

该信息处理方法包含如下步骤:多个所述虚拟机中的第1虚拟机的所述客户操作系统将以多个所述虚拟机中的第2虚拟机为发送目标的第1数据,与所述发送目标信息及所述发送源信息一起写入至所述共享存储器;

所述根操作系统对在所述分发信息存储单元中是否指定了与写入至所述共享存储器的所述发送目标信息及所述发送源信息对应的分发目标进行判别;

所述根操作系统在判别为在所述分发信息存储单元中指定了所述第1数据的所述分发目标的情况下,对是否指定了其它信息处理装置作为所述分发信息存储单元的所述分发目标进行判别;

所述根操作系统在判别为在所述分发信息存储单元中指定了所述其它信息处理装置作为与所述发送目标信息及所述发送源信息对应的分发目标的情况下,将所述第1数据发送至所述其它信息处理装置;以及所述根操作系统在判别为在所述分发信息存储单元中指定了本信息处理装置上的第2虚拟机作为所述分发目标,或者判别为在所述分发信息存储单元中没有指定与所述发送目标信息及所述发送源信息对应的分发目标的情况下,将所述第1数据分发至所述第2虚拟机。

8.一种存储有程序的计算机可读取的记录介质,该程序由在构建了包含多个虚拟机的虚拟环境的信息处理装置上运行的根操作系统执行,所述信息处理装置具有:

所述根操作系统;

客户操作系统,其在所述虚拟机上各自运行;

共享存储器,所述客户操作系统和所述根操作系统能够对该共享存储器进行访问;以及

分发信息存储单元,其指定表示在所述虚拟机之间交换的数据的发送目标的发送目标信息及表示该数据的发送源的发送源信息,与实际上对该数据进行分发的目标即分发目标之间的关系,

该程序使所述根操作系统执行:如果多个所述虚拟机中的第1虚拟机的所述客户操作系统将以多个所述虚拟机中的第

2虚拟机为发送目标的第1数据,与所述发送目标信息及所述发送源信息一起写入至所述共享存储器,则对在所述分发信息存储单元中是否指定了与所述发送目标信息及所述发送源信息对应的分发目标进行判别,在判别为针对所述第1数据而在所述分发信息存储单元中指定了所述分发目标的情况下,对在所述分发信息存储单元中是否指定了其它信息处理装置作为所述分发目标进行判别,

在判别为在所述分发信息存储单元中指定了所述其它信息处理装置作为与所述发送目标信息及所述发送源信息对应的分发目标的情况下,将所述第1数据发送至所述其它信息处理装置,

在判别为在所述分发信息存储单元中指定了本信息处理装置上的第2虚拟机作为所述分发目标,或者判别为在所述分发信息存储单元中没有指定与所述发送目标信息及所述发送源信息对应的分发目标的情况下,将所述第1数据分发至所述第2虚拟机。

说明书 :

信息处理装置、方法及程序

技术领域

[0001] 本发明涉及信息处理装置、方法及程序。

背景技术

[0002] 有时在构建了虚拟环境的信息处理装置的虚拟机上多个应用协作地动作。例如,在工厂自动化的领域中,在运行实时操作系统的虚拟机上执行对驱动设备、检查装置等进
行控制的控制用应用。并且,在运行非实时操作系统的其它虚拟机上,执行对检查装置所输
出的检查数据进行处理的信息处理用应用。
[0003] 由于规格的变更、故障等,有时对某个应用进行修正。在该情况下,通常在与正式环境不同的测试环境中,执行修正后的应用而进行动作验证。在测试环境中,有时使用测试
用虚拟数据而进行验证,有时希望使用在正式环境中收集到的数据而进行验证。例如,有时
为了应对仅在正式环境中产生的故障而对应用进行了修正。
[0004] 在专利文献1中记载了在同一信息处理装置对正式环境和测试环境进行构建,正式环境和测试环境共享文件资源。通过设为这样的结构,能够在测试环境中使用在正式环
境中收集到的数据而进行验证。
[0005] 在构建了虚拟环境的信息处理装置中,为了如专利文献1那样在正式用信息处理装置中对测试环境进行构建,需要在该信息处理装置中新追加大于或等于1个虚拟机。但
是,由于虚拟机的追加,有时现有的虚拟机的动作变得不稳定,对正式环境的运转状态造成
不良影响。例如,在工厂自动化的领域中,如果正在执行对驱动设备、检查装置等进行控制
的控制用应用的虚拟机的动作变得不稳定,则会对驱动设备、检查装置等的运转状态造成
不良影响。在最坏的情况下,预想到还会产生驱动设备、检查装置等失控这样的问题。
[0006] 专利文献1:日本特开平8‑235011号公报

发明内容

[0007] 对于上述问题,能够通过在验证时在其它信息处理装置的虚拟机上执行对驱动设备、检查装置等进行控制的控制用应用这样的应用而防范于未然。但是,在该情况下,在不
同的信息处理装置上运行的虚拟机需要进行通信。
[0008] 在将通信目标变更为其它信息处理装置上的虚拟机的情况下,需要进行正式环境的虚拟机的设定及在该虚拟机之上运行的应用的设定的变更,有可能对正式环境的动作造
成不良影响。
[0009] 本发明就是鉴于上述实际情况而提出的,不对虚拟机侧的设定进行变更就能够进行跨多个信息处理装置的虚拟机间通信。
[0010] 为了达成上述目的,本发明的信息处理装置为构建了包含多个虚拟机的虚拟环境的信息处理装置。信息处理装置具有:根操作系统,其在信息处理装置上运行;客户操作系
统,其在虚拟机上各自运行;共享存储器,客户操作系统和根操作系统能够对该共享存储器
进行访问;以及分发信息存储单元,其指定表示由虚拟机指定的数据的发送目标的发送目
标信息及表示该数据的发送源的发送源信息,与实际上对该数据进行分发的目标即分发目
标之间的关系。根操作系统包含:分发管理单元,其对由虚拟机输出的数据的分发进行管
理;以及通信单元,其与其它信息处理装置经由通信路径进行通信。如果多个虚拟机中的第
1虚拟机的客户操作系统将以多个虚拟机中的第2虚拟机为发送目标的第1数据,与发送目
标信息及发送源信息一起写入至共享存储器,则分发管理单元对在分发信息存储单元中是
否指定了与发送目标信息及发送源信息对应的分发目标进行判别。如果判别为在分发信息
存储单元中指定了其它信息处理装置作为与发送目标信息及发送源信息对应的分发目标,
则分发管理单元将第1数据供给至通信单元,通信单元将从分发管理单元供给来的第1数据
发送至其它信息处理装置。分发管理单元如果判别为在分发信息存储单元中没有指定与发
送目标信息及发送源信息对应的分发目标,则将第1数据分发至第2虚拟机。
[0011] 发明的效果
[0012] 在本发明的信息处理装置中,分发管理单元如果判别为针对由第1虚拟机写入至共享存储器的第1数据而在分发信息存储单元中指定了其它信息处理装置作为与发送目标
信息及发送源信息对应的分发目标,则将第1数据供给至通信单元,通信单元将从分发管理
单元供给来的第1数据发送至其它信息处理装置。通过具有这样的结构,无需对虚拟机侧的
设定进行变更,多个信息处理装置的虚拟机就能够跨信息处理装置间进行通信。

附图说明

[0013] 图1是表示本发明的实施方式涉及的信息处理系统的结构的概要的图。
[0014] 图2是表示实施方式涉及的信息处理装置的硬件结构的框图。
[0015] 图3是实施方式涉及的信息处理装置的功能框图。
[0016] 图4是表示实施方式涉及的在共享存储器中设置的数据的结构的图。
[0017] 图5是表示实施方式涉及的在分发信息表格中登记的数据的一个例子的图。
[0018] 图6是表示实施方式涉及的在启动条件表格中登记的数据的一个例子的图。
[0019] 图7是表示实施方式涉及的在启动条件表格中登记的数据的其它例子的图。
[0020] 图8是表示实施方式涉及的在信息处理装置间进行收发的数据的结构的图。
[0021] 图9是实施方式涉及的发送侧的信息处理装置的分发管理部的第1分发处理的流程图。
[0022] 图10是实施方式涉及的发送侧的信息处理装置的通信部的发送处理的流程图。
[0023] 图11是实施方式涉及的接收侧的信息处理装置的通信部的接收处理的流程图。
[0024] 图12是实施方式涉及的接收侧的信息处理装置的分发管理部的第2分发处理的流程图。
[0025] 图13是变形例涉及的信息处理装置的功能框图。
[0026] 图14是表示变形例涉及的在分发信息表格中登记的数据的一个例子的图。
[0027] 图15是变形例涉及的信息处理装置的分发管理部的分发处理的流程图。
[0028] 图16是表示在分发信息表格中登记的数据的其它例子的图。
[0029] 图17是表示在启动条件表格中登记的数据的其它例子的图。
[0030] 图18是表示在分发信息表格中登记的数据的另一例子的图。

具体实施方式

[0031] (实施方式)
[0032] 如图1所示,本实施方式涉及的信息处理系统100包含能够经由通信路径50彼此进行通信的信息处理装置11和信息处理装置21。信息处理装置11是作为FA控制系统的正式环
境进行运转的装置。信息处理装置21是FA控制系统的测试环境用装置。
[0033] 这里,信息处理装置11设置于工厂内,信息处理装置21设置于工厂外。因此,信息处理装置11和信息处理装置21经由通信路径50而连接。通信路径50构成未图示的LAN
(Local Area Network)的一部分。
[0034] 在信息处理装置11、21中各自构建了虚拟环境。在信息处理装置11中,运行虚拟机12及13。在信息处理装置21中,运行虚拟机22及23。此外,在图1中,省略了在作为主机的信
息处理装置11、21各自安装的根操作系统的图示。
[0035] 虚拟机12作为可编程逻辑控制器起作用。虚拟机12连接于工厂内的驱动设备91及92、检查装置93。虚拟机12为本发明的第1虚拟机的一个例子。虚拟机12的客户操作系统(下
面,称为客户OS)120执行控制用应用130。应用130是可编程逻辑控制器的固件。应用130进
行驱动设备91及92的控制涉及的处理、检查装置93的检查数据的收集处理。应用130例如对
由检查装置93 拍摄制造部件得到的图像数据进行收集而作为检查数据,将该图像数据发
送至虚拟机13。
[0036] 虚拟机13作为进行信息处理的计算机起作用。虚拟机13为本发明的第2虚拟机的一个例子。虚拟机13的客户OS 140执行对现场的检查数据进行解析,向生产线反馈的质量
管理应用这样的信息处理用应用150。应用150执行对检查装置93的检查数据进行解析的解
析处理。应用150例如对从虚拟机12的应用130接收到的由检查装置93拍摄的图像数据进行
解析,生成对不合格品的个数进行了修正后的统计数据这样的基于解析的表示质量状况的
数据,将生成的表示质量状况的数据发送至虚拟机12。
[0037] 虚拟机22具有与虚拟机12相同的结构,作为可编程逻辑控制器起作用。与虚拟机12不同,虚拟机22不进行实际设备的控制。模拟器94连接于虚拟机22。模拟器94通过由个人
计算机执行模拟用程序而实现。
[0038] 虚拟机23具有与虚拟机13相同的结构,作为进行信息处理的计算机起作用。
[0039] 在正式环境的运转时,信息处理装置11的虚拟机12及13协同地进行动作。在应用的动作验证时,测试环境用信息处理装置 21的虚拟机22及23协同地进行动作。
[0040] 并且,在本实施方式中,由于使用在正式环境中收集到的数据进行应用的动作验证,因此信息处理装置11的虚拟机12、信息处理装置21的虚拟机23能够协同地进行动作。另
外,信息处理装置11的虚拟机13与信息处理装置21的虚拟机22能够协同地进行动作。因此,
信息处理装置11、21均能够将由虚拟机之一以同一信息处理装置的其它虚拟机为目标发送
的数据分发至由用户指定的其它信息处理装置。换言之,能够将虚拟机之一以同一信息处
理装置的其它虚拟机为目标发送的数据转发至由用户指定的其它信息处理装置。
[0041] 如图2所示,信息处理装置11具有处理器1、主存储部2、辅助存储部3、通信控制部4作为硬件结构。主存储部2、辅助存储部3、通信控制部4均经由内部总线9连接于处理器1,与
处理器1进行通信。此外,信息处理装置21的硬件结构也与信息处理装置11的结构相同。
[0042] 处理器1包含CPU(Central Processing Unit)。处理器1执行在辅助存储部3存储的各种程序,实现信息处理装置11的各种功能。
[0043] 主存储部2包含易失性存储器,用作处理器1的工作存储器。处理器1将储存于辅助存储部3的程序、参数等载入至主存储部2,使用载入至主存储部2的程序、参数等进行各种
处理。
[0044] 辅助存储部3包含非易失性存储器。辅助存储部3对程序、参数等进行储存。辅助存储部3对后述的用于实现分发管理部181 的功能的程序001、用于实现通信部182的功能的
程序002进行储存。并且,在辅助存储部3储存有对虚拟机12、13进行创建的程序、用于执行
虚拟机12的应用130的程序、用于执行虚拟机13 的应用150的程序等。
[0045] 通信控制部4包含网络接口,该网络接口用于进行经由通信路径50的通信。通信控制部4对经由通信路径50传送来的信号进行接收,将接收到的信号所示的数据输出至处理
器1。另外,通信控制部4将表示从处理器1供给来的数据的信号经由通信路径50 发送至信
息处理装置21。
[0046] 如图3所示,信息处理装置11在功能上包含:管理程序110,其对虚拟机12及13进行管理;客户OS 120及应用130,它们在虚拟机12上运行;客户OS 140及应用150,它们在虚拟
机13上运行;根操作系统(下面,称为根OS)180,其安装于主机即信息处理装置11,在主机上
运行;分发信息表格161,其登记有分发目标,该分发目标是对在虚拟机12和虚拟机13之间
交换的数据进行分发的发送目标;以及启动条件表格162,其登记有与在分发信息表格161
登记的信息的有效或无效相关的信息。分发信息表格 161为本发明的分发信息存储单元的
一个例子。启动条件表格162 为本发明的有效无效设定条件存储单元的一个例子。
[0047] 管理程序110按照后述的根OS 180的控制,对虚拟机12及 13进行创建,对创建出的虚拟机12及13进行管理。管理程序110 通过由处理器1执行在辅助存储部3存储的专用的
程序而实现。
[0048] 管理程序110具有分配给虚拟机12的共享存储器111、分配给虚拟机13的共享存储器112、作为虚拟设备驱动的后端驱动113。共享存储器111用于客户OS 120与根OS 180之间
的数据交换。因此,客户OS 120和根OS 180能够访问共享存储器111。下面,有时将向共享存
储器111写入数据称为对数据进行设置。共享存储器112由辅助存储部3实现。共享存储器
112用于客户OS 140与根OS 180之间的数据交换。因此,客户OS 140和根OS 180能够访问共
享存储器112。共享存储器112由辅助存储部3实现。
[0049] 在本实施方式中,客户OS 120和客户OS 140不能够直接进行数据的交换。因此,根OS 180使用共享存储器111、112,进行客户OS 120和客户OS 140之间的数据的交换。例如,
在客户OS 120将数据发送至客户OS 140的情况下,首先,客户OS 120将发送至客户OS 140
的数据设置于共享存储器111。根OS 180读出由客户OS 120设置于共享存储器111的数据。
根OS 180将读出的数据设置于共享存储器112。客户OS读出由根OS 180设置于共享存储器
112的数据。由此,从客户OS 120向客户OS 140传送数据。在从客户OS 140将数据传送至客
户OS 120的情况下也是相同的。
[0050] 后端驱动113按照根OS 180的控制进行相对于共享存储器 111及112的数据的读写。
[0051] 客户OS 120是在虚拟机12上执行的操作系统。在本实施方式中,作为客户OS 120,设想的是RTOS(Real Time Operating System)。如果从根OS 180发出指示,则客户OS 120
使应用130 启动。另外,客户OS 120在该客户OS 120与根OS 180之间进行使用了共享存储
器111的数据交换。客户OS 120通过由处理器1 执行在辅助存储部3储存的程序而实现。
[0052] 客户OS 120具有作为虚拟设备驱动的前端驱动121。前端驱动121在客户OS 120的控制下,进行相对于共享存储器111的数据的读写。
[0053] 客户OS 120对前端驱动121进行控制,将应用130的输出数据写入至共享存储器111。
[0054] 在图4中示出由客户OS 120设置于共享存储器111的数据的格式的一个例子。设置于共享存储器111的数据包含头部1010、数据部1020、错误校验码1030。
[0055] 头部1010包含发送目标虚拟机的识别信息即发送目标ID  (Identification)1011、发送源虚拟机的识别信息即发送源ID 1012、表示对输出了数据的应用进行识别的识
别信息的信息即类别 1013、表示数据部1020的大小的信息即大小1014。发送目标ID 1011
为本发明的发送目标信息的一个例子,发送源ID 1012为本发明的发送源信息的一个例子,
类别1013为本发明的识别信息的一个例子。
[0056] 例如,在虚拟机12将应用130的输出数据发送至虚拟机13 的情况下,将如下值设置于头部1010的各部分。在发送目标ID 1011中设置表示虚拟机13的ID,在发送源ID 1012
中设置表示虚拟机12的ID,在类别1013的值中设置应用130的识别信息。
[0057] 数据部1020包含应用130的输出数据。例如,数据部1020 包含应用130从检查装置93收集到的检查数据。错误校验码1030 为用于错误校验的代码。作为错误校验的方式,例
如能够采用CRC (Cyclic Redundancy Check)、奇偶校验、汉明(Hamming)等。
[0058] 另外,客户OS 120对前端驱动121进行控制,读出由根OS 设置于共享存储器111的数据。由根OS 180设置于共享存储器111 的数据的格式也与图4所示的例子相同。
[0059] 图3所示的客户OS 120进一步对前端驱动121进行控制,与根OS 180之间进行经由虚拟总线的总线通信。具体而言,客户OS 120对前端驱动121进行控制而将数据设置通知的
信号发送至根 OS 180,该数据设置通知对已将数据写入至共享存储器111这一状况进行通
知。接收到该信号,根OS 180从共享存储器111读出数据。
[0060] 另外,在根OS 180已将数据设置于共享存储器111的情况下,根OS 180将数据设置通知的信号发送至前端驱动121,该数据设置通知是对已设置了数据这一状况进行通知。如
果前端驱动121 接收到该信号,则客户OS 120对前端驱动121进行控制而从共享存储器111
读出数据。
[0061] 应用130进行驱动设备91及92的控制涉及的处理、检查装置93的检查数据的收集处理。应用130从检查装置93收集检查数据,将该检查数据发送至虚拟机13。应用130通过由
客户OS 120 执行在辅助存储部3储存的程序而启动。
[0062] 客户OS 140是在虚拟机13上执行的操作系统。在本实施方式中,作为客户OS 140,设想的是非实时OS。如果从根OS 180 发出指示,则客户OS 140使应用150启动。另外,客户
OS 140 与根OS 180之间进行使用了共享存储器112的数据交换。客户OS 140通过由处理器
1执行在辅助存储部3储存的程序而实现。
[0063] 客户OS 140具有作为虚拟设备驱动的前端驱动141。前端驱动141在客户OS 140的控制下,进行相对于共享存储器112的数据的读写。客户OS 140对前端驱动141进行控制,将
应用150的输出数据写入至共享存储器112。由客户OS 140设置于共享存储器112的数据的
格式与图4所示的例子相同。这里,由应用150 输出的数据被设置于数据部1020。另外,客户
OS 140对前端驱动 141进行控制,读出由根OS 180设置于共享存储器112的数据。由根OS 
180设置于共享存储器112的数据的格式也与图4所示的例子相同。
[0064] 图3所示的客户OS 140进一步对前端驱动141进行控制,与根OS 180之间进行经由虚拟总线的总线通信。如果已将数据设置于共享存储器112,则客户OS 140对前端驱动141
进行控制而将数据设置通知的信号发送至根OS 180。接收到该信号,根OS 180 使用后端驱
动113从共享存储器112读出数据。
[0065] 另外,在已由根OS 180将数据设置于共享存储器112的情况下,根OS 180将数据设置通知的信号发送至前端驱动141。如果前端驱动141接收到该信号,则客户OS 140对前端
驱动141进行控制,从共享存储器112读出数据。
[0066] 应用150执行对检查装置93的检查数据进行解析的解析处理。应用150例如对从虚拟机12的应用130接收到的检查数据进行解析,生成基于解析的表示质量状况的数据,将生
成的表示质量状况的数据发送至虚拟机12。应用150通过由客户OS 140执行在辅助存储部3
储存的程序而启动。
[0067] 客户OS 120、140将表示作为发送目标的虚拟机的ID设置于头部1010的发送目标ID 1011,对作为发送目标的虚拟机进行指定。作为发送目标,指定相同的信息处理装置11
的虚拟机12、13 的任意者。但是,如上所述,在用户指定为转发至其它信息处理装置的情况
下,根OS 180将由虚拟机12、13设置于共享存储器111、 112的数据转发至用户指定的发送
目标。并且,根OS 180基于用户的指定,将由虚拟机12、13设置于共享存储器111、112的数据
的头部1010的信息改写。分发信息表格161和启动条件表格162 用于上述根OS 180的处理。
[0068] 在分发信息表格161中预先登记有由虚拟机12、13对数据进行分发的发送目标即分发目标。向分发信息表格161的登记以如下方式进行。首先,用户使用未图示的登记用工
具,对在分发信息表格161登记的数据进行创建。用户通过通信线缆将登记用工具连接于信
息处理装置11,将创建出的数据上传至信息处理装置11,在分发信息表格161登记数据。这
里,登记用工具是在个人计算机安装了专用程序而得到的。
[0069] 在分发信息表格161储存有由客户OS 120、140向共享存储器111、112设置的头部1010的信息、表示与数据的分发目标的对应关系的信息。更具体而言,在分发信息表格161
中,根据表示作为发送目标的虚拟机的发送目标ID 1011、表示作为发送源的虚拟机的发送
源ID 1012、输出了该数据的应用的识别信息即类别 1013,对数据的分发目标进行指定。并
且,在分发信息表格161 中,还指定了在发送时更新的头部1010的值。
[0070] 在图5中示出在分发信息表格161登记的数据的一个例子。下面,将对虚拟机12进行识别的ID设为“VM12”,将对虚拟机 13进行识别的ID设为“VM13”,将对虚拟机22进行识别
的ID 设为“VM22”,将对虚拟机23进行识别的ID设为“VM23”来进行说明。另外,在设置于类
别1013的值中包含数值计算用应用的识别信息即“APP1”、控制用应用的识别信息即
“APP2”、图像处理用应用的识别信息即“APP3”。
[0071] 如图5所示,在分发设定的No.1中,在发送目标ID 1011 为“VM13”,发送源ID 1012为“VM12”,类别1013为“APP1”的情况下,指定的是将分发目标设为“信息处理装置21”。在所
图示的例子中,作为对信息处理装置进行识别的信息,登记了“信息处理装置21”这样的值,
但作为分发目标,也可以对信息处理装置的IP(Internet Protocol)地址进行指定。
[0072] 分发设定No.1的更新头部的发送目标ID 1011为“VM23”,发送源ID 1012为“VM22”,类别1013为“APP1”。这表示指定为将头部1010的发送目标ID 1011更新为“VM23”,
将发送源 ID 1012更新为“VM22”,将类别1013更新为“APP1”。
[0073] 例如,虚拟机12的客户OS 120将由数值计算用应用输出的数据作为针对虚拟机13的数据以图4所示的格式储存于共享存储器111。在该情况下,在该数据的头部1010中设置
有发送目标ID 1011“VM13”、发送源ID 1012“VM12”、类别1013“APP1”。在该情况下,如图5所
示,与设置于头部1010的信息相符的分发设定为No.1。在分发设定的No.1中,作为分发目标
而指定了“信息处理装置21”。因此,通过后述的分发管理部181和通信部182,该数据被分发
至信息处理装置21。
[0074] 并且,按照分发设定的No.1,通过分发管理部181,将头部 1010的发送目标ID 1011更新为“VM23”,将发送源ID 1012更新为“VM22”,将类别1013更新为“APP1”。因此,在接
收到该数据的信息处理装置21的虚拟机23中,将接收到的数据视为从相同信息处理装置21
的虚拟机22的数值计算应用输出的数据。
[0075] 如图5所示,在分发设定的No.2中,在发送目标ID 1011 为“VM13”,发送源ID 1012为“VM12”,类别1013为“APP2”的情况下,指定的是将分发目标设为“信息处理装置21”。并
且,在分发设定的No.2中指定了将头部1010的发送目标ID 1011更新为“VM23”,将发送源ID 
1012更新为“VM22”,将类别1013 更新为“APP3”。
[0076] 在图3所示的虚拟机12将控制用应用的输出数据作为针对虚拟机13的数据而储存于共享存储器111的情况下,按照图5所示的分发设定的No.2,该数据被分发至信息处理装
置21。在分发时,由于头部1010的各值被更新为分发设定的No.2的更新头部的值,因此信息
处理装置21接收到的数据的发送目标ID 1011为“VM23”,发送源ID 1012为“VM22”,类别
1013为“APP3”。因此,在信息处理装置21的虚拟机23中,将接收到的数据视为从相同信息处
理装置21的虚拟机22的图像处理用应用输出的数据。
[0077] 在分发设定的No.3中,在发送目标ID 1011为“VM12”,发送源ID 1012为“VM13”,类别1013为“APP2”的情况下,没有登记更新头部的信息。这表示不会将该数据分发至任何地
方。
[0078] 在图3所示的虚拟机13将控制用应用的输出数据作为针对虚拟机12的数据而储存于共享存储器112的情况下,按照图5所示的分发设定的No.3,该数据没有被分发至任何地
方。即,将从虚拟机13向虚拟机12的通信切断。
[0079] 在分发设定的No.4中,在发送目标ID 1011为“VM13”,发送源ID 1012为“VM12”,类别1013为“APP3”的情况下,作为分发目标而指定了“本地主机”即本机的信息处理装置11。
在分发设定的No.4中指定了将头部1010的发送目标ID 1011更新为“VM13”,将发送源ID 
1012更新为“VM12”,将类别1013 更新为“APP1”。
[0080] 在图3所示的虚拟机12将图像处理用应用的输出数据作为针对虚拟机13的数据而储存于共享存储器111的情况下,按照图5 所示的分发设定的No.4,该数据被分发至同一信
息处理装置11 的虚拟机13。在分发时,由于头部1010的各值被更新为分发设定的No.4的更
新头部的值,因此虚拟机13接收到的数据的类别1013 为“APP1”。因此,在虚拟机13中,将接
收到的数据视为从数值计算用应用输出的数据。
[0081] 在启动条件表格162中预先登记有表示将分发信息表格161 的各分发设定设为有效或设为无效的信息。关于启动条件表格162 的数据,也与分发信息表格161的数据相同
地,用户使用登记用工具而对其进行创建,上传至信息处理装置11而登记于启动条件表格
162。
[0082] 在实施方式中,分发信息表格161的各分发设定在满足了由启动条件表格162决定的条件的情况下,成为有效或无效。
[0083] 在图6中示出在启动条件表格162登记的数据的一个例子。这里,通过在信息处理装置11的辅助存储部3的所指定的存储器地址处储存的值和阈值的关系,指定为有效或无
效。在图示的例子中,分发设定的No.1在所指定的存储器地址处的值与阈值一致时成为有
效,分发设定的No.2在所指定的存储器地址处的值小于阈值时成为有效。分发设定的No.3
在所指定的存储器地址处的值大于或等于阈值时成为无效。
[0084] 在图7中示出在启动条件表格162登记的数据的其它例子。这里,指定的是在所指定的期间,将分发设定设为有效或无效。在图示的例子中,分发设定的No.4在所指定的开始
日期时间、开始时刻至结束日期时间、结束时刻为止的期间,成为有效。
[0085] 如图3所示,根OS 180安装于信息处理装置11,如果对信息处理装置11接通电源,则最先被启动。根OS 180使管理程序110 对虚拟机12及13进行创建、管理。根OS 180通过由
处理器1执行在辅助存储部3储存的程序而实现。
[0086] 根OS 180包含分发管理部181和通信部182。分发管理部181 通过由根OS 180执行辅助存储部3的程序001而实现。通信部182 通过由根OS 180执行辅助存储部3的程序002而
实现。分发管理部181为本发明的分发管理单元的一个例子。通信部182为本发明的通信单
元的一个例子。
[0087] 分发管理部181进行发送源为虚拟机12、13的数据、作为发送目标而指定了虚拟机12、13的数据的分发涉及的处理。
[0088] 首先,对分发管理部181在虚拟机12、13将数据设置于共享存储器111、112的情况下进行的处理进行说明。分发管理部181 将由虚拟机12、13设置于共享存储器111、112的数
据各自分发至基于前述分发信息表格161和启动条件表格162的分发目标、或由虚拟机12、
13各自指定的发送目标。
[0089] 例如,如果通过数据设置通知的信号的接收,判别为虚拟机 12已将数据设置于共享存储器111,则分发管理部181对后端驱动 113进行控制,从共享存储器111读出数据。分
发管理部181基于读出的数据的发送目标ID 1011、发送源ID 1012和类别1013,对是否在分
发信息表格161登记有分发目标进行判别。
[0090] 分发管理部181在针对从共享存储器111读出的数据而指定了其它信息处理装置即信息处理装置21作为分发信息表格161的分发目标的情况下,对头部1010进行更新,将该
数据与表示作为分发目标的信息处理装置21的信息一起发送至通信部182。分发管理部181
在针对从共享存储器111读出的数据并未在分发信息表格161登记分发设定的情况下,不对
头部1010进行更新,对后端驱动113进行控制而将该数据写入至虚拟机13的共享存储器
112。另外,分发管理部181在针对从共享存储器111读出的数据而指定了本机的信息处理装
置11的虚拟机13作为分发信息表格161的分发目标的情况下,对头部1010进行更新,对后端
驱动113进行控制而将该数据写入至虚拟机13的共享存储器112。
[0091] 以上为分发管理部181在虚拟机12、13将数据设置于共享存储器111、112的情况下进行的处理。
[0092] 接下来,对分发管理部181在通信部182从信息处理装置21 接收到通信数据包的情况下进行的处理进行说明。
[0093] 分发管理部181如果从通信部182接收到从通信数据包去除了通信用头部1040的数据,则基于该数据的头部1010的发送目标 ID,将该数据分发至虚拟机12或13。例如,在发
送目标ID 1011 表示的是虚拟机13的情况下,分发管理部181对后端驱动113进行控制,将
该数据写入至共享存储器112,将数据设置通知的信号发送至前端驱动141。在发送目标ID 
1011表示的是虚拟机12的情况下,分发管理部181也进行相同的处理。由此,从其它信息处
理装置即信息处理装置21发送来的数据被分发至虚拟机12或13。
[0094] 通信部182经由通信路径50与信息处理装置21进行通信数据包的收发。
[0095] 首先,说明在通信部182从分发管理部181接收到针对信息处理装置21的数据的情况下通信部182进行的处理。通信部182 如果从分发管理部181接收到图4所示那样的针对
信息处理装置 21的数据、分发目标的信息,则生成包含分发目标的信息的通信用头部
1040。例如,通信部182生成与包含通信路径50的LAN 的协议对应的IP头部作为通信用头部
1040。通信部182生成图8 所示那样的向从分发管理部181接收到的针对信息处理装置21的
数据附加了通信用头部1040的通信数据包1100。通信部182将生成的通信数据包1100从通
信路径50发送至信息处理装置21。
[0096] 接下来,说明在通信部182从信息处理装置21接收到通信数据包的情况下通信部182进行的处理。通信部182如果从信息处理装置21接收到通信数据包1100,则将从通信数
据包1100去除了通信用头部1040的数据发送至分发管理部181。
[0097] 以上,对信息处理装置11的各部分的结构进行了说明,信息处理装置21也具有相同的结构。
[0098] 接着,对信息处理装置11的虚拟机12、13为发送侧的情况下的一系列处理的流程进行说明。下面,有时将由虚拟机12、13 设置于共享存储器111、112的数据称为共享存储器
数据。共享存储器数据为本发明的第1数据的一个例子。
[0099] 首先,对从虚拟机12、13的任意者接收到共享存储器数据的数据设置通知的分发管理部181的第1分发处理进行说明。
[0100] 如图9所示,分发管理部181以决定好的周期,对是否接收到数据设置通知的信号进行判别(步骤S101)。分发管理部181 如果判别为接收到数据设置通知的信号(步骤S101;
Yes),则对后端驱动113进行控制,从向虚拟机12和13中的发送了数据设置通知的信号的虚
拟机分配的共享存储器读出共享存储器数据(步骤 S102)。将读出的数据储存于辅助存储
部3的决定好的区域。例如,如果从虚拟机12接收到数据设置通知的信号,则分发管理部 
181从共享存储器111读出共享存储器数据。下面,分发管理部181 针对在辅助存储部3的决
定好的区域储存的数据执行下述处理。
[0101] 分发管理部181基于从共享存储器读出的数据的头部1010的发送目标ID 1011、发送源ID 1012和类别1013,对是否在分发信息表格161设定了分发目标进行判别(步骤
S103)。例如,在从共享存储器111读出的数据的发送目标ID 1011为表示虚拟机13 的
“VM13”,发送源ID 1012为表示虚拟机12的“VM12”,类别1013为“APP1”的情况下,由于与分
发信息表格161的分发设定的No.1一致,因此分发管理部181判别为指定了分发目标(步骤
S103;Yes)。
[0102] 分发管理部181参照启动条件表格162,对分发设定是否有效进行判别(步骤S104)。例如,分发管理部181如果针对分发设定的No.1而判别为所指定的存储器地址
“0X1000000”处的值为阈值“100”,则判别为分发设定是有效的(步骤S104;Yes)。
[0103] 分发管理部181以作为分发信息表格161的更新头部而指定的值,对从共享存储器111读出的共享存储器数据的头部1010的值进行更新(步骤S105)。例如,在分发设定No.1的
情况下,分发管理部181将发送目标ID 1011更新为“VM23”,将发送源 ID 1012更新为
“VM22”,将类别1013更新为“APP1”。
[0104] 分发管理部181将分发信息表格161的表示作为分发目标的信息处理装置的信息、更新了头部1010的值后的共享存储器数据供给至通信部182(步骤S106)。
[0105] 另一方面,在步骤103中,分发管理部181如果判别为没有指定分发目标(步骤S103;No),则对后端驱动113进行控制,将共享存储器数据写入至所读出的共享存储器数据
中包含的发送目标ID 1011所示的虚拟机的共享存储器(步骤S107)。之后,分发管理部181
将数据设置通知的信号发送至发送目标ID 1011所示的虚拟机的前端驱动(步骤S108)。例
如,在从发送目标ID 1011 读出的共享存储器数据的发送目标ID 1011为表示虚拟机13的
“VM13”的情况下,分发管理部181将该共享存储器数据写入至虚拟机13的共享存储器112。
之后,分发管理部181将数据设置通知的信号发送至虚拟机13的前端驱动141。
[0106] 另外,在步骤S104中,分发管理部181如果判别为分发设定并非有效(步骤S104;No),则执行上述步骤S107和S108的处理。以上为分发管理部181在从虚拟机12、13的任意者
接收到数据设置通知的信号时进行的处理。
[0107] 接下来,在图9的步骤S106中,对从分发管理部181供给了作为分发目标的信息处理装置的信息、共享存储器数据后的通信部 182的发送处理进行说明。
[0108] 如图10所示,通信部182以决定好的周期,对是否从分发管理部181接收到表示作为分发目标的信息处理装置的信息、所发送的共享存储器数据进行判别(步骤S201)。通信
部182在接收到表示作为分发目标的信息处理装置的信息、所发送的共享存储器数据的情
况下(步骤S201;Yes),生成包含表示作为分发目标的信息处理装置的信息在内的通信用头
部1040(步骤S202)。
[0109] 通信部182将在步骤S202中生成的通信用头部1040附加于在步骤S201中从分发管理部181接收到的所发送的共享存储器数据,生成通信数据包(步骤S203)。之后,通信部182
从通信路径50发送通信数据包(步骤S204)。以上为通信部182的发送处理。
[0110] 以上,以信息处理装置11为例进行了说明,但在信息处理装置21的虚拟机22、23为发送侧的情况下也相同。
[0111] 接着,对信息处理装置11的虚拟机12、13为接收侧的情况下的一系列处理的流程进行说明。
[0112] 首先,对从信息处理装置21发送了包含共享存储器数据的通信数据包的情况下的通信部182的接收处理进行说明。
[0113] 如图11所示,通信部182以决定好的周期,对是否从通信路径50接收到通信数据包进行判别(步骤S301),如果判别为接收到(步骤S301;Yes),则从数据包取出共享存储器数
据(步骤 S302)。具体而言,从通信数据包去除图8所示的通信用头部1040。如图11所示,通
信部182将共享存储器数据供给至分发管理部181 (步骤S303)。以上为通信部182的通信处
理。
[0114] 接下来,在图11的步骤S303中,对从通信部182供给了共享存储器数据的分发管理部181的第2分发处理进行说明。
[0115] 如图12所示,分发管理部181以决定好的周期对是否从通信部182供给了共享存储器数据进行判别(步骤S401)。如果供给了共享存储器数据(步骤S401;Yes),则执行下述处
理。分发管理部181对后端驱动113进行控制,将共享存储器数据设置于接收到的共享存储
器数据的发送目标ID 1011所示的虚拟机的共享存储器(步骤S402)。分发管理部181将对已
设置了数据这一状况进行通知的数据设置通知的信号通知给发送目标ID 1011所示的虚拟
机的前端驱动(步骤S403)。以上为接收到共享存储器数据的分发管理部181的第2分发处
理。
[0116] 以上,以信息处理装置11为例进行了说明,但在信息处理装置21的虚拟机22、23为接收侧的情况下也相同。
[0117] 如以上说明所述,在本发明的实施方式涉及的信息处理装置 11中,虚拟机12和虚拟机13的数据的交换是经由根OS 180而进行的。在指定为将虚拟机12和虚拟机13间的数据
转发至信息处理装置21的情况下,该数据被转发至信息处理装置21。这样,多个信息处理装
置的虚拟机能够跨信息处理装置之间进行通信。
[0118] 在上述说明中,将在信息处理装置11内的虚拟机12和虚拟机13之间交换的数据转发至其它信息处理装置21,但能够在信息处理装置11内在虚拟机之间转发数据。下面,在变
形例中进行说明。
[0119] (变形例)
[0120] 如图13所示,变形例涉及的信息处理装置11除了虚拟机12和 13之外,还具有虚拟机14。此外,在图13中,省略了信息处理装置 21的结构的图示,但信息处理装置21涉及的结
构与实施方式相同。
[0121] 虚拟机14与虚拟机13相同地作为进行信息处理的计算机起作用。虚拟机14为本发明的第3虚拟机的一个例子。虚拟机14 的客户OS 170与虚拟机13的客户OS 140相同地,执
行信息处理用应用190。由于虚拟机14具有与虚拟机13相同的结构,因此这里省略关于虚拟
机14的硬件、功能的说明。
[0122] 在变形例中,设想为将在信息处理装置11内的虚拟机12与虚拟机13之间交换的数据转发至相同信息处理装置11的虚拟机 14而进行说明。在该情况下,图14示出在分发信息
表格161登记的数据的例子。这里,将对虚拟机14进行识别的ID设为“VM14”。
[0123] 对其它虚拟机进行识别的ID、类别1013的值与实施方式相同。由于分发设定No.1至No.4的内容与实施方式相同,因此省略说明。
[0124] 如图14所示,在分发设定的No.5中,在发送目标ID 1011 为“VM13”,发送源ID 1012为“VM12”,类别1013为“APP1”的情况下,在分发目标指定了“本地主机”。并且,针对头
部1010 的各值,指定了将发送目标ID 1011更新为“VM14”,将发送源 ID 1012更新为
“VM12”,将类别1013更新为“APP3”。
[0125] 对按照分发设定的No.5,如何分发数据进行说明。此外,将分发设定No.5设为有效。假设虚拟机12将数值计算用应用的输出数据以虚拟机13为目标设置于共享存储器111,
将数据设置通知发送至根OS 180。在该情况下,在共享存储器111的发送目标ID 1011中设
置“VM13”,在发送源ID 1012中设置“VM12”,在类别1013中设置“APP1”。
[0126] 下面,一边参照图14,一边对分发管理部181的变形例涉及的第1分发管理处理进行说明。此外,以与实施方式不同的结构为中心进行说明。
[0127] 分发管理部181如果判别为从虚拟机12接收到数据设置通知的信号(步骤S101;Yes),则对后端驱动113进行控制,从分配给虚拟机12的共享存储器111读出共享存储器数
据(步骤S102),将读出的数据储存于辅助存储部3的决定好的区域。
[0128] 分发管理部181基于从共享存储器读出的数据的头部1010的发送目标ID 1011、发送源ID 1012和类别1013,对是否在分发信息表格161设定了分发目标进行判别(步骤
S103)。这里,如图 14所示,由于发送目标ID 1011、发送源ID 1012、类别1013的值与分发设
定的No.5一致,因此如图15所示,分发管理部181判别为指定了分发目标(步骤S103;Yes)。
[0129] 分发管理部181参照启动条件表格162,对分发设定是否有效进行判别(步骤S104),判别为分发设定的No.5是有效的(步骤S104;Yes)。
[0130] 分发管理部181以作为分发信息表格161的更新头部而指定的值,对从共享存储器111读出的共享存储器数据的头部1010的值进行更新(步骤S105)。如图14所示,在分发设定
的No.5 的情况下,分发管理部181将发送目标ID 1011更新为“VM14”,将发送源ID 1012更
新为“VM12”,将类别1013更新为“APP3”。
[0131] 如图15所示,分发管理部181对分发信息表格161的分发目标是否为其它信息处理装置、即信息处理装置11之外的信息处理装置进行判别(步骤S109)。如图14所示,在分发设
定的No.5 的情况下,由于分发目标为“本地主机”,因此如图15所示,分发管理部181判别为
分发目标不是其它信息处理装置21(步骤 S109;No)。
[0132] 分发管理部181对后端驱动113进行控制,将共享存储器数据写入至分发设定所示的作为发送目标的虚拟机的共享存储器(步骤S110)。这里,分发管理部181将共享存储器数
据写入至分配给虚拟机14的共享存储器114。之后,分发管理部181将数据设置通知的信号
发送至虚拟机14的前端驱动171(步骤S111)。
[0133] 另一方面,如图15所示,在步骤S109中,分发管理部181 如果判别为分发目标为其它信息处理装置(步骤S109;Yes),则将分发信息表格161的表示作为分发目标的信息处理
装置的信息、更新了头部1010的值的共享存储器数据供给至通信部182(步骤 S112)。
[0134] 另外,在步骤S103中,分发管理部181判别为在分发信息表格161没有指定分发目标的情况下(步骤S103;No)的处理与实施方式相同。在步骤S104中,判别为分发设定并非有
效的情况下 (步骤S104;No)的处理与实施方式相同。
[0135] 以上,如在实施方式、变形例中说明过那样,在本发明涉及的信息处理装置中,当针对在虚拟机之间交换的数据而在分发信息表格161指定为转发至其它信息处理装置的情
况下,将数据发送至所指定的其它信息处理装置,而不发送至原本的作为发送目标的虚拟
机。通过具有这样的结构,不对虚拟机侧的设定进行变更就能够跨多个信息处理装置进行
虚拟机之间的通信。
[0136] 在变形例中,分发管理部181当在分发信息表格161将与虚拟机写入至共享存储器的发送目标ID 1011不同的虚拟机指定为发送目标的情况下,将数据分发至分配给所指定
的虚拟机的共享存储器。这样,也能够将数据转发至同一信息处理装置内的虚拟机。
[0137] 在分发信息表格261中,基于发送目标ID 1011、发送源ID 1012和类别1013,对数据的分发目标进行指定。因此,关于特定的应用,能够进行跨信息处理装置的虚拟机间通
信。另外,关于同一信息处理装置内的虚拟机之间的通信,也相同地能够进行特定的应用之
间的数据的交换。
[0138] 由于在启动条件表格262中,能够对分发信息表格261的各个分发设定是有效或无效进行设定,因此,例如在对应用之间的数据的交换进行验证的情况下,能够排除对象应用
之外的应用的无关的通信。
[0139] 虚拟机的客户操作系统将对已在共享存储器写入了数据这一状况进行通知的数据设置的信号发送至根操作系统。由此,根操作系统只要在接收到数据设置的信号时,读取
共享存储器的数据即可,不需要对分配给各虚拟机的共享存储器进行监视。另外,根操作系
统能够不依赖于头部1010的信息地判别向共享存储器写入的虚拟机。
[0140] 分发管理部181将对已写入至共享存储器这一状况进行通知的数据设置的信号通知给成为对象的客户操作系统。由此,客户操作系统只要在接收到数据设置的信号时,读取
共享存储器的数据即可,不需要对共享存储器进行监视。
[0141] 另外,当在1个信息处理装置运行多个虚拟机的情况下,由于多个虚拟机使用物理上的1台信息处理装置的硬件资源,因此还会产生资源不足。但是,在实施方式中,由于能够
进行大于或等于 2台信息处理装置的虚拟机之间的通信,因此能够避免信息处理装置的硬
件资源不足这样的情况。
[0142] 在上述例子中,使用启动条件表格162、262而指定了分发设定的有效或无效。但是,信息处理装置11、21也可以不使用启动条件表格162、262。在该情况下,将登记于分发信
息表格161、261 的全部分发设定设为有效,在想要将分发设定设为无效的情况下,也可以
从分发信息表格161、261删除该分发设定。在该情况下,由于信息处理装置11、21各自仅具
有1个启动条件表格162、262 的表格即可,因此表格的维护的操作变得容易。
[0143] 或者,如图16所示,也可以在分发信息表格161、261追加启动条件的字段。在该情况下,由于信息处理装置11、21各自仅具有1个启动条件表格162、262的表格即可,因此表格
的维护的操作也会变得容易。
[0144] 或者,也可以是启动条件表格162、262仅具有对有效/无效进行指定的字段。在图17所示的例子中,单纯对有效或无效进行指定,而不是根据条件对有效或无效进行指定。
[0145] 或者,也可以如图18所示,在分发信息表格161、261追加对有效/无效进行指定的字段,通过对该值进行变更,从而对分发信息的有效或无效进行指定。在图18所示的例子
中,单纯对有效或无效进行指定,而不是根据条件对有效或无效进行指定。
[0146] 在实施方式、变形例中,对各虚拟机逐一地分配了共享存储器,但也可以是全部虚拟机将发送至其它虚拟机的数据写入至相同共享存储器。在该情况下,根OS 180也能够通
过写入至共享存储器的头部1010的发送源ID 1012对是哪个虚拟机所写入的数据进行判
别。
[0147] 在1个信息处理装置构建的虚拟机的数量并不限于2个或3 个,也可以是更多。或者,在1个信息处理装置构建的虚拟机的数量也可以是1个。例如,也可以在信息处理装置21
中仅构建虚拟机23。在该情况下,也可以将模拟器94连接于虚拟机23。例如,在对虚拟机13
的应用150的动作进行验证的情况下,信息处理装置11的虚拟机13与信息处理装置21的虚
拟机23进行通信,从而不会对驱动设备91及92、检查装置93的动作状况造成影响。另外,由
于信息处理装置21只要具有能够构建1个虚拟机23的规格即可,因此,例如不需要将信息处
理装置21的规格设为与信息处理装置11的规格等同。因此,能够削减成本。
[0148] 在上述例子中,由于通信路径50构成LAN的一部分,因此信息处理装置11和21进行了使用了LAN的通信。但是,通信路径50并不限于此,例如,也可以是使用USB规格的通信线
缆作为通信路径50,信息处理装置11和21经由USB进行通信。或者,也可以是通信路径50不
是有线线缆,信息处理装置11和21使用无线LAN、WPAN(Wireless Personal Area Network)
进行通信。
[0149] 在上述例子中,对1个虚拟机仅执行1个应用的例子进行了说明,但1个虚拟机也可以执行多个应用。
[0150] 作为对由上述根OS 180执行的程序进行记录的记录介质,能够使用USB存储器、软盘、CD、DVD、Blu‑ray(注册商标)、MO、SD卡、记忆棒(注册商标)、其它包含磁盘、光盘、光磁
盘、半导体存储器、磁带在内的计算机可读取的记录介质。
[0151] 本发明在不脱离广义的精神和范围的情况下,能够设为各种实施方式及变形。另外,上述实施方式用于对本发明进行说明,并不是对本发明的范围进行限定。即,本发明的
范围不是由实施方式示出,而是由权利要求书表示的。而且,将在权利要求书内及与其等同
的发明的意义的范围内实施的各种变形视为落在本发明的范围内。
[0152] 标号的说明
[0153] 001、002程序,1处理器,2主存储部,3辅助存储部,4通信控制部,9总线,11、21信息处理装置,12、13、14、22、23 虚拟机,50通信路径,91、92驱动设备,93检查装置,94模拟器,
100信息处理系统,110、210管理程序,111、112、114、 211、212共享存储器,113、213后端驱
动,120、140、170、220、 240客户操作系统,121、141、171、221、241前端驱动,130、 150、190、
230、250应用,161、261分发信息表格,162、262启动条件表格,180、280根OS,181、281分发管
理部,182、282 通信部,1010头部,1011发送目标ID,1012发送源ID,1013类别,1014大小,
1020数据部,1030错误校验码,1040通信用头部,1100通信数据包。