CN103678178A - 一种存储***的掉电处理方法及*** - Google Patents

一种存储***的掉电处理方法及*** Download PDF

Info

Publication number
CN103678178A
CN103678178A CN201310469593.1A CN201310469593A CN103678178A CN 103678178 A CN103678178 A CN 103678178A CN 201310469593 A CN201310469593 A CN 201310469593A CN 103678178 A CN103678178 A CN 103678178A
Authority
CN
China
Prior art keywords
controller
shutdown signal
power supply
standby power
buffer memory
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
CN201310469593.1A
Other languages
English (en)
Other versions
CN103678178B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310469593.1A priority Critical patent/CN103678178B/zh
Publication of CN103678178A publication Critical patent/CN103678178A/zh
Priority to PCT/CN2014/076712 priority patent/WO2015051633A1/zh
Application granted granted Critical
Publication of CN103678178B publication Critical patent/CN103678178B/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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • 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
    • 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/2053Error 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 where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Power Sources (AREA)

Abstract

本发明实施例公开了一种存储***的掉电处理方法,存储***包括主电源、备用电源、第一控制器、第二控制器以及存储器,第一控制器包括第一缓存,第二控制器包括第二缓存,所述方法包括:当主电源掉电时,第一控制器利用备用电源执行将第一缓存的数据写入存储器的操作,并且,第二控制器利用备用电源执行将第二缓存的数据写入存储器的操作;当第一缓存的数据已经全部被写入存储器而第二缓存的数据还未被全部写入存储器时,第一控制器向备用电源发送第一关闭信号,以使第一控制器完成下电操作;当主电源恢复供电时,第一控制器利用主电源发起上电操作。本发明实施例还公开了一种存储***。本发明实施例的方法能够提高存储***的恢复能力和可靠性。

Description

一种存储***的掉电处理方法及***
技术领域
本发明涉及电子技术领域,尤其涉及一种存储***的掉电处理方法及***。 
背景技术
存储***中主电源发生掉电事件时,需要通过掉电处理流程对双控***中的主控制器和从控制器中各自缓存的数据进行保存。具体实现时,在主电源掉电的情况下,备用电源(Battery Backup Unit,BBU)作为供电设备为主控制器和从控制器供电,主控制器和从控制器分别将各自缓存的数据(cache)写入非易失储存介质的同时,通过心跳串口保持通讯,当主控制器检测到主控制器和从控制器均完成写入存储器的操作后,发出备用电源关闭信号,使备用电源关闭,并结束掉电处理流程。在掉电处理流程结束后,当主电源恢复供电时,主控制器利用主电源发起主控制器和从控制器的上电操作,使存储***恢复正常工作状态。 
本领域人员可以知道,掉电处理流程中控制器的软、硬件故障可能导致无法写完cache数据,若主控制器和从控制器之间的心跳通信出现故障可能导致主控制器检测不到主控制器和从控制器是否均完成写入操作。因此,在这种情形下,现有技术方法可能造成主控制器无法结束掉电处理流程,并相应地,无法在主电源恢复供电后发起上电操作,以及恢复存储***正常工作。故采用现有技术,存储***执行掉电处理流程操作的可靠性低,恢复能力差。 
发明内容
本发明实施例提供了一种存储***的掉电处理方法及***,用以解决现有技术中存在的存储***中软、硬件故障以及通信故障,从而导致执行掉电处理流程操作的可靠性低、恢复能力差的问题。 
为了解决上述问题,本发明实施例第一方面提供了一种存储***的掉电处理方法,所述存储***包括主电源、备用电源、第一控制器、第二控制器以及 存储器,所述第一控制器包括第一缓存,所述第二控制器包括第二缓存,所述方法包括: 
当主电源掉电时,所述第一控制器利用所述备用电源执行将所述第一缓存的数据写入所述存储器的操作,并且,所述第二控制器利用所述备用电源执行将所述第二缓存的数据写入所述存储器的操作; 
当所述第一缓存的数据已经全部被写入所述存储器,而所述第二缓存的数据还未被全部写入所述存储器时,所述第一控制器向所述备用电源发送第一关闭信号,以使所述第一控制器完成下电操作; 
当所述主电源恢复供电时,所述第一控制器利用所述主电源发起上电操作。 
在第一方面的第一种可能的实现方式中,所述方法还包括: 
当所述第二缓存的数据全部写入所述存储器时,所述第二控制器向所述备用电源发送第二关闭信号,以使所述第二控制器完成下电操作; 
所述第二控制器利用所述主电源发起上电操作。 
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述方法还包括: 
所述备用电源根据所述第一关闭信号以及所述第二关闭信号结束供电操作。 
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述备用电源根据所述第一关闭信号以及所述第二关闭信号结束供电操作包括: 
当所述第一关闭信号出现上升沿后,若检测到所述第二关闭信号出现上升沿,所述备用电源结束供电操作;或 
当所述第一关闭信号出现下降沿后,若检测到所述第二关闭信号出现下降沿,所述备用电源结束供电操作。 
结合第一方面的第二种可能的实现方式,在第一方面的第四种可能的实现方式中,所述备用电源根据所述第一关闭信号以及所述第二关闭信号结束供电操作包括: 
当所述第一关闭信号出现由高电平到高阻态的跳变后,若检测到所述第二关闭信号出现由高电平到高阻态的跳变,所述备用电源结束供电操作;或 
当所述第一关闭信号出现由低电平到高阻态的跳变后,若检测到所述第二 关闭信号出现由低电平到高阻态的跳变,所述备用电源结束供电操作。 
相应地,本发明实施例第二方面还提供了一种存储***,所述存储***包括主电源、备用电源、第一控制器、第二控制器以及存储器,所述第一控制器包括第一缓存,所述第二控制器包括第二缓存,其中: 
所述第一控制器,用于当所述主电源掉电时,利用所述备用电源执行将所述第一缓存的数据写入所述存储器的操作; 
所述第二控制器,用于当所述主电源掉电时,利用所述备用电源执行将所述第二缓存的数据写入所述存储器的操作; 
所述第一控制器,还用于当所述第一缓存的数据已经全部被写入所述存储器,而所述第二缓存的数据还未被全部写入所述存储器时,向所述备用电源发送第一关闭信号,完成所述第一控制器的下电操作;当所述主电源恢复供电时,还用于利用所述主电源发起上电操作。 
在第二方面的第一种可能的实现方式中,当所述第二缓存的数据全部写入所述存储器时,所述第二控制器还用于向所述备用电源发送第二关闭信号,完成所述第二控制器的下电操作;还用于利用所述主电源发起上电操作。 
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述备用电源,还用于根据所述第一关闭信号以及所述第二关闭信号结束供电操作。 
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述备用电源,具体用于当检测到所述第一关闭信号出现上升沿后,若检测到所述第二关闭信号出现上升沿,则结束供电操作;或 
当检测到所述第一关闭信号出现下降沿后,若检测到所述第二关闭信号出现下降沿,则结束供电操作。 
结合第二方面的第二种可能的实现方式,在第二方面的第四种可能的实现方式中,所述备用电源,具体用于当检测到所述第一关闭信号出现由高电平到高阻态的跳变后,若检测到所述第二关闭信号出现由高电平到高阻态的跳变,所述备用电源结束供电操作;或 
当检测到所述第一关闭信号出现由低电平到高阻态的跳变后,若检测到所述第二关闭信号出现由低电平到高阻态的跳变,所述备用电源结束供电操作。 
通过本发明实施例,存储***中,当主电源掉电时,第一控制器和第二控 制器可利用备用电源各自进行缓存数据的数据备份,并在数据备份结束后完成下电操作,若第一控制器先于第二控制器完成下电操作,则当主电源恢复供电时,第一控制器首先利用主电源发起上电操作,使存储***及时恢复正常工作状态,本发明实施例的方法能够提高存储***的恢复能力和可靠性。 
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 
图1是本发明实施例中一种存储***的掉电处理方法的流程图; 
图2是本发明另一实施例中一种存储***的掉电处理方法的流程图; 
图3是本发明一实施例中一种存储***的结构组成示意图; 
图4是本发明实施例提供的一种控制器的结构组成示意图; 
图5是本发明实施例的一种存储***的工作流程图; 
图6是本发明另一实施例中一种存储***的结构组成示意图; 
图7是本发明又一实施例中一种存储***的结构组成示意图; 
图8是本发明再一实施例中一种存储***的结构组成示意图。 
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 
图1是本发明实施例中一种存储***的掉电处理方法的流程图。该方法可以适用于具有两个控制器的存储***中。本发明实施例所采用的存储***包括主电源、备用电源、第一控制器、第二控制器以及存储器,其中,第一控制器包括第一缓存,第二控制器包括第二缓存。实际应用中,在存储***正常运行的状态下,第一控制器和第二控制器在主电源的供电支持下工作,备用电源不向第一控制器和第二控制器供电。在本发明实施例中,若该存储***的主电源 异常掉电,可以采用如图1所示的方法进行处理。如图1所示,本实施例的处理流程包括以下步骤: 
步骤S110,当主电源掉电时,第一控制器利用备用电源执行将第一缓存的数据写入存储器的操作,并且,第二控制器利用备用电源执行将第二缓存的数据写入存储器的操作。 
实际应用中,当主电源掉电时,存储***启动掉电处理流程,备用电源开始向第一控制器和第二控制器供电,支持第一控制器将第一控制器的第一缓存的数据写入存储器,以及支持第二控制器将第二控制器的第二缓存的数据写入存储器,相应地,本发明实施例采用的存储***中,用于保存第一缓存的数据和第二缓存的数据的存储器也可以接受备用电源供电,以完成数据备份和保存的工作。 
本发明实施例采用的存储***中,用于保存第一缓存的数据和第二缓存的数据的存储器采用非易失性储存介质,如FLASH,以保证写入的数据的安全。 
步骤S111,当第一缓存的数据已经全部被写入存储器,而第二缓存的数据还未被全部写入存储器时,第一控制器向备用电源发送第一关闭信号,以使第一控制器完成下电操作。其中,完成下电操作的第一控制器处于非工作状态。 
本发明实施例中,第一控制器将第一缓存的数据全部写入存储器后,无需轮询第二控制器,可直接发送第一关闭信号至备用电源,完成下电操作。由此可知,当第二控制器将第二缓存的数据全部写入存储器后,也无需轮询第一控制器,可直接发送第二关闭信号至备用电源,完成下电操作。 
当第一缓存的数据已经全部被写入存储器,而第二缓存的数据还未被全部写入存储器时,第一控制器可以先于第二控制器,向备用电源发送第一关闭信号,以及完成下电操作。 
具体实现中,第一控制器向备用电源发送第一关闭信号可以有以下方式: 
方式一,可规定存储***中第一控制器接受主电源供电时,第一控制器与备用电源相连接的串口保持高电平,当主电源掉电,第一控制器未将第一缓存的数据全部写入存储器时,第一控制器的该串口变为保持低电平,则通过第一控制器该串口输出的第一关闭信号保持下降沿,当第一控制器将第一缓存的数据全部写入存储器时,第一控制器的该串口由低电平变为高电平,那么相应地,第一关闭信号出现上升沿。 
方式二,可规定存储***中第一控制器接受主电源供电时,第一控制器与备用电源相连接的串口保持低电平,当主电源掉电,第一控制器未将第一缓存的数据全部写入存储器时,第一控制器的该串口变为保持高电平,则通过第一控制器该串口输出的第一关闭信号保持上升沿,当第一控制器将第一缓存的数据全部写入存储器时,第一控制器的该串口由高电平变为低电平,那么相应地,第一关闭信号出现下降沿。 
方式三,可规定存储***中第一控制器接受主电源供电时,第一控制器与备用电源相连接的串口输出的信号为高阻态信号,当主电源掉电,第一控制器未将第一缓存的数据全部写入存储器时,第一控制器的该串口输出的信号由高阻态跳变为高电平,此时,通过第一控制器的该串口输出的第一关闭信号为高电平,当第一控制器将第一缓存的数据全部写入存储器时,第一控制器的该串口输出的第一关闭信号由高电平跳变为高阻态。 
方式四,可规定存储***中第一控制器接受主电源供电时,第一控制器与备用电源相连接的串口输出的信号为高阻态信号,当主电源掉电,第一控制器未将第一缓存的数据全部写入存储器时,第一控制器的该串口输出的信号由高阻态跳变为低电平,此时,通过第一控制器的该串口输出的第一关闭信号为低电平,当第一控制器将第一缓存的数据全部写入存储器时,第一控制器的该串口输出的第一关闭信号由低电平跳变为高阻态。 
步骤S112,当主电源恢复供电时,第一控制器利用主电源发起上电操作。具体实现中,第一控制器执行下电操作后,可在主电源恢复供电时,接受主电源供电,并通过主电源发起上电操作。 
在本发明实施例中,如果在步骤S111中,第一控制器先于第二控制器执行下电操作,则在步骤S112中,第一控制器也可以先于第二控制器通过主电源发起上电操作。优先发起上电操作的第一控制器可使存储***恢复正常工作。 
本发明实施例的一种存储***的掉电处理方法,当主电源掉电时,第一控制器和第二控制器利用备用电源将各自缓存的数据写入存储器,当第一缓存的数据全部被写入存储器,而第二缓存的数据还未全部被写入存储器时,第一控制器向备用电源发送第一关闭信号,并先于第二控制器完成下电操作,并且当主电源恢复供电时,第一控制器首先利用主电源发起上电操作,使存储***及时恢复正常工作状态,采用本发明实施例,两个控制器中任一先完成下电操作 的控制器均可以利用主电源发起上电操作,使存储***及时地恢复正常工作,提高了存储***的恢复能力和可靠性。 
本发明实施例提供一种存储***的掉电处理方法中,主电源恢复时,第一控制器和第二控制器中任一先完成掉电处理流程中下电操作的控制器均可以利用主电源发起上电操作,及时地使存储***恢复正常工作;其中,在存储***恢复正常工作后,第二控制器可以继续将第二缓存的数据全部写入存储器,以保证缓存数据安全可靠;本发明实施例的备用电源同时受第一控制器和第二控制器控制,根据第一控制器发送的第一关闭信号和第二控制器发送的第二关闭信号实现备用电源的供电操作控制;本发明实施例的方法保证存储***中缓存数据安全可靠的同时,能够及时地恢复***正常工作,提高了存储***的恢复能力和可靠性。 
图2是本发明另一实施例中一种存储***的掉电处理方法的流程图。如图2所示,本实施例的处理流程包括以下步骤: 
步骤S210,当主电源掉电时,第一控制器利用备用电源执行将第一缓存的数据写入存储器的操作,并且,第二控制器利用备用电源执行将第二缓存的数据写入存储器的操作。 
步骤S211,当第一缓存的数据已经全部被写入存储器,而第二缓存的数据还未被全部写入存储器时,第一控制器向备用电源发送第一关闭信号,以使第一控制器完成下电操作。 
步骤S212,当主电源恢复供电时,第一控制器利用主电源发起上电操作。 
步骤S213,当第二缓存的数据全部写入存储器时,第二控制器向备用电源发送第二关闭信号,以使第二控制器完成下电操作。具体实现中,步骤S212之后,存储***恢复正常工作的情况下,本步骤第二控制器继续将第二缓存的数据写入存储器,并在将第二缓存的数据全部写入存储器后,向备用电源发送第二关闭信号,完成下电操作。 
其中,第二关闭信号与步骤S211第一控制器生成的第一关闭信号类型相同,具体实现中,第二控制器向备用电源发送第二关闭信号可以有以下方式: 
方式一,可规定存储***中第二控制器接受主电源供电时,第二控制器与备用电源相连接的串口保持高电平,当主电源掉电,第二控制器还未将第二缓 存的数据全部写入存储器时,第二控制器的该串口变为保持低电平,则通过第二控制器该串口输出的第二关闭信号保持下降沿,当第二控制器将第二缓存的数据全部写入存储器时,第二控制器的该串口由低电平变为高电平,那么相应地,第二关闭信号出现上升沿。 
方式二,可规定存储***中第二控制器接受主电源供电时,第二控制器与备用电源相连接的串口保持低电平,当主电源掉电,第二控制器还未将第二缓存的数据全部写入存储器时,第二控制器的该串口变为保持高电平,则通过第二控制器该串口输出的第二关闭信号保持上升沿,当第二控制器将第二缓存的数据全部写入存储器时,第二控制器的该串口由高电平变为低电平,那么相应地,第二关闭信号出现下降沿。 
方式三,可规定存储***中第二控制器接受主电源供电时,第二控制器与备用电源相连接的串口输出的信号为高阻态信号,当主电源掉电,第二控制器未还将第二缓存的数据全部写入存储器时,第二控制器的该串口输出的信号由高阻态跳变为低电平,此时,通过第二控制器的该串口输出的第二关闭信号为低电平,当第二控制器将第二缓存的数据全部写入存储器时,第二控制器的该串口输出的第二关闭信号由低电平跳变为高阻态。 
方式四,可规定存储***中第二控制器接受主电源供电时,第二控制器与备用电源相连接的串口输出的信号为高阻态信号,当主电源掉电,第二控制器还未将第二缓存的数据全部写入存储器时,第二控制器的该串口输出的信号由高阻态跳变为高电平,此时,通过第二控制器的该串口输出的第二关闭信号为高电平,当第二控制器将第二缓存的数据全部写入存储器时,第二控制器的该串口输出的第二关闭信号由高电平跳变为高阻态。 
步骤S214,第二控制器利用主电源发起上电操作。具体实现中,第二控制器执行下电操作后,可通过主电源发起上电操作,恢复第二控制器的正常工作。 
进一步的,本发明实施例采用的存储***中,备用电源是根据第一关闭信号和第二关闭信号控制供电操作的,其中,第一关闭信号是第一控制器将第一缓存的数据全部写入存储器后发送的,第二关闭信号是第二控制器将第二缓存的数据全部写入存储器后发送的。 
相应地,根据第一关闭信号与第二关闭信号的类型,本发明实施例为备用电源提供以下几种关闭方案: 
方案一、当第一关闭信号出现上升沿后,若检测到第二关闭信号出现上升沿,则备用电源结束供电操作。 
具体实现中,备用电源与第一控制器和第二控制器相连接,并通过线路接收来自于第一控制器的第一关闭信号和来自于第二控制器的第二关闭信号。主电源掉电后,当第一缓存的数据已经全部被写入存储器,而第二缓存的数据还未被全部写入存储器时,备用电源可检测到第一关闭信号首先出现上升沿,可设定备用电源在检测到第一关闭信号和第二关闭信号同时为上升沿时结束供电操作,那么,当第二缓存的数据全部被写入存储器时,备用电源可检测到第二关闭信号也出现上升沿,此时,备用电源结束供电操作。 
方案二、当第一关闭信号出现下降沿后,若检测到第二关闭信号出现下降沿,则备用电源结束供电操作。 
具体实现中,备用电源与第一控制器和第二控制器相连接,并通过线路接收来自于第一控制器的第一关闭信号和来自于第二控制器的第二关闭信号。主电源掉电后,当第一缓存的数据已经被全部写入存储器,而第二缓存的数据还未被全部写入存储器时,备用电源可检测到第一关闭信号首先出现下降沿,可设定备用电源在检测到第一关闭信号和第二关闭信号同时为下降沿时结束供电操作,那么,当第二缓存的数据全部被写入存储器时,备用电源可检测到第二关闭信号也出现下降沿,此时,备用电源结束供电操作。 
方案三、当第一关闭信号出现由高电平到高阻态的跳变后,若检测到第二关闭信号出现由高电平到高阻态的跳变,则备用电源结束供电操作。 
具体实现中,备用电源与第一控制器和第二控制器相连接,并通过线路接收来自于第一控制器的第一关闭信号和来自于第二控制器的第二关闭信号。主电源掉电后,当第一缓存的数据已经被全部写入存储器,而第二缓存的数据还未被全部写入存储器时,备用电源可检测到第一关闭信号首先出现由高电平到高阻态的跳变,可设定备用电源在检测到第一关闭信号和第二关闭信号均跳变到高阻态后结束供电操作,那么,当第二缓存的数据被全部写入存储器时,备用电源可检测到第二关闭信号也出现由高电平到高阻态的跳变,此时,备用电源结束供电操作。 
方案四,当第一关闭信号出现由低电平到高阻态的跳变后,若检测到第二关闭信号出现由低电平到高阻态的跳变,则备用电源结束供电操作。 
具体实现中,备用电源与第一控制器和第二控制器相连接,并通过线路接收来自于第一控制器的第一关闭信号和来自第二控制器的第二关闭信号。主电源掉电后,当第一缓存的数据已经被全部写入存储器,而第二缓存的数据还未被全部写入存储器时,备用电源可检测到第一关闭信号首先出现由低电平到高阻态的跳变,可设定备用电源在检测到第一关闭信号和第二关闭信号均跳变到高阻态后结束供电操作,那么,当第二缓存的数据全部被写入存储器时,备用电源可检测到第二关闭信号也出现由低电平到高阻态的跳变,此时,备用电源结束供电操作。 
上述方法一至方法四所描述的方法即可以通过硬件装置实现,如元器件及相关电路,同时也可以通过软件控制实现,本发明实施例对采用上述方法一~方法四实现备用电源结束供电操作的实现方式不加以限定。 
上述方法一至方法四以外,还可以有更多根据第一关闭信号和第二关闭信号结束供电操作的方法,本发明实施例不限定于上述方法一~方法四所提供的方法。 
本发明实施例采用的存储***中,用于保存第一缓存的数据和第二缓存的数据的存储器为非易失性储存介质,如只读存储器(Read-only Memory,ROM)、可编程只读存储器(Programmable Read-only Memory,PROM)、电可改写只读存储器(Electrically Alterable Read-Only Memory,EAROM)、可擦可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、闪存(Flash Memory)等,以保证写入的数据的安全。 
进一步的,根据实际的使用需求,存储***中也可以采用多于两个控制器。当存储***中的主电源掉电时,多个控制器可以以同样的方式实施本发明实施例提供的掉电处理方法进行缓存数据备份以及***恢复工作,相应地,当备用电源受到多个控制器控制时,可根据实际情况设置信号处理方法,以结束供电操作。 
本发明实施例提供一种存储***的掉电处理方法中,主电源恢复时,第一控制器和第二控制器中任一先完成掉电处理流程中下电操作的控制器均可以利用主电源发起上电操作,及时地使存储***恢复正常工作;其中,在存储***恢复正常工作后,第二控制器可以继续将第二缓存的数据全部写入存储器,以 保证缓存数据安全可靠;本发明实施例的备用电源同时受第一控制器和第二控制器控制,根据第一控制器发送的第一关闭信号和第二控制器发送的第二关闭信号实现备用电源的供电操作控制;本发明实施例的方法保证存储***中缓存数据安全可靠的同时,能够及时地恢复***正常工作,提高了存储***的恢复能力和可靠性。 
图3为本发明实施例中的一种存储***的结构组成示意图。如图所示,本发明实施例中存储***至少可以包括:主电源31、第一控制器32、第二控制器33、备用电源34和存储器35,其中: 
第一控制器32,当主电源31掉电时,用于利用备用电源34执行将第一控制器32的第一缓存的数据写入存储器35的操作。 
第二控制器33,当主电源31掉电时,用于利用备用电源34执行将第二控制器33的第二缓存的数据写入存储器35的操作。 
第一控制器32,当第一缓存的数据已经全部被写入存储器35,而第二缓存的数据还未被全部写入存储器35时,还用于向备用电源34发送第一关闭信号,完成第一控制器32的下电操作;当主电源31恢复供电时,还用于利用主电源31发起上电操作。 
进一步可选地,第一控制器32向备用电源34发送第一关闭信号可以有以下方式: 
方式一,可规定存储***中第一控制器32接受主电源31供电时,第一控制器32与备用电源34相连接的串口保持高电平,当主电源31掉电,第一控制器32未将第一缓存的数据全部写入存储器35时,第一控制器32的该串口变为低电平,则通过第一控制器32该串口输出的第一关闭信号为下降沿,当第一控制器32将第一缓存的数据全部写入存储器35时,第一控制器32的该串口由低电平变为高电平,那么相应地,第一关闭信号出现上升沿。例如,可通过图6所示的第一控制器32的一引脚串口输出第一关闭信号。 
方式二,可规定存储***中第一控制器32接受主电源31供电时,第一控制器32与备用电源34相连接的串口保持低电平,当主电源31掉电,第一控制器32未将第一缓存的数据全部写入存储器35时,第一控制器32的该串口变为高电平,则通过第一控制器32该串口输出的第一关闭信号保持上升沿,当第一 控制器32将第一缓存的数据全部写入存储器35时,第一控制器32的该串口由高电平变为低电平,那么相应地,第一关闭信号出现下降沿。例如,可通过图6所示的第一控制器32的一引脚串口输出第一关闭信号。 
方式三,可规定存储***中第一控制器32接受主电源31供电时,第一控制器32与备用电源34相连接的串口输出的信号为高阻态信号,当主电源31掉电,第一控制器32未将第一缓存的数据全部写入存储器35时,第一控制器32的该串口输出的信号由高阻态跳变为低电平,此时,通过第一控制器32的该串口输出的第一关闭信号为低电平,当第一控制器32将第一缓存的数据全部写入存储器35时,第一控制器32的该串口输出的第一关闭信号由低电平跳变为高阻态。例如,可通过图7所示的第一控制器32的一引脚串口输出第一关闭信号。 
方式四,可规定存储***中第一控制器32接受主电源31供电时,第一控制器32与备用电源34相连接的串口输出的信号为高阻态信号,当主电源31掉电,第一控制器32未将第一缓存的数据全部写入存储器35时,第一控制器32的该串口输出的信号由高阻态跳变为高电平,此时,通过第一控制器32的该串口输出的第一关闭信号为高电平,当第一控制器32将第一缓存的数据全部写入存储器35时,第一控制器32的该串口输出的第一关闭信号由高电平跳变为高阻态。例如,可通过图8所示的第一控制器32的一引脚串口输出第一关闭信号。 
具体实现中,完成下电操作的第一控制器32处于非工作状态,当主电源31恢复供电后,第一控制器32利用主电源31发起上电操作后,可恢复本发明实施例的存储***的正常工作。 
进一步可选地,当存储***恢复正常工作后,存储***中第二控制器33还继续将第二缓存的数据写入存储器35,以保证缓存数据的完整可靠,其中: 
第二控制器33,当第二缓存的数据全部写入存储器35时,还用于向备用电源34发送第二关闭信号,完成第二控制器33的下电操作;还用于利用主电源31发起上电操作。 
进一步可选地,第二控制器33向备用电源34发送第二关闭信号可以有以下方式: 
方式一,可规定存储***中第二控制器33接受主电源31供电时,第二控制器33与备用电源34相连接的串口保持高电平,当主电源31掉电,第二控制器33未将第二缓存的数据全部写入存储器35时,第二控制器33的该串口变为 低电平,则通过第二控制器33该串口输出的第二关闭信号保持下降沿,当第二控制器33将第二缓存的数据全部写入存储器35时,第二控制器33的该串口由低电平变为高电平,那么相应地,第二关闭信号出现上升沿。例如,可通过图6所示的第二控制器33的一引脚串口输出第二关闭信号。 
方式二,可规定存储***中第二控制器33接受主电源31供电时,第二控制器33与备用电源34相连接的串口保持低电平,当主电源31掉电,第二控制器33未将第二缓存的数据全部写入存储器35时,第二控制器33的该串口变为高电平,则通过第二控制器33该串口输出的第二关闭信号保持上升沿,当第二控制器33将第二缓存的数据全部写入存储器35时,第二控制器33的该串口由高电平变为低电平,那么相应地,第二关闭信号出现下降沿。例如,可通过图7所示的第二控制器33的一引脚串口输出第二关闭信号。 
方式三,可规定存储***中第二控制器33接受主电源31供电时,第二控制器33与备用电源34相连接的串口输出的信号为高阻态信号,当主电源31掉电,第二控制器33未将第二缓存的数据全部写入存储器35时,第二控制器33的该串口输出的信号由高阻态跳变为低电平,此时,通过第二控制器33的该串口输出的第二关闭信号为低电平,当第二控制器33将第二缓存的数据全部写入存储器35时,第二控制器33的该串口输出的第二关闭信号由低电平跳变为高阻态。例如,可通过图8所示的第二控制器33的一引脚串口输出第二关闭信号。 
方式四,可规定存储***中第二控制器33接受主电源31供电时,第二控制器33与备用电源34相连接的串口输出的信号为高阻态信号,当主电源31掉电,第二控制器33未将第二缓存的数据全部写入存储器35时,第二控制器33的该串口输出的信号由高阻态跳变为高电平,此时,通过第二控制器33的该串口输出的第二关闭信号为高电平,当第二控制器33将第二缓存的数据全部写入存储器35时,第二控制器33的该串口输出的第二关闭信号由高电平跳变为高阻态。例如,可通过图8所示的第二控制器33的一引脚串口输出第二关闭信号。 
备用电源33,用于接收第一控制器32发送的第一关闭信号;还用于接收第二控制器33发送的第二关闭信号;还用于根据第一关闭信号以及第二关闭信号结束供电操作。 
进一步可选地,备用电源34可通过以下四种方式实现备用电源34的结束 供电操作: 
方式一,当备用电源34检测出第一关闭信号出现上升沿后,若检测到第二关闭信号出现上升沿,结束供电操作。 
图6为备用电源34结束供电操作的一种实现方案,其中,备用电源34分别与第一控制器32和第二控制器33建立连接,通过第一控制器32中第一三极管Q1的集电极c1进行信号采样,检测第一控制器32芯片串口输出的第一关闭信号(第一BBU_OFF_10),通过第二控制器33中第二三极管Q2的集电极c2进行信号采样,检测第二控制器33芯片串口输出的第二关闭信号(第二BBU_OFF_10)。由于第一缓存的数据全部被写入存储器35后,第一控制器32芯片串口输出的第一关闭信号改变为上升沿,第二缓存的数据全部被写入存储器35后,第二控制器33芯片串口输出的第二关闭信号改变为上升沿,可将本实现方案规定为第一关闭信号与第二关闭信号的与逻辑检测方式: 
当第一缓存的数据全部被写入存储器35,并且第二缓存的数据未全部被写入存储器35时,备用电源34将通过集电极c1获得采样信号1,该采样信号1为高电平,并认为检测到第一控制器32芯片串口发送的第一关闭信号改变为上升沿,同时,备用电源34通过集电极c2获得采样信号2,该采样信号2为低电平,此时认为第二控制器33芯片串口发送的第二关闭信号未改变为上升沿,当前不能结束供电;当第二缓存的数据全部被写入存储器35时,备用电源34通过集电极c2获得的采样信号2为高电平,此时认为第二控制器33芯片串口发送的第二关闭信号改变为上升沿,则根据第一关闭信号和第二关闭信号的变化情况判断出当前可以结束供电操作,并结束供电操作。 
可参照表格1,其中BBU_OFF_10为备用电源34同时检测第一关闭信号(第一BBU_OFF_10)和第二关闭信号(第二BBU_OFF_10)后的逻辑运算结果: 
Figure BDA0000393395060000141
表格1 
由此可知,存储***的主电源掉电时,BBU_OFF_10的运算结果会从高电平变为低电平,当备用电源34通过集电极c1获得的采样信号1由高电平变为低电平时代表第一关闭信号出现上升沿,当备用电源34通过集电极c2获得的采样信号2由高电平变为低电平时代表第二关闭信号出现上升沿,当第一关闭信号出现上升沿后,第二关闭信号出现上升沿时,BBU_OFF_10会从低电平变为高电平,此时可结束备用电源34的供电操作。 
方式二,备用电源34还用于检测出第一关闭信号出现下升沿后,若检测到第二关闭信号出现下升沿,结束供电操作。 
图6可以为备用电源34结束供电操作的另一种实现方案,其中,备用电源分别与第一控制器32和第二控制器33建立连接,通过第一控制器32中第一三极管Q1的集电极c1进行信号采样,检测第一控制器32芯片串口输出的第一关闭信号(第一BBU_OFF_10),通过第二控制器33中第二三极管Q2的集电极c2进行信号采样,检测第二控制器33芯片串口输出的第二关闭信号(第二BBU_OFF_10)。由于第一缓存的数据全部被写入存储器35后,第一控制器32芯片串口输出的第一关闭信号改变为下降沿,第二缓存的数据全部被写入存储器35后,第二控制器33芯片串口输出的第二关闭信号改变为下降沿,可将本实现方案规定为第一关闭信号于第二关闭信号的与逻辑检测方式: 
当第一缓存的数据全部被写入存储器35,并且第二缓存的数据未全部被写入存储器35时,备用电源34将通过集电极c1获得采样信号3,该采样信号3为低电平,并认为检测到第一控制器32芯片串口发送的第一关闭信号改变为下降沿,同时,备用电源34通过集电极c2获得采样信号4,该采样信号4为高电平,此时认为第二控制器33芯片串口发送的第二关闭信号未改变为下降沿,当前不能结束供电;当第二缓存的数据全部被写入存储器35时,备用电源34通过集电极c2获得的采样信号4为低电平,此时认为第二控制器33芯片串口发送的第二关闭信号改变为下降沿,则根据第一关闭信号和第二关闭信号的变化情况判断出当前可以结束供电操作,并结束供电操作。 
可参照表格2,其中BBU_OFF_10为备用电源34同时检测第一关闭信号(第一BBU_OFF_10)和第二关闭信号(第二BBU_OFF_10)后的逻辑运算结果: 
Figure BDA0000393395060000161
表格2 
由此可知,存储***的主电源掉电时,BBU_OFF_10的运算结果会从高电平变为低电平,当备用电源34通过集电极c1获得的采样信号3由低电平变为高电平时代表第一关闭信号出现下降沿,当备用电源34通过集电极c2获得的采样信号4由低电平变为高电平时代表第二关闭信号出现下降沿,当第一关闭信号出现下降沿后,第二关闭信号出现下降沿时,BBU_OFF_10会从低电平变为高电平,此时可结束备用电源34的供电操作。 
方式三,备用电源34检测出第一关闭信号出现由高电平到高阻态的跳变后,若检测到第二关闭信号出现由高电平到高阻态的跳变,结束供电操作。 
图7为备用电源34结束供电操作的又一种实现方案,其中,备用电源34分别与第一控制器32和第二控制器33建立连接,通过第一控制器32芯片串口与上拉电阻R1的节点1进行第一关闭信号(第一BBU_OFF_10)的信号采样,通过第二控制器33芯片串口与上拉电阻R2的节点2进行第二关闭信号(第二BBU_OFF_10)的信号采样。由于第一缓存的数据全部被写入存储器35后,第一控制器32芯片串口输出的第一关闭信号出现由高电平到高阻态的跳变,第二缓存的数据全部被写入存储器35后,第二控制器33芯片串口输出的第二关闭信号出现由高电平到高阻态的跳变,可将本实现方案规定为第一关闭信号于第二关闭信号的与逻辑检测方式: 
当第一缓存的数据全部被写入存储器35,并且第二缓存的数据未全部被写入存储器35时,备用电源34通过第一控制器32芯片串口与上拉电阻R1的节点1获得采样信号5,该采样信号5为高电平,并认为检测到第一控制器32芯片串口发送的第一关闭信号跳变到高阻态,同时,备用电源34通过第二控制器33芯片串口与上拉电阻R2的节点2获得采样信号6,该采样信号6为低电平,并认为检测到第二控制器33芯片串口发送的第二关闭信号未跳变到高阻态,当 前不能结束供电;当第二缓存的数据全部被写入存储器35时,备用电源34通过第二控制器33芯片串口与上拉电阻R2的节点6获得采样信号6,该采样信号6为高电平,此时认为第二控制器33芯片串口发送的第二关闭信号跳变到高阻态,则根据第一关闭信号和第二关闭信号的变化情况判断出当前可以结束供电操作,并结束供电操作。 
可参照表格3,其中BBU_OFF_10为备用电源34同时检测第一关闭信号(第一BBU_OFF_10)和第二关闭信号(第二BBU_OFF_10)后的逻辑运算结果: 
Figure BDA0000393395060000171
表格3 
由此可知,存储***的主电源掉电时,BBU_OFF_10的运算结果会从高电平变为低电平,当备用电源34通过节点1获得的采样信号5由低电平变为高电平时代表第一关闭信号跳变到高阻态,当备用电源34通过节点2获得的采样信号6由低电平变为高电平时代表第二关闭信号跳变到高阻态,当第一关闭信号跳变到高阻态后,第二关闭信号跳变到高阻态时,BBU_OFF_10会从低电平变为高电平,此时可结束备用电源34的供电操作。 
方式四,备用电源34检测出第一关闭信号出现由低电平到高阻态的跳变后,若检测到第二关闭信号出现由低电平到高阻态的跳变,结束供电操作。 
图8为备用电源34结束供电操作的再一种实现方案,其中,备用电源34分别与第一控制器32和第二控制器33建立连接,通过第一控制器32芯片串口与下拉电阻R3的节点3进行第一关闭信号(第一BBU_OFF_10)的信号采样,通过第二控制器33芯片串口与下拉电阻R4的节点4进行第二关闭信号(第二BBU_OFF_10)的信号采样。由于第一缓存的数据全部被写入存储器35后,第一控制器32芯片串口输出的第一关闭信号出现由低电平到高阻态的跳变,第二 缓存的数据全部被写入存储器35后,第二控制器33芯片串口输出的第二关闭信号出现由低电平到高阻态的跳变,可将本实现方案规定为第一关闭信号于第二关闭信号的与逻辑检测方式: 
当第一缓存的数据全部被写入存储器35,并且第二缓存的数据未全部被写入存储器35时,备用电源34通过第一控制器32芯片串口与下拉电阻R3的节点3获得采样信号7,该采样信号7为低电平,并认为检测到第一控制器32芯片串口发送的第一关闭信号跳变到高阻态,同时,备用电源34通过第二控制器33芯片串口与下拉电阻R4的节点4获得采样信号8,该采样信号8为低电平,并认为检测到第二控制器33芯片串口发送的第二关闭信号未跳变到高阻态,当前不能结束供电;当第二缓存的数据全部被写入存储器35时,备用电源34通过第二控制器33芯片串口与下拉电阻R4的节点4获得采样信号8,该采样信号8为低电平,此时认为第二控制器33芯片串口发送的第二关闭信号跳变到高阻态,则根据第一关闭信号和第二关闭信号的变化情况判断出当前可以结束供电操作,并结束供电操作。 
可参照表格4,其中BBU_OFF_10为备用电源34同时检测第一关闭信号(第一BBU_OFF_10)和第二关闭信号(第二BBU_OFF_10)后的逻辑运算结果: 
Figure BDA0000393395060000181
表格4 
由此可知,存储***的主电源掉电时,BBU_OFF_10的运算结果会从低电平变为高电平,当备用电源34通过节点3获得的采样信号7由低电平变为低电平时代表第一关闭信号跳变到高阻态,当备用电源34通过节点4获得的采样信号8由低电平变为低电平时代表第二关闭信号跳变到高阻态,当第一关闭信号跳变到高阻态后,第二关闭信号跳变到高阻态时,BBU_OFF_10会从高电平变为低 电平,此时可结束备用电源34的供电操作。 
以上的逻辑运算可以包括与运算等多种逻辑运算及组合逻辑运算,本发明实施例对此不作限制。 
本发明实施例提供的存储***中,备用电源34中各个执行部分可以为硬件装置,如元器件及相关电路,同时也可以为集成于计算机、芯片的软件装置,本发明实施例对备用电源34的实现方式不加以限定。 
本发明例的存储***采用的备用电源34的结构实现方式可不仅限于前述的四个模块,还可以有更多用于实现根据第一关闭信号和第二关闭信号结束供电操作的内部结构装置,本发明实施例不限定于实施例中所提供的结构装置。 
本发明实施例提供的存储***中采用的存储器35为非易失性储存介质,如只读存储器(Read-only Memory,ROM)、可编程只读存储器(Programmable Read-only Memory,PROM)、电可改写只读存储器(Electrically Alterable Read-Only Memory,EAROM)、可擦可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、闪存(Flash Memory)等,以保证写入的数据的安全。 
进一步的,根据实际的使用需求,本发明实施例所提供的存储***中可以采用多于两个控制器。当存储***中的主电源31掉电时,***中多个控制器可以以同样的方式实现缓存数据备份以及***恢复工作,相应地,当备用电源35受到多个控制器控制时,可根据实际情况设置信号处理方法,以结束供电操作。 
本发明实施例提供的存储***中,主电源恢复时,第一控制器和第二控制器中任一先完成掉电处理方法中下电操作的控制器均可以利用主电源发起上电操作,及时地使恢复正常工作;其中,在存储***恢复正常工作后,第二控制器可继续将第二缓存的数据全部写入存储器,以保证缓存数据安全可靠;本发明实施例的存储***中,备用电源同时受第一控制器和第二控制器控制,根据第一控制器发送的第一关闭信号和第二控制器发送的第二关闭信号实现备用电源的供电操作控制;本发明实施例的存储***保证了缓存数据安全可靠的同时,能够及时地恢复正常工作,提高了的恢复能力和可靠性。 
可一并参照图5所示的流程图,该流程图展示了本发明实施例的存储*** 执行掉电处理方法的步骤,其可包括: 
步骤S510,主电源31掉电。其中,主电源31掉电可能为主电源31故障以及线路故障等,发生掉电事件时,由备用电源34对存储***中执行掉电处理流程的部分进行供电。 
步骤S511,第一控制器32将第一缓存的数据写入存储器35。 
步骤S512,第二控制器33将第二缓存的数据写入存储器35。 
步骤S513,是否第一缓存的数据全部写入存储器35。其中,若判断出第一控制器32已经将第一缓存的数据全部写入存储器35,则继续执行步骤S515;若判断出第一控制器32未写入完毕,则返回执行步骤S513。 
步骤S514,是否第二缓存的数据全部写入存储器35。其中,若判断出第二控制器33已经写入完毕,则继续执行步骤S518;若判断出第二控制器33未写入完毕,则返回执行步骤S512。 
步骤S515,第一控制器32发送第一关闭信号至备用电源34。 
步骤S516,第一控制器32完成下电操作。 
步骤S517,第一控制器32发起上电操作。其中,若本步骤先于步骤S5110执行,则本步骤第一控制器32发起的上电操作可用于恢复存储***的正常工作。 
步骤S518,第二控制器33发送第二关闭信号至备用电源34。 
步骤S519,第二控制器33完成下电操作。 
步骤S5110,第二控制器33发起上电操作。其中,若本步骤先于步骤S517执行,则本步骤第二控制器33发起的上电操作可用于恢复存储***的正常工作。 
步骤S5111,根据第一关闭信号和第二关闭信号判断备用电源34是否关闭。其中,若根据第一关闭信号和第二关闭信号判断出备用电源34需要结束供电,则继续执行步骤S5111;若根据第一关闭信号和第二关闭信号判断出备用电源34暂不能结束供电,则返回执行步骤S511。其中,判断备用电源34是否需要结束供电的方法可参照前述的实施例所提供的方法。 
步骤S5112,备用电源34关闭。 
步骤S5113,结束。 
本发明实施例提供的存储***中,主电源恢复时,第一控制器和第二控制器中任一先完成掉电处理方法中下电操作的控制器均可以利用主电源发起上电操作,及时地使恢复正常工作;其中,在存储***恢复正常工作后,第二控制 器可以继续将第二缓存的数据全部写入存储器,以保证缓存数据安全可靠;本发明实施例的存储***中,备用电源同时受第一控制器和第二控制器控制,根据第一控制器发送的第一关闭信号和第二控制器发送的第二关闭信号实现备用电源的供电操作控制;本发明实施例的存储***保证了缓存数据安全可靠的同时,能够及时地恢复正常工作,提高了的恢复能力和可靠性。 
图4为本发明实施例提供的控制器的结构示意图,该图所示的控制器可以为前述步骤中第一控制器和第二控制器中任一种,本发明实施例提供的控制器可以包括:处理器41、发送器42、存储器43,接收器44、通信接口45以及总线46。其中,处理器41、发送器42、存储器43、接收器44以及通信接口45之间可通过总线46连接并通信。 
处理器41,用于当主电源掉电时,利用备用电源执行将存储器42缓存的数据写入外部的存储器的操作。还用于当主电源恢复供电时,利用主电源发起上电操作。其中,处理器41可以是中央处理器(Central Processing Unit,CPU)、专用集成电路(Application-specific Integrated Circuit,ASIC)等,存储器43可以包括随机存取存储器(random access memory,RAM),只读存储器(read-only memory,ROM)等具有存储功能的实体。 
发送器42,用于向备用电源发送关闭信号,以使控制器完成下电操作。 
存储器43,用于存储数据。 
接收器44,用于接收主电源的供电; 
通信接口45,用于与外部设备通信,例如,与备用电源之间的通信; 
本发明实施例的控制器,可在主电源掉电时,将其中缓存的数据写入外部的储存器中,并在将缓存的数据完全写入外部的存储器后,参与备用电源的关闭,并执行下电操作,当主电源恢复供电后,能够利用主电源发起上电操作,及时恢复存储***的正常工作,本发明实施例的控制器以多个的形式存在于存储***时,任一控制器执行下点操作后均可以利用主电源发起上电操作,本发明实施例的控制器提高了存储***的恢复能力和可靠性。 
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现 时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘(Disk)和碟(disc)包括压缩光碟(CD)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟。上面的组合也应当包括在计算机可读介质的保护范围之内。 
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。 

