CN108780412B - 计算系统中的存储器备份管理 - Google Patents

计算系统中的存储器备份管理 Download PDF

Info

Publication number
CN108780412B
CN108780412B CN201780016679.5A CN201780016679A CN108780412B CN 108780412 B CN108780412 B CN 108780412B CN 201780016679 A CN201780016679 A CN 201780016679A CN 108780412 B CN108780412 B CN 108780412B
Authority
CN
China
Prior art keywords
volatile memory
hybrid
memory device
controller
memory module
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.)
Active
Application number
CN201780016679.5A
Other languages
English (en)
Other versions
CN108780412A (zh
Inventor
M·A·肖
S·C-C·李
S·戈文丹
B·凯利
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN108780412A publication Critical patent/CN108780412A/zh
Application granted granted Critical
Publication of CN108780412B publication Critical patent/CN108780412B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40615Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2015Redundant power supplies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J1/00Circuit arrangements for dc mains or dc distribution networks
    • H02J1/10Parallel operation of dc sources
    • H02J1/106Parallel operation of dc sources for load balancing, symmetrisation, or sharing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本文公开了计算设备中的存储器备份管理和相关联的操作方法的各实施例。在一个实施例中,一种管理存储器备份的方法包括响应于检测到系统错误,使得存储器控制器与和具有易失性存储器模块和非易失性存储器模块的混合存储器设备通信以及控制该混合存储器设备脱离。该方法还可以包括使得混合存储器设备在存储器控制器与和存储设备通信以及控制存储设备脱离之后将数据从易失性存储器模块复制到非易失性存储器模块,而不操作主处理器和存储器控制器。

Description

计算系统中的存储器备份管理
背景
云计算数据中心中的服务器可以利用非易失性双列直插内存模块(“NVDIMM”)或其他混合存储器设备来实现高应用性能、良好的数据安全性和较低的系统崩溃恢复时间。某些类型的NVDIMM(例如,NVDIMM-N)可以包括可操作地耦合到闪存模块的动态随机存取存储器(“DRAM”)模块。DRAM模块允许快速存储器访问,而闪存模块可以在意外断电、系统崩溃或正常系统关闭时持续保留数据。
概述
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
在某些计算设备中,NVDIMM中的数据备份和持久性操作在很大程度上依赖于其他主板组件的可用性。例如,当服务器遇到系统错误时,服务器的主处理器可指示相应的存储器控制器刷新存储器控制器的缓冲器并将仍在缓冲器中的任何数据写入NVDIMM。然后,存储器控制器可命令NVDIMM在服务器向NVDIMM上的输入引脚(例如,SAVE#引脚)提供信号(例如,电压信号)之前切换到自刷新模式,以在NVDIMM中启动数据备份。信号可以是单次上升,单次下降或其他合适类型的信号。响应于所提供的信号,NVDIMM然后可在从NVDIMM移除电力之前将数据从DRAM模块复制并持久地存储到相应的闪存模块。
当遇到某些系统故障或错误时,上述数据备份和持久性操作可能存在数据丢失的高风险。例如,处理器和/或存储器控制器中的致命错误可中断上述备份操作。中断可阻止NVDIMM进入自刷新模式,从而阻止从DRAM模块到闪存模块的数据备份的启动。因此,由于缺乏刷新,当前驻留在DRAM模块中的数据可能会丢失。这种数据丢失会违反NVDIMM的数据持久性保证。
所公开的技术的若干实施例可通过针对NVDIMM或其他类型的混合存储器设备中的数据备份和持久性而言消除或至少减少对主处理器和/或存储器控制器的依赖来减少在系统故障期间的这种数据丢失的风险。例如,根据所公开技术的实施例的计算设备(例如,服务器)可包括位于存储器控制器和NVDIMM之间的通信总线(例如,I2C总线)中的开关(例如,I2C开关)。该开关被配置为可控制地使存储器控制器与NVDIMM脱离。开关还可将NVDIMM接合到计算设备的基板管理控制器(“BMC”)。随后,BMC可通过经由I2C总线传送命令使NVDIMM启动备份和持久性操作,或者可以向NVDIMM上的SAVE#引脚提供信号。
因此,主处理器或存储器控制器中的致命错误不会阻止DRAM模块中的数据备份和持久存储到NVDIMM的闪存模块。BMC通常比主处理器更可靠,因为BMC是监视计算设备的物理状态的专用服务处理器,而不被赋予执行各种计算或逻辑操作的任务。因此,所公开的技术的若干实施例可通过利用BMC来启动和/或监视NVDIMM中的数据备份和持久性来提高计算设备的性能和可靠性。
在其他实施例中,BMC还可被配置为监视NVDIMM的备份和持久操作的状态。基于所监视的备份操作的状态,BMC然后可允许计算设备在成功完成备份操作时重置。在在备份操作期间发生错误的情况下,还可以将BMC配置为在例如用于诊断的系统错误日志中创建条目。在进一步的实施例中,开关可被配置为将NVDIMM接合到机架控制器或其他合适类型的控制器以代替BMC。然后,机架控制器或其他合适类型的控制器可执行本文关于BMC描述的各种操作。
附图简述
图1是示出根据本技术的实施例的具有配置有存储器备份管理的计算单元的计算系统的示意性框图。
图2A-2D是根据本技术的实施例的适用于各种操作模式中的图1中的计算系统的计算单元的示意性框图。
图3是示出根据本技术的实施例的适合于图2A-2D的基板管理控制器的软件模块的框图。
图4是示出根据本技术的实施例的用于管理存储器备份的过程的流程图。
图5是示出根据本技术的实施例的用于执行数据备份的过程的流程图。
详细描述
以下描述了与管理存储器备份相关的计算系统、设备、组件、模块、例程和过程的各种实施例。在以下描述中,包括了示例软件代码、值、和其他具体细节以提供对本技术的各个实施例的全面理解。本领域技术人员也将理解该技术可具有另外的实施例。该技术也可以在没有下面参考图1-5描述的实施例的若干细节的情况下实施。
如本文中所使用的,术语“易失性存储器”通常是指需要电力来维持存储的数据的计算机存储器。易失性存储器的一个示例是DRAM,其可以在上电时通过刷新来保留存储的数据。当电源被移除或中断时,DRAM模块可能由于缺乏刷新而快速丢失存储的数据。相反,术语“非易失性存储器”通常是指即使没有电力也能保留存储的数据的计算机存储器。非易失性存储器的示例包括只读存储器(“ROM”)、闪存(例如,NAND或NOR固态驱动器)和磁存储设备(例如,硬盘驱动器)。
如还在本文中使用的,术语“混合存储器”通常是指包含可操作地彼此耦合的易失性存储器和非易失性存储器的计算机存储器。在某些实现中,易失性存储器可以由例如计算设备的主处理器使用,而非易失性存储器主要或专门用于促进或确保易失性存储器中的内容看起来是持久的。因此,当在操作期间意外地丢失电力时,易失性存储器中的内容不会丢失。混合存储器的一个示例是一种NVDIMM(例如,NVDIMM-N)。在至少一些实现中,NVDIMM可以包括可操作地彼此耦合的DRAM和闪存。NVDIMM设备还可以包括模块控制器,该模块控制器被配置为管理DRAM、闪存的操作以及它们之间的操作。尽管本文中的描述使用NVDIMM作为混合存储器设备的示例,但是所公开的技术的实施例也可被实现为其他合适类型的混合存储器设备。
在某些计算系统中,由于快速数据访问、高数据安全性和低系统崩溃恢复时间,混合存储器设备(例如,NVDIMM)被用于数据存储。然而,混合存储器设备中的数据的备份和持久性通常依赖于主处理器、存储器控制器和/或计算设备的其他组件的可用性。例如,当主处理器和/或存储器控制器经历致命错误时,该依赖可能存在数据丢失的风险。这种数据丢失会对用户体验产生负面影响并降低计算设备的性能。
所公开的技术的若干实施例可通过针对混合存储器设备中的数据备份和持久性而言消除或至少减少对主处理器和/或存储器控制器的依赖来至少降低混合存储器设备中的这种数据丢失的风险。因此,主处理器和/或存储器控制器中的致命错误不会阻止或中断混合存储器设备中的数据的备份和持久性,如下面参考图1-5更详细地描述的。
图1是示出根据本技术的实施例的具有配置有存储器备份管理的计算单元的计算系统100的示意性框图。如图1所示,计算系统100可包括多个计算机机箱102,其分别容纳由计算机网络108经由网络设备106互连的多个计算单元104。
计算机网络108还可被配置为将各个计算单元104与一个或多个客户端设备103互连(出于说明目的仅示出一个)。尽管图1中示出了计算系统100的特定配置,但是在其他实施例中,计算系统100还可以包括电源、冷却系统、电源备份系统和/或其他合适的组件。
计算机机箱102可包括具有合适形状和大小的结构以容纳计算单元104.例如,计算机机箱102可包括机架、抽屉、容器、机柜和/或其他合适的组件。在图1所示的实施例中,为了说明的目的,在每个计算机机箱102中示出了四个计算单元104。在其他实施例中,各个计算机机箱102还可包括十个、二十个或任何其他合适数量的计算单元104。在另外的实施例中,各个计算机机箱102还可包括配电单元、风扇、中间冷却器和/或其他合适的电子和/或机械组件(未示出)。
计算单元104可包括服务器、网络存储设备、网络通信设备或适用于例如数据中心或其他计算设施的其他合适的计算设备。在某些实施例中,计算单元104可被配置为实现用户101使用客户端设备103(例如,台式计算机,智能电话等)经由例如计算机网络108可访问的一个或多个云计算应用和/或服务。计算单元104可单独地包括一个或多个混合存储器设备120(如图2A-2D所示),并且可被配置为根据所公开技术的实施例实现存储器备份管理,如下面参考附图2A-2D更详细地描述的。
如图1所示,各个计算机机箱102还可包括机箱控制器105,机箱控制器105被配置为监视和/或控制计算单元104、配电单元、风扇、中间冷却器和/或其他合适的电子和/或机械组件的设备操作。如本文中所使用的,短语“设备操作”通常是指即使在没有操作系统的情况下也可被执行的操作。例如,机箱控制器105可在计算机机箱102中的特定计算单元104上上电、断电、重置、电力循环、刷新和/或执行其他合适的设备操作。机箱控制器105还可以允许系统管理员(未示出)通过例如计算机网络108进行的设备操作。在某些实施例中,各个机箱控制器105可包括机架控制器,该机架控制器被配置为监视容纳在机架中的计算单元104的操作状态。一种合适的示例机架控制器是由新泽西州萨默塞特的拉力坦(Raritan ofSomerset)提供的智能机架控制器(EMX)。在其他实施例中,各个机箱控制器105可包括机柜控制器、容器控制器或其他合适类型的控制器。
在所示实施例中,机箱控制器105单独地包括独立服务器或位于相应计算机机箱102中的其他合适类型的计算设备。在其他实施例中,机箱控制器105可包括在各个计算机机箱102中的一个或多个计算单元104上运行的操作系统或应用的服务。在进一步的实施例中,各个计算机机箱102中还可包括经由外部网络(未示出)和/或计算机网络108耦合到计算单元104的远程服务器。
在某些实施例中,计算机网络108可包括双绞线、同轴、非绞线对、光纤和/或其他合适的硬线通信介质、路由器、交换机和/或其他合适的网络设备。在其他实施例中,计算机网络108还可包括无线通信介质。在进一步的实施例中,计算机网络108可包括硬线和无线通信介质的组合。计算机网络108可以根据以太网、令牌环、异步传输模式和/或其他合适的链路层协议来操作。在所示实施例中,各个计算机机箱102中的计算单元104经由分别与计算机机箱102之一相关联的网络设备106(例如,机架顶部交换机)耦合到计算机网络108。在其他实施例中,计算机网络108可包括其他合适的拓扑、设备、组件和/或布置。
在操作中,计算单元104可以使用客户端设备103经由计算机网络108从用户101接收用户请求。例如,用户101可以使用客户端设备103请求web搜索。在接收到请求之后,一个或多个计算单元104可以执行所请求的web搜索并基于搜索请求生成相关的搜索结果。然后,计算单元104可经由计算机网络108和/或其他外部网络(例如,因特网,未示出)将所生成的搜索结果作为网络数据传送到客户端设备103。
如下面参考图2A-2D更详细描述的,各个计算单元104可包括一个或多个混合存储器设备120,并且可以根据所公开技术的实施例实现存储器备份管理。所实现的存储器备份管理可针对在混合存储器设备中执行数据备份和持久性而言至少减少甚至消除对主处理器和/或存储器控制器的依赖。结果,即使当一个或多个计算单元104在主处理器和/或存储器控制器中经历系统故障或错误时,诸如生成的搜索结果之类的网络数据也可被保留。
图2A-2D是根据所公开技术的实施例的适用于各种操作模式中的图1中的计算系统100的计算单元104的示意性框图。如图2A所示,计算单元104可包括承载可操作地彼此耦合的主处理器112、主存储器113、混合存储器设备120、辅助电源128和BMC 132的主板111。主板111还可以承载耦合到BMC132的主电源115、传感器117(例如,温度或湿度传感器)以及冷却风扇119(统称为“外围设备”)。
尽管图2A-2D仅以虚线示出了主板111,但是主板111可包括具有一个或多个插座的印刷电路板,该一个或多个插座被配置为接收本文所述的前述或其他合适的组件。在其他实施例中,主板111还可承载计算机存储设备(例如,硬盘驱动器)、指示器(例如,发光二极管)、通信组件(例如,网络接口模块)、平台控制器集线器、复杂可编程逻辑设备和/或其他合适的机械和/或电子组件来代替或附加于图2A-2D中所示的组件。
在进一步的实施例中,主板111可被配置为仅具有图2A-2D中所示的那些组件的部分的计算机组装件或子组装件。例如,在一个实施例中,主板111可以形成仅包含主处理器112、主存储器113和BMC 132的计算机组装件,而混合存储器设备120不被接收在相应的插座中。在其他实施例中,主板111还可被配置为仅具有BMC 132的另一计算机组装件。在进一步的实施例中,主板111可被配置为具有合适组件的其他合适类型的计算机组装件。
主处理器112可被配置为通过例如响应于从客户端设备103接收的用户请求(图1)执行算术、逻辑、控制和/或输入/输出操作来执行一个或多个计算机程序的指令。主处理器112可包括一个或多个微处理器、现场可编程门阵列和/或其他合适的逻辑设备。尽管在图2A中仅示出了一个主处理器112,但是在其他实施例中,计算单元104可包括以并行、串行或以其他合适的方式操作的两个、三个或任何合适数量的主处理器(未示出)。
如图2A所示,主处理器112可被耦合到具有缓冲器116的存储器控制器114。存储器控制器114可以包括数字电路,该数字电路被配置为监视和管理混合存储器设备120的操作。例如,在一个实施例中,存储器控制器114可被配置为周期性地刷新混合存储器设备120。在另一示例中,存储器控制器114还可连续地、周期性地或以其他合适的方式将缓冲器116中的数据118传送或“写入”到混合存储器设备120。在所示的实施例中,存储器控制器114被集成到主处理器112内。在其他实施例中,存储器控制器114还可包括与主处理器112分离的数字电路或芯片。合适的存储器控制器的一个示例是由加利福尼亚州圣克拉拉的英特尔公司提供的
Figure BDA0001795964710000071
Figure BDA0001795964710000072
5100存储器控制器。
主存储器113是可由主处理器112经由例如存储器总线107直接访问的数字存储电路。主处理器112可连续读取存储在主存储器113中的指令和/或数据,并按命令执行指令。被主处理器112主动操作的任何数据也可被存储在主存储器113中。在某些实施例中,主存储器113可包括一个或多个DRAM模块(未示出)。在其他实施例中,主存储器113还可包括磁芯存储器或其他合适类型的存储器。
BMC 132可被配置为监视主板111上的各种组件的操作条件和控制设备操作。如图2A所示,BMC 132可包括可操作地彼此耦合的处理器134、存储器136和输入/输出组件138。处理器134可包括一个或多个微处理器、现场可编程门阵列和/或其他合适的逻辑设备。存储器136可包括被配置为存储从处理器136接收的数据以及针对处理器136的指令的易失性和/或非易失性计算机可读介质(例如,ROM、RAM、磁盘存储介质、光学存储介质、闪存设备、EEPROM和/或其他合适的非瞬态存储介质)。在一个实施例中,数据和指令都被存储在一个计算机可读介质中。在其他实施例中,数据可被存储在一个介质(例如,RAM)中,而指令可被存储在不同的介质(例如,EEPROM)中。输入/输出组件124可包括数字和/或模拟输入/输出接口,其被配置为接受来自BMC 132的其他组件的输入和/或向BMC 132的其他组件提供输出。合适的BMC的一个例子是由加利福尼亚尔湾市的安华高科技(Avago Technologies ofIrvine)提供的Pilot 3控制器。
如图2A所示,混合存储器设备120可包括可操作地彼此耦合的易失性存储器模块122、非易失性存储器模块124和模块控制器126。易失性存储器模块122可包括一个或多个DRAM模块或其他合适类型的易失性存储器组件。非易失性存储器模块124可包括一个或多个闪存模块、静态随机存取模块、光存储设备、磁存储设备或其他合适的非易失性存储器组件。模块控制器126可包括微处理器、现场可编程门阵列和/或其他合适类型的逻辑设备,其被配置为管理易失性和非易失性存储器模块122和124的操作以及它们之间的互操作。
在某些实施例中,混合存储器设备120可包括一个或多个NVDIMM。在这样的实施例中,混合存储器设备120可包括输入引脚127(例如,SAVE#引脚),其被配置为接收用于启动从易失性存储器模块122到非易失性存储器模块124的数据备份的输入信号。输入信号可包括电压信号、电流信号或其他合适类型的信号。响应于接收到的输入信号,模块控制器126可使数据118从易失性存储器模块122复制到非易失性存储器模块124,如下面参考图2C更详细地描述的。在其他实施例中,混合存储器设备120还可包括其他合适类型的计算机可读存储设备。
辅助电源128可被配置为可控地向混合存储器设备120提供替代电源(例如,12伏DC),而不是计算单元104的主电源115.在说明性实施例中,辅助电源128包括与主电源115分开的电源。在其他实施例中,辅助电源128也可以是主电源115的集成部分。如图2A所示,BMC 132可监视和控制辅助电源128的操作,如下面参考图2B-2D更详细地描述的。
外围设备可经由输入/输出组件138提供输入到BMC 132以及从BMC 132接收指令。例如,主电源115可向BMC 132提供电源状态、运行时间、瓦数和/或其他合适的信息。作为响应,BMC 132可向主电源115提供用于上电、断电、重置、电力循环、刷新和/或其他合适的电源操作的指令。在另一个示例中,冷却风扇119可向BMC 132提供风扇状态,并且基于例如来自传感器117的温度读数接受用于启动、停止、加速、减速和/或其他合适的风扇操作的指令。在进一步的实施例中,主板111可包括附加的和/或不同的外围设备。
如图2A所示,计算单元104可包括将主处理器112,混合存储器设备120和BMC 132互连的数据总线109。在一个实施例中,数据总线109可包括内部集成电路总线或由荷兰埃因霍温的恩智浦半导体公司(NXP Semiconductors N.V.)详细介绍的I2C总线。在其他实施例中,数据总线109还可包括系统管理总线、RS-232、小型计算机系统接口总线或其他合适类型的控制和/或通信总线。
计算单元104还可包括在主处理器112和混合存储器设备120之间以及BMC 132和混合存储器设备120之间的数据总线109上的开关140.开关140可被配置为可控制地在存储器控制器114和BMC 132之间切换混合存储器设备120的管理和控制。在一个实施例中,开关140可包括I2C开关,例如由荷兰埃因霍温的恩智浦半导体公司(NXP SemiconductorsN.V.)提供的高速多路复用器/开关。在其他实施例中,开关140可包括其他合适类型的可编程开关。在所示实施例中,BMC 132被配置为经由例如数字输出142控制开关140的动作。在其他实施例中,机箱控制器105(图1)或计算单元104的其他合适组件可被配置为控制开关140的动作。
在正常操作中,主处理器112经由例如计算机网络108(图1)从客户端设备103接收所请求的任务。然后,主处理器112可执行所请求的任务并将生成的网络数据的结果路由到客户端设备103。在处理期间,开关140处于第一位置,该第一位置经由数据总线109将主处理器112连接到混合存储器设备120。这样,存储器控制器114可监视状态并管理混合存储器设备120中的易失性存储器模块122的刷新,例如,每60毫秒。在写入操作期间,主处理器112可以指示存储器控制器114在将存储的数据118的至少一部分传送或“写入”到混合存储器设备120的易失性存储器模块122之前将某些数据118作为字节、块或其他数据分区临时地存储在缓冲器116中。因为易失性存储器模块122可提供快速数据访问,所以主处理器112和/或存储器控制器114可快速地将数据118写入并存储在易失性存储器模块122中。
在图2A-2D所示的实施例中,BMC 132被配置为实现存储器备份管理的实施例,以降低在与主处理器112和/或存储器控制器114相关的系统故障或错误期间数据丢失的风险。在其他实施例中,机箱控制器105(图1)或计算系统100的其他合适的组件也可被配置为经由BMC 132或其他合适的通信信道实现如下所述的类似操作。图2A-2D示出了根据所公开技术的实施例的在存储器备份操作的各阶段期间计算单元104的某些操作模式。
如图2A所示,BMC 132可通过例如通用输入/输出端口(未示出)检测主处理器112、存储器控制器114或计算单元104的其他组件的致命错误。在某些实施例中,致命错误可包括与主处理器112和/或存储器控制器114相关的内部处理器错误或快速电源互连错误。在其他实施例中,致命错误可包括与主处理器112、存储器控制器114或计算单元104的其他组件相关的其他合适类型的系统错误。
如图2B所示的实施例中显示的,响应于检测到的致命错误,BMC 132可通过例如数字输出142向开关140发出开关命令144。响应于接收到的开关命令144,开关140可使混合存储器设备120与主处理器112的存储器控制器114脱离,并且将脱离的混合存储器设备120接合到BMC 132。由此,开关140现在处于第二位置,该第二位置经由数据总线109将BMC 132连接到混合存储器设备120。在其他实施例中,BMC 132还可通过数据总线109或通过其他合适的通信信道发出开关命令144。
如图2C中所示的,BMC 146然后可经由数据总线109向混合存储器设备120发出一个或多个BMC命令146。在某些实施例中,BMC 132可以首先向混合存储器设备120发出自刷新命令。作为响应,模块控制器126通过从辅助电源128而非从存储器控制器114接收电力使混合存储器设备120进入自刷新模式来刷新易失性存储器模块122。随后,在某些实施例中,BMC 132可经由数据总线109向混合存储器设备120发出备份命令。在其他实施例中,代替通过数据总线109发出备份命令,BMC 132还可向混合存储器设备120的输入引脚127提供信号148(例如,电压信号)。响应于输入引脚127上的备份命令或信号,模块控制器126可使易失性存储器模块122中的数据118被复制到非易失性存储器模块124。
模块控制器126还可监视复制过程的状态,并且自动地或者响应于来自BMC 132的查询(未示出)将监视到的状态传送到BMC 132。一旦BMC 132检测到数据118已经成功地从易失性存储器模块122复制到非易失性存储器模块124,BMC 132就可允许辅助电源128关闭并且可允许计算单元104被重置。例如,如图2D所示,BMC 132可向辅助电源128发出命令(未示出)以移除提供给混合存储器设备120的电力。可选地,BMC 132还可向开关140发出另一个开关命令144’。作为响应,开关140可使混合存储器设备120与BMC 132脱离,并且将混合存储器设备120与主处理器112的存储器控制器114重新接合。然后,BMC 132可发出命令以通过例如在主电源115上循环供电来使计算单元104重置。
如上面参考图2A-2D所述,将易失性存储器模块122中的数据118备份和持久存储到混合存储器设备120的非易失性存储器模块124的操作不依赖于主处理器112或存储器控制器118的可用性。因此,即使主处理器112或存储器模块118经历致命错误,易失性存储器模块122中的数据118依旧可被复制并被备份到非易失性存储器模块124。因此,由于主处理器112和/或存储器控制器114的致命错误而导致数据丢失的风险可被减少或甚至被消除。
图3是示出根据所公开技术的实施例的适合于图2A-2D中的BMC 132的某些计算系统组件的框图。在图3和本文的其他图中,各个软件组件、对象、类、模块和例程可以是作为C、C++、C#、Java和/或其他合适的编程语言中的源代码编写的计算机程序、过程或进程。组件可以包括但不限于一个或多个模块、对象、类、例程、属性、进程、线程、可执行文件、库或其他组件。组件可以具有源或二进制形式。组件可以包括编译之前的源代码的方面(例如,类、属性、过程、例程),经编译的二进制单元(例如,库、可执行文件)、或者在运行时被实例化和使用的工件(例如,对象、进程、线程)。
系统内的组件可以在系统内采用不同的形式。作为一个示例,包括第一组件、第二组件和第三组件的系统可以包含但不限于包含具有第一组件是源代码中的属性、第二组件是二进制编译库以及第三组件是在运行时创建的线程的系统。计算机程序、过程或进程可被编译成对象、中间物或机器代码并且被呈现以用于由个人计算机、网络服务器、膝上型计算机、智能电话和/或其他合适的计算的一个或多个处理器执行。
同样,组件可以包括硬件电路。本领域普通技术人员将认识到硬件可以被认为是固化的软件,并且软件可以被认为是活动的硬件。作为一个示例,组件中的软件指令可以被刻录到可编程逻辑阵列电路,或者可以被设计为具有适当集成电路的硬件电路。同样,硬件可以由软件模拟。源、中间物和/或目标代码以及相关数据的各种实现可被存储在计算机存储器中,该计算机存储器包括只读存储器、随机存取存储器、磁盘存储介质、光存储介质、闪存设备和/或除传播信号之外的其他合适的计算机可读存储介质。
在某些实施例中,如图3所示,BMC 132可包括存储器136中的指令,当由处理器134执行时,该指令可以使处理器134提供彼此互连的感测组件160、分析组件162、控制组件164和计算组件166,如图3所示。每个组件可以是以常规编程语言编写为源代码的计算机程序、过程或例程、或者是一个或多个硬件电路。
感测组件160可被配置为接收输入数据150并将输入数据150转换为合适的输入值。例如,感测组件160可以从传感器117(图1)接收输入,并将接收的输入数据150转换为摄氏温度。在另一示例中,感测组件160可从主处理器112(图2A)、存储器控制器114(图2A)或计算单元104的其他组件(图2A)接收输入,并且将所接收的输入值150转换为系统错误的指示。在其他示例中,感测组件160可以执行其他合适的转换。
计算组件166可包括被配置为执行各种类型的计算以便于BMC 132的其他组件的操作的例程。例如,计算组件166可包括用于对从感测组件160接收的温度求平均值的例程。在其他示例中,计算组件166可包括线性回归、多项式回归、内插、外插和/或其他合适的子例程。在其他示例中,计算组件166还可包括计数器、定时器和/或其他合适的例程。
分析组件162可被配置为分析来自计算组件166或感测组件160的经计算的参数,并确定是否应该在混合存储器设备120上启动备份操作(图2A)。例如,分析组件162可检测系统错误的指示并指示应该在混合存储器设备120上启动备份操作。在其他示例中,分析组件162可基于例如计算单元104的感测温度生成类似指示,或者执行其他合适的分析。在其他示例中,分析组件162可分析来自混合存储器设备120的接收数据,并确定是否成功完成了启动的备份操作。响应于确定成功地完成了启动的备份操作,分析组件162可指示可以在计算单元104上执行重置。响应于确定启动的备份操作未成功地完成,分析组件162可生成错误日志条目并将生成的错误日志条目存储在存储器136中的错误日志161中。
控制组件164可被配置为基于来自分析组件162的分析结果来控制开关140(图2A)、混合存储器设备120或计算单元104的其他组件的操作。例如,在一个实施例中,响应于分析模块162指示应该在混合存储器设备120上启动备份操作,控制组件164可生成开关命令144并经由数据总线109将其传送到开关140(图2A)。在另一个实施例中,控制组件164还可以生成模块控制器命令并将其传送到混合存储器设备120以启动备份操作。在进一步的实施例中,控制组件164还可基于操作员输入154和/或其他合适的信息生成开关命令144和/或BMC命令146。
图4是示出根据本技术的实施例的用于管理存储器备份的过程200的流程图。尽管以下参考图1中的计算系统100和图2A-2D中的计算单元104描述了过程200,但是过程200的若干实施例也可被用在其他计算机系统或设备中。
如图4所示,过程200可包括在阶段202监视系统错误。在某些实施例中,监视系统错误可包括监视计算单元104(图2A)的主板111(图2A)上的BMC132(图2A)的通用输入/输出端口上的输入信号。在其他实施例中,监视系统错误可包括例如在BMC 132处接收操作状态参数(例如,处理器负载、可用存储器等),并将接收到的操作状态参数与预设条件或阈值进行比较。响应于确定所接收的操作状态参数违反预设条件或阈值,BMC 132、机箱控制器105(图1)或图1中计算系统100的其他合适组件可指示检测到系统错误。在进一步的实施例中,监视系统错误可包括用于检测计算单元104的故障、警报或其他异常的任何其他合适的机制。
过程200接着可包括决策阶段204,以确定是否已经检测到系统错误。响应于确定尚未检测到系统错误,过程200返回到阶段202处的监视系统错误。响应于确定已经检测到系统错误,过程200前进到将存储器控制器(例如,图2A中的存储器控制器114)与存储设备(例如,图2A的混合存储器设备120)脱离。在一个示例中,脱离存储器控制器可包括激活通信总线(例如,图2A中的数据总线109)上的开关(例如,图2A中的开关140)以使存储器控制器114与和混合存储器设备120通信以及控制混合存储器设备120脱离。在其他示例中,存储器控制器可按其他合适的方式脱离。
过程200然后可包括在阶段206在存储设备中引起数据备份。数据备份可将驻留在例如图2A中的易失性存储器模块122中的任何数据复制并持久存储到混合存储器设备120的非易失性存储器模块124。下面参考图5更详细地描述引起数据备份的各种实施例。
过程200还可包括另一个决策阶段208,以例如通过利用BMC 132来监视数据备份来确定数据备份是否已经成功地完成,如上面参考图2C和2D所述。响应于确定数据备份已经成功地完成,过程200包括在阶段210允许重置计算单元104,如上面参考图2D所述。响应于确定数据备份尚未成功完成,过程200包括生成并持久存储具有条目的错误日志,该条目标识例如不成功备份操作的时间、日期或其他合适的参数。
图5是示出根据本技术的实施例的用于执行数据备份的过程206的流程图。如图5所示,过程206可包括使存储设备(例如,图2A的混合存储器设备120)通过从例如图2A中的辅助电源148接收电力而进入自刷新模式。过程206接着可包括在阶段214经由通信总线(例如,图2A中的数据总线109)向存储设备发出备份命令,或者向混合存储器设备120的输入引脚(例如,图2A中的输入引脚127)提供信号(例如,电压信号)。
从上文将会认识到,在此已出于说明目的描述了本发明的各具体实施例,但是可以作出各种修改而不背离本发明的范围。此外,一个实施例的许多元素可以用其他实施例来组合,除了其他实施例的各元素之外或替换它们。因此,本技术只受所附权利要求限制。

Claims (15)

1.一种管理计算设备中存储器备份的方法,所述计算设备具有基板管理控制器BMC、主处理器和通过数据总线可操作地耦合到混合存储器设备的存储器控制器,所述混合存储器设备具有易失性存储器模块、非易失性存储器模块以及可操作地耦合到所述易失性存储器模块和所述非易失性存储器模块的模块控制器,所述方法包括:
监视所述计算设备中的系统错误;以及
响应于系统错误被检测到,
使得所述存储器控制器与和所述混合存储器设备通信以及控制所述混合存储器设备脱离,包括激活所述数据总线上的开关以将所述存储器控制器与和所述混合存储器设备通信以及控制所述混合存储器设备脱离并将所述BMC与所述混合存储器设备接合,所述基板管理控制器具有到所述开关的数字输出;以及
在所述存储器控制器与和所述混合存储器设备通信以及控制所述混合存储器设备脱离之后,使得所述混合存储器设备的所述模块控制器将数据从所述易失性存储器模块复制到所述非易失性存储器模块并在所述混合存储器设备的所述非易失性存储器模块中持久存储来自所述易失性存储器模块的经复制的数据,而不操作所述主处理器或所述存储器控制器。
2.如权利要求1所述的方法,其特征在于,还包括在将所述存储器控制器脱离之后,使得所述混合存储器设备进入自刷新模式,在所述自刷新模式中,所述混合存储器设备从可操作地耦合到所述混合存储器设备的辅助电源接收电力,所述辅助电源与所述计算设备的主电源分离。
3.如权利要求1所述的方法,其特征在于,进一步包括:
在将所述存储器控制器脱离之后,使得所述混合存储器设备进入自刷新模式,在所述自刷新模式中,所述混合存储器设备从可操作地耦合到所述混合存储器设备并与所述计算设备的主电源分离的辅助电源接收电力;以及
其中使得所述混合存储器设备复制数据包括使得所述混合存储器设备在所述混合存储器设备处于所述自刷新模式之后将数据从所述易失性存储器模块复制到所述非易失性存储器模块。
4.如权利要求1所述的方法,其特征在于:
使得所述混合存储器设备复制数据包括经由所述数据总线将命令传送到所述混合存储器设备的所述模块控制器,所述命令使得所述模块控制器将数据从所述易失性存储器模块复制到所述非易失性存储器模块。
5.如权利要求1所述的方法,其特征在于:
使得所述混合存储器设备复制数据包括向所述混合存储器设备的引脚提供电压或电流信号,所述电压或电流信号使得所述模块控制器将数据从所述易失性存储器模块复制到所述非易失性存储器模块。
6.如权利要求1所述的方法,其特征在于,进一步包括:
确定所述数据从所述易失性存储器模块到所述非易失性存储器模块的复制是否完成;以及
响应于确定所述数据从所述易失性存储器模块到所述非易失性存储器模块的复制没有完成,维持辅助电源活动并用来自所述辅助电源的电力刷新所述易失性存储器模块。
7.如权利要求1所述的方法,其特征在于,进一步包括:
确定所述数据从所述易失性存储器模块到所述非易失性存储器模块的复制是否完成;以及
响应于确定所述数据从所述易失性存储器模块到所述非易失性存储器模块的复制成功地完成,执行以下中的至少一个:
允许辅助电源被关闭;或
允许所述计算设备重置。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述数据从所述易失性存储器模块到所述非易失性存储器模块的复制是否成功地完成;以及
响应于确定所述数据从所述易失性存储器模块到所述非易失性存储器模块的复制成功地完成,重置所述开关以将所述存储器控制器与所述混合存储器设备重新接合并随后允许所述计算设备重置。
9.一种计算设备,包括:
主处理器,所述主处理器可操作地耦合到具有用于保持要被存储的数据的缓冲器的存储器控制器;
混合存储器设备,所述混合存储器设备具有可操作地彼此耦合的易失性存储器模块和非易失性存储器模块;
在所述存储器控制器和所述混合存储器设备的所述易失性存储器模块之间的数据总线,其中所述存储器控制器被配置成经由所述数据总线将保持在所述缓冲器中的数据写入所述混合存储器设备的所述易失性存储器模块;以及
其中所述数据总线包括在所述存储器控制器和所述混合存储器设备的所述易失性存储器模块之间的开关,所述开关被配置成可控制地将所述存储器控制器从所述混合存储器设备脱离;
具有到所述开关的数字输出的基板管理控制器BMC,其中所述BMC被配置成在所述数字输出处提供信号以使得所述开关将所述存储器控制器与所述混合存储器设备脱离并将所述BMC与所述混合存储器设备接合。
10.如权利要求9所述的计算设备,其特征在于,所述BMC被配置成:
检测与所述主处理器或所述存储器控制器有关的系统错误;以及
响应于检测到的系统错误,在所述数字输出处提供信号以使得所述开关将所述存储器控制器与所述混合存储器设备脱离并将所述BMC与所述混合存储器设备接合。
11.如权利要求9所述的计算设备,其特征在于,所述BMC被配置成:
检测与所述主处理器或所述存储器控制器有关的系统错误;
响应于检测到的系统错误,
在所述数字输出处提供信号以使得所述开关将所述存储器控制器与所述混合存储器设备脱离并经由所述数据总线将所述BMC与所述混合存储器设备接合;以及
经由所述数据总线将命令传送到所述混合存储器设备,所述命令使得所述混合存储器设备将所述易失性存储器模块中的数据复制到所述非易失性存储器模块。
12.如权利要求9所述的计算设备,其特征在于,所述BMC被配置成:
检测与所述主处理器或所述存储器控制器有关的系统错误;
响应于检测到的系统错误,
在所述数字输出处提供信号以使得所述开关将所述存储器控制器与所述混合存储器设备脱离;以及
将信号提供到所述混合存储器设备的输入引脚,到所述输入引脚的所述信号使得所述混合存储器设备将所述易失性存储器模块中的数据复制到所述非易失性存储器模块。
13.如权利要求9所述的计算设备,其特征在于,所述BMC被配置成:
检测与所述主处理器或所述存储器控制器有关的系统错误;
响应于检测到的系统错误,
在所述数字输出处提供信号以使得所述开关将所述存储器控制器与所述混合存储器设备脱离;
在所述存储器控制器从所述混合存储器设备脱离之后,使得所述混合存储器设备将所述易失性存储器模块中的数据复制到所述非易失性存储器模块;
监视将所述易失性存储器模块中的所述数据复制到所述非易失性存储器模块的状态;以及
响应于该将所述易失性存储器模块中的所述数据复制到所述非易失性存储器模块成功地完成,允许所述计算设备重置。
14.如权利要求9所述的计算设备,其特征在于,所述BMC被配置成:
检测与所述主处理器或所述存储器控制器有关的系统错误;
响应于检测到的系统错误,
在所述数字输出处提供第一信号以使得所述开关将所述存储器控制器与所述混合存储器设备脱离;
在所述存储器控制器从所述混合存储器设备脱离之后,使得所述混合存储器设备将所述易失性存储器模块中的数据复制到所述非易失性存储器模块;
监视将所述易失性存储器模块中的所述数据复制到所述非易失性存储器模块的状态;以及
响应于该将所述易失性存储器模块中的所述数据复制到所述非易失性存储器模块成功地完成,在所述数字输出处提供第二信号以使得所述开关将所述存储器控制器重新接合到所述混合存储器设备。
15.一种计算机组装件,包括:
主板,携带:
具有用于保持数据的缓冲器的存储器控制器;
被配置成接收混合存储器设备的插座,所述混合存储器设备具有易失性存储器模块以及可操作地耦合到所述易失性存储器模块的非易失性存储器模块;
所述存储器控制器和所述插座之间的数据总线,其中所述存储器控制器被配置为响应于来自主处理器的指令,经由所述数据总线将所述缓冲器中的数据写入所述混合存储器设备的所述易失性存储器模块中;以及
所述数据总线中的并且在所述存储器控制器和被配置为接收所述混合存储器设备的所述插座之间的开关,所述开关被配置为当被接收在所述插座中时可控制地将所述存储器控制器与所述混合存储器设备脱离;
具有到所述开关的数字输出的基板管理控制器BMC,其中所述BMC被配置成在所述数字输出处提供信号以使得所述开关将所述存储器控制器与所述混合存储器设备脱离并将所述BMC与所述混合存储器设备接合。
CN201780016679.5A 2016-03-11 2017-03-03 计算系统中的存储器备份管理 Active CN108780412B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/067,644 2016-03-11
US15/067,644 US10007579B2 (en) 2016-03-11 2016-03-11 Memory backup management in computing systems
PCT/US2017/020553 WO2017155793A1 (en) 2016-03-11 2017-03-03 Memory backup management in computing systems

Publications (2)

Publication Number Publication Date
CN108780412A CN108780412A (zh) 2018-11-09
CN108780412B true CN108780412B (zh) 2022-03-29

Family

ID=58358923

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780016679.5A Active CN108780412B (zh) 2016-03-11 2017-03-03 计算系统中的存储器备份管理

Country Status (4)

Country Link
US (1) US10007579B2 (zh)
EP (1) EP3427151B1 (zh)
CN (1) CN108780412B (zh)
WO (1) WO2017155793A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10401935B2 (en) * 2016-05-03 2019-09-03 Samsung Electronics Co., Ltd. Storage device with a power source and persistent store that provides backup power to DRAM in a power loss event
US10725508B2 (en) * 2016-06-01 2020-07-28 Hewlett Packard Enterprise Development Lp Responding to data backup operation
US10394618B2 (en) 2017-07-14 2019-08-27 International Business Machines Corporation Thermal and power memory actions
KR102277728B1 (ko) * 2017-07-31 2021-07-14 삼성전자주식회사 데이터 저장 시스템, 데이터 저장 시스템의 데이터 저장 방법, 및 솔리드 스테이트 드라이브의 제조 방법
US10585754B2 (en) 2017-08-15 2020-03-10 International Business Machines Corporation Memory security protocol
US10642695B2 (en) * 2018-02-08 2020-05-05 Micron Technology, Inc. Storage backed memory package save trigger
US11157356B2 (en) * 2018-03-05 2021-10-26 Samsung Electronics Co., Ltd. System and method for supporting data protection across FPGA SSDs
US10990463B2 (en) 2018-03-27 2021-04-27 Samsung Electronics Co., Ltd. Semiconductor memory module and memory system including the same
ES2858322T3 (es) * 2018-04-20 2021-09-30 Rittal Gmbh & Co Kg Sistema y método computerizado para detectar información de ciclo de vida a través de un cuadro eléctrico de una instalación industrial
US10860311B2 (en) * 2018-06-13 2020-12-08 Dell Products, L.P. Method and apparatus for drift management in clustered environments
CN109144778A (zh) * 2018-07-27 2019-01-04 郑州云海信息技术有限公司 一种存储服务器系统及其备份方法、系统及可读存储介质
CN111221677B (zh) * 2018-11-27 2023-06-09 环达电脑(上海)有限公司 侦错备份方法与服务器
CN110990325A (zh) * 2019-10-31 2020-04-10 苏州浪潮智能科技有限公司 一种基于i2c总线的数据传输方法与装置
US11561739B1 (en) * 2020-06-01 2023-01-24 Smart Modular Technologies, Inc. Catastrophic event memory backup system
CN113884976B (zh) * 2021-11-25 2022-10-14 安徽南瑞中天电力电子有限公司 一种基于云平台的智能电表数据保护方法、系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336174B1 (en) * 1999-08-09 2002-01-01 Maxtor Corporation Hardware assisted memory backup system and method
CN101010668A (zh) * 2004-09-02 2007-08-01 英特尔公司 基于易失性存储的掉电恢复机制
CN101960430A (zh) * 2007-07-25 2011-01-26 技佳科技有限公司 混合非易失性存储器

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030158933A1 (en) * 2002-01-10 2003-08-21 Hubbert Smith Failover clustering based on input/output processors
US7127638B1 (en) 2002-12-28 2006-10-24 Emc Corporation Method and apparatus for preserving data in a high-availability system preserving device characteristic data
US7321990B2 (en) 2003-12-30 2008-01-22 Intel Corporation System software to self-migrate from a faulty memory location to a safe memory location
US7594144B2 (en) 2006-08-14 2009-09-22 International Business Machines Corporation Handling fatal computer hardware errors
US8189328B2 (en) 2006-10-23 2012-05-29 Virident Systems, Inc. Methods and apparatus of dual inline memory modules for flash memory
WO2009151445A1 (en) 2008-06-10 2009-12-17 Hewlett-Packard Development Company, L.P. Method and apparatus for configuring a hypervisor during a downtime state
US8325554B2 (en) 2008-07-10 2012-12-04 Sanmina-Sci Corporation Battery-less cache memory module with integrated backup
US8566639B2 (en) 2009-02-11 2013-10-22 Stec, Inc. Flash backed DRAM module with state of health and/or status information accessible through a configuration data bus
US7830732B2 (en) 2009-02-11 2010-11-09 Stec, Inc. Staged-backup flash backed dram module
US8024609B2 (en) 2009-06-03 2011-09-20 International Business Machines Corporation Failure analysis based on time-varying failure rates
US8468317B2 (en) 2011-06-07 2013-06-18 Agiga Tech Inc. Apparatus and method for improved data restore in a memory system
US20130067156A1 (en) 2011-09-12 2013-03-14 Byungcheol Cho Double data rate controller having shared address and separate data error correction
WO2013094048A1 (ja) * 2011-12-21 2013-06-27 富士通株式会社 試験サーバ、情報処理システム、試験プログラムおよび試験方法
US9098302B2 (en) 2012-06-28 2015-08-04 Intel Corporation System and apparatus to improve boot speed in serial peripheral interface system using a baseboard management controller
US9529583B2 (en) 2013-01-15 2016-12-27 Intel Corporation Single microcontroller based management of multiple compute nodes
GB2510180A (en) * 2013-01-29 2014-07-30 Ibm Selective restoration of data from non-volatile storage to volatile memory
US8954619B1 (en) 2013-08-07 2015-02-10 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Memory module communication control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336174B1 (en) * 1999-08-09 2002-01-01 Maxtor Corporation Hardware assisted memory backup system and method
CN101010668A (zh) * 2004-09-02 2007-08-01 英特尔公司 基于易失性存储的掉电恢复机制
CN101960430A (zh) * 2007-07-25 2011-01-26 技佳科技有限公司 混合非易失性存储器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"A hybrid non-volatile SRAM cell with concurrent SEU detection and correction";Pilin Junsangsri等;《2014 Design, Automation & Test in Europe Conference & Exhibition (DATE)》;20140421;第1-4页 *
"数据复制及备份技术研究";潘群华;《中国优秀硕士学位论文全文数据库 信息科技辑》;20030115(第01期);第I138-4页 *

Also Published As

Publication number Publication date
EP3427151B1 (en) 2020-05-06
CN108780412A (zh) 2018-11-09
EP3427151A1 (en) 2019-01-16
WO2017155793A1 (en) 2017-09-14
US20170262344A1 (en) 2017-09-14
US10007579B2 (en) 2018-06-26

Similar Documents

Publication Publication Date Title
CN108780412B (zh) 计算系统中的存储器备份管理
US10789117B2 (en) Data error detection in computing systems
US9721660B2 (en) Configurable volatile memory without a dedicated power source for detecting a data save trigger condition
TWI567540B (zh) 動態管理電力供應的方法、系統
US10152393B2 (en) Out-of-band data recovery in computing systems
US9910664B2 (en) System and method of online firmware update for baseboard management controller (BMC) devices
US20130110926A1 (en) Method for Controlling Rack System
EP3770765B1 (en) Error recovery method and apparatus
US20140122930A1 (en) Performing diagnostic tests in a data center
WO2018095107A1 (zh) 一种bios程序的异常处理方法及装置
TWI529624B (zh) Method and system of fault tolerance for multiple servers
US11099961B2 (en) Systems and methods for prevention of data loss in a power-compromised persistent memory equipped host information handling system during a power loss event
US10275330B2 (en) Computer readable non-transitory recording medium storing pseudo failure generation program, generation method, and generation apparatus
US20180267870A1 (en) Management node failover for high reliability systems
US20150278048A1 (en) Systems and methods for restoring data in a degraded computer system
US8024604B2 (en) Information processing apparatus and error processing
US9411666B2 (en) Anticipatory protection of critical jobs in a computing system
US20150067385A1 (en) Information processing system and method for processing failure
US11126486B2 (en) Prediction of power shutdown and outage incidents
US20130152082A1 (en) Selectable event reporting for highly virtualized partitioned systems
TWI469573B (zh) 系統錯誤處理方法與使用其之伺服器系統
Lee et al. NCU-HA: A lightweight HA system for kernel-based virtual machine
KR101564144B1 (ko) 펌웨어 관리 장치 및 방법
WO2023043328A1 (en) System and method for triggering a visual indicator of a faulty memory drive
TW201820134A (zh) 電子裝置及電子裝置之操作方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant