用于访客访问存储器映射的设备的方法和装置的制作方法

文档序号:6557429阅读:135来源:国知局
专利名称:用于访客访问存储器映射的设备的方法和装置的制作方法
技术领域
本发明属于信息处理领域,尤其涉及虚拟化信息处理系统中资源的领域。
背景技术
一般地,信息处理系统中的资源的虚拟化理论允许一个或更多操作系统(每一个是一个“OS”)的多个实例运行在单个信息处理系统上,即使每个OS被设计为对于该系统及其资源拥有完全、直接的控制权也是如此。典型地,虚拟化是通过使用软件(例如虚拟机监视器,即“VMM”)向每个OS提供一个“虚拟机”(“VW”)来实现,所述“虚拟机”拥有OS可以完全、直接控制的虚拟资源,同时该VMM维持用于实现虚拟化策略(例如在VM之间共享和/或分配物理资源)的系统环境(“虚拟化环境”)。在VM上运行的每个OS和其它的任何软件被称为“访客”或“访客软件(guest software)”,而“主机”或“主机软件”是运行在该虚拟化环境的外部的软件,例如“VMM”,它可能知道也可能不知道该虚拟化环境。
信息处理系统中的处理器可以支持虚拟化,例如通过支持进入虚拟化环境的指令来在VM上运行一个访客。在该虚拟化环境中,某些事件、操作和情况(例如外部中断或访问特权寄存器或资源的尝试)可以被“拦截”,即,使处理器退出虚拟化环境以便VMM可以运行例如来实现虚拟化策略。处理器还可以支持用于维持虚拟化环境的其它指令,并可以包括指示或控制处理器的虚拟化能力的寄存器位。
该系统的特权资源可以包括输入/输出(“I/O”)设备,所述I/O设备可以通过I/O事务和/或通过其中I/O设备已被映射到存储器地址(存储器映射设备)的存储器事务进行访问。I/O事务可以被拦截以防止访客直接访问I/O设备。在基于页面(page-based)的存储器管理体系结构中,对存储器映射的I/O设备的存储器事务可以被拦截,这种拦截通过将I/O设备已经被映射到的页面标记为不存在或不可写来实现,由此导致访客试图访问存储器映射的设备时发生页面故障拦截。