Claims (10)

1.一种存储***的掉电处理方法,其特征在于,所述存储***包括主电源、备用电源、第一控制器、第二控制器以及存储器,所述第一控制器包括第一缓存,所述第二控制器包括第二缓存,所述方法包括:
当主电源掉电时,所述第一控制器利用所述备用电源执行将所述第一缓存的数据写入所述存储器的操作,并且,所述第二控制器利用所述备用电源执行将所述第二缓存的数据写入所述存储器的操作;
当所述第一缓存的数据已经全部被写入所述存储器,而所述第二缓存的数据还未被全部写入所述存储器时,所述第一控制器向所述备用电源发送第一关闭信号,以使所述第一控制器完成下电操作;
当所述主电源恢复供电时,所述第一控制器利用所述主电源发起上电操作。
2.根据权利要求1所述的方法,其特征在于,还包括:
当所述第二缓存的数据全部写入所述存储器时,所述第二控制器向所述备用电源发送第二关闭信号,以使所述第二控制器完成下电操作;
所述第二控制器利用所述主电源发起上电操作。
3.根据权利要求2所述的方法,其特征在于,还包括:
所述备用电源根据所述第一关闭信号以及所述第二关闭信号结束供电操作。
4.根据权利要求3所述的方法,其特征在于,所述备用电源根据所述第一关闭信号以及所述第二关闭信号结束供电操作包括:
当所述第一关闭信号出现上升沿后,若检测到所述第二关闭信号出现上升沿,所述备用电源结束供电操作;或
当所述第一关闭信号出现下降沿后,若检测到所述第二关闭信号出现下降沿,所述备用电源结束供电操作。
5.根据权利要求3所述的方法,其特征在于,所述备用电源根据所述第一关闭信号以及所述第二关闭信号结束供电操作包括:
当所述第一关闭信号出现由高电平到高阻态的跳变后,若检测到所述第二关闭信号出现由高电平到高阻态的跳变,所述备用电源结束供电操作;或
当所述第一关闭信号出现由低电平到高阻态的跳变后,若检测到所述第二关闭信号出现由低电平到高阻态的跳变,所述备用电源结束供电操作。
6.一种存储***,其特征在于,所述存储***包括主电源、备用电源、第一控制器、第二控制器以及存储器,所述第一控制器包括第一缓存,所述第二控制器包括第二缓存,其中:
所述第一控制器,用于当所述主电源掉电时,利用所述备用电源执行将所述第一缓存的数据写入所述存储器的操作;
所述第二控制器,用于当所述主电源掉电时,利用所述备用电源执行将所述第二缓存的数据写入所述存储器的操作;
所述第一控制器,还用于当所述第一缓存的数据已经全部被写入所述存储器,而所述第二缓存的数据还未被全部写入所述存储器时,向所述备用电源发送第一关闭信号,完成所述第一控制器的下电操作;当所述主电源恢复供电时,还用于利用所述主电源发起上电操作。
7.根据权利要求6所述的存储***,其特征在于:当所述第二缓存的数据全部写入所述存储器时,所述第二控制器还用于向所述备用电源发送第二关闭信号,完成所述第二控制器的下电操作;还用于利用所述主电源发起上电操作。
8.根据权利要求7所述的存储***,其特征在于:
所述备用电源,还用于根据所述第一关闭信号以及所述第二关闭信号结束供电操作。
9.根据权利要求8所述的存储***,其特征在于:
所述备用电源,具体用于当检测到所述第一关闭信号出现上升沿后,若检测到所述第二关闭信号出现上升沿,则结束供电操作;或
当检测到所述第一关闭信号出现下降沿后,若检测到所述第二关闭信号出现下降沿,则结束供电操作。
10.根据权利要求8所述的存储***,其特征在于:
所述备用电源,具体用于当检测到所述第一关闭信号出现由高电平到高阻态的跳变后,若检测到所述第二关闭信号出现由高电平到高阻态的跳变,所述备用电源结束供电操作;或
当检测到所述第一关闭信号出现由低电平到高阻态的跳变后,若检测到所述第二关闭信号出现由低电平到高阻态的跳变,所述备用电源结束供电操作。
CN201310469593.1A 2013-10-10 2013-10-10 一种存储***的掉电处理方法及*** Active CN103678178B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310469593.1A CN103678178B (zh) 2013-10-10 2013-10-10 一种存储***的掉电处理方法及***
PCT/CN2014/076712 WO2015051633A1 (zh) 2013-10-10 2014-05-04 一种存储***的掉电处理方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310469593.1A CN103678178B (zh) 2013-10-10 2013-10-10 一种存储***的掉电处理方法及***

