计算机、访问管理方法以及访问管理程序的制作方法

文档序号:6498216阅读:175来源:国知局
计算机、访问管理方法以及访问管理程序的制作方法
【专利摘要】在发生了从OS(231a)向I/O设备(110a)的访问的情况下,I/O分配部(223)参照I/O分配表格(229),判定I/O设备(110a)是否被分配给其他OS(231b)。在I/O设备(110a)被分配给其他OS(231b)的情况下,控制部(228)向OS(231a)通知报错。在I/O设备(110a)未被分配给任何一个OS(231a、231b)的情况下,I/O分配部(223)为了将I/O设备(110a)分配给OS(231a),更新I/O分配表格(229),I/O仿真部222对向I/O设备(110a)的访问进行仿真。
【专利说明】计算机、访问管理方法以及访问管理程序

【技术领域】
[0001]本发明涉及例如管理从多个OS (Operating System:操作系统)向设备的访问的计算机、访问管理方法以及访问管理程序。

【背景技术】
[0002]虚拟计算机系统是使多个OS动作的系统。例如,存在Xen(注册商标)、KVM(Kernel-based Virtual Machine:基于内核的虚拟机)(注册商标)等虚拟计算机系统。
[0003]以往的虚拟计算机系统在事先针对多个OS分别设定使其占有的I/O设备之后起动多个OS。然后,虚拟计算机监视器(VMM:Virtual Machine Monitor)许可从各OS向该OS占有的I/O设备的存储器、寄存器的访问,拒绝从各OS向其他OS占有的I/O设备的存储器、寄存器的访问。在I/O设备是PCI设备(包括PCI Express设备。以下相同)的情况下,虚拟计算机监视器许可或者拒绝向PCI配置寄存器的访问。这样,进行了针对各OS的I/O设备的排他性的分配。
[0004]例如,在Xen中对设定文件指定使OS占有的I/O设备。另外,在KVM中,用OS的起动选项指定使其占有的I/o设备。
[0005]Xen, KVM等以往的虚拟计算机系统需要针对每个OS事先设定使其占有的I/O设备。因此,在多个OS动作而各OS占有多个I/O设备的情况下,事先设定变得繁杂。
[0006]在专利文献I中,公开了如以下那样,在执行中切换占有I/O设备的OS的虚拟计算机系统。
[0007]在专利文献I的虚拟计算机系统中,VMM将基于OS的I/O设备占有要求、基于VMM的事件探测作为主要原因,向OS输出I/O设备的占有许可。然后,OS仅在输出了 I/O设备的占有许可的情况下,进行针对I/o设备的输入输出。因此,不需要用于使某一个OS占有I/o设备的事先设定。
[0008]但是,由于不保护I/O设备的存储器、寄存器,所以能够从非占有I/O设备中的OS向该I/o设备的存储器、寄存器访问。因此,存在其他OS破坏某个OS占有中的I/O设备的存储器、寄存器的内容的可能性。
[0009]专利文献1:日本特开2007-220086号公报


【发明内容】

[0010]本发明的目的在于例如能够正确地管理从多个OS向设备的访问。
[0011]在本发明的计算机中,向设备访问的多个OS (Operating System)进行动作。
[0012]所述计算机具备:
[0013]设备分配存储部,存储用于将设备和分配了设备的OS对应起来的设备分配表格;以及
[0014]访问管理部,在发生了向所述设备的访问的情况下,根据所述设备分配表格判定分配了所述设备的OS,在所述设备未被分配给任何一个OS的情况下,为了将所述设备和访问源的OS对应起来,更新所述设备分配表格来许可向所述设备的访问,在所述设备被分配给所述访问源的OS以外的OS的情况下,拒绝向所述设备的访问。
[0015]根据本发明,例如,能够正确地管理从多个OS向设备的访问。

【专利附图】

【附图说明】
[0016]图1是实施方式I中的虚拟计算机系统100的结构图。
[0017]图2是示出实施方式I中的虚拟计算机系统100的动作的流程图。
[0018]图3是示出实施方式I中的虚拟计算机系统100的存储器映射的图。
[0019]图4是示出实施方式I中的I/O分配表格229的初始状态的图。
[0020]图5是示出实施方式I中的I/O分配表格229的初始化处理的流程图。
[0021]图6是示出实施方式I中的初始化处理后的I/O分配表格229的图。
[0022]图7是示出实施方式I中的I/O设备110的分配处理的流程图。
[0023]图8是示出实施方式I中的分配了 I/O设备IlOaUlOb之后的I/O分配表格229的图。
[0024]图9是示出实施方式I中的分配了 I/O设备IlOaUlOb之后的虚拟存储器映射320a、320b 的图。
[0025]图10是示出实施方式I中的向PCI配置寄存器的访问处理的流程图。
[0026]图11是示出实施方式I中的BAR变更判定处理(S500)的流程图。
[0027]图12是示出实施方式2中的I/O分配表格229的图。
[0028]图13是示出实施方式2中的虚拟计算机系统100的存储器映射的图。
[0029]图14是示出实施方式2中的I/O分配表格229的初始化处理的流程图。
[0030]图15是示出实施方式2中的I/O设备110的分配处理的流程图。
[0031]图16是示出实施方式2中的向PCI配置寄存器的访问处理的流程图。
[0032]图17是实施方式3中的虚拟计算机系统100的结构图。
[0033]图18是示出实施方式3中的I/O分配表格229的初始化处理的流程图。
[0034]符号说明
[0035]100:虚拟计算机系统;110:1/0设备;200:物理计算机;210:硬件;211:处理器;212:主存储器;213:辅助存储装置;214:中断控制器;220:VMM部;221:PCI仿真部;222:I/O仿真部;223:1/0分配部;224:存储器管理部;225:表格保存部;228:控制部;229:1/0分配表格;230:VM部;231:0S ;232:设备驱动器;233 =PCI驱动器;310:物理存储器映射;311:VM用存储器空间;312:1/0用存储器空间;313:1/0用寄存器空间;320:虚拟存储器映射。

