一种虚拟机内存分配访问方法、装置和系统的制作方法

文档序号:6597538阅读:223来源:国知局
专利名称:一种虚拟机内存分配访问方法、装置和系统的制作方法
技术领域
本发明涉及通信领域,具体涉及一种虚拟机内存分配访问方法、装置和系统。
背景技术
现有技术中,客户操作系统(Guest OS, G0S)也称为虚拟操作系统,通过虚拟机监 视器(Virtual Machine Monitor, VMM)实现对虚拟设备,如虚拟声卡,虚拟显卡等的访问, 客户操作系统访问的虚拟设备的内存为虚拟内存,而对真实物理内存的访问,则需要通过 服务器操作系统(Service OS, SOS)或者主机操作系统(Host 0S,H0S)进行。真实的物理 内存中,内存的最小单位为页。程序通过使用一个或多个页面的方式来访问内存空间。DMA (Direct Memory Access,直接内存访问),是一种不经过中央处理器(CPU, Center Processing Unit)而直接从内存存取数据的数据交换模式。CPU只须向DMA控制 器下达指令,让DMA控制器来处理数据的传送,数据传送完毕再把信息反馈给CPU,DMA传输 实际上是将一个装置的内存区复制到另外一个装置的内存区,因此要求进行DMA传输的物 理内存页面必须是连续的。由于Guest OS的物理内存空间,在执行程序后,一般是不连续的,而DMA操作是建 立在连续内存的基础上,如要进行DMA传输,现有技术中操作系统首先在可用的内存页面 中搜索是否存在有满足条件的内存页面大小,如有则直接分配。反之,则通过页面置换的方 式,将页面以交换的方式或通过将使用较少的页面调出内存送入磁盘的交换区的方式,产 生连续的符合条件的连续页面,再分配给DMA进行数据的传输。也就是说,当Guest OS的 物理内存空间不连续时,连续物理内存需要通过页面交换或者释放的方式产生,将占用大 量的时间,降低了 DMA的传输效率。

发明内容
有鉴于此,本发明提供一种虚拟机内存分配访问方法、装置和系统,解决了当 Guest OS的物理内存空间不连续时,访问连续页空间效率低的问题。一种虚拟机内存分配访问方法,包括,接收客户操作系统发送的连续页面访问请 求,连续页面访问请求中包含请求的连续页面长度;根据连续页面长度将物理内存中预留 的连续页面空间分配给客户操作系统,并将分配给客户操作系统的连续页面空间的信息发 送给客户操作系统,以便于客户操作系统根据分配到的连续页面空间的信息对分配给客户 操作系统的连续页面空间进行访问。—种虚拟机内存分配访问方法,包括,向虚拟机监视器发送连续页面访问请求,连 续页面访问请求中包含请求的连续页面长度;接收虚拟机监视器根据连续页面长度分配的 物理内存中预留的连续页面空间的信息,以便根据分配到的连续页面空间的信息对分配给 客户操作系统的连续页面空间进行访问。一种虚拟机监视器,包括,接收模块,用于接收客户操作系统发送的连续页面访问 请求,连续页面访问请求中包含请求的连续页面长度;分配模块,用于根据连续页面长度将物理内存中预留的连续页面空间分配给客户操作系统;发送模块用于将分配给客户操作 系统的连续页面空间的信息发送给客户操作系统,以便于客户操作系统根据分配到的连续 页面空间的信息对分配给客户操作系统的连续页面空间进行访问。一种客户操作系统,包括,发送模块,用于向虚拟机监视器发送连续页面访问请 求,连续页面访问请求中包含请求的连续页面长度;接收模块,用于接收虚拟机监视器根据 连续页面长度分配的物理内存中预留的连续页面空间的信息,以便根据分配到的连续页面 空间的信息对分配给客户操作系统的连续页面空间进行访问。一种虚拟机内存分配访问系统,包括,客户操作系统,用于向虚拟机监视器发送连 续页面访问请求,连续页面访问请求中包含请求的连续页面长度;虚拟机监视器根据连续 页面长度分配的物理内存中预留的连续页面空间的信息,以便根据分配到的连续页面空间 的信息对分配给客户操作系统的连续页面空间进行访问。虚拟机监视器,用于接收客户操 作系统发送的连续页面访问请求,连续页面访问请求中包含请求的连续页面长度;根据连 续页面长度将物理内存中预留的连续页面空间分配给客户操作系统,并将分配给客户操作 系统的连续页面空间的信息发送给客户操作系统,以便于客户操作系统根据分配到的连续 页面空间的信息对分配给客户操作系统的连续页面空间进行访问。本发明实施例通过接收客户操作系统发送的连续页面访问请求,所述连续页面访 问请求中包含请求的连续页面长度;根据所述连续页面长度将物理内存中预留的连续页面 空间分配给所述客户操作系统,以便于所述客户操作系统对分配到的连续页面空间进行访 问,当客户操作系统需要访问连续页面空间时,无需进行连续页面的产生操作,而是直接从 VMM启动时分配好的连续内存页面中获得,从而提高了虚拟机的运行效率。