Publications (2)

Publication Number Publication Date
CN103678178A true CN103678178A (zh) 2014-03-26
CN103678178B CN103678178B (zh) 2017-06-09

Family

ID=50315803

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310469593.1A Active CN103678178B (zh) 2013-10-10 2013-10-10 一种存储***的掉电处理方法及***

Country Status (2)

Country Link
CN (1) CN103678178B (zh)
WO (1) WO2015051633A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015051633A1 (zh) * 2013-10-10 2015-04-16 华为技术有限公司 一种存储***的掉电处理方法及***
CN105938447A (zh) * 2015-03-06 2016-09-14 华为技术有限公司 数据备份装置及方法
WO2016141817A1 (zh) * 2015-03-06 2016-09-15 华为技术有限公司 数据备份装置及方法
CN106663962A (zh) * 2014-10-21 2017-05-10 株式会社东芝 电源控制装置以及信息处理装置
CN111968694A (zh) * 2020-09-07 2020-11-20 湖南国科微电子股份有限公司 一种数据保护装置、存储设备及存储***
WO2021088259A1 (zh) * 2019-11-08 2021-05-14 苏州浪潮智能科技有限公司 一种备电***的控制***及方法
CN114461547A (zh) * 2021-12-29 2022-05-10 苏州浪潮智能科技有限公司 一种存储***
CN114816023A (zh) * 2022-05-31 2022-07-29 苏州浪潮智能科技有限公司 服务器备电功能优化方法、***、终端及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101710252A (zh) * 2009-12-08 2010-05-19 成都市华为赛门铁克科技有限公司 一种存储***的供电方法和供电装置
WO2012174681A1 (en) * 2011-06-24 2012-12-27 Intel Corporation Techniques for controlling power consumption of a system
CN102929805A (zh) * 2012-10-19 2013-02-13 浪潮电子信息产业股份有限公司 一种存储***缓存数据掉电保护方法
CN103040970A (zh) * 2012-12-23 2013-04-17 徐化利 治疗痢疾中药配方

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458668A (zh) * 2008-12-19 2009-06-17 成都市华为赛门铁克科技有限公司 缓存数据块的处理方法和硬盘
CN103049070B (zh) * 2012-12-27 2015-09-02 加弘科技咨询(上海)有限公司 缓存数据的掉电保护方法及计算机设备
CN103678178B (zh) * 2013-10-10 2017-06-09 华为技术有限公司 一种存储***的掉电处理方法及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101710252A (zh) * 2009-12-08 2010-05-19 成都市华为赛门铁克科技有限公司 一种存储***的供电方法和供电装置
WO2012174681A1 (en) * 2011-06-24 2012-12-27 Intel Corporation Techniques for controlling power consumption of a system
CN102929805A (zh) * 2012-10-19 2013-02-13 浪潮电子信息产业股份有限公司 一种存储***缓存数据掉电保护方法
CN103040970A (zh) * 2012-12-23 2013-04-17 徐化利 治疗痢疾中药配方

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015051633A1 (zh) * 2013-10-10 2015-04-16 华为技术有限公司 一种存储***的掉电处理方法及***
CN106663962A (zh) * 2014-10-21 2017-05-10 株式会社东芝 电源控制装置以及信息处理装置
CN105938447A (zh) * 2015-03-06 2016-09-14 华为技术有限公司 数据备份装置及方法
WO2016141817A1 (zh) * 2015-03-06 2016-09-15 华为技术有限公司 数据备份装置及方法
CN105938447B (zh) * 2015-03-06 2018-12-14 华为技术有限公司 数据备份装置及方法
US10203906B2 (en) 2015-03-06 2019-02-12 Huawei Technologies Co., Ltd. Data backup apparatus and method
WO2021088259A1 (zh) * 2019-11-08 2021-05-14 苏州浪潮智能科技有限公司 一种备电***的控制***及方法
CN111968694A (zh) * 2020-09-07 2020-11-20 湖南国科微电子股份有限公司 一种数据保护装置、存储设备及存储***
CN114461547A (zh) * 2021-12-29 2022-05-10 苏州浪潮智能科技有限公司 一种存储***
CN114461547B (zh) * 2021-12-29 2023-11-14 苏州浪潮智能科技有限公司 一种存储***
CN114816023A (zh) * 2022-05-31 2022-07-29 苏州浪潮智能科技有限公司 服务器备电功能优化方法、***、终端及存储介质
CN114816023B (zh) * 2022-05-31 2023-08-08 苏州浪潮智能科技有限公司 服务器备电功能优化方法、***、终端及存储介质

