CN102323899A - Numa体系结构下面向容错的操作系统内存管理方法 - Google Patents

Numa体系结构下面向容错的操作系统内存管理方法 Download PDF

Info

Publication number
CN102323899A
CN102323899A CN201110259793A CN201110259793A CN102323899A CN 102323899 A CN102323899 A CN 102323899A CN 201110259793 A CN201110259793 A CN 201110259793A CN 201110259793 A CN201110259793 A CN 201110259793A CN 102323899 A CN102323899 A CN 102323899A
Authority
CN
China
Prior art keywords
memory
heat
internal memory
operating system
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201110259793A
Other languages
English (en)
Other versions
CN102323899B (zh
Inventor
张东
吴楠
周雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN 201110259793 priority Critical patent/CN102323899B/zh
Publication of CN102323899A publication Critical patent/CN102323899A/zh
Application granted granted Critical
Publication of CN102323899B publication Critical patent/CN102323899B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明提供一种NUMA体系结构下面向容错的操作系统内存管理方法是基于操作系统内存管理和支持操作系统的容错功能,提供可配置的内存限定分配功能和可伸缩的整节点内存热插拔功能,其中:可配置的内存限定分配功能是在NUMA体系结构下,整个NUMA节点中包含的内存的热移除和热添加;可伸缩的整节点内存热插拔功能是可伸缩的内存热插拔,即内存热插拔处理的内存大小最小为一页,最大为一个内存区域中所有的内存,内存热插拔分为热移除和热添加,内存热移除首先从操作系统层面热移除待处理的内存,再和系统固件、硬件配合,从硬件层面移除,从而使得内存设备从系统中热移除;热添加首先从硬件层面热添加内存设备,再从操作系统层面开始使用热添加的内存。

Description

NUMA体系结构下面向容错的操作系统内存管理方法
 
技术领域
本发明涉及计算机操作系统领域,具体涉及一种NUMA体系结构下面向容错的操作系统内存管理机制。
背景技术
应用在金融、电信等关键领域的大型计算机,通常在硬件和软件都提供了强大的容错功能,以保证最高最强的系统可用性,从而能够最大限度的持续提供关键可靠的服务。软件容错通常是由操作系统来保证,操作系统时刻关注系统软硬件是否正常运行,并在出现问题或者潜在出现问题的时候采取必要的措施以保证系统持续可用。
热插拔技术是操作系统容错功能中重要的一环,它对提高整个系统的可靠性、可用性和可服务性都不可或缺。有热插拔技术作为保障,系统管理员可以在不关机、不重启、不断电的情况下更换设备,可以及时的排除、隔离和修复故障,大大提高系统的可用性。
在现有技术中,NUMA体系结构下,操作系统分配内存时,可以使用多种策略,其中最常用的是本地分配策略。这种策略使得CPU多数访问“距离”自己较近的内存,减少访存时间,提高系统效率。但是,本地分配策略也使得系统内存散布在各个节点,过于零散从而不利于管理。更进一步的是,这种策略使得系统核心使用的内存也散布在各个节点,由于这部分内存不能被迁移和热移除,使得拥有这部分内存的节点不能被热移除,影响了整体系统的容错性能,不利于提高系统的高可用性。
现有的内存热插拔技术,存在诸多限制,有平台限制、内存模式限制以及操作大小限制。例如操作大小只能是1G内存为单位,这使得管理操作十分不便,实用性有限。
发明内容
本发明的目的是关注NUMA体系结构下的内存管理机制,采用多个技术突破现有技术限制,实现整个NUMA节点上内存的热插拔。
本发明的目的是按以下方式实现的,基于操作系统内存管理和支持操作系统的容错功能,提供可配置的内存限定分配功能和可伸缩的整节点内存热插拔功能,其中:可配置的内存限定分配功能是在NUMA体系结构下,整个NUMA节点中包含的内存的热移除和热添加;可伸缩的整节点内存热插拔功能是可伸缩的内存热插拔,即内存热插拔处理的内存大小最小为一页,最大为一个内存区域中所有的内存,内存热插拔分为热移除和热添加,内存热移除首先从操作系统层面热移除待处理的内存,再和系统固件、硬件配合,从硬件层面移除,从而使得内存设备从系统中热移除;热添加首先从硬件层面热添加内存设备,再从操作系统层面开始使用热添加的内存,管理步骤如下:
1)操作系统启动前,配置为内存限定分配功能启用;
2)启动操作系统,启动过程中的内存分配受到内存限定分配功能影响,将操作系统核心使用的内存或会导致不能热插拔的内存分配在指定节点上完成,包括如节点0;
3)进行内存热插拔操作,除节点0以外,其他节点的内存均可以热插拔;
4)内存热插拔最小单元为一个物理页,最大为一个节点内所有的内存;
5)热移除和热添加内存均以起始物理地址和内存大小为参数,内存热移除首先从操作系统层面热移除待处理的内存,再和系统固件、硬件配合,从硬件层面移除,从而使得内存设备从系统中热移除;热添加首先从硬件层面热添加内存设备,再从操作系统层面开始使用热添加的内存;
6)在操作系统运行时关闭内存限定分配功能,此后的核心内存分配便不会限制在节点0完成。
可配置内存限定分配功能,针对操作系统的内存分配策略,NUMA体系结构下,将系统核心使用的内存和会导致不能被热移除的内存分配到指定的同一个节点上,使得系统中其它节点的内存中没有不能被热移除的内存,从而使得系统中其它节点能够被热移除,以系统中只有一个节点不能被热移除的代价,保证了其它节点都能被热移除以提高系统的可用性。
可配置的内存限定分配功能,在操作系统启动和运行时均可配置,在启动时的配置影响在操作系统启动过程中内存的分配,运行时的配置影响配置之后的内存分配,要使得除了某一指定节点,其它节点均能够热移除,需要在系统启动的时候配置。
本发明的方法和现有技术相比,有益效果是:NUMA体系结构下面向容错的操作系统内存管理机制,基于传统操作系统内存管理,重点支持操作系统的容错功能,提供了可配置的内存限定分配功能,和可伸缩的整节点内存热插拔功能。
可配置内存限定分配功能,针对操作系统的内存分配策略。NUMA体系结构下,将系统核心使用的内存和会导致不能被热移除的内存分配到指定的同一个节点上,使得系统中其它节点的内存中没有不能被热移除的内存,从而使得系统其它节点能够被热移除。如此,以系统中只有一个节点不能被热移除的代价,保证了其它节点都能被热移除,大大提高系统的可用性。
附图说明
    图1是操作系统内存管理的系统架构图。
具体实施方式
    参照说明书附图对本发明的方法作以下详细地说明。
本发明的NUMA体系结构下面向容错的操作系统内存管理方法是基于传统操作系统内存管理,重点支持操作系统的容错功能,提供了可配置的内存限定分配功能,和可伸缩的整节点内存热插拔功能。
可配置内存限定分配功能,针对操作系统的内存分配策略。NUMA体系结构下,将系统核心使用的内存和会导致不能被热移除的内存分配到指定的同一个节点上,使得系统中其它节点的内存中没有不能被热移除的内存,从而使得系统其它节点能够被热移除。如此,以系统中只有一个节点不能被热移除的代价,保证了其它节点都能被热移除,大大提高系统的可用性。
可配置的内存限定分配功能,在操作系统启动和运行时均可配置。在启动时的配置影响在操作系统启动过程中内存的分配,运行时的配置影响配置之后的内存分配。要使得除了某一指定节点,其它节点均能够热移除,需要在系统启动的时候配置。
可伸缩的整节点内存热插拔功能,包含两个具体功能:一个是在NUMA体系结构下,整个NUMA节点中包含的内存的热移除和热添加;另一个是可伸缩的内存热插拔,即内存热插拔处理的内存大小最小为一页,最大为一个内存区域中所有的内存。内存热插拔分为热移除和热添加,内存热移除首先从操作系统层面热移除待处理的内存,再和系统固件、硬件配合,从硬件层面移除,从而使得内存设备从系统中热移除;热添加首先从硬件层面热添加内存设备,再从操作系统层面开始使用热添加的内存。
实施例
操作步骤如下:
1)操作系统启动前,配置为内存限定分配功能启用;
2)启动操作系统,启动过程中的内存分配受到内存限定分配功能影响,将操作系统核心使用的内存,即会导致不能热插拔的内存分配在指定节点(如节点0)上完成;
3)进行内存热插拔操作,除节点0以外,其他节点的内存均可以热插拔;
4)内存热插拔最小单元为一个物理页,最大为一个节点内所有的内存;
5)热移除和热添加内存均以起始物理地址和内存大小为参数,内存热移除首先从操作系统层面热移除待处理的内存,再和系统固件、硬件配合,从硬件层面移除,从而使得内存设备从系统中热移除;热添加首先从硬件层面热添加内存设备,再从操作系统层面开始使用热添加的内存。
6)在操作系统运行时关闭内存限定分配功能,此后的核心内存分配便不会限制在节点0完成。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。 

Claims (3)