图1为本发明实施例提供的一种虚拟机内存分配访问方法的基本流程图;图2为本发明实施例提供的另一种虚拟机内存分配访问方法的基本流程图;图3为本发明实施例提供的一种虚拟机监视器基本框图;图4为本发明实施例提供的一种客户操作系统基本框图;图5为本发明实施例提供的一种虚拟机内存分配访问系统基本框图;图6为本发明实施例提供的一种DMA传输方法的具体实现流程具体实施例方式为了使本领域的技术人员更好的理解本发明内容,以下结合附图以及具体实施例 对本发明内容作具体说明。本发明实施例的一种虚拟机内存分配访问方法的基本流程可参考图1,主要包括 步骤Al、接收客户操作系统发送的连续页面访问请求,所述连续页面访问请求中包含 请求的连续页面长度。VMM接收客户操作系统发送的连续页面访问请求,如DMA传输请求,该请求中包含 请求的连续页面长度,如要求的连续页面长度为20M。A2、根据所述连续页面长度将物理内存中预留的连续页面空间分配给所述客户操
6作系统,并将分配给客户操作系统的连续页面空间的信息发送给所述客户操作系统,以便 于所述客户操作系统根据所述分配到的连续页面空间的信息对分配给客户操作系统的连 续页面空间进行访问。虚拟机监视器VMM预先在物理内存中预留部分的连续页面空间。预留连续页面的 大小可根据实际情况而定,如实际业务中,一般预留整个内存空间的10%,并且可将该连续 的页面空间分成若干小块连续页面空间。在各虚拟操作系统要求的连续页面长度差别不大 的情况下,对预留的连续页面空间的划分可以是平均的,如对100M的连续页面空间,可以 分成2个50M的连续页面空间;在各虚拟操作系统要求的连续页面长度差别较大的情况下, 可以是按实际情况分,如对预留的100M的连续页面空间,可以分成40M,30M,20M,IOM的页 面空间。如GOS在进行DMA传输时,请求的连续页面空间是15M,针对对预留的连续页面空 间进行平均分配的情况,VMM则将50M的页面空间分配给GOS ;如GOS请求的是35M连续页 面空间,针对对预留的连续页面空间进行按实际情况划分的情况,VMM则将40M的页面空间 分配给G0S。且每个客户操作系统启动后,只能从虚拟机内存空间进行内存的分配,不能占 用连续页面空间。VMM在收到连续页面访问请求DMA传输请求后,在预留的连续页面空间中查询是 否有相应的连续页面空间。如没有,则返回失败响应;如有,将相应的连续页面地址标识为 已使用,并将包含可用的连续页面地址信息的成功响应消息返回给客户操作系统,客户操 作系统在收到成功响应消息后,将所述可用的连续页面地址信息添加到客户机可用的页面 表中,并向VMM返回添加成功响应。本发明实施例通过接收客户操作系统发送的连续页面访问请求,所述连续页面访 问请求中包含请求的连续页面长度;根据所述连续页面长度将物理内存中预留的连续页面 空间分配给所述客户操作系统,并将分配给客户操作系统的连续页面空间的信息发送给所 述客户操作系统,以便于所述客户操作系统根据所述分配到的连续页面空间的信息对分配 给客户操作系统的连续页面空间进行访问。当客户操作系统需要访问连续页面空间时,无 需进行连续页面的产生操作,而是直接从VMM启动时分配好的连续内存页面中获得,从而 提高了虚拟机的运行效率。本发明实施例的一种DMA传输方法的基本流程可参考图2,主要包括步骤Bi、向虚拟机监视器发送连续页面访问请求,所述连续页面访问请求中包含请求 的连续页面长度;客户操作系统接收客户应用程序发送的连续页面访问申请,如DMA传输申请,如 程序A向WINDOWS操作系统发送DMA传输申请;要求的连续页面长度为20M,客户操作系统 在收到客户应用程序发送的连续页面访问申请后,确定本地内存的页面空间中是否有符合 要求的连续页面,如有则直接进行对本地内存中的连续页面访问;如没有,则向VMM发送连 续页面访问请求,所述连续页面访问请求中携带要求的连续页面长度为20M。B2、接收虚拟机监视器根据所述连续页面长度分配的物理内存中预留的连续页面 空间的信息,以便根据所述分配到的连续页面空间的信息对分配给客户操作系统的连续页 面空间进行访问。VMM接收客户操作系统发送的连续页面访问请求,在预留的连续页面空间中查询 是否有相应的连续页面空间。如没有,则返回失败响应;如有,将相应的连续页面地址标识为已使用,并将包含可用的连续页面地址信息的成功响应消息返回给客户操作系统,客户 操作系统在收到VMM返回的成功响应消息后,将所述成功响应消息中可用的连续页面地址 信息添加到客户操作系统的页面表中,并向VMM返回添加成功响应。客户操作系统进行连续页面访问,如DMA传输。在访问结束后,客户操作系统在自 己的页面表中,查找是否存在已经添加的可用的连续页面地址信息,如没有,则表示没有申 请连续页面,如有,表示申请了连续页面,则客户操作系统向VMM发送连续页面释放请求, 该连续页面释放请求中携带客户操作系统添加的可用的连续页面地址信息,VMM收到连续 页面释放请求后,VMM在VMM页面表中找到相应的连续页面并将相应的连续页面标记为空 闲,返回确认消息;客户操作系统收到VMM返回的确认消息后,客户操作系统释放相应页 面,并修改客户操作系统页面表,以及向VMM发送客户操作系统页面表修改完成消息。本发明实施例通过向虚拟机监视器发送连续页面访问请求,所述连续页面访问请 求中包含所述请求的连续页面长度;接收虚拟机监视器根据所述连续页面长度分配的物理 内存中预留的连续页面空间的信息,以便根据所述分配到的连续页面空间的信息对分配给 客户操作系统的连续页面空间进行访问,当客户操作系统需要进行连续页面访问时,无需 进行连续页面的产生操作,而是直接从VMM启动时分配好的连续内存页面中获得,从而提 高了虚拟机的运行效率。本发明实施例的一种虚拟机监视器基本框图可参考图3,主要包括,接收模块301,用于接收客户操作系统发送的连续页面访问请求,所述连续页面访 问请求中包含请求的连续页面长度;接收模块301接收客户操作系统发送的连续页面访问 请求,如DMA传输请求,该请求中包含请求连续页面长度,如要求的连续页面长度为20M ;分配模块302,用于用于根据所述连续页面长度将物理内存中预留的连续页面空 间分配给所述客户操作系统;虚拟机监视器VMM预先在物理内存中预留连续的页面空间, 具体如何分配可参考实施例1,VMM在收到连续页面访问请求后,VMM在预留的连续页面空 间中查询是否有相应的连续页面空间。如没有,则返回失败响应;如有,将相应的连续页面 地址标识为已使用,并将包含可用的连续页面地址信息的成功响应消息返回给客户操作系 统。发送模块303 用于将分配给客户操作系统的连续页面空间的信息发送给所述客 户操作系统,以便于所述客户操作系统根据所述分配到的连续页面空间的信息对分配给客 户操作系统的连续页面空间进行访问。客户操作系统在收到成功响应消息后,将所述可用 的连续页面地址信息添加到客户机可用的页面表中,并向VMM返回添加成功响应。进一步的,虚拟机监视器包括内存分配模块304,用于为客户操作系统分配物理内 存。进一步的,虚拟机监视器包括标识模块305,用于接收客户操作系统发送的连续页 面释放请求,所述连续的页面空间对应的连续页面地址标识为空闲。本发明实施例通过接收模块301接收客户操作系统发送的连续页面访问请求,所 述连续页面访问请求中包含请求的连续页面长度;分配模块302根据所述连续页面长度将 物理内存中预留的连续页面空间分配给所述客户操作系统;发送模块303将分配给客户操 作系统的连续页面空间的信息发送给所述客户操作系统,以便于所述客户操作系统根据所 述分配到的连续页面空间的信息对分配给客户操作系统的连续页面空间进行访问,当客户操作系统需要访问连续页面空间时,无需进行连续页面的产生操作,而是直接从VMM启动
时分配好的连续内存页面中获得,从而提高了虚拟机的运行效率。 本发明实施例的一种客户操作系统基本框图可参考图4,主要包括 发送模块401,用于向虚拟机监视器发送连续页面访问请求,所述连续页面访问请
求中包含所述请求的连续页面长度;客户操作系统在收到客户应用程序发送的连续页面访
问申请后,在自己的内存页面空间中搜索是否有符合要求的连续页面,如有则进行连续页
面访问,如没有,则向VMM发送连续页面访问请求,如DMA传输请求.接收模块402,用于接收虚拟机监视器根据所述连续页面长度分配的物理内存中 预留的连续页面空间的信息,以便根据所述分配到的连续页面空间的信息对分配给客户操 作系统的连续页面空间进行访问,具体过程可参考实施例2步骤B2.所述客户操作系统进一步包括,确定模块403,用于接收客户应用程序发送的连续 页面访问申请,所述连续页面访问申请中包含请求连续页面长度,并确定本地内存中不存 在符合所述请求的连续页面长度的连续页面。本发明实施例通过发送模块401向虚拟机监视器发送连续页面访问请求,所述连 续页面访问请求中包含所述请求的连续页面长度,接收模块402接收虚拟机监视器根据所 述连续页面长度分配的物理内存中预留的连续页面空间的信息,以便根据所述分配到的连 续页面空间的信息对分配给客户操作系统的连续页面空间进行访问,当客户操作系统需要 进行DMA传输时,无需进行连续页面的产生操作,而是直接从VMM启动时分配好的连续内存 页面中获得,从而提高了虚拟机的运行效率。本发明实施例的一种一种虚拟机内存分配访问系统基本框图可参考图5,主要包 括,客户操作系统501,用于向虚拟机监视器发送连续页面访问请求,所述连续页面访 问请求中包含所述请求的连续页面长度;虚拟机监视器根据所述连续页面长度分配的物理 内存中预留的连续页面空间的信息,以便根据所述分配到的连续页面空间的信息对分配给 客户操作系统的连续页面空间进行访问,客户操作系统接收客户应用程序发送的连续页面 访问申请,如程序A向WINDOWS操作系统发送DMA传输申请;客户操作系统在收到客户应 用程序发送的连续页面访问申请后,在自己的内存页面空间中搜索是否有符合要求的连续 页面,如有则进行连续页面访问,如没有,则向VMM发送连续页面访问请求.VMM接收客户操 作系统发送的连续页面访问请求,在预留的连续页面空间中查询是否有相应的连续页面空 间。如没有,则返回失败响应;如有,将相应的连续页面地址标识为已使用,并将包含可用的 连续页面地址信息的成功响应消息返回给客户操作系统,客户操作系统在收到成功响应消 息后,将所述可用的连续页面地址信息添加到客户机可用的页面表中,并向VMM返回添加 成功响应。接下来,客户操作系统进行连续页面访问,在传输结束后,客户操作系统根据启 动时VMM预留的内存大小与现有可使用的内存大小进行判断,判断是否申请了连续页面, 如现有可使用的内存大于客户操作系统根据启动时VMM预留的内存,则表示申请了连续页 面,则客户操作系统向VMM发送连续页面释放请求,该消息中携带用于连续页面访问的相 应页面地址信息,VMM收到连续页面释放请求后,VMM在VMM页面表中找到相应的连续页面 并将相应的连续页面标记为空闲,返回确认消息;客户操作系统收到VMM返回的确认消息 后,客户操作系统释放相应页面,并修改客户操作系统页面表,接下来,客户操作系统向VMM
9发送客户操作系统页面表修改完成消息。虚拟机监视器502,用于接收客户操作系统发送的连续页面访问请求,所述连续页 面访问请求中包含请求的连续页面长度;根据所述连续页面长度将物理内存中预留的连续 页面空间分配给所述客户操作系统,并将分配给客户操作系统的连续页面空间的信息发送 给所述客户操作系统,以便于所述客户操作系统根据所述分配到的连续页面空间的信息对 分配给客户操作系统的连续页面空间进行访问,VMM接收客户操作系统发送的连续页面访 问请求,在预留的连续页面空间中查询是否有相应的连续页面空间。如没有,则返回失败响 应;如有,将相应的连续页面地址标识为已使用,并将包含可用的连续页面地址信息的成功 响应消息返回给客户操作系统,客户操作系统在收到成功响应消息后,将所述可用的连续 页面地址信息添加到客户机可用的页面表中,并向VMM返回添加成功响应。进一步的,虚拟机内存分配访问系统进一步包括客户应用程序503,用于向客户操 作系统501发送连续页面访问申请;本发明实施例通过客户操作系统501向虚拟机监视器502发送连续页面访问请 求,所述连续页面访问请求中包含所述请求的连续页面长度;接收虚拟机监视器502根据 所述连续页面长度分配的物理内存中预留的连续页面空间,以便对所述分配的连续页面空 间进行访问,当客户操作系统需要进行DMA传输时,无需进行连续页面的产生操作,而是直 接从VMM启动时分配好的连续内存页面中获得,从而提高了虚拟机的运行效率。为更好的理解上述实施例,下面结合一种DMA传输方法的一个具体执行过程为例 进行说明,流程示意图如图5所示,包括客户应用程序,客户操作系统G0S,虚拟机监视器 VMM,具体流程如下601.客户应用程序向GOS提出DMA传输申请即连续页面访问申请,所述连续页面 访问申请中包含请求连续页面长度;客户应用程序为一游戏A,GOS为WINDOWS操作系统,在操作过程中,需要通过DMA 进行文件的传输,则游戏A向GOS提出DMA传输申请;该申请中包含需要的连续页面长度。602. GOS在自己的内存页面空间中搜索是否有符合连续页面长度要求的连续页如果没有符合要求的连续页面,则转入步骤603 ;如果有符合要求的连续页面,则 转入步骤607。603. GOS向VMM提出DMA传输请求即连续页面访问请求;该连续页面访问请求中 包含请求的连续页面长度;604. VMM向GOS返回传输请求响应,该响应中包含分配给客户操作系统的连续页 面空间对应的连续页面地址信息;VMM收到GOS提出的DMA传输请求后,根据传输请求中的连续页面长度,在预留的 连续页面空间中查询是否有满足连续页面长度的的连续页面空间。如没有,则返回失败响 应;反之,先将相应的连续页面空间对应的连续页面地址标识为已使用,向GOS返回传输请 求响应,该响应中包含相应的连续页面空间对应的连续页面地址信息;605. GOS将从VMM返回来的分配给客户操作系统的连续页面空间对应的连续页面 地址信息添加到本地可使用的页面表中;。可选的,如果VMM返回的是失败响应,GOS通过页面交换及换出的方式产生连续页面。如可以产生,则转入步骤607 ;反之,则向客户应用程序返回DMA传输失败的信息;606. VMM向GOS返回修改VMM页面表成功响应;VMM收到GOS添加完成的响应后,将相应页面地址信息添加入VMM中的页面表中, 并返回修改成功信息。607. GOS收到VMM返回的修改成功信息后进行DMA传输;608. DMA传输结束后,GOS向VMM提出DMA传输结束请求,并给出用于DMA传输的 相应页面地址信息;GOS在自己的页面表中,查找是否存在已经添加的用于DMA传输的相应页面地址 信息,如没有,则表示没有申请连续页面,如有,表示申请了连续页面,则客户操作系统向 VMM发送DMA传输结束请求,该DMA传输结束请求中携带用于DMA传输的相应页面地址信息609. VMM收到GOS发送的DMA传输结束请求后,在VMM页面表中找到相应的连续页 面,返回确认消息。610. GOS收到VMM返回的确认消息后,GOS释放相应页面,修改GOS页面表,并向 VMM发送GOS页面表修改完成消息;611. VMM收到GOS页面表修改完成响应后,修改VMM页面表,并将相应的连续页面 标记为空闲;本发明实施例通过GOS接收客户应用程序发送的DMA传输申请;GOS确定本地内 存中不存在符合DMA传输的连续页面,向虚拟机监视器发送DMA传输请求;接收VMM返回的 其预留的连续页面空间,以便进行DMA传输,当客户操作系统需要进行DMA传输时,无需进 行连续页面的产生操作,而是直接从VMM启动时分配好的连续内存页面中获得,从而提高 了虚拟机的运行效率。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可 以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介 质可以包括R0M、RAM、磁盘或光盘等。以上对本发明实施例所提供的限制主叫用户呼叫的方法、系统和装置,本文中应 用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理 解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发 明的限制。
权利要求
1.一种虚拟机内存分配访问方法,其特征在于,所述方法包括,接收客户操作系统发送的连续页面访问请求,所述连续页面访问请求中包含请求的连 续页面长度;根据所述连续页面长度将物理内存中预留的连续页面空间分配给所述客户操作系统, 并将分配给客户操作系统的连续页面空间的信息发送给所述客户操作系统,以便于所述客 户操作系统根据所述分配到的连续页面空间的信息对分配给客户操作系统的连续页面空 间进行访问。
2.如权利要求1所述的方法,其特征在于,所述分配给客户操作系统的连续页面空间 的信息为分配给客户操作系统的连续页面空间对应的连续页面地址信息,该方法进一步包 括更改物理内存中分配给客户操作系统的连续页面空间对应的连续页面地址标识为已用。
3.如权利要求1所述的方法,其特征在于,所述方法进一步包括,接收客户操作系统发送的连续页面释放请求,所述连续页面释放请求中携带分配给客 户操作系统的连续页面空间对应的连续页面地址信息,根据连续页面释放请求更改物理内 存中所述连续页面空间对应的连续页面地址的标识为空闲。
4.一种虚拟机内存分配访问方法,其特征在于,所述方法包括,向虚拟机监视器发送连续页面访问请求,所述连续页面访问请求中包含请求的连续页 面长度;接收虚拟机监视器根据所述连续页面长度分配的物理内存中预留的连续页面空间的 信息,以便根据所述分配到的连续页面空间的信息对分配给客户操作系统的连续页面空间 进行访问。
5.如权利要求4所述的方法,其特征在于,所述分配给客户操作系统的连续页面空间 的信息为分配给客户操作系统的连续页面空间对应的连续页面地址信息,该方法进一步包 括并将所述连续页面地址信息添加到本地页面表中。
6.如权利要求1所述的方法,其特征在于,在向虚拟机监视器发送连续页面访问请求 前,该方法进一步包括步骤接收客户应用程序发送的连续页面访问申请,所述连续页面访问申请中包含请求的连 续页面长度,并确定本地内存中不存在符合所述请求的连续页面长度的连续页面空间。
7.如权利要求1所述的方法,其特征在于,所述方法进一步包括,向虚拟机监视器发送连续页面释放请求,所述连续页面释放请求中携带分配给客户操 作系统的连续页面空间对应的连续页面地址信息,以便于虚拟机监视器根据所述连续页面 地址信息更改物理内存中所述连续页面空间对应的连续页面地址的标识为空闲。
8.—种虚拟机监视器,其特征在于,所述虚拟机监视器包括,接收模块,用于接收客户操作系统发送的连续页面访问请求,所述连续页面访问请求 中包含请求的连续页面长度;分配模块,用于根据所述连续页面长度将物理内存中预留的连续页面空间分配给所述 客户操作系统;发送模块用于将分配给客户操作系统的连续页面空间的信息发送给所述客户操作系 统,以便于所述客户操作系统根据所述分配到的连续页面空间的信息对分配给客户操作系统的连续页面空间进行访问。
9.如权利要求7所述的虚拟机监视器,其特征在于,所述虚拟机监视器进一步包括,标识模块,用于更改物理内存中分配给客户操作系统的连续页面空间对应的连续页面地址标识为已用。
10.如权利要求9所述的虚拟机监视器,其特征在于,所述接收模块进一步用于接收客 户操作系统发送的连续页面释放请求,所述连续页面释放请求中携带分配给客户操作系统 的连续页面空间对应的连续页面地址信息;所述标识模块进一步用于根据连续页面释放请求更改物理内存中所述连续页面空间 对应的连续页面地址的标识为空闲。。
11.一种客户操作系统,其特征在于,所述客户操作系统包括,发送模块,用于向虚拟机监视器发送连续页面访问请求,所述连续页面访问请求中包 含所述请求的连续页面长度;接收模块,用于接收虚拟机监视器根据所述连续页面长度分配的物理内存中预留的连 续页面空间的信息,以便根据所述分配到的连续页面空间的信息对分配给客户操作系统的 连续页面空间进行访问。
12.如权利要求10所述的客户操作系统,其特征在于,所述接收模块进一步用于,接收客户应用程序发送的连续页面访问申请,所述连续页面访问申请中包含请求连续 页面长度,并确定本地内存中不存在符合所述请求的连续页面长度的连续页面;所述发送模块用于根据所述连续页面访问申请中的连续页面长度发送连续页面访问 请求。
13.如权利要求10所述的客户操作系统,其特征在于,所述发送模块进一步用于向虚 拟机监视器发送连续页面释放请求,所述连续页面释放请求中携带分配给客户操作系统的 连续页面空间对应的连续页面地址信息,以便于虚拟机监视器根据所述连续页面地址信息 更改物理内存中所述连续页面空间对应的连续页面地址的标识为空闲。
14.一种虚拟机内存分配访问系统,其特征在于,包括,客户操作系统,用于向虚拟机监视器发送连续页面访问请求,所述连续页面访问请求 中包含所述请求的连续页面长度;虚拟机监视器根据所述连续页面长度分配的物理内存中 预留的连续页面空间的信息,以便根据所述分配到的连续页面空间的信息对分配给客户操 作系统的连续页面空间进行访问。虚拟机监视器,用于接收客户操作系统发送的连续页面访问请求,所述连续页面访问 请求中包含请求的连续页面长度;根据所述连续页面长度将物理内存中预留的连续页面空 间分配给所述客户操作系统,并将分配给客户操作系统的连续页面空间的信息发送给所述 客户操作系统,以便于所述客户操作系统根据所述分配到的连续页面空间的信息对分配给 客户操作系统的连续页面空间进行访问。
15.如权利要求14所述的虚拟机内存分配访问系统,其特征在于,所述客户操作系统 进一步包括,客户应用程序,用于向客户操作系统发送连续页面访问申请,所述连续页面访问申请 中包含请求的连续页面长度。
16.如权利要求15所述的虚拟机内存分配访问系统,其特征在于,所述客户操作系统进一步用于,根据连续页面访问申请中包含请求的连续页面长度,确定本地内存中不存在 符合请求连续页面长度的连续页面。
17.如权利要求14所述的虚拟机内存分配访问系统,其特征在于,所述客户操作系统 进一步用于,向虚拟机监视器发送连续页面释放请求,所述连续页面释放请求中携带分配 给客户操作系统的连续页面空间对应的连续页面地址信息,以便于虚拟机监视器根据所述 连续页面地址信息更改物理内存中所述连续页面空间对应的连续页面地址的标识为空闲。
全文摘要
本发明实施例公开了一种虚拟机内存分配访问方法,通过接收客户操作系统发送的连续页面访问请求,所述连续页面访问请求中包含请求的连续页面长度;根据所述连续页面长度将物理内存中预留的连续页面空间分配给所述客户操作系统,并将分配给客户操作系统的连续页面空间的信息发送给所述客户操作系统,以便于所述客户操作系统根据所述分配到的连续页面空间的信息对分配给客户操作系统的连续页面空间进行访问,当客户操作系统需要访问连续页面空间时,无需进行连续页面的产生操作,而是直接从VMM启动时分配好的连续内存页面中获得,从而提高了虚拟机的运行效率。
文档编号G06F12/02GK102122268SQ201010042719
公开日2011年7月13日 申请日期2010年1月7日 优先权日2010年1月7日
发明者秦晋, 薛传颂, 谢军安, 郁明星, 黄晨 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1