【具体实施方式】
[0036]实施方式1.
[0037]说明对虚拟计算机的OS (Operating System)分配设备而使虚拟计算机的OS占有设备的虚拟计算机系统。虚拟计算机系统是多个OS进行动作的系统的一个例子。
[0038]图1是实施方式I中的虚拟计算机系统100的结构图。
[0039]根据图1,说明实施方式I中的虚拟计算机系统100的硬件结构以及功能结构。
[0040]虚拟计算机系统100具备物理计算机200、和与物理计算机200连接的多个I/O设备I1a-11c (输入(Input)/输出(Output)设备)。I/O设备110的数量也可以是2个或者4个以上。
[0041]在实施方式中,设为I/O 设备 IlOa-1lOc 是将 PCI (Peripheral ComponentsInterconnect bus:外围组件互连总线)用作接口的PCI设备而进行说明。其中,与物理计算机200连接的I/O设备也可以是PCI设备以外的设备。
[0042]PCI设备存储包括BAR(基地址寄存器)的PCI配置寄存器。PCI配置寄存器的BAR表示分配给PCI设备的存储器空间或者寄存器空间(都为存储区域)的基地址(开头地址)和尺寸。
[0043]显示器装置、键盘、鼠标、打印机、通信板、外部存储装置等是I/O设备110的一个例子。
[0044]物理计算机200 (计算机、电脑的一个例子)是具备处理器211a、211b、主存储器212、辅助存储装置213以及中断控制器214等硬件210的电脑。
[0045]处理器211a、211b是控制物理计算机200的处理装置,CPU (Central ProcessingUnit:中央处理单元)是处理器211a、211b的一个例子。处理器211的数量也可以是I个或者3个以上。
[0046]主存储器212是被称为一次存储装置的存储装置,RAM (Random Access Memory:随机访问存储器)、ROM (Read Only Memory:只读存储器)是主存储器212的一个例子。
[0047]辅助存储装置213是被称为二次存储装置的存储装置,磁盘装置、闪存存储器是辅助存储装置213的一个例子。
[0048]中断控制器214是控制来自1/0设备IlOa-1lOc的中断的装置。例如,中断控制器214将来自1/0设备IlOa-1lOc的中断通知给处理器21 la、21 lb。
[0049]物理计算机200还具备使用硬件210而进行动作的VMM部220以及多个VM部230a、230b。VM部230的数量也可以是3个以上。
[0050]VM部230a执行0S231a、设备驱动器232a以及PCI驱动器233a,作为虚拟计算机(VM)而动作。同样地,VM部230b执行0S231b、设备驱动器232b以及PCI驱动器233b,作为虚拟计算机而动作。虚拟计算机是通过后述虚拟计算机监视器(VMM)虚拟地构筑的计算机。设为VM部230a使用处理器211a而动作,VM部230b使用处理器211b而动作。
[0051]0S231a、0S231b是虚拟计算机的OS(或者执行虚拟计算机的OS的执行部)。0S231a、0S231b不支持虚拟地址空间。另外,0S231a、0S231b通过单处理器或者多处理器动作。在实施方式中,以通过单处理器动作的0S231a、0S231b为例子进行说明。但是,0S231a、0S231b也可以是通过多处理器动作的OS。另外,0S231a、0S231b将由存储器管理部224构筑的虚拟地址空间识别为物理地址空间而动作。
[0052]设备驱动器232a、232b是用于向1/0设备IlOa-1lOc的存储器、寄存器访问而个别地控制1/0设备IlOa-1lOc的软件(或者执行软件的执行部)。访问主要意味着数据的读取或者数据的写入(以下相同)。
[0053]PCI驱动器233a、233b是用于向1/0设备110a_l1c的PCI配置寄存器访问的软件(或者执行软件的执行部)。
[0054]VMM部220(设备分配存储部、访问管理部的一个例子)执行虚拟计算机监视器(VMM)来控制多个虚拟计算机(VM部230a、230b)。虚拟计算机监视器是用于对各虚拟计算机分配硬件资源(例如处理器211、主存储器212的存储区域)来构筑多个虚拟计算机的软件。
[0055]VMM部220具备PCI仿真部221、I/O仿真部222、I/O分配部223、存储器管理部224以及控制部228。
[0056]PCI仿真部221对从PCI驱动器233a、233b向PCI配置寄存器的访问进行仿真。即,PCI仿真部221争夺向PCI配置寄存器的访问,代替PCI驱动器233a、233b而向PCI配置寄存器访问。
[0057]I/O仿真部222对从设备驱动器232a、232b向I/O设备的存储器、寄存器的访问进行仿真。即,I/o仿真部222争夺向I/O设备的存储器、寄存器的访问,代替设备驱动器232a、232b而向I/O设备的存储器、寄存器访问。
[0058]I/O分配部223参照后述I/O分配表格229,判定对发生了访问的I/O设备110分配的0S231,更新I/O分配表格229。
[0059]存储器管理部224定义VM部230a、230b(0S231a、0S231b)用的虚拟地址空间。例如,存储器管理部224生成将表示虚拟地址空间内的存储区域的虚拟地址、和表示物理地址空间内的存储区域的物理地址对应起来的映射表格。即,存储器管理部224使用映射表格对虚拟地址空间和物理地址空间进行映射。映射主要意味着,将虚拟地址空间的虚拟地址和物理地址空间的物理地址对应起来(以下相同)。
[0060]控制部228进行VM部230a、230b的控制、后述I/O分配表格229的初始化。
[0061]图2是示出实施方式I中的虚拟计算机系统100的动作的流程图。
[0062]根据图2,说明实施方式I中的虚拟计算机系统100的动作。
[0063]在SllO中,物理计算机200起动。在物理计算机200起动的情况下,物理计算机200的起动处理部(图示省略)执行B1S (Basic Input/Output System:基本输入/输出系统)、引导装载程序等规定的软件(物理计算机200的起动处理)。
[0064]例如,在物理计算机200的起动处理中,进行物理地址空间的初始设定、PCI配置寄存器的初始设定。
[0065]图3是示出实施方式I中的虚拟计算机系统100的存储器映射的图。
[0066]根据图3,说明实施方式I中的虚拟计算机系统100的存储器映射。
[0067]通过处理器211、主存储器212,对物理存储器映射310的数据进行存储管理。
[0068]在物理地址空间中,确保VM用存储器空间311、I/O用存储器空间312、I/O用寄存器空间313等。VM用存储器空间311是为了 VMM、0S231用而分配的存储区域。I/O用存储器空间312是为了 I/O设备IlOa-1lOc的存储器用而分配的存储区域。I/O用寄存器空间313是为了 I/O设备IlOa-1lOc的寄存器用而分配的存储区域。
[0069]在物理计算机200的起动处理(图2的SI 10)中,进行以下那样的物理地址空间的初始设定。
[0070]在物理地址空间中,确保VM用存储器空间311、I/O用存储器空间312、I/O用寄存器空间313等。
[0071]在VM用存储器空间311中,确保VMM部220用的存储区域,从辅助存储装置213向VMM部220用的存储区域载入(读入)VMM的程序、数据。后述I/O分配表格229是在VMM部220用的存储区域中载入的数据的一个例子。
[0072]在I/O用存储器空间312中,确保I/O设备IlOa-1lOc各自的存储器空间。通过向I/O设备IlOa-1lOc的存储器空间访问,能够向I/O设备IlOa-1lOc的存储器访问。
[0073]在I/O用寄存器空间313中,确保I/O设备IlOa-1lOc各自的寄存器空间(在图3中仅表示I/o设备IlOb的寄存器空间)。通过向I/O设备IlOa-1lOc的寄存器空间访问,能够向I/O设备IlOa-1lOc的寄存器访问。
[0074]虚拟存储器映射320a是表示0S231a用的虚拟地址空间的用途的图或者数据,虚拟存储器映射320b是表示0S231b用的虚拟地址空间的用途的图或者数据。通过VMM部220的存储器管理部224,对虚拟存储器映射320a、320b的数据进行存储管理。关于0S231a、0S231b用的虚拟地址空间,后述。
[0075]图4是示出实施方式I中的I/O分配表格229的初始状态的图。
[0076]根据图4,说明实施方式I中的I/O分配表格229。
[0077]I/O分配表格229 (设备分配表格的一个例子)是用于将I/O设备110 (的存储器、寄存器)和分配了 I/O设备110的0S231对应起来的数据。
[0078]I/O分配表格229包括“设备标识符”、“分配目的地”以及“区域(O至5) ”。“区域η (η是O至5) ”表示的存储区域对应于PCI配置寄存器的BARn表示的存储区域。也可以代替使用I个“区域η”来表示32比特的存储区域,与PCI配置寄存器的BAR同样地使用2个“区域η”来表示64比特的存储区域。
[0079]“区域(O至5) ”包括“基地址”、“尺寸”、“属性”。在初始状态下,任何一个项目都未被设定。另外,也可以在“区域(O至5) ”中包括其他信息(例如可否预取标志)。
[0080]之后设定的各项目如以下那样发挥功能。
[0081]“设备标识符”表示I/O设备110的标识符。例如,在PCI设备的情况下,将域编号、总线编号、设备编号、功能编号的组用作设备标识符。
[0082]“分配目的地”表示分配了 I/O设备110的0S231的标识符。在“分配目的地”中设定的“NULL”意味着,I/O设备110未被分配给任何一个0S231。
[0083]“基地址”表示为了 I/O设备110用而分配的存储区域的开头的物理地址。在“区域η (η是O至5) ”的“基地址”中设定PCI配置寄存器的BARn表示的基地址。
[0084]“尺寸”表示所分配的存储区域的大小。在“区域η”的“尺寸”中设定PCI配置寄存器的BARn表不的尺寸。
[0085]“属性”表示所分配的存储区域的用途。在“属性”中设定的“存储器”意味着所分配的存储区域是存储器空间,在“属性”中设定的“寄存器”意味着所分配的存储区域是寄存器空间。
[0086]返回到图2,继续说明虚拟计算机系统100的动作。
[0087]在S120中,VMM部220起动。在VMM部220起动了的情况下,VMM部220的控制部228执行I/O分配表格229 (参照图4)的初始化处理。关于I/O分配表格229的初始化处理,后述。
[0088]进而,VMM部220的控制部228在VM用存储器空间311(参照图3)中确保0S231a、0S231b用的存储区域,在0S231a、0S231b用的存储区域中从辅助存储装置213载入(读入)VM的程序、数据。0S231a、0S231b、设备驱动器232a、232b以及PCI驱动器233a、233b是在0S231a、0S231b用的存储区域中载入的程序的一个例子。0S231a、0S231b用的存储区域的确保以及VM的程序、数据的载入,也可以在物理计算机200的起动处理(SllO)中执行。
[0089]另外,VMM部220的存储器管理部224定义0S231a、0S231b用的虚拟地址空间,在虚拟地址空间中映射0S231a、0S231b用的存储区域(参照图3的虚拟存储器映射320a、320b)。此时,存储器管理部224生成将物理地址空间的物理地址和虚拟地址空间的虚拟地址对应起来的映射表格。
[0090]然后,VMM部220的控制部228使VM部230a、230b起动。
[0091]在S130中,VM部230a、230b开始动作。在VM部230a、230b开始了动作的情况下,发生向I/o设备IlOa-1lOc的存储器、寄存器的访问以及向PCI配置寄存器的访问。关于发生了访问的情况的处理,后述。
[0092]通过图2的流程图所示那样的虚拟计算机系统100的动作,在物理计算机200中VM 部 230a、230b 工作。
[0093]图5是示出实施方式I中的I/O分配表格229的初始化处理的流程图。
[0094]根据图5,说明实施方式I中的I/O分配表格229的初始化处理。
[0095]VMM部220的控制部228针对物理计算机200中使用的每个I/O设备110,执行S210至S230的处理。即,控制部228针对I/O设备IlOa-1lOc分别执行S210至S230的处理。
[0096]在S210中,控制部228判定I/O设备110的存储器空间以及寄存器空间是否定位在页面边界。
[0097]此时,控制部228参照I/O设备110的PCI配置寄存器内的各BAR。在各BAR中设定了 I/o设备110的存储器空间或者寄存器空间的基地址以及尺寸。控制部228判定在各BAR中设定的基地址是否为页面边界的地址(页面尺寸(例如4K字节)单位的地址)。在各BAR中设定的基地址是页面边界的地址的情况下,I/O设备110的存储器空间以及寄存器空间定位在页面边界。
[0098]在I/O设备110的存储器空间以及寄存器空间定位在页面边界的情况下(“是”),处理进入到S230。
[0099]在I/O设备110的存储器空间以及寄存器空间未定位在页面边界的情况下(“否”),处理进入到S220。
[0100]在S220中,控制部228在设定有并非页面边界的地址的基地址的BAR中设定该基地址的前后某一个的页面边界的地址。
[0101]由此,能够使I/O设备110的存储器空间以及寄存器空间定位在页面边界。
[0102]在S220之后,处理进入到S230。
[0103]在S230中,控制部228使用I/O设备110的PCI配置寄存器的设定值,在I/O分配表格229中设定I/O设备110的“设备标识符” “基地址” “尺寸” “属性”。另外,控制部228在I/O分配表格229的“分配目的地”中设定“NULL (无被分配了的0S231) ”。
[0104]图6是示出实施方式I中的初始化处理后的I/O分配表格229的图。图6示出初始化处理后的I/o分配表格229的一个例子。
[0105]图7是示出实施方式I中的I/O设备110的分配处理的流程图。
[0106]根据图7,说明实施方式I中的I/O设备110的分配处理。
[0107]在未分配给任何一个0S231a、0S231b的I/O设备110的存储器空间或者寄存器空间中发生了访问的情况下,如以下那样执行I/O设备110的分配处理。
[0108]以下,说明发生了从0S231a向I/O设备IlOa的存储器空间的访问的情况。其中,在发生了从0S231a向I/O设备IlOa的寄存器空间的访问的情况、以及发生了从0S231a向I/O设备IlOb或者IlOc的存储器空间或者寄存器空间的访问的情况下,处理内容也与以下相同。进而,在发生了从0S231b向I/O设备IlOa-1lOc中的任何一个的存储器空间或者寄存器空间的访问的情况下,处理内容都与以下相同。
[0109]在S310中,0S231a的设备驱动器232a向I/O设备IlOa的存储器空间访问。例如,设备驱动器232a指定I/O设备IlOa的存储器空间的物理地址而将访问命令输出到处理器211a。
[0110]在S310之后,处理进入到S320。
[0111]在S320中,处理器211a参照VMM部220的起动时由存储器管理部224生成的映射表格。此时,在映射表格中未设定(映射)与I/o设备IlOa的存储器空间的物理地址对应的虚拟地址。因此,处理器211a发生页面错误例外(或者TLB差错例外。以下相同)而调用VMM部220。页面错误例外的信息(数据)中包括访问目的地的物理地址。
[0112]例如,也可以在0S231a、0S231b的例外处理程序(Handler)中设定页面错误例外的发生时的VMM部220的调用。或者,也可以使用作为物理计算机200的虚拟化支援功能的一部分的例外争夺功能来调用VMM部220。或者,也可以使0S231a、0S231b以非特权模式动作,在0S231a、0S231b的例外向量中设定页面错误例外(特权违反的一个例子)发生时的VMM部220的调用。
[0113]在S320之后,处理进入到S330。
[0114]在S330中,VMM部220的I/O分配部223参照I/O分配表格229,判定页面错误例外的原因是否为向I/O设备IlOa的存储器空间或者寄存器空间的访问。
[0115]此时,I/O分配部223判定在I/O分配表格229中登记的各I/O设备的各“区域(O至5) ”中是否包括访问目的地的物理地址。在访问目的地的物理地址包含于某一个I/O设备的“区域(O至5) ”的情况下,页面错误例外的原因是向该I/O设备110的存储器空间或者寄存器空间的访问。
[0116]在页面错误例外的原因是向I/O设备IlOa的存储器空间或者寄存器空间的访问的情况下(“是”),处理进入到S331。
[0117]在页面错误例外的原因并非向I/O设备IlOa的存储器空间或者寄存器空间的访问的情况下(“否”),处理进入到S350。
[0118]在S331中,VMM部220的I/O分配部223参照I/O分配表格229,判定访问目的地的I/o设备IlOa是否被其他0S231b占有。
[0119]此时,I/O分配部223判定是否在I/O分配表格229中在与访问目的地(I/O设备IlOa)的“设备标识符”对应起来了的“分配目的地”中设定了其他0S231b的标识符。在“分配目的地”中设定了其他0S231b的标识符的情况下,访问目的地的I/O设备IlOa被其他0S231b占有。
[0120]在访问目的地的I/O设备IlOa被其他0S231b占有的情况下(“是”),处理进入到 S350。
[0121]在访问目的地的I/O设备IlOa未被其他0S231b占有的情况下(“否”),处理进入到S340。
[0122]在S340中,VMM部220的I/O分配部223进行I/O分配表格229的设定。此时,I/O分配部223在与访问目的地(I/O设备IlOa)的“设备标识符”对应起来了的“分配目的地”中设定访问源(0S231a)的标识符。
[0123]在S340之后,处理进入到S341。
[0124]在S341中,VMM部220的存储器管理部224参照I/O分配表格229,将与访问目的地(I/o设备IlOa)的“设备标识符”对应起来了的“区域(O至5) ”表示的所有存储器空间以及寄存器空间映射到访问源的0S231a的虚拟地址空间。即,存储器管理部224将该“区域(O至5) ”的物理地址和0S231a的虚拟地址空间的虚拟地址对应起来而设定到映射表格。
[0125]在S341之后,处理进入到S342。
[0126]在S342中,VMM部220的I/O仿真部222对向I/O设备IlOa的存储器空间的访问进行仿真。即,I/o仿真部222代替0S231a的设备驱动器232a而向I/O设备IlOa的存储器空间访问。例如,I/O仿真部222将访问命令输出到处理器211a,处理器211a向I/O设备IlOa的存储器空间访问。
[0127]在S342之后,处理进入到S360。
[0128]在S350中,VMM部220的控制部228执行页面错误例外用的规定的异常处理。例如,控制部228向0S231a进行报错通知、或者对页面错误例外进行仿真来执行。
[0129]在S350之后,处理进入到S360。
[0130]在S360中,VMM部220的控制部228使控制返回到0S231a。
[0131]通过S360,I/O设备110的分配处理结束。
[0132]在对0S231a分配了 I/O设备IlOa并且映射了 I/O设备IlOa的存储器空间和0S23Ia的虚拟地址空间的情况下,处理器21 Ia即使发生从0S23Ia向I/O设备IlOa的存储器空间的访问也不发生页面错误例外,依照访问命令向I/O设备IlOa的存储器空间访问。在该情况下,VMM部220不对向I/O设备IlOa的存储器空间的访问进行仿真。
[0133]图8是示出实施方式I中的分配了 I/O设备IlOaUlOb之后的I/O分配表格229的图。
[0134]图8示出对向I/O设备IlOa的存储器访问了的0S231a分配了 I/O设备110a,对向I/O设备IlOb的存储器或者寄存器访问了的0S231b分配了 I/O设备IlOb的情况的I/O分配表格229。
[0135]图9是示出实施方式I中的分配了 I/O设备IlOaUlOb之后的虚拟存储器映射320a、320b 的图。
[0136]图9示出将I/O设备IlOa的存储器空间映射到了 0S231a的虚拟地址空间的情况的虚拟存储器映射320a、和将I/O设备IlOb的存储器空间和寄存器空间映射到了 0S231b的虚拟地址空间的情况的虚拟存储器映射320b。
[0137]图10是示出实施方式I中的向PCI配置寄存器的访问处理的流程图。
[0138]根据图10,说明0S231a的PCI驱动器233a向I/O设备IlOa的PCI配置寄存器访问了的情况的处理。其中,在0S231a的PCI驱动器233a向I/O设备110b、IlOc的PCI配置寄存器访问了的情况下,处理内容也与以下相同。进而,在0S231b的PCI驱动器233b向I/O设备IlOa-1lOc的PCI配置寄存器访问了的情况下,处理内容也与以下相同。
[0139]在S410中,0S231a的PCI驱动器233a向I/O设备IlOa的PCI配置寄存器访问。例如,PCI驱动器233a指定I/O设备IlOa的PCI配置寄存器内的地址、寄存器编号而将访问命令输出到处理器211a。
[0140]在S410之后,处理进入到S420。
[0141]在S420中,VMM部220争夺向I/O设备IlOa的PCI配置寄存器的访问。
[0142]例如,预将配置有向PCI配置空间的访问用的寄存器(C0NFIG_ADDR寄存器以及C0NFIG_DATA寄存器)的页面作为无法从0S231a、0S231b访问的页面设定到处理器211a、211b。然后,在发生了从0S231a、0S231b向该页面的访问(向PCI配置寄存器的访问)的情况下,处理器211a、211b发生页面错误例外(或者TLB差错例外。以下相同)而调用VMM部220。另外,也可以为了 0S231a、0S231b向PCI配置空间的访问用的寄存器的访问,而调用VMM部220。另外,在向PCI配置空间的访问用的寄存器并非被映射到存储器空间而被映射到I/O地址空间的情况下,也可以通过I/O地址空间的保护功能调用VMM部220。
[0143]在S420之后,处理进入到S430。
[0144]在S430中,VMM部220的PCI仿真部221参照I/O分配表格229,判定访问目的地的I/o设备IlOa(PCI设备)是否被分配给访问源的0S231a。在与访问目的地(I/O设备IlOa)的“设备标识符”对应起来了的“分配目的地”中设定了访问源(0S231a)的标识符的情况下,访问目的地的I/O设备IlOa被分配给访问源的0S231a。
[0145]在访问目的地的I/O设备IlOa被分配给访问源的0S231a的情况下(“是”),处理进入到S440。
[0146]在访问目的地的I/O设备IlOa未被分配给访问源的0S231a的情况下(“否”),处理进入到S450。
[0147]在S440中,VMM部220的PCI仿真部221判定访问内容是否包括PCI配置寄存器的BAR的变更。
[0148]在访问内容包括PCI配置寄存器的BAR的变更的情况下(“是”),处理进入到BAR变更判定处理(S500),之后,进入到S441。关于BAR变更判定处理(S500),另外说明。
[0149]在访问内容不包括PCI配置寄存器的BAR的变更的情况下(“否”),处理进入到S442。
[0150]在S441中,BAR变更判定处理(S500)的处理结果是“0K”的情况下,处理进入到S442。另外,在BAR变更判定处理(S500)的处理结果是“NG”的情况下,处理进入到S450。
[0151]在S442中,VMM部220的PCI仿真部221对向PCI配置寄存器的访问进行仿真。此时,PCI仿真部221代替PCI驱动器233a而向PCI配置寄存器访问。例如,PCI仿真部221将访问命令输出到处理器211a,处理器211a向PCI配置寄存器访问。
[0152]在S442之后,处理进入到S460。
[0153]在S450中,VMM部220的PCI仿真部221执行向PCI配置寄存器的访问时的规定的异常处理。例如,PCI仿真部221向0S231a进行报错通知。
[0154]在S450之后,处理进入到S460。
[0155]在S460中,VMM部220的PCI仿真部221使控制返回到0S231a。
[0156]通过S460,向PCI配置寄存器的访问处理结束。
[0157]图11是示出实施方式I中的BAR变更判定处理(S500)的流程图。
[0158]根据图11,说明向PCI配置寄存器的访问处理(参照图10)中包含的BAR变更判定处理(S500)。
[0159]在S510中,VMM部220的PCI仿真部221判定变更后的BAR表示的存储区域是否为正确的存储区域。例如,PCI仿真部221在变更后的BAR的基地址与页面边界的地址一致的情况下,判定为变更后的BAR表示的存储区域是正确的存储区域。进而,PCI仿真部221判定变更后的BAR表示的存储区域收敛于I/O用存储器空间312、I/O用寄存器空间313中。
[0160]在变更后的BAR表示的存储区域是正确的存储区域的情况下(“是”),处理进入到 S511。
[0161]在变更后的BAR表示的存储区域并非正确的存储区域的情况下(“否”),BAR变更判定处理(S500)的处理结果是“NG”(S530)。
[0162]在S511中,VMM部220的PCI仿真部221参照I/O分配表格229,判定变更后的BAR表示的存储区域是否被其他0S231b占有。
[0163]此时,PCI仿真部221判定在与设定了访问源以外的0S231b的标识符的“分配目的地”对应起来了的“区域(O至5) ”中是否包括变更后的BAR表示的存储区域的一部分或者全部。
[0164]在变更后的BAR表示的存储区域被其他0S231b占有了的情况下(“是”),BAR变更判定处理(S500)的处理结果是“NG”(S530)。
[0165]在变更后的BAR表示的存储区域未被其他0S231b占有的情况下(“否”),处理进入到S520。
[0166]在S520中,VMM部220的PCI仿真部221变更与I/O分配表格229的访问目的地(I/O设备IlOa)的“设备标识符”对应起来了的“区域(O至5)”中的、与变更了的BAR对应的“区域(O至5中的某一个)”的“基地址”以及“尺寸”。
[0167]在S520之后,处理进入到S521。
[0168]在S521中,VMM部220的存储器管理部224根据BAR的变更,变更I/O设备IlOa的映射表格。即,存储器管理部224从I/O设备IlOa的虚拟地址空间解映射变更前的BAR表示的存储区域,将变更后的BAR表示的存储区域映射到I/O设备IlOa的虚拟地址空间。
[0169]BAR变更判定处理(S500)的处理结果是“OK”(S522)。
[0170]此处,补充实施方式中的虚拟计算机系统100的硬件。
[0171]处理器211a、211b经由总线(图示省略)与主存储器212、辅助存储装置213、中断控制器214、I/O设备IlOa-1lOc以及其他硬件连接,并控制这些硬件。
[0172]在主存储器212或者辅助存储装置213中存储有程序群、文件群(图示省略)。
[0173]在程序群中,包括执行在实施方式中说明为“?部”的功能的程序。程序(例如访问控制程序、虚拟计算机程序)由处理器211读出并执行。即,程序使电脑作为“?部”发挥功能,并且使电脑执行“?部”的阶段、方法。
[0174]在文件群中,包括在实施方式中说明的“?部”中使用的各种数据(输入、输出、判定结果、计算结果、处理结果等)。
[0175]在实施方式中在结构图以及流程图中包含的箭头主要表示数据、信号的输入输出。
[0176]使用硬件210(例如处理器211)执行根据流程图等说明的处理。
[0177]在实施方式中说明为“?部”的部分既可以是“?电路”、“?装置”、“?设备”,并且也可以是“?步骤”、“?阶段”、“?处理”。即,说明为“?部”的部分可以用固件、软件、硬件或者它们的组合中的任何一个来安装。
[0178]实施方式I中的虚拟计算机的0S231a、0S231b是在物理计算机200中动作的多个OS的一个例子。也可以在物理计算机200中安装多操作系统,物理计算机200使虚拟计算机的OS以外的多个OS动作。
[0179]在实施方式I中,物理计算机200将PCI设备的寄存器空间映射到存储器空间。其中,物理计算机200也可以如PC/AT互换机那样,将PCI设备的寄存器空间映射到I/O地址空间(PC/AT是注册商标)。例如,在Intel x86 CPU的情况下,向I/O地址空间映射了的PCI设备的寄存器空间的保护能够通过使用I/O特权等级、I/O许可比特映射、或者硬件的虚拟化支援功能的I/o访问争夺功能来实现(Intel是注册商标)。
[0180]在实施方式I中,物理计算机200不进行针对0S231a、0S231b的I/O设备I1a-11c的事先分配。代替这个,物理计算机200在发生了基于0S231a的向I/O设备I1a的存储器空间、寄存器空间的访问时,按照先到顺序,对该0S231a分配该I/O设备110a。由此,物理计算机200从该0S231a以外的0S231b保护该I/O设备IlOa的存储器空间、寄存器空间以及PCI配置寄存器。即,物理计算机200无法从分配了该I/O设备IlOa的0S231a以外的0S231b向该I/O设备IlOa访问。
[0181]通过实施方式1,变得不需要I/O设备IlOa-1lOc的分配的事先设定,并且能够从其他0S231b保护分配给0S231a的I/O设备IlOa的存储器空间、寄存器空间以及PCI配置寄存器。
[0182]在实施方式I中,例如,说明了以下那样的计算机(物理计算机200)。
[0183]计算机使向设备(I/O设备I 1a-1 1c)访问的多个OS (0S231a、0S231b)动作。
[0184]计算机具备设备分配存储部和访问管理部(VMM部220)。
[0185]设备分配存储部存储用于将所述设备和分配了所述设备的OS对应起来的设备分配表格(I/O分配表格229)。
[0186]访问管理部在发生了向所述设备的访问的情况下,根据所述设备分配表格判定分配了所述设备的OS。访问管理部在所述设备未被分配给任何一个OS的情况下,为了将所述设备和访问源的OS对应起来,更新所述设备分配表格而许可向所述设备的访问。访问管理部在所述设备被分配给所述访问源的OS以外的OS的情况下,拒绝向所述设备的访问。
[0187]所述设备分配表格是将所述设备的物理地址空间和分配了所述设备的OS对应起来表示的数据。
[0188]所述访问管理部在所述设备未被分配给任何一个OS的情况下,进而,将所述设备分配表格表示的所述设备的物理地址空间映射到所述访问源的OS的虚拟地址空间。
[0189]所述访问管理部在发生了向所述设备的PCI配置寄存器访问的情况下,根据所述设备分配表格判定被分配了所述设备的OS。所述访问管理部在所述设备被分配给访问源的OS的情况下,许可向所述PCI配置寄存器的访问。所述访问管理部在所述设备未被分配给所述访问源的OS的情况下,拒绝向所述PCI配置寄存器的访问。
[0190]所述访问管理部在向所述PCI配置寄存器的访问是基地址的变更,且所述设备被分配给所述访问源的OS的情况下,如以下那样动作。所述访问管理部根据变更后的基地址,更新所述设备分配表格内的所述设备的物理地址空间的信息。所述访问管理部将更新后的所述信息表示的所述设备的物理地址空间映射到所述访问源的OS的虚拟地址空间。
[0191]实施方式2.
[0192]说明通过所访问的设备的种类对多个OS(或者所有OS)许可从设备的存储器、寄存器读入数据的方式。
[0193]以下,主要说明与实施方式I不同的事项。关于省略说明的事项,与实施方式I相同。
[0194]虚拟计算机系统100的结构与实施方式I相同(参照图1)。
[0195]其中,I/O分配表格229的结构的一部分不同。
[0196]图12是示出实施方式2中的I/O分配表格229的图。
[0197]根据图12,说明实施方式2中的I/O分配表格229。
[0198]I/O分配表格229除了在实施方式I中说明了的项目(参照图4、6、8)以外,还具有“设备类别”。
[0199]“设备类别”表示I/O设备110的设备类别(例如桥)。
[0200]图12的I/O分配表格229示出I/O设备IlOc是“桥”。I/O设备IlOc (桥)未被分配给任何一个0S231a、0S231b。
[0201]PCI Express开关、PCI桥(都是桥的一个例子)的PCI配置寄存器通过树构造与其他PCI设备关联起来,所以有时被从多个0S231a、0S231b参照。
[0202]因此,在实施方式2中,未将分配类别是“桥”的I/O设备IlOc分配给任何一个0S231a、0S231b,许可以只读(读取专用)方式从各0S231a、0S231b向PCI配置寄存器的访问。另外,关于向I/O设备IlOc的PCI配置寄存器的写入,仅对第3VM部的0S(图示省略)、物理计算机200的OS (图示省略)等特定的管理OS许可。其中,也可以针对0S231a、0S231b使桥以外的I/O设备IlOaUlOb的存储器、寄存器或者PCI配置寄存器成为只读。
[0203]图13是示出实施方式2中的虚拟计算机系统100的存储器映射的图。
[0204]如图13所示,I/O设备IlOc的存储器空间向0S231a和0S231b这两方的虚拟存储器映射320 (虚拟地址空间)映射。此时,存储器管理部224在映射表格中设定表示I/O设备IlOc的存储器空间是只读的访问属性。另外,存储器管理部224根据需要在管理OS的虚拟地址空间中映射I/O设备IlOc的存储器空间,在映射表格中设定表示I/O设备IlOc的存储器空间可写入的访问属性。
[0205]图14是示出实施方式2中的I/O分配表格229的初始化处理的流程图。
[0206]根据图14,说明实施方式2中的I/O分配表格229的初始化处理。
[0207]I/O分配表格229的初始化处理除了在实施方式I中说明了的处理(参照图5)以外,还包括S240和S241。以下,说明S240和S241。
[0208]在S240中,VMM部220的控制部228参照I/O设备110的PCI配置寄存器(包括设备类别的信息),判定I/o设备110是否为PCI Express开关或者PCI桥。
[0209]在I/O设备110是PCI Express开关或者PCI桥的情况下(“是”),处理进入到S241。
[0210]在I/O设备110并非PCI Express开关和PCI桥中的任何一个的情况下(“否”),针对该I/O设备110的处理结束。
[0211]在S241中,VMM部220的控制部228针对I/O分配表格229,在与I/O设备110的“设备标识符”对应起来了的“设备类别”中设定“桥”。
[0212]通过S241,针对该I/O设备110的处理结束。
[0213]图15是示出实施方式2中的I/O设备110的分配处理的流程图。
[0214]根据图15,说明实施方式2中的I/O设备110的分配处理。
[0215]I/O设备110的分配处理除了在实施方式I中说明了的处理(参照图7)以外,还包括S332以及S333。以下,说明S332。
[0216]在S332中,VMM部220的I/O分配部223判定来自0S231a、0S231b的访问是否为向桥(I/O设备IlOc)的存储器空间或者寄存器空间的写入或者读入。
[0217]此时,I/O分配部223判定访问命令的内容是否为“写入”或者“读入”。另外,I/O分配部223参照I/O分配表格229,判定与访问目的地的I/O设备110的“设备标识符”对应起来了的“设备类别”是否为“桥”。在访问命令的内容是“写入”或者读入且“设备类别”是“桥”的情况下,从0S231a、0S231b的访问是向桥(I/O设备IlOc)的存储器空间或者寄存器空间的写入或者读入。
[0218]在来自0S231a、0S231b的访问是向桥(I/O设备IlOc)的存储器空间或者寄存器空间的写入的情况下(“是”[写入]),处理进入到S350。
[0219]在来自0S231a、0S231b的访问是向桥(I/O设备IlOc)的存储器空间或者寄存器空间的读入的情况下(“是”[读入]),处理进入到S333。
[0220]在来自0S231a、0S231b的访问并非向桥(I/O设备IlOc)的存储器空间或者寄存器空间的写入以及读入的情况下(“否”),处理进入到S331。
[0221]在S333中,I/O分配部223不进行向I/O分配表格229的登记,而向虚拟地址空间以只读形式映射该I/o设备IlOc的存储器空间以及寄存器空间。
[0222]在S333之后,处理进入到S342。
[0223]图16是示出实施方式2中的向PCI配置寄存器的访问处理的流程图。
[0224]根据图16,说明实施方式2中的向PCI配置寄存器的访问处理。
[0225]向PCI配置寄存器的访问处理除了在实施方式I中说明了的处理(参照图10)以夕卜,还包括S421。以下,说明S421。
[0226]在S421中,VMM部220的PCI仿真部221判定来自0S231a、0S231b的访问是否为向桥(I/o设备IlOc)的PCI配置寄存器的写入或者读入。
[0227]在来自0S231a、0S231b的访问是向桥(I/O设备IlOc)的PCI配置寄存器的写入的情况下(“是”[写入]),处理进入到S450。
[0228]在来自0S231a、0S231b的访问是向桥(I/O设备IlOc)的PCI配置寄存器的读入的情况下(“是”[读入]),省略设备是否被分配给本OS的检查,进入到S442。
[0229]在来自0S231a、0S231b的访问并非向桥(I/O设备IlOc)的PCI配置寄存器的写入以及读入的情况下(“否”),处理进入到S430。
[0230]在S421中,PCI仿真部221也可以判定向桥(I/O设备IlOc)的PCI配置寄存器的写入的访问是否为来自规定的管理OS的访问。在向桥(I/O设备IlOc)的PCI配置寄存器的写入的访问是来自规定的管理OS的访问的情况下,并非进入S450而进入到S430。SP,PCI仿真部221许可向PCI配置寄存器的写入。
[0231]通过实施方式2,能够防止某个0S231a随便地占有PCI桥(规定的种类的设备的一个例子)、或者随便地变更PCI桥的PCI配置寄存器所致的不合适。例如,能够防止其他0S231b不能向该PCI桥访问、无法跟踪该PCI桥以下的PCI的树构造这样的不合适。
[0232]在实施方式2中,例如,说明了以下那样的计算机(物理计算机200)。
[0233]访问管理部(VMM部220)在发生了向规定的种类的设备(例如桥)的PCI配置寄存器写入的访问的情况下,拒绝所述写入的访问。访问管理部在发生了向所述规定的种类的设备的PCI配置寄存器读取的访问的情况下,许可所述读取的访问。
[0234]访问管理部在发生了从规定的管理OS向所述规定的种类的设备的PCI配置寄存器写入的访问的情况下,许可所述写入的访问。
[0235]实施方式3.
[0236]说明在下次的虚拟计算机系统100中使用上次的I/O设备IlOa-1lOc的分配结果的方式。
[0237]以下,主要说明与实施方式1、2不同的事项。关于省略说明的事项,与实施方式1、2相同。
[0238]图17是实施方式3中的虚拟计算机系统100的结构图。
[0239]根据图17,说明实施方式3中的虚拟计算机系统100的结构。
[0240]物理计算机200的VMM部220除了在实施方式I中说明了的结构(参照图1)以夕卜,还具备表格保存部225。
[0241]表格保存部225在VMM部220的执行结束时(或者VM部230a、230b的执行结束时)将I/o分配表格229 (参照图12)保存到辅助存储装置213中。在物理计算机200的下次以后的起动时的I/O分配表格229的初始化处理中使用所保存的I/O分配表格229。
[0242]图18是示出实施方式3中的I/O分配表格229的初始化处理的流程图。
[0243]根据图18,说明实施方式3中的I/O分配表格229的初始化处理。
[0244]I/O分配表格229的初始化处理除了在实施方式2中说明了的处理(参照图14)以外,还包括S250至S253。以下,说明S250至S253。
[0245]在S240中,在I/O设备110并非PCI Express开关和PCI桥中的任何一个的情况下(“否”),处理进入到S250。
[0246]另外,在实施方式I的I/O分配表格229的初始化处理(参照图5)中应用实施方式3的情况下,在S230之后进入到S250。
[0247]在S250中,VMM部220的控制部228判定VMM部220是否以利用由表格保存部225所保存的上次(或者过去)的I/O分配表格229的模式(以下称为“继承模式”)起动。例如,用户将表示是否为继承模式的模式类别指定为起动选项而使VMM部220起动,控制部228根据起动选项的模式类别进行判定。另外,用户也可以通过物理计算机200的拨码(DIP)开关切换模式。以下,将上次(或者过去)的I/O分配表格229称为“保存分配表格”。
[0248]在VMM部220以继承模式起动了的情况下(“是”),处理进入到S251。
[0249]在VMM部220未以继承模式起动的情况下(“否”),针对该I/O设备110的处理结束。
[0250]在S251中,控制部228参照辅助存储装置213的保存分配表格,判定该I/O设备110是否被分配给了某一个0S231a、0S231b。S卩,控制部228参照保存分配表格,判定是否对与该I/o设备110的“设备标识符”对应起来了的“分配目的地”设定了某一个0S231a、0S231b。
[0251]在该I/O设备110被分配给了某一个0S231a、0S231b的情况下(“是”),处理进入到S252。
[0252]在该I/O设备110未被分配给任何一个0S231a、0S231b的情况下(“否”),针对该I/o设备110的处理结束。
[0253]在S252中,控制部228对分配了该I/O设备110的0S231(a或者b)分配该I/O设备110。S卩,控制部228针对I/O分配表格229,对与I/O设备110的“设备标识符”对应起来了的“分配目的地”设定被分配了该I/O设备110的0S231的标识符。
[0254]在S252之后,处理进入到S253。
[0255]在S253中,控制部228 (或者存储器管理部224)参照I/O分配表格229,向被分配了该I/o设备110的0S231的虚拟地址空间映射该I/O设备110的存储器空间以及寄存器空间(物理地址空间)。
[0256]通过S253,针对该I/O设备110的处理结束。
[0257]通过实施方式3,利用在辅助存储装置213中保存了的I/O分配表格229,能够削减针对各0S231a、0S231b的I/O设备IlOa-1lOc的分配以及映射所需的开销。
[0258]在实施方式3中,例如,说明了以下那样的计算机(物理计算机200)。
[0259]访问管理部(VMM部220)在动作结束的情况下将设备分配表格(I/O分配表格229)保存为保存分配表格,在动作开始的情况下使用所述保存分配表格来生成新的设备分配表格。
【权利要求】
1.一种计算机,是向设备访问的多个OS即操作系统动作的计算机,其特征在于,具备: 设备分配存储部,存储用于将设备和被分配了设备的OS对应起来的设备分配表格;以及 访问管理部,在发生了向所述设备的访问的情况下,根据所述设备分配表格判定分配了所述设备的OS,在所述设备未被分配给任何一个OS的情况下,为了将所述设备和访问源的OS对应起来,更新所述设备分配表格来许可向所述设备的访问,在所述设备被分配给所述访问源的OS以外的OS的情况下,拒绝向所述设备的访问。
2.根据权利要求1所述的计算机,其特征在于, 所述设备分配表格是将所述设备的物理地址空间和被分配了所述设备的OS对应起来表示的数据, 所述访问管理部在所述设备未被分配给任何一个OS的情况下,进而,将所述设备分配表格表示的所述设备的物理地址空间映射到所述访问源的OS的虚拟地址空间。
3.根据权利要求2所述的计算机,其特征在于, 所述访问管理部在发生了向所述设备的PCI即外围组件互连总线配置寄存器的访问的情况下,根据所述设备分配表格判定被分配了所述设备的OS,在所述设备被分配给访问源的OS的情况下,许可所述访问,在所述设备未被分配给所述访问源的OS的情况下,拒绝所述访问。
4.根据权利要求3所述的计算机,其特征在于, 所述访问管理部在向所述PCI配置寄存器的访问是基地址的变更,且所述设备被分配给所述访问源的OS的情况下,根据变更后的基地址,更新所述设备分配表格内的所述设备的物理地址空间的信息,将更新后的所述信息表示的所述设备的物理地址空间映射到所述访问源的OS的虚拟地址空间。
5.根据权利要求4所述的计算机,其特征在于, 所述访问管理部在发生了向规定的种类的设备的PCI配置寄存器写入的访问的情况下,拒绝所述写入的访问,在发生了向所述规定的种类的设备的PCI配置寄存器读取的访问的情况下,许可所述读取的访问。
6.根据权利要求5所述的计算机,其特征在于, 所述访问管理部在发生了从所述多个OS以外的规定的管理OS向所述规定的种类的设备的PCI配置寄存器写入的访问的情况下,许可所述写入的访问。
7.根据权利要求1至6中的任意一项所述的计算机,其特征在于, 所述访问管理部在动作结束的情况下将所述设备分配表格保存为保存分配表格,在动作开始的情况下使用所述保存分配表格来生成新的设备分配表格。
8.一种访问管理方法,是由向设备访问的多个OS即操作系统动作的计算机执行的访问管理方法,其特征在于, 所述计算机具备存储用于将设备和被分配了设备的OS对应起来的设备分配表格的设备分配存储部、和访问管理部, 所述访问管理部在发生了向所述设备的访问的情况下,根据所述设备分配表格判定被分配了所述设备的OS,在所述设备未被分配给任何一个OS的情况下,为了将所述设备和访问源的OS对应起来,更新所述设备分配表格来许可向所述设备的访问,在所述设备被分配给所述访问源的OS以外的OS的情况下,拒绝向所述设备的访问。
9.一种访问管理程序,其特征在于,用于使电脑执行权利要求8所述的访问管理方法。
【文档编号】G06F9/46GK104137088SQ201280070396
【公开日】2014年11月5日 申请日期:2012年2月23日 优先权日:2012年2月23日
【发明者】冈部亮 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1