管理虚拟机存储器的系统、方法和程序技术方案

技术编号:4588837 阅读:365 留言:0更新日期:2012-04-11 18:40
对虚拟机控制程序为多个虚拟机分配的虚拟存储器的管理。每个虚拟机具有被划分为工作存储器、高速缓冲存储器和交换存储器的虚拟专用存储器分配。虚拟机控制程序确定它需要附加的虚拟存储器分配,作为响应,向所述虚拟机发出各自请求,以将其各自的工作存储器和/或高速缓冲存储器中的一些转换为交换存储器。在其它时间,虚拟机控制程序确定它需要更少的虚拟存储器分配,作为响应,向所述虚拟机发出各自请求,以将其各自的交换存储器中的一些转换为工作存储器和/或高速缓冲存储器。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术总体涉及计算机系统,更具体而言,处理对虚拟机存储器的管理。
技术介绍
如今,配置为虚拟机的计算机已经众所周知。在这样的配置中,管理程序将实际计算机的物理资源(包括CPU,存储器,存储设备和i/o设备)逻辑上划分成独立的虛拟机。例如,管理程序为每个虚拟机分配对一个或多个处理器和映射到实际RAM的一段虚拟专用存储器的时间共享。当虛 拟机寻址其自己的虚拟专用存储器时,管理程序将虚拟专用存储器地址转 译成实际存储器的实际地址。管理程序还将虛拟专用存储器分配给它自己, 以存储管理程序的程序(包含其控制结构)以及管理程序4吏用的数据。在 已知的IBMz/VM操作系统中,管理程序的程序被称为控制程序(CP), 每个虚拟机还可以被称为用户部分或客户(guest)。还已知的是,逻辑分区程序将实际计算机的物理资源(包括CPU,存 储器,存储设备和I/O设备)逻辑上划分为逻辑分区(LPAR),然 后管理程序的程序在每个LPAR中执行,并将每个LPAR的资源划分成虚 拟机。在公知的IBM z系列的计算机中,公知的IBM处理器资源/资源管 理器(PR/SM)程序将实际计算机划分或分区为LPAR。典型地,通 过向逻辑分区程序指定用于每个LPAR的CPU,存储器和存储设备的量, 管理员辅助定义每个LPAR。逻辑分区程序可以向每个LPAR分配特定的 实际计算机资源或对总计算机资源的逻辑共享。每个LPAR中的虛拟机以同样的方式操作,如同它们是从实际计算机直接形成,而没有经过逻辑分区一样。先前已知的IBM z/VM 5.1版本的虛拟机操作系统包括已知的管理程 序,该管理程序从LPAR或者从未划分的实际计算机形成虚拟机。在z/VM 版本5发布1更新版,,(文件号码GC24 - 6095 - 01)的IBM刊物z/VM 版本5发布1.0概述信息(文件号码GC24 - 6095 - 00)中公开了现有 z/VM 5.1操作系统的细节,上述文件可以从位于PO Box 29570, IBM Publications, Raleigh, North Carolina 27626 - 0570的国际商业机器7>司, 或者通过WWW从IBM主页加后缀'7shop/publications/order获得。这 些刊物在此通过援引的方式纳入本文作为本文>^开的一部分。客户操作系统执行于每个虚拟机中(使用虛拟机共享的CPU,存储器, 等)。在每个客户操作系统上执行一个或多个应用和中间件程序(诸如文 件管理器)。尽管每个应用、中间件程序和客户操作系统在虚拟机中执行, 但是它们如同在其自己的专用、实际计算机中执行一样进行操作。每个虚 拟机中的客户操作系统可以是Linux (林纳斯.托瓦兹(Linus Torvalds)的 商标)操作系统,IBM CMS操作系统或其它^Mt系统。在每个虚拟机上 的每个客户操作系统上执行的应用和中间件可以是IBM DB2数据库管理 应用,IBM Websphere应用,或各种其它禾呈序。每个虛拟机的客户操作系统、中间件、应用(多个)和数据存储在分 配给该虚拟机的虛拟专用存储器的工作存储器部分中。每个虛拟机还包括 分配给该虛拟机的虚拟专用存储器的高速緩冲存储器部分。高速緩冲存储 器包含从(磁盘)存储设备存取的数据和相关联的元数据。元数据包含到 数据文件的目录和子目录路径、当前正被写入或读取的文件中的记录的标 识、文件的大小、文件中记录的大小、文件中数据的类型(ASCII, EBCDIC, 或者是二进制)、文件存储在磁盘上的何处,等等。大多数客户操作系统 包括一些算法,用于确定当高速緩沖存储器充满时应该将数据的哪些页保留在高速緩沖存储器中,以及当工作存储器充满时应该将数据的哪些页保 留在工作存储器中。例如,大多数客户操作系统使用最近最少使用算法, 用以当高速緩冲存储器中用于虛拟机所需新数据的空间不足时将最近最少使用的数据从高速緩冲存储器页调出到外部存储器中,并使用相似算法, 用以当工作存储器中用于虛拟机所需新数据的空间不足时将最近最少使用 的数据从工作存储器页调出到外部存储器中。虛拟机还可包括从RAM分配给虛拟机的虛拟专用存储器的交换存储 器部分。虛拟机的交换存储器用作为接收和存储从高速緩冲存储器和工作 存储器页调出的数据的存储器位置,以替代将数据页调出到磁盘存储器。 在典型的场景中,当存储虚拟机所需数据(信息和程序)的高速緩冲存储 器或工作存储器不足时,虚拟机中的客户操作系统识别虚拟机的高速緩沖 存储器或工作存储器中最近最少使用的存储器数据(作为四千字节的页)。然后,客户操作系统可以将最近最少使用的存储器页复制到虛拟机的交换 存储器或磁盘存储设备中。客户操作系统基于管理员定义的虛拟机的配置, 确定是将页调出到交换存储器还是(磁盘)存#^殳备。管理员可以配置虛 拟机以将页调出到任意一个,或者将页调出到交换存储器直到充满然后再 将页调出到磁盘。页调出释放了高速緩沖存储器和工作存储器,使得操作 系统能够将其他更需要的数据页从交换存储器或存储设备页调入到高速緩 冲存储器或工作存储器。作为客户操作系统的Linux操作系统(以及其他操作系统)将管理程 序分配给它的虚拟专用存储器虛拟化。在其自身的虚拟化过程中,Linux 操作系统过量使用管理程序分配给它的虚拟专用存储器。例如,假定管理 程序为具有Linux (或其他)客户操作系统的虚拟机分配了 3千兆字节的 虛拟专用存储器。作为响应,Linux客户操作系统可以自己为Linux ^^作 系统上执行的进程虚拟地分配6千兆字节。这是可以实现的,因为这些进 程平均来说典型地使用比分配给它们的存储器少得多的存储器。但是, Linux操作系统(以及Microsoft Windoes操作系统)倾向于在其工作存储 器和高速緩冲存储器中保留过期数据,因为存在一定的机会将来需要这些 数据,并且这会减少页调出和页调入。由于这样的原因,典型地,Linux 操作系统在正常操作期间要么未能成功利用交换存储器,要么对其交换存 储器严重利用不足,即使Linux操作系统配置为使用交换存储器用于页调出。管理程序追踪在先验间隔期间每个虛拟机使用了多少存储器(称为工 作集)。管理程序使用所有虛拟机的组合大小的工作集,,来确定它自 己和它后续可能创建的其他虛拟机可用的存储器有多少。对于它自己和它 后续可能创建的其他虛拟机来说,管理程序过量使用可用的虛拟专用存储 器,因为管理程序和所有虛拟机通常并不使用所有的其各自存储器分配。个别情况下,管理程序需要附加的存储器用于它自己的操作,用以形 成另外的虛拟机,或用以分配给存储器不足的现有的、关键性虛拟机。在上述情况的任何一种的情况下,管理程序(例如在IBM z/VM 5.1操作系 统中所建立的)可以请求具有多余虛拟专用存储器的虛拟机自愿地放弃一 些其现有的虛拟专用存储器分配。典型地,响应于这样的请求,虛拟机将 会放弃其全部虚拟专用存储器分配中的一些,然后基于其剩余的虚拟专用 存储器分配重新平衡工作存储器和高速緩冲存储器的量。 一些客户操作系 统在高速緩沖存储器可用的情况下将仅仅从其高速緩冲存储器放弃虚拟专 用存储器。如果存在交换存储器分配的话,该交换存储器分配本文档来自技高网...

【技术保护点】
一种管理由虚拟机控制程序为多个虚拟机分配的虚拟存储器的方法,所述虚拟机中的每一个具有被划分为工作存储器、高速缓冲存储器和交换存储器的虚拟专用存储器分配,所述方法包括如下步骤: 所述虚拟机控制程序确定它需要附加的虚拟存储器分配,作为响应 ,所述虚拟机控制程序向所述虚拟机发出各自请求,以将其各自工作存储器和/或高速缓冲存储器中的一些转换为交换存储器;以及 所述虚拟机履行所述各自请求,将其各自工作存储器和/或高速缓冲存储器中的一些转换为交换存储器。

【技术特征摘要】
【国外来华专利技术】US 2007-6-27 11/769,1611.一种管理由虚拟机控制程序为多个虚拟机分配的虚拟存储器的方法,所述虚拟机中的每一个具有被划分为工作存储器、高速缓冲存储器和交换存储器的虚拟专用存储器分配,所述方法包括如下步骤所述虚拟机控制程序确定它需要附加的虚拟存储器分配,作为响应,所述虚拟机控制程序向所述虚拟机发出各自请求,以将其各自工作存储器和/或高速缓冲存储器中的一些转换为交换存储器;以及所述虚拟机履行所述各自请求,将其各自工作存储器和/或高速缓冲存储器中的一些转换为交换存储器。2. 如权利要求1所述的方法,其中所述请求中的每一个指定要转换 为交换存储器的工作存储器和/或高速緩冲存储器的量。3. 如权利要求1或2所述的方法,其中所述多个虚拟机包括各自的 多个客户操作系统,所述多个客户操作系统被编程为,与分配给它们各自 虛拟机的交换存储器相比,更为充分地利用分配给它们各自虛拟机的工作 存储器和/或高速緩冲存储器。4. 如权利要求l, 2或3所述的方法,其中所述虚拟机中的每一个 履行所述请求,通过将高速緩冲存储器转换为交换存储器,以此将其各自 的工作存储器和/或高速緩冲存储器中的 一些转换为交换存储器。5. —种虚拟机控制程序产品,用于将虛拟存储器分配给虛拟机控制 程序和多个虚拟机,所述虚拟机中的每一个具有被划分为工作存储器、高 速緩冲存储器和交换存储器的虛拟专用存储器分配,所述虚拟机控制程序 产品包括计算机可读介质;第一程序指令,用以确定所述虚拟机控制程序需要附加的虚拟存储器 分配,作为响应,向所述虚拟机的每一个发出请求,以将其各自工作存储器和/或高速緩冲存储器中的一些转换为交换存储器;其中所述第 一程序指令以功能形式存储在所述计算机可读介质上。6. 如权利要求5所述的虚拟机控制程序产品,其中所述请求中的每 一个指定要转换为交换存储器的工作存储器和/或高速緩沖存储器的量。7. 如权利要求5所述的虚拟机控制程序产品,其中所述多个虚拟机 包括各自的多个客户操作系统,所述多个客户操作系统被编程为,与分配 给它们各自虛拟机的交...

【专利技术属性】
技术研发人员:S舒尔茨X特卡特寿
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1