Also Published As

Publication number Publication date
WO2015051633A9 (zh) 2015-08-13
CN103678178B (zh) 2017-06-09
WO2015051633A1 (zh) 2015-04-16

Similar Documents

Publication Publication Date Title
CN103678178A (zh) 一种存储***的掉电处理方法及***
US7853815B2 (en) Method and apparatus for controlling power supply in a computer system under low power consumption mode
US20220229482A1 (en) Systems and methods for power outage protection of storage device
CN102387022A (zh) 一种以太网供电方法和装置
WO2019104947A1 (zh) ***级芯片、通用串行总线主设备、***及唤醒方法
CN101329632A (zh) 一种使用boot启动cpu的方法与装置
CN101576860A (zh) 测试方法及测试***
CN101286086A (zh) 硬盘掉电保护方法、装置以及硬盘和硬盘掉电保护***
CN103345189A (zh) 一种控制器和一种掉电保护方法
CN105702300A (zh) 一种基于FPGA的NAND Flash容错***
CN104881375A (zh) 存储***掉电数据保护方法和装置
CN104866418A (zh) 自动化测试方法和***
CN110781029A (zh) 断电保护方法及***
CN108491343B (zh) 终端设备、数据传输***及方法
CN102831920B (zh) 供电电路与供电方法
JP3063838U (ja) 自動省電睡眠機能を具えたpcカ―ド
CN116539992A (zh) 存储设备在位稳定状态检测装置、方法、逻辑模块及介质
CN107436671B (zh) 一种掉电保护结构及方法
CN102402447A (zh) 设备启动方法和设备
CN103440217A (zh) 一种基于光耦的单向u盘文件传输设备
CN103049218A (zh) 数据存储方法和控制器
CN104252219A (zh) 供电电路与供电方法
CN1328837C (zh) 税控收款机的电源监控方法
JP5807495B2 (ja) 通信データロガー装置
CN114341769A (zh) 基于功率管理集成电路的***管理总线隔离

Legal Events

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