1.NUMA体系结构下面向容错的操作系统内存管理方法, 其特征在于,基于操作系统内存管理和支持操作系统的容错功能,提供可配置的内存限定分配功能和可伸缩的整节点内存热插拔功能,其中:可配置的内存限定分配功能是在NUMA体系结构下,整个NUMA节点中包含的内存的热移除和热添加;可伸缩的整节点内存热插拔功能是可伸缩的内存热插拔,即内存热插拔处理的内存大小最小为一页,最大为一个内存区域中所有的内存,内存热插拔分为热移除和热添加,内存热移除首先从操作系统层面热移除待处理的内存,再和系统固件、硬件配合,从硬件层面移除,从而使得内存设备从系统中热移除;热添加首先从硬件层面热添加内存设备,再从操作系统层面开始使用热添加的内存,管理步骤如下:
1)操作系统启动前,配置为内存限定分配功能启用;
2)启动操作系统,启动过程中的内存分配受到内存限定分配功能影响,将操作系统核心使用的内存或会导致不能热插拔的内存分配在指定节点上完成,包括如节点0;
3)进行内存热插拔操作,除节点0以外,其他节点的内存均可以热插拔;
4)内存热插拔最小单元为一个物理页,最大为一个节点内所有的内存;
5)热移除和热添加内存均以起始物理地址和内存大小为参数,内存热移除首先从操作系统层面热移除待处理的内存,再和系统固件、硬件配合,从硬件层面移除,从而使得内存设备从系统中热移除;热添加首先从硬件层面热添加内存设备,再从操作系统层面开始使用热添加的内存;
6)在操作系统运行时关闭内存限定分配功能,此后的核心内存分配便不会限制在节点0完成。
2.根据权利要求1所述的方法, 其特征在于,可配置内存限定分配功能,针对操作系统的内存分配策略,NUMA体系结构下,将系统核心使用的内存和会导致不能被热移除的内存分配到指定的同一个节点上,使得系统中其它节点的内存中没有不能被热移除的内存,从而使得系统中其它节点能够被热移除,以系统中只有一个节点不能被热移除的代价,保证了其它节点都能被热移除以提高系统的可用性。
3.根据权利要求1所述的方法,其特征在于,可配置的内存限定分配功能,在操作系统启动和运行时均可配置,在启动时的配置影响在操作系统启动过程中内存的分配,运行时的配置影响配置之后的内存分配,要使得除了某一指定节点,其它节点均能够热移除,需要在系统启动的时候配置。
CN 201110259793 2011-09-05 2011-09-05 Numa体系结构下面向容错的操作系统内存管理方法 Active CN102323899B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110259793 CN102323899B (zh) 2011-09-05 2011-09-05 Numa体系结构下面向容错的操作系统内存管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110259793 CN102323899B (zh) 2011-09-05 2011-09-05 Numa体系结构下面向容错的操作系统内存管理方法

Publications (2)

Publication Number Publication Date
CN102323899A true CN102323899A (zh) 2012-01-18
CN102323899B CN102323899B (zh) 2013-05-08

Family

ID=45451644

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110259793 Active CN102323899B (zh) 2011-09-05 2011-09-05 Numa体系结构下面向容错的操作系统内存管理方法

Country Status (1)

