JP7263067B2 - 情報処理装置および情報処理装置の制御方法 - Google Patents

情報処理装置および情報処理装置の制御方法 Download PDF

Info

Publication number
JP7263067B2
JP7263067B2 JP2019047612A JP2019047612A JP7263067B2 JP 7263067 B2 JP7263067 B2 JP 7263067B2 JP 2019047612 A JP2019047612 A JP 2019047612A JP 2019047612 A JP2019047612 A JP 2019047612A JP 7263067 B2 JP7263067 B2 JP 7263067B2
Authority
JP
Japan
Prior art keywords
storage
information processing
storage connected
processing apparatus
power supply
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
JP2019047612A
Other languages
English (en)
Other versions
JP2020149495A (ja
JP2020149495A5 (ja
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2019047612A priority Critical patent/JP7263067B2/ja
Priority to US16/806,732 priority patent/US11620063B2/en
Publication of JP2020149495A publication Critical patent/JP2020149495A/ja
Publication of JP2020149495A5 publication Critical patent/JP2020149495A5/ja
Application granted granted Critical
Publication of JP7263067B2 publication Critical patent/JP7263067B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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/0683Plurality of storage devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Retry When Errors Occur (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Power Sources (AREA)

Description

本発明は、情報処理装置および情報処理装置の制御方法に関する。
MFP(Multi Function Printer)等の情報処理装置は、装置のプログラムやユーザが保存した設定データや画像データを保存するため、HDDやSSD等の記憶装置を備えている。
これらの記憶装置は、装置内部に専用コントローラと揮発性のキャッシュメモリ、不揮発性の記録メディアを持ち、専用コントローラが不定期にキャッシュメモリ内のデータを記録メディアに書き込んでいる(キャッシュフラッシュ動作)。
これらの記憶装置に対してデータを書き込む際に瞬断や停電が発生した場合、不揮発性メモリのキャッシュ内にデータが残っていて、キャッシュフラッシュ動作が完了する前に電源がOFFされてしまうとデータを失うことになる。
そこで、停電等の電源断時にストレージ内部で不定期に行われているキャッシュフラッシュ動作が失敗してデータが失われないように、キャッシュフラッシュが完了するまでの電源供給を保証する電源断保証回路を搭載する構成が知られている。例えば、先行文献1では、停電等が発生し、かつキャッシュメモリ内にデータがある場合、外部記憶装置の電源ラインを電池等のバックアップ電源に切り替え、キャッシュフラッシュ動作の時間の電源を確保する方法が提案されている。
特開2004-272309号公報
このような、2つ以上のストレージから構成される情報処理装置において、電源断保証回路をすべてのストレージ用の電源に設けると回路規模とコストが増大してしまう。
一方で、片方のストレージには保護したいデータを保存し、もう片方のストレージには保護の必要のないデータを保存するようにデータの配置を行うことで、電源断保証回路を片方のストレージのみに配する構成で済ますことが可能になる。
しかしながら、このような構成において、ストレージの交換などを行った際に誤って電源断保証回路が無い側に保護したいデータを記憶するストレージを配置してしまった場合、停電等の電源断時に保護したいデータが失われるおそれがある。特に保護したいデータが情報処理装置の起動に必要なプログラム等であった場合に、情報処理装置の起動ができない状態になってしまうおそれがある。
本発明の目的は、回路規模と回路コストの削減と、ストレージの入れ替えが発生した場合における保護したいデータの消失の抑制を両立させることである。
本発明は、第1の系に接続されたストレージおよび第2の系に接続されたストレージを制御するストレージ制御手段と、装置に電源を供給する電源供給手段と、前記第1の系に接続されたストレージおよび前記第2の系に接続されたストレージへの電源の供給を制御する電源制御手段と、を有する情報処理装置であって、電源電圧の低下を検知する検知手段と、前記第1の系に配され、前記検知手段が電源電圧の低下を検知した際に前記第1の系に接続されたストレージの動作を維持する保証回路と、を有し、ストレージ制御手段は、前記第1の系に接続されたストレージが前記装置の起動に必要なデータを記憶しないストレージであり且つ前記第2の系に接続されたストレージが前記装置の起動に必要なデータを記憶するストレージである場合に、前記第2の系に接続されたストレージから前記第1の系に接続されたストレージへ少なくとも前記装置の起動に必要なデータをコピーさせることを特徴とする。
本発明によれば、回路規模と回路コストの削減と、ストレージの入れ替えが発生した場合における保護したいデータの消失の抑制を両立させることが可能である。
情報処理装置のブロック図 IOコントローラ200とストレージ300の内部ブロック図 IOコントローラ200がROM202に持つLBA変換テーブル 電源供給部から供給される電源ラインを示したブロック図 前回起動時からストレージが入れ替わった場合の動作を説明するフローチャート 前回起動時からストレージが入れ替わった場合のパーティション構成を示した図 前回起動時からストレージが入れ替わった場合の動作を説明するフローチャート 前回起動時からストレージが入れ替わった場合のパーティション構成を示した図
(実施例1)
図1に、本実施例の情報処理装置全体のブロック図を示す。図1では、情報処理装置を一例として、MFP(Multi Function Printer)のシステム構成で説明する。ただし、この構成に限定するものではなく、複数の記憶装置を備えた構成の情報処理装置であれば適応可能である。
本発明の情報処理装置は、装置全体を制御するメインコントローラ100と、データを保管するストレージ300・310と、原稿をスキャンするスキャナ106と、原稿を印刷するプリンタ108と、操作部109によって構成されている。
次に、メインコントローラ100の詳細構成を説明する。メインコントローラ100は、CPU101、ROM102、RAM103、Network制御部104、スキャン画像処理部105、プリンタ画像処理部107、電源制御部110、電源供給部111、IOコントローラ200により構成されている。
CPU101は、情報処理装置のシステム全体を制御するコントローラであり、システム制御、演算処理、OSやアプリケーションを実行する。具体的には、ROM102から読み出したプログラムをRAM103に展開してCPU101が実行する。
ROM102は、CPU101で実行されるプログラムおよび設定情報を格納している。なお、ROM102は、フラッシュROMであってもよい。
RAM103は、CPU101で実行する制御プログラムを格納したり、一時的なワークエリアとして使用されたりする。
Network制御部104は、ネットワークI/Fであり、情報処理装置内で画像処理を施した画像データをLAN112(Local Area Network)経由で外部情報機器(不図示)に送信する。また、Network制御部104は同様に、外部情報処理装置から画像データを受信する。
スキャン画像処理部105は、スキャナ106から受信した画像データに画像処理を施す。処理された画像データは、IOコントローラ200を経由して、ストレージ300・310のいずれかに保存される。
スキャナ106は、画像入力デバイスであり、原稿となる紙上の画像を照射し、CCDラインセンサ(不図示)を走査する事でラスター・イメージデータ(画像データ)として電気信号に変換する。生成した画像データは。スキャン画像処理部105に送信される。
プリンタ画像処理部107は、受信した画像データに画像処理を施す。処理された画像データはプリンタ108へ送信される。なお、処理された画像データは、一時的にストレージ300またはストレージ310に格納される。そして、格納された該画像データはストレージから読み出されてプリンタ108に送信される。
プリンタ108は、画像出力デバイスであり、処理された画像データを用紙上に画像として印刷する。
操作部109は、表示機能と操作機能を兼ね揃えたタッチパネル等のデバイスであり、入力された画像データを表示する役割とシステム使用者が入力した情報をCPU101に伝える役割を持つ。
電源制御部110は、CPU101からの指示により、情報処理装置内の各部への電源のON/OFFの制御やシーケンス制御を行なっている。
電源供給部111は、電源制御部110からの指示により、外部電源(不図示)からの電力供給を基に、各部へ供給する1つ以上の低圧電源を生成・供給を行なう。
IOコントローラ200は、ストレージ300、310とデータの送受信の制御を行う。本実施例ではSATA(Serial Advanced Technology Attachment)インターフェース規格に準拠して接続機器を制御するコントローラとして説明を行なう。しかし、これに限定するものではなく、PCIe(Peripheral Component Interconnect Express)などの他のインターフェースを用いて接続されていてもよい。
LAN112は、Local Aria Networkであり、情報処理装置と外部情報機器(不図示)との通信を行う為のネットワーク網である。
なお、ストレージ300およびストレージ310は、不揮発性の記憶装置である。以下、例としてストレージ300とストレージ310にフラッシュメモリ(例えばSSD)を用いる構成とするが、磁気デバイスと磁気デバイス、磁気デバイスとフラッシュメモリでもよい。
図2に、IOコントローラ200とストレージ300の詳細構成図を示す。
IOコントローラ200はIO-CPU201、ROM202、RAM203、ストレージI/F部204・205・206から構成され、それぞれ通信バスで接続されている。
IOコントローラ200は、CPU101と、ストレージ300及びストレージ310との間の通信ブリッジとして機能する。
IO-CPU201は、IOコントローラ200のシステム制御、演算処理、ATAコマンド処理を行なう。具体的にはROM202から読み出したプログラムをRAM203に展開してCPU101が実行する。
ROM202は、IO-CPU201の制御プログラムや各種モードの設定値のデータ、接続された配下のストレージの情報を格納する。ROM202は、フラッシュROMであり、書き換え可能である。
RAM203は、IO-CPU201で実行する制御プログラムを格納したり、一時的なワークエリアとして使用されたりする。
ストレージI/F部204は、メインコントローラ100に接続されていて、SATA規格に準拠して、メインコントローラ100内のCPU101と通信する。
ストレージI/F部205は、ストレージ300に接続され、SATA規格に準拠して、ストレージ300と通信を行なう。
ストレージI/F部206は、ストレージ310に接続され、SATA規格に準拠して、ストレージ310と通信を行なう。
IO-CPU201は、ストレージI/F部204を通じてCPU101から来たATAコマンドの受信処理を行なう。さらにIO-CPU201は、ストレージI/F部205や206を通じてストレージ300・310にATAコマンドへの送信処理を行う。
逆にIO-CPU201は、ストレージI/F部205や206を通じてストレージ300や310から来たATAコマンドの受信処理を行う。さらにIO-CPU201は、ストレージI/F部204を通じてCPU101へのATAコマンドの送信処理を行う。
ストレージ300は、ストレージ制御部301とキャッシュメモリ302と記録メディア303で構成され、それぞれ通信バスで接続されている。
ストレージ制御部301は、ストレージ300全体を制御しており、IOコントローラ200との通信を担う。
キャッシュメモリ302は、ストレージ制御部301がIOコントローラ200から受信したデータを一時的に保持するための揮発性の記憶部である。
記録メディア303は、不揮発性の記憶部であり、例としては、磁気ディスクやNAND型のFLASH MEMORYなどである。
記録メディア303が磁気ディスクの場合には、ストレージ300はHDD(Hard Disk Drive)と呼ばれ、記録メディア303がNAND型のFLASH MEMORYの場合には、SSD(Solid State Drive)と呼ばれる。
ストレージ制御部301は、キャッシュメモリ302内データを不揮発性の記録メディア303に不定期に書き込む。この動作がキャッシュフラッシュであり、キャッシュフラッシュはIOコントローラ200とは独立して動作する。
なお、ストレージ310の構成は、ストレージ300の構成と同様であるため説明は省略する。
さらに、IO-CPU201の動作を詳細に説明する。
IO-CPU201は配下のストレージ300及びストレージ310からストレージ情報を取得し、ROM202に保存し管理する。IO-CPU201が取得するストレージ300・310の情報の一例としてはS.M.A.R.T.(Self-Monitoring Analysis and Reporting Technology)の情報がある。
またIO-CPU201は、CPU101からの書き込みコマンドの宛先LBAからストレージ300かストレージ310のどちらに書き込みコマンドを送信するかの判断を行なう。
IO-CPU201は、図3に例として示すアドレス変換テーブルをROM202から読み出して参照する。アドレス変換テーブルは、メインCPUから受信したLBA(論理アドレス)と、コマンド送信先のストレージおよび送信先ストレージLBA(物理アドレス)を対応付けて記憶している。さらに、ストレージ300として用いたストレージのシリアル番号、ストレージ310として用いたストレージのシリアル番号を記憶している。アドレス変換テーブルは、書き換え可能である。
IO-CPU201は、このテーブルに則ってストレージ300かストレージ310のどちらに書き込みコマンドを送信するかの判断を行なう。例えば、CPU101からLBA(Logical Block Addressing)の0xAAAAから0xBBBBへの書き込みコマンドが送信されてきた場合、ストレージ300のLBA(0xXXXXから0xYYYY)にアドレス変換し、ストレージ300へ書き込みコマンドを送信する。
図4に情報処理装置の各部への電源供給や、その電源供給指示がどのように行われるかの概略を示したブロック図である。図内においては、実線矢印は通信ラインを、破線矢印は電源ラインを意図している。
情報処理装置の電源シーケンスは電源制御部110によって制御されており、CPU101と接続し、CPU101の指示に従って動作する。
電源供給部111は、電源制御線401によって電源制御部110に接続し、電源制御部110の指示に従って外部電源402から供給された電力を基に複数の低圧電源を生成する。
電源供給部111から各デバイスに対して、電源ライン403、電源ライン404、電源ライン405、電源ライン407を通じて電圧が供給される。
電源断保証回路410は、電源ライン408を介してストレージ300へ電圧を供給、又は電圧を維持する。なお、以下の説明において、IOコントローラ200のストレージの接続の系において、電源断保証回路410による電圧保証がある系に接続されたストレージをストレージ300とする。電源断保証回路410による電圧保証がない系に接続されたストレージをストレージ310とする。
次に電源断保証回路410がどのようにストレージ300への電圧供給または電圧維持を行なうかの例を説明する。
通常動作時、電源断保証回路410は電源供給部111から供給される電源ライン407をそのままストレージ300へ供給する。
停電などによって外部電源402が瞬間的にでも停止してしまった場合、まず、電源制御部110は、外部電源402の電圧低下を検知し、電源供給部111に電源制御線401を通じて通知する。さらに、電源制御部110は電源断保証回路410へ電源断が発生した旨を通知し、CPU101へ電源断が発生した旨を通知する。なお、ここでは電源制御部110が、電源電圧の低下を検知する電源監視部を含む構成を示したが、電源制御部110とは別に電源電圧を監視する電源電圧監視部を配してもよい。その場合には、電源電圧監視部が、外部電源402の低下を検知すると電源制御部110に通知する。
CPU101は、電源制御部110から電源断が発生したと通知がIOコントローラ200を介してストレージにキャッシュフラッシュ動作を開始させるための指示を出す。
電源断保証回路410は、電源制御部110から電源断が発生したと通知がきたら停電時用の電源供給(不図示)へ切り替え、電源ライン408を介してストレージ300へ電源供給する。
ここでいう停電時用の電源供給の方法とは、キャパシタや電池等に充電していた電源へ切り替えて電源断時のキャッシュフラッシュ完了までの電源を供給する方法でもよい。さらにストレージ300のための電源ライン408と他の部分への電源ラインをスイッチで切り離す(遮断する)ことにより、ストレージ300に残りの電力(電荷)を使用させることでキャッシュフラッシュ完了まで可能な限り電源を維持する方法でもよい。すなわち、電源断が発生した時からライトフラッシュ動作が完了するまでの電力供給を保証させる方法であれば、これらの方法に限定するものではない。
これらの方法によって、IOコントローラ200が配下のストレージ300に対して書き込み指示を実行した後で電源断が発生しても、ストレージ300は、キャッシュフラッシュ動作を完了することが可能となる。
図5は、本実施例において情報処理装置が起動した際に、CPU101が行なう動作を説明するためのフローチャートである。
S501にて、CPU101は、ストレージ300として接続されているストレージとストレージ310として接続されているストレージのデバイスの型名とシリアルNoを問い合わせるコマンドをIOコントローラ200に送信する。言い換えると、電圧保証のある系に接続されているストレージと、電圧保証のない系に接続されているストレージのデバイスの型名とシリアルNoを問い合わせるコマンドをIOコントローラ200に送信する。
S502にて、CPU101は、ROM102に保存されている前回起動した際に接続されていたストレージデバイス情報から、今回接続されているストレージ300、ストレージ310の少なくとも一方が変更されたか否かを判断する。
ストレージが前回起動時から変更されている場合(S502でYes)、処理をS503に進める。ストレージが前回起動時から変更されていない場合(S502でNo)、起動処理を終了する。
S503にて、CPU101は、IOコントローラ200へROM202に保存されている前回起動時の書き込み・読み出し時のLBAの変換テーブル情報を問い合わせる。
S504にて、CPU101はROM102に保存されている前回起動時のストレージのシリアルNoに対応し設定されていたパーティションテーブルを取得する。なお、通常、パーティションテーブルは各々のストレージ内のパーティションテーブル専用の領域(不図示)に保存されるように標準規格で定められている。このROM102に保存されているパーティションテーブルは、このような通常のストレージ内のパーティションテーブル情報と、そのストレージのシリアルNoを紐付けた形でROM102に保存している。
S511にて、CPU101は、S501、S503、S504で取得したストレージの情報と、LBAの変換テーブルとを比較する。それによってパーティションテーブルから、保護対象のデータが存在するストレージが、ストレージ300として接続されているかを判断する。具体的には、前回の起動で、ストレージ300として接続されていたストレージがストレージ300の側に(電圧保証のある系に)接続されているか否かをストレージのシリアル番号から判断する。
保護対象のデータが存在するストレージがストレージ300として接続されている場合(S511でYES)には、フローを終了する。一方、保護対象のデータが存在するストレージがストレージ300として接続されていない場合(S511でNO)には、S505に処理を進める。
S505にて、CPU101は、S501、S503、S504で取得したストレージの情報とLBAの変換テーブルとパーティションテーブルから、保護対象のデータが存在するストレージがストレージ310として接続されているかを判断する。具体的には、前回の起動でストレージ300として接続されていたストレージが、ストレージ310の側(電圧保証がない系)に接続されているか否かをストレージのシリアル番号から判断する。
保護対象のデータが存在するストレージが、ストレージ310として接続されていると判断した場合(S505でYes)、S506へ処理を進める。保護対象のデータが存在するストレージが、ストレージ310として接続されていないと判断した場合(S505でNo)、処理をS510へ進める。
なお、図4の説明したように電源断保証回路410がストレージ300の側に存在することが前提である。電源断保証回路410がストレージ310の側に存在する場合、ステップS505は、「保護対象のデータが存在するストレージがストレージ300側に接続されているか?」となる。
S506にて、CPU101は、少なくともデータの一部をストレージ310からストレージ300にコピーする。ここでコピーするデータとは、具体的には、少なくともファームやアプリケーションのデータである。ファームやアプリケーションのデータはMFPの一部動作に必要なデータであり、最低限ユーザにエラー状態等を表示させるのに必要なデータであるため、ストレージ300にコピーを残す。
また、さらにユーザがMFPのプリントやスキャン等の一部の機能のみが使える縮退モードで動作するための、設定値のデータ等もコピーして、MFPの一部を動作させることも可能である。そのため、ここでコピーするデータは、これらに限定するものではない。
S507にて、CPU101は、ストレージ310を安全にシャットダウンさせる。具体的には、CPU101はシステムからストレージ310との接続を切断(アンマウント)を行ない、ストレージ310への読み書き処理やキャッシュフラッシュ動作が発生しない状態にする。その後CPU101は、電源制御部110を制御しストレージ310用の電源をOFFする。
S508にて、CPU101はストレージ300のみで縮退動作を開始し、UI(操作部109)に、縮退動作中である旨と、ストレージ300と310が入れ替わって接続されているので正しく接続し直すように促すメッセージを表示する。
S509にて、CPU101はIOコントローラ200のROM202へLBAの変換テーブルを保存するように指示を行なう。さらにCPU101はROM102に今回のストレージの型名・シリアルNoに対応し設定されたパーティションとLBAの対応テーブルを保存し、処理を終了する。
なお、S505のYesの処理フローを経て終了すると、MFPは一部の機能のみが使用可能な縮退動作状態となる。その状態は上述したようにS506でコピーした内容によってどこまでの機能が使えるかが変わってくる。
S510にて、CPU101は、操作部109に保護対象のデータが保存されているストレージが接続されていないので正常に起動できない旨のメッセージを表示し、処理を終了する。
次に図6を用いて前回起動時からストレージが入れ替わらない場合のパーティション構造、ストレージが入れ変わった場合のパーティション構造および本願を適用後のパーティション構造の一例を説明する。
図6(A)は前回起動時に正常に起動している状態でのストレージ300とストレージ310のデータパーティション構成の一例である。ストレージ300には、シリアル番号AAAのストレージ(以下、ストレージAAA)、ストレージ310にはシリアル番号BBBのストレージ(ストレージBBB)が接続されている。ストレージAAAとストレージBBBは、同じ容量でも異なる容量でもよい。
ストレージ300であるストレージAAAにはファーム/アプリ領域、設定値保存領域、ユーザデータ領域のパーティションが割り当てられている。ファーム/アプリ領域は情報処理装置のシステムが動作するのに必要なファーム/アプリの動作やデータ展開に使用する領域であり、情報処理装置の動作に必要な領域である。設定値保存領域はユーザが情報処理装置へ設定を行なった機器設定値等が保存される領域である。ユーザデータ領域はユーザBOXへ保存した原稿画像データ等が保存される領域である。
一方でストレージ310であるストレージBBBにはTemp画像領域が割り当てられている。Temp画像領域は情報処理装置がコピー動作やプリント動作やスキャン動作する際に、一時的に保存される画像の領域である。また、Temp画像領域は情報処理装置のコピー動作やプリント動作やスキャン動作を高速動作させたい場合には高速な読み書きが必要な画像領域である。
つまり、起動に必要なファーム/アプリ領域や設定値保存領域を有するストレージAAAは、電源断保証回路410の側に接続されている。そのため、万が一ストレージAAAへの書き込み中に停電による電源断が発生してしまった場合でも、キャッシュフラッシュするのに必要な時間分の電力の供給が保障されるので、キャッシュフラッシュが失敗してデータが失われないよう保護される。一方、電源断保証回路410がない側に接続されているストレージBBBは、電源断が発生した場合にキャッシュフラッシュが失敗してデータが失われる可能性がある。
図6(B)は、情報処理装置の次の起動時に2つのストレージが入れ替えられて接続されていた場合のストレージAAAとストレージBBBのパーティションの構成の一例である。ここでは、ストレージが入れ替わる例を示すが、もともと電源断保証回路がある側に接続されていたストレージが、電源断保証回路が無い側に接続されればよい。つまり、電源断保証回路がある側にストレージAAAではないストレージが接続された場合であればよい。
図6(B)において、電源断保証回路410がある側にはストレージBBBが接続されている。つまり、ストレージ300としてストレージBBBが用いられる。そのため、ストレージ300には、Temp画像領域が割り当てられている。
電源断保証回路410が無い側にはストレージAAAが接続されている。つまり、ストレージ310としてストレージAAAが用いられる。そのため、ストレージ310には、ファーム/アプリ領域、設定値保存領域、ユーザデータ領域のパーティションが割り当てられている。
この状態では電源断保証回路410が無い側にファーム/アプリ領域、設定値保存領域、ユーザデータ領域のパーティションを有するストレージAAAが割り当てられている。そのため、もしストレージ310への書き込み中に停電による電源断が発生してしまった場合、キャッシュフラッシュが間に合わないとデータを失う可能性がある状態になっている。
そこで本実施例の構成では、データの一部を、ストレージ310であるストレージAAAからストレージ300であるストレージBBBへコピーを行なう。その構成を図6(C)に示す。
図6(C)において、ストレージ310であるストレージAAAからファーム/アプリ領域と設定値保存領域をストレージ300であるストレージBBBに新たなパーティションとしてコピーしている。そしてストレージBBBの残りの領域をTemp画像領域として再構成している。このようにパーティションごとコピーを行なった場合、ストレージ300のパーティション構成が変更になるので、その内容はストレージ300内に保存される標準のパーティションテーブルも変更されることはいうまでもない。
なお、図6(B)(C)に示したようにストレージが起動前と起動後で入れ替えられた場合に、S508でUI(操作部109)に表示された正しく接続しなおす旨のメッセージを見て、ユーザが入れ替えられたストレージを元の状態に戻すとする。(図6(A)に戻す)
この場合、接続し直されたストレージ300(ストレージAAA)のファーム/アプリ領域・設定値領域のデータを使用し、MFPを起動することになる。さらに、接続し直された元のストレージ310(ストレージBBB)には元々Temp領域のみが保存されていた状態であったが、ファーム/アプリ領域・設定値領域が保存されていることになる。さらに、コピー元のストレージAAAのファーム/アプリ領域・設定値領域のデータから更新があった場合には、その内容をコピー元のストレージAAAのファーム/アプリ領域・設定値領域へ保存を行なってもよい。
これにより、図6(C)の入れ替えられた状態から、ストレージを元の状態、すなわち図6(A)の状態に接続し直されることで、通常通り情報処理装置を動作可能である。
以上述べたように、本実施例によれば、回路規模と回路コストの削減と、ストレージの入れ替えが発生した場合における保護したいデータの消失の抑制を両立させることである。
(実施例2)
次に実施例2について図7及び図8を用いて説明する。実施例1では、保護対象のデータが存在するストレージがストレージ310として接続されている場合に、電源断保証回路410を介して電源が供給されるストレージ300へ一部の重要なデータのみをコピーしている。しかし実施例2では、保護対象のデータが存在するストレージがストレージ310として接続されている場合に、電源断保証回路410を介して電源が供給されるストレージ300にすべてのデータをコピーする。そして、ストレージ310のパーティションを再構成することでストレージ300とストレージ310のデータの中身を入れ替える。
なお、図1~図4に記載の箇所は実施例1と同様であるため、ここでは説明を省略する。また、実施例1と同様の構成には同様の番号を付し、説明を省略する。
図7は、情報処理装置が起動した際に、CPU101が行なう動作を説明するためのフローチャートである。図5と図7の違いはS506~S508での処理の違いだけであり、そのほかのステップでは同じフローであるため、説明を省略する。
S706にてCPU101はストレージ310のすべてのデータをストレージ300へコピーを行なう。
ストレージ310のすべてのデータをストレージ300へコピーし終わったら、S707にて、CPU101はストレージ310のパーティションをTemp画像領域として再構成する。S706とS707を行なうことにより、ストレージ300とストレージ310の中身のデータの入れ替えることになる。
S708にて、CPU101は前回起動時と比してストレージ300とストレージ310が入れ替えられたためパーティションの入れ替えを行なってシステムを修復した旨を操作部109に表示する。
つまり図7にて、S505のYesの処理フローを経て終了すると、MFPは全ての機能が使用可能な、正常な状態に修復されたことになる。
次に図8を用いて、前回起動時からストレージが入れ替わらない場合のパーティション構造、ストレージが入れ変わった場合のパーティション構造および本実施例を適用後のパーティション構造の一例を説明する。
図8(A)は前回起動時に正常に起動している状態でのストレージ300とストレージ310のデータパーティション構成の一例であり、図6(A)と同様であるため説明は省略する。
図8(B)は今回の起動時に2つのストレージが入れ替えられて接続されてしまった状態のストレージ300とストレージ310のパーティションの構成の一例であり、図8(B)と同様であるため説明は省略する。
図8(C)はCPU101が、S706でストレージ310のデータの全てを、ストレージ300へコピーを行なった状態の一例である。ここでは、ストレージ全体のコピーを行なっており、全てのパーティションごとコピーを行なっているので、ストレージ300内の標準のパーティションテーブルも変更されることになるのはいうまでもない。
図8(D)はCPU101がS707でストレージ310をTemp画像領域としてパーティションを再構成した状態の一例である。
この状態では、図8(A)からストレージ自体は入れ替わっているが、データの中身は図8(A)と同じ状態に戻っており、重要なデータが保存されているストレージを電源断保証回路410から電源供給される状態になっている。
以上述べたように、本実施例によれば、回路規模と回路コストの削減と、ストレージの入れ替えが発生した場合における保護したいデータの消失の抑制を両立させることである。さらに本実施例によれば、ストレージ自体が入れ替えられてしまっても、データの中身は入れ替えられる前の元々の状態に戻っている。そのため、ストレージを再度入れ替えずにそのまま情報処理装置の動作を継続することが可能となる。
(その他の実施形態)
以上、本発明の様々な例と実施形態を示して説明したが、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるものではない。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 メインCPU
110 電源制御部
111 電源供給部
200 IO
300 ストレージ
310 ストレージ
410 電源断保証回路

Claims (20)

  1. 第1の系に接続されたストレージおよび第2の系に接続されたストレージを制御するストレージ制御手段と、装置に電源を供給する電源供給手段と、前記第1の系に接続されたストレージおよび前記第2の系に接続されたストレージへの電源の供給を制御する電源制御手段と、を有する情報処理装置であって、
    電源電圧の低下を検知する検知手段と、
    前記第1の系に配され、前記検知手段が電源電圧の低下を検知した際に前記第1の系に接続されたストレージの動作を維持する保証回路と、を有し、
    ストレージ制御手段は、
    前記第1の系に接続されたストレージが前記装置の起動に必要なデータを記憶しないストレージであり且つ前記第2の系に接続されたストレージが前記装置の起動に必要なデータを記憶するストレージである場合に、前記第2の系に接続されたストレージから前記第1の系に接続されたストレージへ少なくとも前記装置の起動に必要なデータをコピーさせることを特徴とする情報処理装置。
  2. 前記ストレージ制御手段は、前記第2の系に接続されたストレージから前記第1の系に接続されたストレージへコピーさせた前記装置の起動に必要なデータを用いて、前記情報処理装置の一部の機能を動作することを特徴とする請求項1に記載の情報処理装置。
  3. 前記電源制御手段は、前記装置の起動に必要なデータをコピーした後で前記第2の系に接続されたストレージへの電源の供給を停止することを特徴とする請求項2に記載の情報処理装置。
  4. ユーザに情報を通知する通知手段をさらに有し、
    前記通知手段は、前記情報処理装置の一部の機能が動作可能である旨をユーザに通知することを特徴とする請求項2または3に記載の情報処理装置。
  5. 前記第1の系に接続されたストレージと前記第2の系に接続されたストレージが前記装置の起動に必要なデータを記憶しないストレージである場合、前記情報処理装置を起動できない旨を前記通知手段が通知することを特徴とする請求項4に記載の情報処理装置。
  6. 前記装置の起動に必要なデータは、ファーム及びアプリケーションのデータであることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 前記第1の系に接続されたストレージが前記装置の起動に必要なデータを記憶しないストレージであり且つ前記第2の系に接続されたストレージが前記装置の起動に必要なデータを記憶するストレージである場合に、前記第2の系に接続されたストレージから前記第1の系に接続されたストレージへさらに設定値に関するデータをコピーすることを特徴とする請求項6に記載の情報処理装置。
  8. 前記ストレージ制御手段は、
    前記第1の系に接続されたストレージが前記装置の起動に必要なデータを記憶しないストレージであり且つ前記第2の系に接続されたストレージが前記装置の起動に必要なデータを記憶するストレージである場合に、前記第2の系に接続されたストレージに記憶された全てのデータを前記第1の系に接続されたストレージにコピーさせることを特徴とする請求項1または2に記載の情報処理装置。
  9. 前記ストレージ制御手段は、
    前記第1の系に接続されたストレージに記憶された全てのデータを前記第2の系に接続されたストレージにコピーさせることを特徴とする請求項8に記載の情報処理装置。
  10. ユーザに情報を通知する通知手段をさらに有し、
    前記通知手段は、前記第1の系に接続されたストレージに記憶されたデータと前記第2の系に接続されたストレージに記憶されたデータとを入れ替えた旨を通知することを特徴とする請求項8または9に記載の情報処理装置。
  11. ストレージのシリアル番号とストレージが接続する系を記憶する記憶手段と、
    前記第1の系及び前記第2の系に接続されたストレージを特定する特定手段と、を更に有し、
    前記特定手段は、前記情報処理装置の前回の起動において前記第1の系に接続されていたストレージのシリアル番号と、前記情報処理装置の今回の起動において前記第1の系に接続されているストレージのシリアル番号を比較し、シリアル番号が異なることで前記第1の系に接続されているストレージが前記装置の起動に必要なデータを記憶しているストレージではないと特定することを特徴とする請求項1乃至10のいずれか1項に記載の情報処理装置。
  12. 前記特定手段は、前記情報処理装置の前回の起動において前記第1の系に接続されていたストレージのシリアル番号と、前記情報処理装置の今回の起動において前記第2の系に接続されているストレージのシリアル番号を比較し、シリアル番号が同じ場合に前記第2の系に接続されているストレージが前記装置の起動に必要なデータを記憶するストレージであると特定することを特徴とする請求項11に記載の情報処理装置。
  13. 前記特定手段は、前記情報処理装置の前回の起動において前記第2の系に接続されていたストレージのシリアル番号と、前記情報処理装置の今回の起動において前記第1の系に接続されているストレージのシリアル番号を比較し、シリアル番号が同じ場合に前記第1の系に接続されているストレージが前記装置の起動に必要なデータを記憶していないストレージであると特定することを特徴とする請求項11または12に記載の情報処理装置。
  14. 前記情報処理装置の前回の起動において前記第2の系に接続されていたストレージは、コピー動作に関するデータを記憶したストレージであることを特徴とする請求項13に記載の情報処理装置。
  15. 前記第2の系には、前記保証回路が配されないことを特徴とする請求項1乃至14のいずれか1項に記載の情報処理装置。
  16. 前記保証回路は、前記検知手段が電源電圧の低下を検知することによって前記第1の系に接続されたストレージと前記電源供給手段の接続を遮断する回路を有することを特徴とする請求項1乃至15のいずれか1項に記載の情報処理装置。
  17. 前記保証回路は、電荷を保持するキャパシタを有することを特徴とする請求項1乃至16のいずれか1項に記載の情報処理装置。
  18. 前記第1の系に接続されたストレージおよび前記第2の系に接続されたストレージは、SSDであることを特徴とする請求項1乃至17のいずれか1項に記載の情報処理装置。
  19. 前記第1の系に接続されたストレージは、揮発性の記憶部と不揮発性の記憶部を有し、
    前記検知手段が電源電圧の低下を検知することに基づいて、前記揮発性の記憶部に記憶されたデータを前記不揮発性の記憶部に記憶させることを特徴とする請求項1乃至18のいずれか1項に記載の情報処理装置。
  20. 第1の系に接続されたストレージおよび第2の系に接続されたストレージを制御するストレージ制御手段と、装置に電源を供給する電源供給手段と、前記第1の系に接続されたストレージおよび前記第2の系に接続されたストレージの電源の供給を制御する電源制御手段と、電源電圧の低下を検知する検知手段と、
    前記第1の系に配され、前記検知手段が電源電圧の低下を検知した際に前記第1の系に接続されたストレージの動作を維持する保証回路と、を有する情報処理装置の制御方法であって、
    前記第1の系に接続されたストレージが前記装置の起動に必要なデータを記憶しないストレージであり且つ前記第2の系に接続されたストレージが前記装置の起動に必要なデータを記憶するストレージである場合に、前記第2の系に接続されたストレージから前記第1の系に接続されたストレージへ少なくとも前記装置の起動に必要なデータをコピーさせることを特徴とする情報処理装置の制御方法。
JP2019047612A 2019-03-14 2019-03-14 情報処理装置および情報処理装置の制御方法 Active JP7263067B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019047612A JP7263067B2 (ja) 2019-03-14 2019-03-14 情報処理装置および情報処理装置の制御方法
US16/806,732 US11620063B2 (en) 2019-03-14 2020-03-02 Information processing apparatus and control method of information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019047612A JP7263067B2 (ja) 2019-03-14 2019-03-14 情報処理装置および情報処理装置の制御方法

Publications (3)

Publication Number Publication Date
JP2020149495A JP2020149495A (ja) 2020-09-17
JP2020149495A5 JP2020149495A5 (ja) 2022-03-17
JP7263067B2 true JP7263067B2 (ja) 2023-04-24

Family

ID=72423360

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019047612A Active JP7263067B2 (ja) 2019-03-14 2019-03-14 情報処理装置および情報処理装置の制御方法

Country Status (2)

Country Link
US (1) US11620063B2 (ja)
JP (1) JP7263067B2 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020169998A1 (en) 2000-05-19 2002-11-14 Kenneth Largman Computer with special-purpose subsystems
JP2004508633A (ja) 2000-05-19 2004-03-18 セルフ リペアリング コンピューターズ インコーポレイテッド 切り換え可能な構成要素を有するコンピュータ
JP2009025926A (ja) 2007-07-18 2009-02-05 Fujitsu Ltd データバックアップ方法、データバックアッププログラム、およびデータバックアップ装置
US20120060023A1 (en) 2010-09-06 2012-03-08 Samsung Electronics Co., Ltd. Methods for booting an operating system using non-volatile memory
US20140281625A1 (en) 2013-03-15 2014-09-18 Seagatetechnology Llc Storing System Data During Low Power Mode Operation
JP2017174026A (ja) 2016-03-23 2017-09-28 キヤノン株式会社 情報処理装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2912349B1 (ja) * 1998-05-11 1999-06-28 四国日本電気ソフトウェア株式会社 ディスクアレイの制御方法及びディスクアレイ装置
JP2004272309A (ja) 2003-03-04 2004-09-30 Ricoh Co Ltd 不揮発性メモリデータ保護装置
US8627117B2 (en) * 2009-06-26 2014-01-07 Seagate Technology Llc Device with power control feature involving backup power reservoir circuit
US8639976B2 (en) * 2011-02-15 2014-01-28 Coraid, Inc. Power failure management in components of storage area network
US9645829B2 (en) * 2014-06-30 2017-05-09 Intel Corporation Techniques to communicate with a controller for a non-volatile dual in-line memory module
US20190138407A1 (en) * 2017-11-07 2019-05-09 Microsoft Technology Licensing, Llc Systems and methods of deploying an operating system from a resilient virtual drive
US10719118B2 (en) * 2018-05-11 2020-07-21 International Business Machines Corporation Power level management in a data storage system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020169998A1 (en) 2000-05-19 2002-11-14 Kenneth Largman Computer with special-purpose subsystems
JP2004508633A (ja) 2000-05-19 2004-03-18 セルフ リペアリング コンピューターズ インコーポレイテッド 切り換え可能な構成要素を有するコンピュータ
JP2009025926A (ja) 2007-07-18 2009-02-05 Fujitsu Ltd データバックアップ方法、データバックアッププログラム、およびデータバックアップ装置
US20120060023A1 (en) 2010-09-06 2012-03-08 Samsung Electronics Co., Ltd. Methods for booting an operating system using non-volatile memory
US20140281625A1 (en) 2013-03-15 2014-09-18 Seagatetechnology Llc Storing System Data During Low Power Mode Operation
JP2017174026A (ja) 2016-03-23 2017-09-28 キヤノン株式会社 情報処理装置

Also Published As

Publication number Publication date
JP2020149495A (ja) 2020-09-17
US20200293209A1 (en) 2020-09-17
US11620063B2 (en) 2023-04-04

Similar Documents

Publication Publication Date Title
JP5506568B2 (ja) データ処理装置、データ処理装置のデータ処理方法、プログラム
JP6164938B2 (ja) 画像形成装置及びその制御方法、並びにプログラム
JP5773773B2 (ja) 画像形成装置、画像形成装置の起動制御方法、プログラム及び記憶媒体
JP6875808B2 (ja) 情報処理装置
JP5152034B2 (ja) 記憶制御方法
JP2018116575A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP6004923B2 (ja) 情報処理装置及びその制御方法とプログラム
JP7263067B2 (ja) 情報処理装置および情報処理装置の制御方法
JP2010098403A (ja) データ管理装置と画像処理装置
JP7214381B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP7246869B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP4134895B2 (ja) 画像処理装置及び画像処理方法
JP2013117910A (ja) 情報処理装置、その制御方法、およびプログラム
JP2018063676A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP7267692B2 (ja) ファームウェアを更新する画像形成装置
US10956090B2 (en) Memory system and electronic apparatus
JP2018063499A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP2014138265A (ja) 画像形成装置
US9692925B2 (en) Image processing apparatus that facilitates restoration from protection mode of included hard disk drive, method for controlling image processing apparatus, and storage medium
JP2015211256A (ja) 情報処理装置、情報処理方法、およびプログラム
JP5812830B2 (ja) 情報処理装置、その制御方法、および制御プログラム
JP2021179730A (ja) 情報処理装置、その制御方法、およびプログラム
JP2020014040A (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
JP2019212026A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP2021026319A (ja) 画像形成装置および画像形成装置の制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220309

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230217

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230314

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230412

R151 Written notification of patent or utility model registration

Ref document number: 7263067

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151