本发明以实例的方式进行图示说明,并且不限于附图所示。
图1图示说明本发明的一个实施例可以在其中工作的虚拟化环境。
图2图示说明本发明的一个实施例用于VMM初始化对访客访问存储器映射的设备的支持的方法。
图3图示说明本发明的一个实施例用于访客访问存储器映射的设备的方法。
具体实施例方式
下面说明访客访问存储器映射的设备的装置、方法和系统的实施例。在本说明书中,为了提供对本发明的更彻底的理解,会阐述许多具体细节,例如部件和系统配置。然而本领域技术人员应当明白的是,没有这些具体细节也可以实现本发明。此外,一些公知的结构、电路等未被详细显示,以避免使本发明不必要地模糊。
如果被拦截事件的频率被最小化,则可以提高虚拟化环境的性能。本发明的实施例可以用来支持存储器映射的设备的虚拟化,且对于在虚拟化环境中提供改进的性能是希望和想要的。在一个实施例中,它们可以被用来支持奔腾处理器家族的处理器中的高级可编程中断控制器(“APIC”)的任务优先级寄存器(“TPR”)的虚拟化。在这个实施例中,通过消除VMM拦截一些访客访问TPR的需要,提升了在VMM拦截所有访客访问TPR的虚拟化环境上的性能。
图1图示说明本发明的一个实施例可以在其中工作的虚拟化体系结构100。在图1中,裸平台硬件110可以是任何能够执行OS或VMM软件的数据处理设备。例如,裸平台硬件可以是个人电脑、大型计算机(MainframeComputer)、便携式电脑、手持式设备、机顶盒、服务器或其它计算系统的硬件。裸平台硬件110包括处理器120、存储器130、输入/输出(I/O)设备111和芯片组112。
处理器120可以是任何类型的处理器,包括通用微处理器,例如Intel公司的奔腾处理器家族、安腾处理器家族或其它处理器家族的处理器,或其它公司的处理器,或数字信号处理器或微控制器。尽管图1只显示了一个这样的处理器120,但裸平台硬件110可以包括任意数目的处理器,包括任意数目的多核处理器,每个多核处理器都带有任意数目的执行核心(Execution Core)和任意数目的多线程处理器,每个多线程处理器都有任意数目的线程。
存储器130可以是静态或动态随机访问存储器、基于半导体的只读或闪速存储器、磁或光盘存储器、处理器120可读的任何其他类型的介质、或这些种类介质的组合。存储器130可以依据任何寻址技术加以寻址,并且裸平台硬件110中的示出或未示出的任何设备都可以被映射到存储器130的地址范围内的地址。
I/O设备115可以代表任意数目的外设或I/O设备,例如监视器、键盘、鼠标、打印机、网络接口、信息存储设备等。芯片组11可以包括用来执行任意数目任务(例如,系统逻辑、总线控制、总线接口连接、总线桥接、存储器控制、外设控制、外设功能、和系统配置等)的任意数目的组件。在一些实施例中,I/O设备115可以通过一个或更多的I/O端口(如果处理器和平台体系结构支持这样的访问机制)被访问。在一些实施例中,I/O设备115可以通过一个或更多的地址范围使用常规存储器访问指令被访问,即通过存储器映射的接口被访问。存储器映射的I/O设备具有至少一个这样的地址范围,通过该地址范围该存储器映射I/O设备可以被访问。
处理器120、存储器130、I/O设备115、和芯片组111可以依据任何公知的方法(例如直接或间接通过一条或更多条总线、点对点、或其它有线或无线连接)相互耦合或相互通信。裸平台硬件110还可以包括任何数目的附加设备或连接。
除裸平台硬件100之外,图1还图示了VMM 140、VM 150和160,以及访客OS和应用152、154、155、162、164和165。
VMM 140可以是安装在裸平台硬件110上的、或可由裸平台硬件访问的任何软件、固件或硬件主机,以便为访客提供VM-即裸平台硬件110的抽象,或另外产生VM、管理VM、和在虚拟化环境100中实现虚拟化策略。在另外的实施例中,主机可以是任何VMM、管理程序、OS、或能够控制裸平台硬件110的其它软件、固件或硬件。访客可以是任何OS、任何VMM(包括VMM 140的另一实例)、任何管理程序、或任何应用或其它软件。
每个访客期望依据处理器的体系结构和VM中给出的平台来访问裸平台硬件110的物理资源(例如处理器和平台寄存器)、存储器和输入/输出设备。图1显示了两个VM,即150和160,访客OS 152和访客应用154和155安装在VM 150上、访客OS 162和访客应用164和165安装在VM 160上。尽管图1只显示了两个VM和每个VM的两个应用,但是在本发明的范围内可以建立任何数目的VM、在每个VM上可以运行任何数目的应用。
访客可访问的资源可以分类为“特权”或“非特权”资源。对于特权资源,VMM 140使访客希望的功能性更容易,同时保留对资源的最终控制。非特权资源不需要由VMM 140控制并且可以由访客直接访问。
此外,每个访客OS期望处理不同的事件,例如异常(例如,页面错误和一般的保护错误)、中断(例如硬件中断和软件中断),和平台事件(例如,初始化和系统管理中断)。本文中,这些异常、中断、和平台事件被共同称为或各自称为“事件”。这些事件中的一些是“特权的”,因为它们必须由VMM 140处理以确保VM 150和160正确的操作、确保保护VMM 140远离访客、并确保保护访客彼此远离。
在任何指定时间,处理器120可以执行来自VMM 140或任何访客的指令,这样VMM 140或访客可以在处理器120上运行或处于处理器120的控制下。当特权事件发生或访客试图访问特权资源时,控制权可以从访客转交到VMM140。此处从访客到VMM 140的控制权的转交被称作“VM退出”。在事件被处理或适当地使资源的访问变容易之后,VMM 140可以将控制权返还给访客。此处从VMM 140到访客的控制权的转交被称作“VM进入”。
在图1的实施例中,处理器120依据存储在虚拟机控制结构(VMCS)132中的数据来控制VM 150和160的操作。VMCS 132是这样的一种结构其可以包含一个或者多个访客的状态、VMM 140的状态、指示VMM 140如何控制访客操作的执行控制信息、关于VM退出和VM进入的信息,以及任何其它这样的信息。处理器120从VMCS 132中读取信息以确定VM的执行环境并约束其行为。在这个实施例中,VMCS 132被存储在存储器130中。在一些实施例中,多个VMCS被用来支持多VM。尽管图1显示VMCS 132存储在存储器130中,但是本发明并不要求将VMCS存储在存储器中。
处理器120可以包括存储器映射的设备122,该存储器映射的设备122具有寄存器或其他控制、配置、状态或信息存储结构或位置123和124。例如,存储器映射的设备122可以是APIC,存储位置123可以是TPR,而且存储位置124可以是任何其它APIC寄存器或寄存器的一部分。芯片组111还可以包括具有存储位置113和114的存储器映射的设备112,并且I/O设备115也可以是具有存储位置116和117的存储器映射的设备。处理器120和/或芯片组111可以包括任何附加的存储器映射的设备,任何其它的I/O设备可以是存储器映射的设备,和/或图1未示出的任何其它的处理器、芯片组、或组件依据本发明的实施例可以是访客可访问的存储器映射设备。如上所述,存储位置123、124、116和117可以通过I/O指令和/或存储器通路进行访问。因此,当提到访问存储位置时,应当将下面的描述的含义解释为对存储器范围或与存储位置相对应的I/O端口的访问。这样的存储器可以由I/O设备中的存储器支持,或者可以对I/O设备所提供的功能提供接口。
处理器120还包括到存储器130的接口121,该接口可以是总线单元或其它单元、端口或接口,以允许处理器120与存储器130直接通过任何类型的总线、点对点或其它连接或通过其它组件(例如芯片组111)进行通信。
此外,处理器120包括控制逻辑125以支持虚拟化,所述虚拟化包括访问诸如设备122、112和115的存储器映射设备的虚拟化。控制逻辑125可以是处理器120内的微代码、可编程逻辑、硬编码逻辑、或任何其它形式的的控制逻辑。在另外的实施例中,在处理器中或在处理器可访问的任何组件或可读的任何介质(例如存储器130)中,控制逻辑125可以以任何硬件、软件或固件形式实现,例如处理器抽象层。
控制逻辑125使处理器120执行本发明的方法实施例,诸如下面图2和图3中所示的方法实施例,例如通过处理器120响应于虚拟化指令或来自主机或访客的其它指令使处理器120包含一个或更多的微操作的执行(例如支持虚拟化)。
控制逻辑125包括阴影(shadow)逻辑126、评价逻辑127和退出逻辑128。阴影逻辑126如下所述用来支持存储器映射的设备的投影(shadowing)。评价逻辑127用来确定是否允许访客试图访问存储器区域(例如存储器映射设备的存储)。如果上述的试图不被允许,则退出逻辑128用来准备VM退出并引起VM退出。这些逻辑单元的每一个还可以执行附加的功能,包括如由别的逻辑单元执行的所述那些功能,以及任何或所有这些逻辑单元可以集成到单个逻辑单元中。
VMCS 132可以包括字段、控制位或其它数据结构以支持存储器映射设备(例如设备122、112和115)的虚拟化。这些数据结构可以由控制逻辑125检查或引用以确定如何管理VM环境。例如,可以设置拦截控制位134以引起访客访问存储器映射的设备中的存储位置的投影(shadowed)或虚拟拷贝的的某些试图,导致VM退出,如下面所描述的。在本实施例的描述中,设置这些控制位以得到或引起希望的效果,其中设置意思是写逻辑1到该位,但可以在本发明的范围内使用任何逻辑惯例或命名法。
还有,在VMCS 132中,阴影地址字段135可以被用来对存储器位置的地址,在该地址可以存储存储器映射设备中的存储地址的阴影或虚拟拷贝。例如,其中存储地址123是TPR,阴影地址字段135可以是64位的字段,用以确定4千字节的虚拟APIC页在存储器中的位置,以使任务优先级的虚拟拷贝可以被存储在TPR字段的位7:4中,位于虚拟APIC页的偏移80H处。在一个替代的实施例中,VMCS 132可以包括字段用以以直接存储希望存储在存储位置123的值的阴影拷贝(shadow copy),而不是指向该值的存储器位置的指针。例如,VMCS 132可以包括4位的字段以直接存储想要存储于TPR中的值的虚拟拷贝。
图2和图3图示本发明的方法实施例。尽管方法实施例并不局限于该方面,但是仍然参考图1中的虚拟化环境100来描述图2和图3所示的方法实施例。本说明书使用“访问存储器映射的设备”、“访问存储”等术语,其中这种术语意思是这些访问通过正常存储器访问指令发生。
图2图示本发明的一个实施例用于VMM初始化对访客访问存储器映射设备的支持的方法。
在图2的框210中,图1中的VMM 140建立用于VM的VMCS(例如VMCS 132)。在框212到216中,VMM 140配置VMCS 132以实现存储器映射设备-例如存储器映射设备122的虚拟化。
在框214中,用于存储存储位置123的阴影拷贝的存储器位置的地址被写到地址字段135。如上所述,该地址可以是基地址,在该基地址上加上偏移量来确定将要被用作阴影位置的存储器位置的地址,或者该地址可以是阴影位置的地址。可替代地,投影的值可以被直接存储在VMCS中,而不是指向该投影值的指针。在一个实施例中,VMM 140可以分配存储器以存储该阴影值。
在框216中,设置拦截控制位134以使访客访问存储器映射设备122中的存储位置123的投影的或虚拟拷贝的某些试图,导致VM退出,如参考图3所述的。注意,在参考图3将要进一步描述的这个实施例中,存储器映射设备122还可以包括没有被投影的存储位置124。
图3图示本发明的一个实施例用于访客访问存储器映射设备的方法。
在图3的框310中,执行VM进入并且把控制权转交给访客。在框320中,访客开始或继续在VM上运行。在框330中,访客试图对被分配给存储器映射设备122的存储器地址范围内的地址进行存储器访问。该存储器访问可以是读、写、执行尝试、或读-修改-写尝试。该存储器访问可以包括特定的限定符,例如总线锁定指示。该存储器访问可以是显式的(例如数据存取、堆栈读、指令取出)或可以是隐式的(例如在TLB未命中之后的页表数据的取出、页表数据的访问位或脏位(dirty bit)的写入、或片段描述符的读取)。评价逻辑127可以使用地址比较器或通过本领域公知的任何其它方法来检测被尝试的访问。在一个实施例中,可以通过物理地址的分析来进行存储器访问的检测。在另一个实施例中,使用线性或虚拟地址。
如果访客有权访问存储器映射的设备中可用的所有存储器地址的阴影的或虚拟拷贝(例如如果存储器映射设备只包括存储位置123和124并且两者都被投影),则可以认为该存储器映射设备是完全被投影的。如果访客有权访问存储器映射设备中可用的存储器地址中的至少一个存储器地址的阴影或虚拟拷贝(例如如果存储位置123被投影但存储位置124未被投影),则可以认为该存储器映射设备被部分投影。在一些实施例中,可以检查一个以上的控制位,或者可以根据访客正试图访问的存储器映射设备的哪一存储位置而检查不同的控制位。
如果在框340中没有启用对存储器映射设备122的拦截机制,那么在框390中,退出逻辑128引起VM退出发生,以允许VMM处理该访问。然而,如果在框340中启用对存储器映射设备122的拦截机制,那么方法300前进到框360。在框360中,评价逻辑127确定是否允许该访问。如果该访问不被允许,则在框390中,退出逻辑128引起VM退出发生,以允许VMM处理该访问。
然而,如果在框350中启用拦截控制位134,则方法300前进到框360。在框360中,评价逻辑127确定是否应允许该访问。如果该访问不被允许,则在框390中,退出逻辑128引起VM退出发生,以允许VMM处理该访问。
可以基于被尝试的访问的类型来确定是否应允许该访问。在一个实施例中,可以允许读访问,但可以不允许写访问。在一个实施例中,可以不允许执行尝试。在一个实施例中,可以不允许读-修改-写尝试。在一些实施例中,可以不允许隐式访问。基于访问类型的其它限制也是可能的。在另一个实施例中,是否允许访问可以根据该访问是访问投影的位置,访问未投影位置还是访问部分投影的位置。因此,访问类型可以是被投影的、未被投影的、或被部分投影的。例如,如果该访问是访问投影的位置(例如设备122中的位置123),则可以允许该访问,但是如果该访问是访问未投影的位置(例如设备122中的位置124)或访问部分投影的位置(例如包括投影的位置123和未投影的位置124这二者的位置),则可以不允许访问。在本发明范围内,其它访问类型也是可能的。
将存储器映射设备122是APIC的一个实施例作为附加实施例来进行描述。所尝试的访问可以是试图访问TPR的指令(该访问实际上会是访问TPR的虚拟拷贝(“V-TPR”)因为TPR被投影着)。这样的指令可以引起一个或更多的对虚拟APIC(“V-APIC”)页面的访问。如果该指令包括从V-TPR的读操作并且没有对V-APIC的其它访问,则可以允许该读操作。如果所述指令包括对V-TPR的写并且没有对V-APIC页面的其它访问,则允许该写操作,并且阴影逻辑126确保在该写操作后清空V-TPR字段的位127:8(即阴影逻辑将执行下面所述的特殊处理)。在使用V-APIC的实施例中前两个指令可以被认为是投影的访问,其中访问的类型可以是投影的、未投影的或部分投影的,因为TPR被投影。在一个实施例中,阴影逻辑126可以对部分投影的存储或对其它存储位置或机器寄存器(machine register)执行适当的更新。例如,在一个实施例中,可以忽略对部分投影的存储位置的写操作。在另一个实施例中,对是只读的投影的存储位置的读操作可以总是返回相应的保留值,例如零,而不管存储在阴影存储器中的值是多少。
在使用V-APIC的实施例中的另一个指令可以被认为是部分投影的。如果一条指令包括对V-TPR的访问和对V-APIC中的另一个位置(其未被投影)的访问,则执行VM退出。
如果,在框360中,评价逻辑127确定应允许该访问,则在框370中,评价逻辑127确定是否需要特殊处理。特殊处理可以包括对可由控制逻辑125执行的所尝试的访问的任何处理。对于包括对V-TPR的写操作的指令,上面给出了一个示例。也是在使用V-APIC的实施例中的另一个示例是指令是否包括一个以上的对V-TPR的访问。在这种情况下,该特殊处理可以允许该指令执行,但是接着引起VM退出发生。
如果,在框370中,评价逻辑127确定不需要任何特殊处理,则在框352中,阴影逻辑126引起访客访问使用存储器映射设备122的虚拟版本执行,并且方法300返回到框320以使用户继续运行。然而,如果在框370中,评价逻辑127确定需要特殊处理,则在框372中,控制逻辑125执行该特殊处理。该特殊处理可以包括整体或部分地使用存储器映射设备122的虚拟版本执行访客访问,如下面所讨论的。
在框380中,控制逻辑125确定特殊处理是否包括VM退出。如果包括,贝在框390中,退出逻辑128引起VM退出发生。如果不包括,则方法300返回到框320以使用户继续运行。
在一个实施例中,可以提供特殊处理以支持APIC中的TPR的虚拟化。在这个实施例中,对TPR的写操作可以总是被允许以对阴影进行写操作。如果所写的值小于VMM规定的阈值(例如存储在VMCS的字段中的),则VM退出发生。如上所述,被部分投影的访问(例如修改除了V-APIC的TPR字段之外的地址的写操作)引起VM退出。在另一个实施例中,允许对存储器映射设备122的虚拟版本的完全写操作,并且在指令完成后,VM退出发生。
在本发明的范围内,图2和图3所示的方法可以以不同的顺序执行,可以省略图示的框,也可以添加附加的框,还可以是重新排序的、省略的、或附加的框的组合。例如,VMCS可以包括可与阴影控制和/或拦截控制位结合使用的载入控制和存储控制位,以确定是否允许读和/或写访问。
处理器120,或依据本发明的实施例设计的任何其它组件或组件的一部分,可以设计在从形成到模拟到制造的不同阶段。表示设计的数据可以代表多种方式的设计。首先,当在模拟中有用时,硬件可以使用硬件描述语言或另外的功能性描述语言表示。附加地或可替代地,可以在设计过程的一些阶段产生带有逻辑和/或晶体管门的电路级模型。另外,在某个阶段,大部分设计达到了它们可以用表示不同设备的物理布局的数据建模的水平。在使用传统半导体制造技术的情况下,代表设备布局模型的数据可以是规定在掩模的不同的掩模层上各种特征存在或不存在的数据,所述掩模用来产生集成电路。
在所述设计的任何表示中,所述数据可以被存储在任何形式的机器可读介质中。所调制的或另外所产生的光波或电波传送这样的信息,存储器、或磁或光存储器介质,例如光盘,可以是机器可读的介质。这些介质的任何一种都可以“承载”或“表明”所述设计、或用在本发明的实施例中的其它信息,例如在错误恢复程序中的指令。当表明或承载所述信息的电力载波被传送达到这种程度以致执行电子信号的复制、缓冲、或重传送的程度时,制作新的拷贝。因此,通信提供商或网络提供商的行为可以形成物品副本的制作,例如体现本发明的技术的载波。
因此已经公开了访客访问存储器映射设备的装置和方法。虽然某些实施例已被描述且在附图中显示,但应当理解的是,这样的实施例只是示例性的,并且不限制本发明的范围,并且本发明并不限于所示或所述的特定结构和配置,因为本领域技术人员可以在研究本发明的公开内容时进行各种变更。在象这样的技术领域中,其中快速和更进一步的提升并不容易预测,在不脱离本发明公开内容的原则或所附的权利要求的范围的情况下,所公开的实施例可以通过改进的技术进行有利的配置和细节上的修改。
权利要求
1.一种装置,包括评价逻辑,用来响应于访客使用映射到设备的存储器地址访问该设备的尝试并且基于访问类型来确定访问是否被允许;以及退出逻辑,用来如果评价逻辑确定所述访问不被允许将该装置的控制权从访客转交给主机。
2.如权利要求1所述的装置,其中访问类型包括读访问、写访问、执行访问、读-修改-写访问、隐式访问和显式访问中的至少一种,并且如果所述访问是预定类型的访问,则评价逻辑确定访问被允许。
3.如权利要求2所述的装置,其中所述预定类型是读访问类型。
4.如权利要求2所述的装置,还包括阴影逻辑,用以使来自所述尝试的数据写入到阴影位置。
5.如权利要求4所述的装置,其中所述阴影逻辑在将该装置的控制权从访客转交给主机之前使来自所述尝试的数据写入到阴影位置。
6.如权利要求1所述的装置,其中访问类型包括投影的访问、部分投影的访问和未投影的访问中的至少一种,并且如果所述访问是投影的访问类型的,则评价逻辑确定访问被允许。
7.如权利要求1所述的装置,还包括配置逻辑,其基于配置指示符使退出逻辑将该装置的控制权从访客转交给主机,而不管评价逻辑的确定结果。
8.如权利要求6所述的装置,其中所述设备包括中断控制器,并且投影的访问类型包括只访问指示任务优先级的位置,部分投影的访问类型包括访问指示任务优先级的位置和除了指示任务优先级的位置之外的位置。
9.如权利要求2所述的装置,其中所述设备包括中断控制器,所述预定类型是写访问类型,所述访问是访问指示任务优先级的位置,且所述访问被允许访问阴影位置,并且退出逻辑还在所述访问被允许之后将该装置的控制权从访客转交给主机。
10.一种方法,包括使用映射到设备的存储器地址来检测访问该设备的尝试;基于访问的类型确定是否允许该访问;以及如果该访问不被允许,则将控制权从访客转交给主机。
11.如权利要求10所述的方法,其中所述访问类型包括读访问、写访问、执行访问、读-修改-写访问、隐式访问和显式访问中的至少一种。
12.如权利要求11所述的方法,其中确定所述访问是否被允许包括确定所述访问是否是预定类型的访问。
13.如权利要求11所述的方法,其中如果所述访问是读类型的访问,则所述访问被允许。
14.如权利要求10所述的方法,还包括使来自所述尝试的数据写入到阴影位置。
15.如权利要求10所述的方法,其中所述访问类型包括投影的访问、部分投影的访问和未投影的访问中的至少一种。
16.如权利要求15所述的方法,其中确定所述访问是否被允许包括确定如果所述访问是投影的访问类型则所述访问被允许。
17.一种系统,包括存储器,和处理器,该处理器包括评价逻辑,其响应于访客使用映射到设备的存储器地址对该设备访问的尝试并且基于访问类型来确定是否允许访问;以及退出逻辑,如果评价逻辑确定不允许所述访问,则退出逻辑将处理器的控制权从访客转交给主机。
18.如权利要求17所述的系统,其中所述处理器还包括阴影逻辑,用以使来自所述尝试的数据被写入到存储器中的阴影位置。
19.如权利要求17所述的系统,其中所述存储器用于为访客存储虚拟机的控制结构。
20.如权利要求19所述的系统,其中所述控制结构包括指示符,用来指示退出逻辑将处理器的控制权从访客转交给主机,而不管评价逻辑的确定结果。
全文摘要
公开了访客访问存储器映射的设备的装置、方法和系统的实施例。在一个实施例中,装置包括评价逻辑和退出逻辑。评价逻辑响应于访客使用映射到设备的存储器地址访问设备的尝试并且基于访问类型来确定访问是否被允许。如果评价逻辑确定所述访问不被允许,则退出逻辑将控制权转交给主机。
文档编号G06F13/16GK1991808SQ20061006409
公开日2007年7月4日 申请日期2006年12月30日 优先权日2005年12月30日
发明者G·奈格尔, A·V·安德森, S·M·本尼特, R·S·马杜卡鲁穆库马纳, R·A·乌利希, R·S·帕塔萨拉蒂, S·谢恩伯格 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1