JP2016045534A - コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラム - Google Patents

コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラム Download PDF

Info

Publication number
JP2016045534A
JP2016045534A JP2014167036A JP2014167036A JP2016045534A JP 2016045534 A JP2016045534 A JP 2016045534A JP 2014167036 A JP2014167036 A JP 2014167036A JP 2014167036 A JP2014167036 A JP 2014167036A JP 2016045534 A JP2016045534 A JP 2016045534A
Authority
JP
Japan
Prior art keywords
computer system
power
boot program
completed
storage
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.)
Pending
Application number
JP2014167036A
Other languages
English (en)
Inventor
慎一郎 平木
Shinichiro Hiraki
慎一郎 平木
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2014167036A priority Critical patent/JP2016045534A/ja
Publication of JP2016045534A publication Critical patent/JP2016045534A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】電源供給が不安定になりやすい環境下においても、電源断時に即時に再起動し、電源断前の作業内容に直ちに復帰するコンピュータシステム、その起動方法及びプログラムを提供する。【解決手段】コンピュータシステムの電源断が発生したとき、所定の情報を保存し、所定の情報の保存が完了したか否かを判定し、保存が完了したと判定した場合に、電源断後のコンピュータシステムの再起動時に、高速起動用ブートプログラムと所定の情報とを用いて再起動し、保存が完了していないと判定した場合に、電源断後のコンピュータシステムの再起動時に、通常起動用ブートプログラムを用いて再起動する。【選択図】図3

Description

本発明は、コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラムに関する。
通常のコンピュータシステムのブート処理(OS(Operating System)が起動する前段階の、周辺ハードウェアのチェック及び立ち上げ処理)は、家庭やオフィス等で使用されるコンピュータシステムを例にとれば、不揮発性メモリに記憶されたブートプログラムによってとりおこなわれる。
図1に通常のコンピュータシステムの起動処理フローを示す。コンピュータシステムの電源投入時、または、コンピュータシステムのリセット時(S101)に、コンピュータシステムは、上記不揮発性メモリからブートプログラムを呼び出す(S102)。そして、コンピュータシステムは、コンピュータシステムを起動させるための周辺ハードウェアのチェックプロセス等を順次処理し、コンピュータシステムの立ち上げを行う(S103)。
このように、コンピュータシステムを起動する際には、周辺ハードウェアのチェックプロセス等を順次処理するため、コンピュータシステムのOSが起動するまでには、一般には数十秒かかる。
また、デスクトップ型のコンピュータシステムの多くは、コストの低減や重量の軽減を目的に、付随的な無停電電源(Uninterruptible Power Supply、UPS)やバッテリーを標準で装備することが難しい。このため、地震等の天災の発生時や使用地域の使用電力量の増大による一時的な停電、不慮の事故によるコンセントの抜去等により、ユーザが意図せずに、電源が供給されない状態が発生しやすい。このような状態を「電源断」と呼ぶ。電源断が発生した場合、ユーザが使用していたアプリケーションプログラムは強制終了し、ハードディスクやフラッシュメモリ等の不揮発性メモリに保存していないアプリケーションは破棄され、それまでの作業内容は消去されてしまう。さらに、コンピュータシステムを再起動する際には、上述した立ち上げ処理を始めから順次行う必要があるため、ユーザは、コンピュータシステムが起動するまでに、数十秒にわたるブート処理を待つ必要がある。
特許文献1に開示されている発明では、半導体集積回路は、消費電力削減のために部分的に電源を遮断したスタンバイ状態あるいは内部動作電圧を降下させた電圧降下状態へ移行する場合の処理として、ブートROM(Read Only Memory)に格納されるブートプログラムを内部RAM(Random Access Memory)に格納しておくとともに、動作再開に必要なレジスタ値を内部RAMに退避させる。特許文献1記載の発明では、このような仕組みとすることで、スタンバイ状態あるいは内部動作電圧を降下させた電圧降下状態から再立ち上げする際に、半導体集積回路は高速再起動することができる。
また、特許文献2記載の発明は、電源断後、電子計算機システムの揮発性メモリに格納されるオンラインプログラムが、正常なものとして格納されている場合には、揮発性メモリに格納されるオンラインプログラムを実行する。また、特許文献2記載の発明は、上記オンラインプログラムが正常なものと保存されていない場合には、補助記憶装置から揮発性メモリにオンラインプログラムを転送し、オンラインプログラムを実行する。
特開2006−4339号公報 特開平02−297237号公報
しかしながら、特許文献1に記載の発明は、半導体集積回路がスタンバイ状態あるいは内部動作電圧を降下させた電圧降下状態に移行する場合、システムデータ等を内部RAMに退避保存する。このため、特許文献1に記載される発明においては、停電やコンセントの抜去等意図しない電源断によって半導体集積回路が電源断となった場合には、再起動の際、周辺ハードウェアのチェックプロセスを順次処理する。このため、特許文献1記載の発明においては、OSが起動するまでに数十秒程度かかり、高速起動することができない。また、特許文献1記載の発明では、電源断となった場合には、作業中のユーザプログラムのデータ等は消去されてしまう。
また、特許文献2に記載の発明は、電源断を考慮して電子計算機システムを起動するものであり、補助記憶装置からオンラインプログラムを転送し、オンラインプログラムを実行するか否かに基づいて、電子計算機システムを高速に再起動させる。このため、特許文献2記載の発明では、オンラインプログラムの転送時間分、起動時間を短縮するのみであり、オンラインプログラムそのものの実行時間を短縮することはできず、電子計算機システムを高速起動することはできない。
本発明の目的は、上述した課題を解決し、電源供給が不安定になりやすい環境下においても、即時にコンピュータシステムを再起動させ、電源断前の作業内容を直ちに復帰させることのできるコンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラムを提供することにある。
本願発明のコンピュータシステムは、通常起動用ブートプログラムと高速起動用ブートプログラムとを格納する記憶部と、前記通常起動用ブートプログラムまたは前記高速起動用ブートプログラムを用いてコンピュータシステムの起動を行うとともに、前記コンピュータシステムの電源断が発生したとき、所定の情報を前記記憶部に保存する制御部と、前記所定の情報の前記記憶部への保存が完了したか否かを判定する判定部と、を備え、前記判定部が前記保存が完了したと判定した場合に、前記制御部は、前記電源断後のコンピュータシステムの再起動時に、前記高速起動用ブートプログラムと前記所定の情報とを用いて再起動を行い、前記判定部が前記保存が完了していないと判定した場合に、前記制御部は、前記電源断後のコンピュータシステムの再起動時に、前記通常起動用ブートプログラムを用いて再起動を行うことを特徴とする。
また、本願発明のコンピュータシステムの起動方法は、コンピュータシステムの電源断が発生したとき、所定の情報を保存し、前記所定の情報の保存が完了したか否かを判定し、前記保存が完了したと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、高速起動用ブートプログラムと前記所定の情報とを用いて再起動し、前記保存が完了していないと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、通常起動用ブートプログラムを用いて再起動することを特徴とする。
また、本願発明のコンピュータシステムのプログラムは、コンピュータシステムのコンピュータに、コンピュータシステムの電源断が発生したとき、所定の情報を保存し、前記所定の情報の保存が完了したか否かを判定し、前記保存が完了したと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、高速起動用ブートプログラムと前記所定の情報とを用いて再起動し、前記保存が完了していないと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、通常起動用ブートプログラムを用いて再起動することを実行させることを特徴とする。
本発明のコンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラムは、電源供給が不安定になりやすい環境下においても、即時にコンピュータシステムを再起動させ、電源断前の作業内容を直ちに復帰させることができるという効果がある。
通常のコンピュータシステムの起動フローを示す。 本発明の第1の実施形態のコンピュータシステム1のブロック構成図を示す。 本発明の第1の実施形態のコンピュータシステム1の動作例のフローチャートを示す。 本発明の第2の実施形態のコンピュータシステム1のブロック構成図を示す。 本発明の第2の実施形態の電解コンデンサ4の出力電圧、電圧検出部201−2が出力する電圧検出信号の一例を示す。 本発明の第2の実施形態のコンピュータシステム1の動作例のフローチャートを示す。
<第1の実施形態>
本発明の第1の実施形態について説明する。
図2は、本発明の第1の実施形態のコンピュータシステム1の構成図である。
第1の実施形態のコンピュータシステム1は、記憶部101と、制御部102と、判定部103とから構成され、それぞれ互いにバス等で接続され、情報のやり取りが可能となっている。なお、図2では、コンピュータシステム1のその他の構成(例えば、キーボード、ディスプレイ等の入出力装置等)については図示していない。また、コンピュータシステム1は、その動作のための電源を電源104から供給される。
記憶部101は、高速起動用ブートプログラムと、通常起動用ブートプログラムとを格納する。また、コンピュータシステム1の電源断が発生した場合に、後述する制御部102の制御に基づいて、記憶部101は、所定の情報を格納する。
制御部102は、上記高速起動用ブートプログラムまたは上記通常起動用ブートプログラムを用いて、コンピュータシステム1の起動を行う。また、制御部102は、コンピュータシステム1の電源断が発生した場合に、所定の情報を記憶部101に保存する。ここで、所定の情報は、電源断前の制御部102のステータス、コンピュータシステム1の各種周辺ハードウェアのステータス、OSやユーザプログラム等のシステムデータである。
判定部103は、制御部102によって、上記所定の情報の記憶部101への保存が完了したか否かを判定する。
所定の情報は保存されたと判定部103が判定した場合には、電源断の復旧後、制御部102は、記憶部101に格納される高速起動用ブートプログラムと、保存した所定の情報とを用いて、コンピュータシステム1を高速起動させる。制御部102は、高速起動用ブートプログラムを用いて、例えば、コンピュータシステム1の動作チェックを行うハードウェアを、コンピュータシステム1が最低限起動できる範囲に限定して、チェック、起動動作を行う。また、その他高速起動の際に必要な情報は、記憶部101に保存した所定の情報を用いて、制御部102は、コンピュータシステム1を起動させる。
また、所定の情報は保存されていないと判定部103が判定した場合には、電源断の復旧後、制御部102は、記憶部101に格納される通常起動用ブートプログラムを用いて、コンピュータシステム1を通常起動させる。通常起動の方法としては、例えば、制御部102は、制御部102に接続される全ての周辺ハードウェアの動作チェックを行い、コンピュータシステム1を起動させる。
図3は、第1の実施形態のコンピュータシステム1の動作例を示すフローチャートである。
コンピュータシステム1は、パワーON後、通常動作状態にあるものとし、その状態において、コンピュータシステム1の電源断が発生したとする(S301)。
電源断が発生した場合、制御部102は、上述した所定の情報を記憶部101に保存する。(S302)。
判定部103は、制御部102によって所定の情報の保存が完了したか否かを判定する(S303)。
保存は完了したと判定部103が判定した場合には(S303、YES)、制御部102は、電源断の復旧後、記憶部101に格納される高速起動用ブートプログラムと、退避保存した所定の情報とを用いてコンピュータシステム1の高速起動を行う(S304)。
また、保存は完了していないと判定部103が判定した場合には(S303、NO)、制御部102は、電源断の復旧後、記憶部101に格納される通常起動用ブートプログラムを用いて、コンピュータシステム1の通常起動を行う(S305)。
第1の実施形態において、コンピュータシステム1は、電源断が発生した場合、所定の情報を保存する。そして、コンピュータシステム1は、所定の情報の保存が完了したか否かを判定し、完了した場合には、電源断の復旧後、高速起動用ブートプログラムと保存した所定の情報とを用いてコンピュータシステム1を高速起動させる。また、保存が完了していない場合には、電源断の復旧後、コンピュータシステム1は、通常起動用ブートプログラムを用いてコンピュータシステム1を通常起動させる。
従って、第1の実施形態のコンピュータシステム1は、電源供給が不安定になりやすい環境下においても、即時にコンピュータシステム1を再起動させ、電源断前の作業内容を直ちに復帰させることができる。
<第2の実施形態>
本願発明の第2の実施形態について説明する。
図4は、本発明の第2の実施形態のコンピュータシステム1の構成例を示す。
第2の実施形態のコンピュータシステム1は、制御部102と、電源断検出回路部2と、ショットキーダイオード3と電解コンデンサ4とから構成される。なお、図4においては、コンピュータシステム1を起動する際の主要な構成のみ図示し、その他のコンピュータシステム1の構成(例えば、キーボードやディスプレイ等の入出力装置等)については、図示していない。コンピュータシステム1に電源を供給する電源104は、直流電源である。
制御部102は、コンピュータシステム1の起動や制御等を行い、より詳細には、CPU(Central Processing Unit)1021と、記憶部101と、スイッチ1022及び1023と、電源1024とから構成されている。
CPU1021は、後述するコンピュータシステム1の各部の制御を行う。また、CPU1021は、後述する電源断検出回路部2から電源断の通知を受信した場合に、コンピュータシステム1の図示しない補助記憶装置(例えば、ハードディスクやSSD(Solid State Drive)等)に格納されている電源断時のCPUステータス、コンピュータシステムの各種周辺ハードウェアのステータスや設定レジスタ値、オペレーティングシステムやユーザプログラム等の再スタートに必要なシステムデータ等(以下、システムデータ等という)を揮発性メモリ1012に退避保存する。このため、CPU1021は、ユーザが電源断前に使用していたアプリケーションプログラム等の作業データを退避保存することができる。なお上記補助記憶装置は、不揮発性メモリ1011であってもよい。
また、後述する判定部103がシステムデータ等を退避保存できる一定状態が続いていると判定した場合にはスイッチ1022がONとなり、CPU1021は、ブートプログラム1013と退避保存したシステムデータ等とを用いて、コンピュータシステム1の高速起動を行う。また、上記判定部103がシステムデータ等を退避保存できていないか、またはできていない可能性が高いと判定した場合にはスイッチ1023がONとなり、CPU1021は、ブートプログラム1014を用いた通常起動動作を行う。詳細については、後述する。
なお、例えば、CPU1021は、不揮発性メモリ1011から読み込んだプログラムに基づいて、各部の制御を行ってもよい。また、CPU1021は、コンピュータで読み取り可能なプログラムを記憶した記憶媒体から、図示しない読み込み装置等を用いて、プログラムを読み込んで実行してもよい。
記憶部101は、不揮発性メモリ1011と、揮発性メモリ1012とを含む。
不揮発性メモリ1011は、コンピュータシステム1の起動に用いるブートプログラム1013及び1014を格納する。図4に示すように、不揮発性メモリ1011は、高速起動時に用いるブートプログラム1013及び通常の起動時に用いるブートプログラム1014を格納する。一般に、ブートプログラムは、不揮発性メモリに保存され、CPUにOSを起動させるまでの前段階として、BIOS(Basic Input/Output System)と呼ばれる起動プログラムが、ブートプログラムに基づいて、コンピュータシステムの電源チェックやメモリ、キーボード、ディスプレイ、USB(Universal Serial Bus)ポート、LAN(Local Area Network)ポート等の周辺ハードウェアの種別の判断や各ハードウェアを適切に起動させるブート処理等を行う。
第2の実施形態のブートプログラム1013は、コンピュータシステム1を高速起動するために、コンピュータシステム1が最低限起動できる範囲に限定して、ハードウェアのチェック、起動動作を行う。ブートプログラム1013によるブート処理において、その他の必要な情報は揮発性メモリ1012に退避されているシステムデータ等を用いる。このため、ブートプログラム1013によるブート処理は、必要最低限のハードウェアしかチェック、起動をかけないため、コンピュータシステム1を高速起動することが可能となる。さらに、揮発性メモリ1012に退避されたシステムデータ等を用いて起動を行うため、起動後は、電源断前の元の作業状態にただちに復帰できる。
一方、第2の実施形態のブートプログラム1014は、上述した一般のブートプログラム同様、CPU1021に接続される全ての周辺ハードウェアのチェック、起動を行う。ブートプログラム1014によるブート処理は、数秒から数十秒の時間を要するが、全ての周辺ハードウェアが所望の動作を行うことが可能である。
揮発性メモリ1012は、CPU1021が後述する電源断検出回路部2から電源断の通知を受信した場合に、CPU1021の制御に基づき、システムデータ等を格納する。また、揮発性メモリ1012は、所定の電源1024(例えば、ボタン電池等のメモリバックアップに使用される電池)によりバックアップされている。このため、揮発性メモリ1012は、電源断が発生した場合においても、格納したシステムデータ等を保持することができる。上述したように、揮発性メモリ1012に格納されたシステムデータ等は、ブートプログラム1013によるコンピュータシステム1の高速起動の際に使用される。
スイッチ1022及び1023は、後述する電源断検出回路部2の判定部103によってそのON、OFFが制御される。そして、CPU1021は、いずれかのスイッチ1022、1023によって選択されたブートプログラム1013、1014を用いて、コンピュータシステム1の起動を行う。より詳細には、電源断の発生後、後述する判定部103は、所定の閾値以上の電圧が制御部102に供給され、かつその電圧が所定の判定時間以上持続したと判定した場合には、スイッチ1022をONとする。そして、CPU1021は、ブートプログラム1013と退避保存させたシステムデータ等とを用いたコンピュータシステム2の高速起動を行う。
一方、上記判定条件を満たさない場合には、判定部103は、スイッチ1023をONとし、CPU1021は通常の起動時に用いるブートプログラム1014を用いて、コンピュータシステム1の起動を行う。詳細については、後述する。
電源断検出回路部2は、コンピュータシステム1に供給される電源電圧をモニタし、電源断となったか否か(例えば、停電やコンセントの抜去等ユーザが意図せず、コンピュータシステム1の電源がOFFとなったか否か)を検出する。また、電源断後、電源断検出回路部2は、制御部102に供給される電源電圧及びその持続時間に基づいて、CPU1021が上記システムデータ等を揮発性メモリ1012に退避保存できたか否かを判定する。また、電源断検出回路部2は、所定の電源205(例えば、ボタン電池等のバックアップに使用される電池)によりバックアップされている。このため、電源断検出回路部2は、コンピュータシステム1が電源断となった場合においても、以下に説明する電源断検出回路部2内の各部の動作を一定時間持続することができる。また、コンピュータシステム1が通常動作している場合において、所定の電源205は、電源104によって充電作用が働いており、所定の電源205から漏れ出た電荷が補充される。
図4に示すように、電源断検出回路部2は、電圧検出部201−1、201−2と、検出レベル設定部202−1、202−2と、停止時間計算・検出部203と、判定部103と、判定レベル設定部204とから構成される。
電圧検出部201−1及び201−2は、例えば、ボルテージデテクタIC(Integrated Circuit)で構成され、所定の閾値以上の電圧を検出した場合には、“ON(1)”を、閾値未満の電圧を検出した場合には“OFF(0)”の信号を出力する。より具体的には、電圧検出部201−1及び201−2は、コンパレータと呼ばれる回路を内蔵する。コンパレータは、2つの入力端子と1つの出力端子を持つ。例えば、2つの入力端子をそれぞれVin1、Vin2、1つの出力端子をVoutとした場合を考える。この場合、コンパレータは、例えば、Vin1≧Vin2の場合、コンパレータの出力電圧VoutをONレベル(例えば、5V(ボルト))とし、Vin2>Vin1の場合、出力電圧VoutをOFFレベル(例えば、0V)とするように動作する。例えば、Vin1に電源104からの電圧を入力し、Vin2に検出レベル設定部201により設定される電圧(電源断と判定するための閾値の電圧、例えば5.0V)を入力することで、電源104からの電圧が閾値の電圧より下回った場合に、電圧検出部201−1は、OFFレベルの電圧を出力し、電源断を判定することができる。
電圧検出部201−1と電圧検出部201−2は、配置される場所が異なるため、検出する電圧がそれぞれ異なっている。電圧検出部201−1及び201−2について、それぞれ説明する。
電圧検出部201−1は、経路5を通じて、電源104の電圧をモニタし、上記所定の閾値に基づいて、電源断の発生を検出する。また、電圧検出部201−1は、電源断の発生を検出した場合に、CPU1021へその旨を通知する。例えば、電圧検出部201−1は、電源104の電圧及び所定の閾値に基づいて、出力電圧がOFFレベルとなった場合に、電源断を検出し、その旨をCPU1021に通知する。
電圧検出部201−2は、制御部102に供給される電源電圧の状態をモニタする。図4のように、経路6には、ショットキーダイオード3及び電解コンデンサ4が配置されており、電圧検出部201−2は、これらの素子を通過した後段の電圧をモニタする。また、電圧検出部201−2は、電源断後、電解コンデンサ4の電荷によって生じ、緩やかに下降する電圧をモニタし、この電圧が所定の閾値より上か否かを判定し、判定した結果を電圧検出信号として、停止時間計算・検出部203に出力する。電圧検出部201−2が出力する電圧検出信号は、CPU1021が揮発性メモリ1012にシステムデータ等を退避保存できたか否かの判定に用いられる。判定方法の詳細は後述する。
なお、上記所定の閾値は、それぞれの電圧検出部201−1、201−2に接続される検出レベル設定部202−1、202−2によって設定可能である。例えば、所定の閾値は、コンピュータシステム1の制御部102が仕様上動作できなくなる電圧に基づいて設定する。例えば、制御部102が5V以上で動作するブロックの場合、上記所定の閾値を5.0Vとすれば、その閾値を下回る電圧が検出された場合、制御部102は動作できなくなり、電圧検出部201−1はコンピュータシステム1の電源断を判定することができる。
また、同様に、制御部102が動作できなくなる電圧に基づいて所定の閾値を設定することによって、電圧検出部201−2は、上記所定の閾値に基づいて、電圧検出信号を出力する。この電圧検出信号は、後述する停止時間計算・検出部203が制御部102に印加される電圧レベルの持続時間を測定する際に使用される。
停止時間計算・検出部203は、適当なクロック信号を用いて、上記電圧検出信号の出力レベル(“ON(1)”及び“OFF(0)”)が何クロック続いているかをカウントすることにより、制御部102に印加される電圧レベルの持続時間を測定し、それに応じた直流電圧値を出力する。すなわち、停止時間計算・検出部203は、上記電圧検出信号に基づき、電源断後の、制御部102が動作可能なONレベル電圧の持続時間及び制御部102が動作不可能なOFFレベル電圧の持続時間を測定する。
判定部103は、停止時間計算・検出部203から入力される直流電圧値に基づいて、CPU1021によってシステムデータ等の揮発性メモリ1012への退避が完了したか否かを判定する。より詳細には、判定部103は、入力された直流電圧値に基づいて、電源断後、制御部102に印加される電圧が、CPU1021がシステムデータ等の退避保存を行うことが可能なレベルであるか、または、退避保存が行えないレベルであるか、さらに、これらの電圧レベルが所定の判定時間以上続いているか否かを判定し、コンピュータシステム1の電源断前のシステムデータ等を退避できているか否かを判定する。
なお、上記判定時間は、判定部103に接続される判定レベル設定部204によって、設定可能である。例えば、判定時間は、電源断が発生した場合に、上記システムデータ等を揮発性メモリ1012に退避保存するための処理時間に基づいて設定する。また、判定時間は、コンピュータシステム1の設計パラメータ等によって、設定することができる。
図5は、電源断後、充電された電解コンデンサ4からの放電によって、制御部102に供給される電圧の一例及びその電圧に基づいて電圧検出部201−2が出力する電圧検出信号の一例を示している。
図5のように、時刻t0において電源断が発生した場合を考える。また、時刻t0において、電解コンデンサ4は十分に充電されており、電圧検出部201−2には、上記所定の閾値vthが設定されているものとする。すなわち、電解コンデンサ4からvth以上の電圧が供給されている場合には、電源断後においても制御部102は動作可能である。
図5のように、時刻t1に達するまでは、閾値vth以上の電圧が制御部102に供給されるため、電圧検出部201−2は、制御部102が動作可能な電圧が制御部102に供給されていると判断し、制御部102が動作可能であることを示すONレベルの電圧検出信号を停止時間計算・検出部203へ出力する。
また、図5のように、時刻t1において、電解コンデンサ4から供給される電圧が閾値vthを下回った場合、電圧検出部201−2は、制御部102が動作可能な電圧を下回ったと判断し、制御部102が動作不可能であることを示すOFFレベルの電圧検出信号を停止時間計算・検出部203へ出力する。
停止時間計算・検出部203は、電圧検出部201−2から出力される電圧検出信号及び適当なクロック信号に基づいて、上記ONレベルの電圧検出信号の持続時間を測定する。なお、クロック信号は、停止時間計算・検出部203が発生させてもよく、図示しないクロック発生部から受信し、それを用いてもよい。
そして、判定部103は、停止時間計算・検出部203によって測定された持続時間及び所定の判定時間に基づいて、CPU1021によって上記システムデータ等が揮発性メモリ1012へ退避されたか否かを判定する。例えば、図5のように、所定の判定時間をx秒とし、電源断発生後、x秒以上ONレベル電圧が持続していた場合には、判定部103は、CPU1021によって、上記システムデータ等の退避保存が完了したと判定する。また、ONレベル電圧の持続時間がx秒未満であった場合には、CPU1021によって、上記システムデータ等の退避保存が完了していないと判定する。
ショットキーダイオード3及び電解コンデンサ4は、図4のように、電源104と制御部102との間に配置される。上述したように、電源断が発生してもある程度の時間(例えば、数百ミリ秒程度)は、電解コンデンサ4の作用によって、制御部102は電源の供給を受け、制御部102は動作を行うことができる。なお、電源断後に制御部102に電源を供給するものとしては、上記電解コンデンサ4に限定されず、例えば、充放電可能な電池等であってもよい。この場合、電池等は、コンピュータシステム1の通常動作時において、電源104によって充電されてもよい。
次に、第2の実施形態のコンピュータシステム1の起動動作について詳細に説明する。図6は、第2の実施形態における、コンピュータシステム1の起動動作フローを示す。
まず、前提としてコンピュータシステム1は、パワーONされ、通常動作状態にあるとする(S601)。
上記通常動作状態において、何かしらの理由でコンピュータシステム1に再起動が働く場合を考える。ここで再起動が働く例としては、ユーザの操作等によるコンピュータシステム1のパワーOFFまたはリセットや停電、コンセントの抜去等による電源断である。
電圧検出部201−1は、コンピュータシステム1の電源断の発生を監視する(S602)。
電圧検出部201−1が、上記再起動が電源断によるものでなく、例えばユーザの操作等によるコンピュータシステム1の通常のパワーOFFまたはリセットであると判定した場合(S602、NO)には、CPU1021は、通常起動用ブートプログラム1014を用いて、コンピュータシステム1の上述した起動プロセスに基づいて、通常起動を行う(S606)。例えば、電源断の場合、コンピュータシステム1に対し、突如として電源の供給が無くなるのに対し、通常のパワーオフ(またはリセット)の場合は、コンピュータシステム1は、ユーザによって電源OFFの操作が実行されたことを受け付け、OSは順序立ててパワーOFFの動作を行う。従って、電圧検出部201−1は、これらの電圧変化の違い等に基づいて、電源断と通常のパワーOFFとを区別し、電源断を検出してもよい。
一方、電圧検出部201−1が、電源断が発生し、コンピュータシステム1がパワーOFFとなったと判定した場合(S602、YES)には、CPU1021は、システムデータ等を揮発性メモリ1012に退避保存させる。CPU1021による退避保存動作と同時に、停止時間計算・検出部203は、電圧検出部201−2が出力する電圧検出信号に基づいて、電源断後に、電解コンデンサ4から制御部102に供給される電圧の持続時間の計測を行う(S603)。
判定部103は、停止時間計算・検出部203が出力する測定結果に基づいて、電源断後、所定の閾値以上の電圧が制御部102に供給され、かつその電圧が所定の判定時間以上持続したと判定したか否かを判定する(S604)。すなわち、判定部103は、電源断後、システムデータ等を揮発性メモリ1012に退避可能な電圧(ONレベル電圧)が、制御部102に所定の時間以上供給されたか否かを判定する。
ONレベル電圧が所定の時間以上持続したと判定部103が判定した場合(S604、YES)、判定部103は、CPU1021が上記システムデータ等を揮発性メモリ1012に退避保存できたと判定し、スイッチ1022をONにする。そして、CPU1021は、ブートプログラム1013を用いて、コンピュータシステム1を高速起動させる(S605)。より詳細には、CPU1021は、高速起動で再起動をかけるために、ブートプログラム1013を呼び出し、揮発性メモリ1012に退避保存したシステムデータ等を用いて、ハードウェアチェック等を必要最低限にした高速起動動作を行う。
一方、ONレベル電圧の持続時間が所定の時間未満であると判定部103が判定した場合(S604、NO)、判定部103は、CPU1021が、上記システムデータ等を揮発性メモリ1012に退避できていないか、または、退避できていない可能性が高いと判断し、スイッチ1023をONにする。そして、CPU1021は、ブートプログラム1014を用いて、コンピュータシステム1を通常起動させる(S606)。より詳細には、CPU1021は、通常起動で再起動をかけるために、ブートプログラム1014を呼び出し、コンピュータシステム1の電源チェック、各種周辺ハードウェアの種別判断、動作等のブート処理を行い、通常起動動作を行う。
第2の実施形態において、電圧検出部201−1が電源断を検出した場合、CPU1021は、システムデータ等を揮発性メモリ1012に退避保存するとともに、停止時間計算・検出部203は、電源断後、制御部102に供給される電源電圧の持続時間を測定する。そして、判定部103は、上記持続時間に基づいて、CPU1021がシステムデータ等を退避保存が完了したか否かを判定する。
システムデータ等の退避保存が完了したと判定した場合、CPU1021は、不揮発性メモリ1011に格納される高速起動用のブートプログラム1013及び退避保存したシステムデータ等を用いて、コンピュータシステム1の高速起動を行う。
また、システムデータ等の退避保存が完了していないと判定した場合、CPU1021は、不揮発性メモリ1011に格納される通常起動用のブートプログラム1014を用いて、コンピュータシステム1の通常起動を行う。
従って、第2の実施形態によれば、電源供給が不安定になりやすい環境下においても、即時にコンピュータシステムを再起動させ、電源断前の作業内容を直ちに復帰させることができる。
以上、本発明の各実施形態を説明したが、本発明は、上記した各実施形態に限定されるものではない。本発明は、各実施形態の変形・置換・調整に基づいて実施できる。すなわち、本発明は、本明細書の全ての開示内容、技術的思想に従って実現できる各種変形、修正を含む。なお、各図面に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
1 コンピュータシステム
101 記憶部
1011 不揮発性メモリ
1012 揮発性メモリ
1013、1014 ブートプログラム
102 制御部
1021 CPU
1022、1023 スイッチ
1024、104、205 電源
103 判定部
2 電源断検出回路部
201 電圧検出部
202 検出レベル設定部
203 停止時間計算・検出部
204 判定レベル設定部
3 ショットキーダイオード
4 電解コンデンサ

Claims (10)

  1. 通常起動用ブートプログラムと高速起動用ブートプログラムとを格納する記憶部と、
    前記通常起動用ブートプログラムまたは前記高速起動用ブートプログラムを用いてコンピュータシステムの起動を行うとともに、前記コンピュータシステムの電源断が発生したとき、所定の情報を前記記憶部に保存する制御部と、
    前記所定の情報の前記記憶部への保存が完了したか否かを判定する判定部と、
    を備え、
    前記判定部が前記保存が完了したと判定した場合に、前記制御部は、前記電源断後のコンピュータシステムの再起動時に、前記高速起動用ブートプログラムと前記所定の情報とを用いて再起動を行い、
    前記判定部が前記保存が完了していないと判定した場合に、前記制御部は、前記電源断後のコンピュータシステムの再起動時に、前記通常起動用ブートプログラムを用いて再起動を行う
    ことを特徴とするコンピュータシステム。
  2. 前記コンピュータシステムへ電源を供給する第1の電源部と、
    前記第1の電源部から供給される電源が所定の閾値を下回ったときに、前記電源断の発生を検出する電圧検出部と、
    前記電源断が発生したときに、前記制御部へ電源を供給する第2の電源部と、
    を更に備え、
    前記判定部は、前記第2の電源部から前記所定の閾値よりも大きい電源が供給されている期間に基づいて、前記保存が完了したか否かを判定する
    ことを特徴とする請求項1に記載のコンピュータシステム。
  3. 前記所定の情報は、前記コンピュータシステムの再起動に使用される情報であることを特徴とする請求項1または2に記載のコンピュータシステム。
  4. 前記記憶部は、不揮発性メモリと揮発性メモリとを含み、
    前記不揮発性メモリは、前記通常起動用ブートプログラムと前記高速起動用ブートプログラムとを格納し、
    前記揮発性メモリは、前記所定の情報を保存する
    ことを特徴とする請求項1乃至3のいずれか1項に記載のコンピュータシステム。
  5. コンピュータシステムの電源断が発生したとき、所定の情報を保存し、
    前記所定の情報の保存が完了したか否かを判定し、
    前記保存が完了したと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、高速起動用ブートプログラムと前記所定の情報とを用いて再起動し、
    前記保存が完了していないと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、通常起動用ブートプログラムを用いて再起動する
    ことを特徴とするコンピュータシステムの起動方法。
  6. 前記コンピュータシステムへ供給される電源が所定の閾値を下回ったときに、前記電源断の発生を検出し、
    前記電源断が発生したときに、前記コンピュータシステムへ前記所定の閾値よりも大きい電源が供給されている期間に基づいて、前記保存が完了したか否かを判定する
    ことを特徴とする請求項5に記載のコンピュータシステムの起動方法。
  7. 前記所定の情報は、前記コンピュータシステムの再起動に使用される情報であることを特徴とする請求項5または6に記載のコンピュータシステムの起動方法。
  8. コンピュータシステムのコンピュータに、
    コンピュータシステムの電源断が発生したとき、所定の情報を保存し、
    前記所定の情報の保存が完了したか否かを判定し、
    前記保存が完了したと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、高速起動用ブートプログラムと前記所定の情報とを用いて再起動し、
    前記保存が完了していないと判定した場合に、前記電源断後のコンピュータシステムの再起動時に、通常起動用ブートプログラムを用いて再起動する
    ことを実行させることを特徴とするコンピュータシステムのプログラム。
  9. 前記コンピュータシステムへ供給される電源が所定の閾値を下回ったときに、前記電源断の発生を検出し、
    前記電源断が発生したときに、前記コンピュータシステムへ前記所定の閾値よりも大きい電源が供給されている期間に基づいて、前記保存が完了したか否かを判定する
    ことを実行させることを特徴とする請求項8に記載のコンピュータシステムのプログラム。
  10. 前記所定の情報は、前記コンピュータシステムの再起動に使用される情報であることを特徴とする請求項8または9に記載のコンピュータシステムのプログラム。
JP2014167036A 2014-08-20 2014-08-20 コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラム Pending JP2016045534A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014167036A JP2016045534A (ja) 2014-08-20 2014-08-20 コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014167036A JP2016045534A (ja) 2014-08-20 2014-08-20 コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラム

Publications (1)

Publication Number Publication Date
JP2016045534A true JP2016045534A (ja) 2016-04-04

Family

ID=55636089

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014167036A Pending JP2016045534A (ja) 2014-08-20 2014-08-20 コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラム

Country Status (1)

Country Link
JP (1) JP2016045534A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110809755A (zh) * 2017-07-04 2020-02-18 日立汽车系统株式会社 电子控制系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008257650A (ja) * 2007-04-09 2008-10-23 Canon Inc 情報処理装置及びその電力制御方法
JP2013134754A (ja) * 2011-12-27 2013-07-08 Sony Corp 情報処理装置及び情報処理装置の制御方法、並びにコンピューター・プログラム
JP2013214233A (ja) * 2012-04-03 2013-10-17 Denso Wave Inc 携帯端末装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008257650A (ja) * 2007-04-09 2008-10-23 Canon Inc 情報処理装置及びその電力制御方法
JP2013134754A (ja) * 2011-12-27 2013-07-08 Sony Corp 情報処理装置及び情報処理装置の制御方法、並びにコンピューター・プログラム
JP2013214233A (ja) * 2012-04-03 2013-10-17 Denso Wave Inc 携帯端末装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110809755A (zh) * 2017-07-04 2020-02-18 日立汽车系统株式会社 电子控制系统
CN110809755B (zh) * 2017-07-04 2023-09-29 日立安斯泰莫株式会社 电子控制系统

Similar Documents

Publication Publication Date Title
US9367446B2 (en) Computer system and data recovery method for a computer system having an embedded controller
US8055889B2 (en) BIOS management device and method for managing BIOS setting value
EP1934746B1 (en) Saving system context in the event of power loss
TWI460580B (zh) 電腦系統的電源供應設備及其電源啟動順序控制方法
US11188135B2 (en) Battery controller, electronic device, battery pack, and battery controlling method
KR20090026895A (ko) 시스템 온 칩에서 전력 소모를 감소시키기 위한 장치 및방법
JP2012203585A (ja) 情報処理装置
KR20150087744A (ko) 전자 장치의 동작 상태를 변경하는 방법 및 장치
US10394307B2 (en) Information processing apparatus, information processing method, and program
US10788872B2 (en) Server node shutdown
TWI602059B (zh) 伺服器節點關機技術
TWI629687B (zh) 具備異常電源保護的快閃記憶體裝置
JP2016045534A (ja) コンピュータシステム、コンピュータシステムの起動方法及びコンピュータシステムのプログラム
JP7007922B2 (ja) 制御装置、および制御方法
US20130073792A1 (en) Electronic apparatus using nand flash and memory management method thereof
TWI720615B (zh) 電腦裝置及其關機及重啟方法
WO2012126345A1 (zh) 计算机的启动方法、启动装置、状态转换方法和状态转换装置
US10921875B2 (en) Computer system, operational method for a microcontroller, and computer program product
JP5346964B2 (ja) 電子機器およびシステム管理プログラム
JP5422426B2 (ja) 情報処理装置
JP3487127B2 (ja) 情報処理装置、商品登録装置、および、プログラム記憶媒体
JP7198065B2 (ja) コンピュータシステム及び制御方法
US11404128B2 (en) Power control method for a memory storage device and a memory storage system
CN113835512B (zh) 存储器存储装置的电源控制方法与存储器存储系统
JP2012146169A (ja) 電子機器およびシステム管理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170718

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180417

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20181023