Country Link
CN (1) CN102323899B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104268089A (zh) * 2014-09-15 2015-01-07 杭州华为数字技术有限公司 一种信息更新的方法、装置及系统
WO2015018351A1 (zh) * 2013-08-09 2015-02-12 华为技术有限公司 一种内存访问的方法、设备及系统
CN104850461A (zh) * 2015-05-12 2015-08-19 华中科技大学 一种面向numa架构的虚拟cpu调度优化方法
CN105260321A (zh) * 2015-11-11 2016-01-20 浪潮(北京)电子信息产业有限公司 一种改进型内存域划分方法
CN105260336A (zh) * 2015-11-17 2016-01-20 上海交通大学 可字节寻址的非易失性存储器热插拔方法及装置
CN105426248A (zh) * 2015-11-11 2016-03-23 浪潮集团有限公司 一种自动热拔的方法及装置
CN107368353A (zh) * 2017-07-26 2017-11-21 郑州云海信息技术有限公司 一种实现虚拟机内存热添加的方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6199179B1 (en) * 1998-06-10 2001-03-06 Compaq Computer Corporation Method and apparatus for failure recovery in a multi-processor computer system
CN101013380A (zh) * 2007-02-05 2007-08-08 华南理工大学 一种基于hpi模型的热插拔处理方法
CN101477496A (zh) * 2008-12-29 2009-07-08 北京航空航天大学 基于分布式内存虚拟化的numa结构的实现方法
US20100217949A1 (en) * 2009-02-24 2010-08-26 International Business Machines Corporation Dynamic Logical Partition Management For NUMA Machines And Clusters
CN101833497A (zh) * 2010-03-30 2010-09-15 山东高效能服务器和存储研究院 一种基于专家系统方法的计算机故障管理系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6199179B1 (en) * 1998-06-10 2001-03-06 Compaq Computer Corporation Method and apparatus for failure recovery in a multi-processor computer system
CN101013380A (zh) * 2007-02-05 2007-08-08 华南理工大学 一种基于hpi模型的热插拔处理方法
CN101477496A (zh) * 2008-12-29 2009-07-08 北京航空航天大学 基于分布式内存虚拟化的numa结构的实现方法
US20100217949A1 (en) * 2009-02-24 2010-08-26 International Business Machines Corporation Dynamic Logical Partition Management For NUMA Machines And Clusters
CN101833497A (zh) * 2010-03-30 2010-09-15 山东高效能服务器和存储研究院 一种基于专家系统方法的计算机故障管理系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9772891B2 (en) 2013-08-09 2017-09-26 Huawei Technologies Co., Ltd. Memory access method, device, and system
WO2015018351A1 (zh) * 2013-08-09 2015-02-12 华为技术有限公司 一种内存访问的方法、设备及系统
CN104268089A (zh) * 2014-09-15 2015-01-07 杭州华为数字技术有限公司 一种信息更新的方法、装置及系统
CN104268089B (zh) * 2014-09-15 2018-03-09 杭州华为数字技术有限公司 一种信息更新的方法、装置及系统
CN104850461B (zh) * 2015-05-12 2018-05-11 华中科技大学 一种面向numa架构的虚拟cpu调度优化方法
CN104850461A (zh) * 2015-05-12 2015-08-19 华中科技大学 一种面向numa架构的虚拟cpu调度优化方法
CN105426248A (zh) * 2015-11-11 2016-03-23 浪潮集团有限公司 一种自动热拔的方法及装置
CN105260321A (zh) * 2015-11-11 2016-01-20 浪潮(北京)电子信息产业有限公司 一种改进型内存域划分方法
CN105260321B (zh) * 2015-11-11 2018-07-20 浪潮(北京)电子信息产业有限公司 一种改进型内存域划分方法
CN105260336A (zh) * 2015-11-17 2016-01-20 上海交通大学 可字节寻址的非易失性存储器热插拔方法及装置
CN105260336B (zh) * 2015-11-17 2018-12-18 上海交通大学 可字节寻址的非易失性存储器热插拔方法及装置
CN107368353A (zh) * 2017-07-26 2017-11-21 郑州云海信息技术有限公司 一种实现虚拟机内存热添加的方法和装置
CN107368353B (zh) * 2017-07-26 2020-12-01 郑州云海信息技术有限公司 一种实现虚拟机内存热添加的方法和装置

Also Published As

Publication number Publication date
CN102323899B (zh) 2013-05-08

Similar Documents

Publication Publication Date Title
CN102323899A (zh) Numa体系结构下面向容错的操作系统内存管理方法
JP5212360B2 (ja) 制御プログラム、制御システムおよび制御方法
US9703346B2 (en) Firmware interface with backup non-volatile memory storage
JP2007287121A (ja) 揮発性記憶デバイス及び揮発性記憶デバイスを有するシリアルミックス記憶システム
CN110633130B (zh) 一种基于内存热插拔技术的虚拟内存管理方法和装置
US20240256263A1 (en) Application Upgrade Method and Apparatus, Computing Device, and Chip System
JP5158187B2 (ja) ストレージ装置、ストレージ制御装置およびストレージ制御方法
US8407507B2 (en) Power management circuit, power management method and power management program for controlling power supplied to functional blocks in integrated circuits
EP2908465B1 (en) High availability method and system for improving the utility of physical servers in cloud computing resource pool
CN104615472A (zh) 一种防止在线刷新bios+me fw失败的方法
CN104615500A (zh) 一种服务器计算资源动态分配的方法
JP2010277194A (ja) 記憶装置、データ処理方法およびデータ処理プログラム
CN102520982A (zh) 节点热插拔的方法及装置
CN102725746A (zh) 对分布式计算机系统中内存的管理方法和装置
CN103500108A (zh) 系统内存访问方法、节点控制器和多处理器系统
CN105677606A (zh) 总线设备的热插拔方法及总线装置
US8321501B2 (en) Secure out-of-band storage control
US9568986B2 (en) System-wide power conservation using memory cache
US9286206B2 (en) Memory system
CN104750614A (zh) 用于管理存储器的方法和装置
JP2015049675A (ja) 周辺機器制御装置および情報処理装置
JP6079777B2 (ja) 管理装置、データ取得方法およびデータ取得プログラム
CN107038121B (zh) 虚拟机的内存地址分配方法以及装置
KR101203157B1 (ko) 데이터 전달 시스템, 장치 및 방법
CN1770106A (zh) 通信设备复位信息保存方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant