JP6723400B1 - Information processing apparatus and information processing method - Google Patents
Information processing apparatus and information processing method Download PDFInfo
- Publication number
- JP6723400B1 JP6723400B1 JP2019033144A JP2019033144A JP6723400B1 JP 6723400 B1 JP6723400 B1 JP 6723400B1 JP 2019033144 A JP2019033144 A JP 2019033144A JP 2019033144 A JP2019033144 A JP 2019033144A JP 6723400 B1 JP6723400 B1 JP 6723400B1
- Authority
- JP
- Japan
- Prior art keywords
- processing
- information
- control unit
- progress information
- unit
- 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
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 35
- 238000003672 processing method Methods 0.000 title abstract description 4
- 238000000034 method Methods 0.000 claims abstract description 160
- 230000008569 process Effects 0.000 claims abstract description 153
- 238000012545 processing Methods 0.000 claims abstract description 75
- 230000005856 abnormality Effects 0.000 claims abstract description 59
- 230000008439 repair process Effects 0.000 claims description 46
- 238000012795 verification Methods 0.000 claims description 14
- 238000012805 post-processing Methods 0.000 abstract description 36
- 238000010586 diagram Methods 0.000 abstract description 6
- 238000001514 detection method Methods 0.000 description 36
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000001994 activation Methods 0.000 description 6
- 230000004913 activation Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】POST処理の進行の停止をより確実に検出することができる情報処理装置および情報処理方法を提供する。【解決手段】処理部はシステム・ファームウェアに基づく処理を実行し、制御部は前記処理を制御する。また、処理部は、オペレーティングシステムが起動する前に前記処理の進捗状況を示す進捗情報を前記処理の実行中に前記制御部に出力し、前記制御部は、前記処理の完了前に前記進捗情報が入力されるタイミングに基づいて前記処理の異常を検出する。【選択図】図2PROBLEM TO BE SOLVED: To provide an information processing apparatus and an information processing method capable of more reliably detecting the stop of the progress of POST processing. A processing unit executes processing based on system firmware, and a control unit controls the processing. Further, the processing unit outputs progress information indicating a progress status of the process to the control unit during execution of the process before the operating system is activated, and the control unit outputs the progress information before the completion of the process. The abnormality of the process is detected based on the timing of input of. [Selection diagram] Figure 2
Description
本発明は、情報処理装置および情報処理方法に関する。 The present invention relates to an information processing device and an information processing method.
情報処理装置を構成するコンピュータは、ハードウェアと各種のプログラムとのインタフェースを提供するためのシステム・ファームウェアを実装する。システム・ファームウェアは、コンピュータシステム全体の動作に関わり、プラットフォーム・ファームウェア、BIOS(Basic Input/Output System)などとも呼ばれる。各種のプログラムには、オペレーティングシステム(OS:Operating System)、デバイス・ドライバーおよびアプリケーションプログラム(以下、アプリケーション)が含まれる。 A computer that constitutes the information processing apparatus is equipped with system firmware for providing an interface between hardware and various programs. The system firmware relates to the operation of the entire computer system, and is also called platform firmware, BIOS (Basic Input/Output System), or the like. Various programs include an operating system (OS: Operating System), a device driver, and an application program (hereinafter referred to as an application).
システム・ファームウェアは、コンピュータに電力の供給が開始されてからOSがロードを開始するまでの間、POST(Power On Self Test)処理を実行させるためのプログラムである。POST処理は、システム・ファームウェアのコードの正常性の検証、自装置に接続されたデバイスの検出、検出したデバイスの初期化などの過程を有する。システム・ファームウェアは、通例、実行に要する各種のパラメータとともにROM(Read Only Memory)などの不揮発性メモリに格納される。 The system firmware is a program for executing a POST (Power On Self Test) process from the start of power supply to the computer until the OS starts loading. The POST process includes processes such as verification of the normality of the system firmware code, detection of the device connected to the device itself, and initialization of the detected device. The system firmware is usually stored in a nonvolatile memory such as a ROM (Read Only Memory) together with various parameters required for execution.
システム・ファームウェアが損傷することよりPOST処理においてハングアップし、OSの起動に至らないことがある。OSをより確実に起動させることを目的として、BIOS自己修復(BIOS Self−Healing)の実行が提案してされていた。BIOS自己修復とは、BIOSイメージが損傷されていないか否かを検出し、損傷を検出するときにBIOSイメージを修復(ファームウェア・リカバリ)する処理である。また、個々のデバイスに関しては、情報処理装置が備えるデバイスごとの対応、例えば、デバイス別のファームウェアの修復などが行われることがあった。 Since the system firmware may be damaged, the POST process may hang up and the OS may not be started. Execution of BIOS self-healing has been proposed for the purpose of more surely booting the OS. The BIOS self-repair is a process of detecting whether or not the BIOS image is damaged and repairing the BIOS image (firmware recovery) when the damage is detected. In addition, with respect to individual devices, the correspondence for each device included in the information processing apparatus, for example, repair of firmware for each device may be performed.
しかしながら、POST処理の進行が停止した時点では、そのことを自発的に検出できないことがあった。ひいては、POST処理の進行が停止した段階を特定できないため、その段階に適した修復がなされないことがあった。例えば、あるデバイスの初期化が停止した段階が特定できず、そのデバイスに対する措置をとることができないことがあった。 However, at the time when the progress of the POST process was stopped, it could not be detected spontaneously. As a result, the stage at which the progress of the POST process has stopped cannot be identified, and therefore, the restoration suitable for that stage may not be performed. For example, it may not be possible to identify the stage at which initialization of a device has stopped, and it may not be possible to take measures for the device.
本発明は上記の課題を解決するためになされたものであり、本発明の一態様に係る情報処理装置は、オペレーティングシステムが起動する前にシステム・ファームウェアに基づく処理を実行する処理部と、前記処理を制御する制御部と、を備え、前記処理部は、前記処理の進捗状況を示す進捗情報を前記処理の実行中に前記制御部に出力し、前記制御部は、前記処理の完了前に前記進捗情報が入力されるタイミングに基づいて前記処理の異常を検出する。 The present invention has been made to solve the above problems, and an information processing apparatus according to an aspect of the present invention includes a processing unit that executes processing based on system firmware before an operating system starts up, And a control unit for controlling the process, wherein the processing unit outputs progress information indicating a progress status of the process to the control unit during execution of the process, and the control unit outputs the progress information before completion of the process. The abnormality of the process is detected based on the timing when the progress information is input.
上記の情報処理装置において、前記制御部は、前記進捗情報が最後に入力された時刻から自装置の動作停止が指示される時刻までの経過時間に基づいて前記異常の発生を判定し、前記異常を判定するとき、前記異常を示す異常情報を記憶してもよい。 In the above information processing device, the control unit determines the occurrence of the abnormality based on an elapsed time from a time when the progress information is last input to a time when an operation stop of the own device is instructed, and the abnormality occurs. When determining, the abnormality information indicating the abnormality may be stored.
上記の情報処理装置において、前記進捗情報は、実行が完了した過程を示し、前記制御部は、自装置の動作停止が指示されるとき、最後に入力された進捗情報に基づいて、実行が完了していない過程である未完了過程を推定し、前記処理に含まれる過程ごとのカテゴリを示すカテゴリデータに基づいて、前記未完了過程の種別を定めてもよい。 In the above information processing device, the progress information indicates a process in which execution is completed, and when the control unit is instructed to stop the operation of the device, the control unit completes the execution based on the last input progress information. An uncompleted process, which is a process that has not been performed, may be estimated, and the type of the incomplete process may be determined based on category data indicating a category for each process included in the process.
上記の情報処理装置において、前記未完了過程が前記システム・ファームウェアの検証に関する過程であるとき、前記制御部は、前記システム・ファームウェアの修復を設定してもよい。 In the above information processing apparatus, the control unit may set restoration of the system firmware when the incomplete process is a process relating to verification of the system firmware.
上記の情報処理装置において、前記未完了過程が前記処理部に接続される機器に関する過程であるとき、前記制御部は、前記機器に関する過程の省略を設定してもよい。 In the above information processing device, when the incomplete process is a process related to a device connected to the processing unit, the control unit may set omission of a process related to the device.
上記の情報処理装置において、前記未完了過程が前記処理部に接続される機器に関する過程であるとき、前記制御部は、前記機器に関する過程に係る機器別ファームウェアの修復を設定してもよい。 In the above information processing apparatus, when the incomplete process is a process related to a device connected to the processing unit, the control unit may set repair of device-specific firmware related to the process related to the device.
本発明の第2態様に係る情報処理方法は、オペレーティングシステムが起動する前にシステム・ファームウェアに基づく処理を実行する処理部と、前記処理を制御する制御部と、を備える情報処理装置の方法であって、前記処理部が、前記処理の進捗状況を示す進捗情報を前記処理の実行中に前記制御部に出力するステップと、前記制御部が、前記処理の完了前に前記進捗情報が入力されるタイミングに基づいて前記処理の異常を検出するステップと、を有する。 An information processing method according to a second aspect of the present invention is a method of an information processing apparatus including a processing unit that executes a process based on system firmware before an operating system starts up, and a control unit that controls the process. The processing unit outputs progress information indicating the progress status of the process to the control unit during execution of the process, and the control unit inputs the progress information before the completion of the process. A step of detecting an abnormality in the processing based on the timing.
本発明の上記態様によれば、POST処理の進行の停止をより確実に検出することができる。また、POST処理の進行が停止した段階を特定できることができる。 According to the above aspect of the present invention, the stop of the progress of the POST processing can be detected more reliably. Further, it is possible to identify the stage where the progress of the POST process is stopped.
以下、本発明の実施形態について、図面を参照して説明する。まず、本発明の実施形態に係る情報処理装置10の構成例について説明する。図1は、本実施形態に係る情報処理装置10のハードウェア構成例を示す概略ブロック図である。
情報処理装置10は、CPU(Central Processing Unit)11、MCH(Memory Controller Hub)13a、ICH(I/O:Input−output Controller Hub)13b、システムメモリ15、GPU(Graphics Processing Unit)17、ディスプレイ19、HDD21、通信モジュール23、ファームウェアROM(Read Only Memory)25、NVRAM(Non−volatile Random Access Memory)27、EC(Embedded Controller)31、電源ユニット35、電源ボタン37および入力デバイス39を含んで構成される。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. First, a configuration example of the
The
通信モジュール23には、ICH13bが接続されている。通信モジュール23は、所定の通信方式を用いて他の機器と無線で各種のデータを送受信する。所定の通信方式として、例えば、IEEE802.11に規定された無線LAN(Local Area Network)の通信方式、IEEE802.15.1に規定された無線個人領域ネットワーク(無線PAN:Personal Area Network)などが利用可能である。
ファームウェアROM25は、システム・ファームウェアを格納する不揮発性メモリである。ファームウェアROM25は、例えば、SPI(Serial Peripheral Interface)フラッシュROMである。システム・ファームウェアは、いわゆるBIOSである。BIOSは、例えば、UEFI(Unified Extensible Firmware Interface)で規定されたソフトウェアインタフェースを採用したSystem BIOSファームウェアである。
NVRAM27は、各種の情報を記憶することができる不揮発性メモリである。
The ICH 13b is connected to the
The
The NVRAM 27 is a non-volatile memory that can store various kinds of information.
EC31は、独自にCPU11とは別個にCPUなどのプロセッサ、RAM(Random Access Memory)、ROMなどのメモリを含んで構成されるマイクロコンピュータである。EC31は、入力デバイス39から入力される操作信号を処理するための入力コントローラを含む。EC31には、ICH13b、電源ユニット35、電源ボタン37および入力デバイス39が接続されている。
電源ユニット35は、EC31の制御に基づいて、情報処理装置10の各デバイスに動作に要する電力を供給する。
The EC 31 is a microcomputer independently including a processor such as a CPU, a memory such as a RAM (Random Access Memory), and a ROM, separately from the
The
電源ボタン37は、ユーザの操作を受け付け、押下されるとき起動制御信号を、EC31を経由して電源ユニット35に出力する。電源ユニット35は、EC31と特に指定されたデバイス以外の大部分のデバイス(以下、主デバイス)への電力の供給を停止しているときに起動制御信号が入力されるとき、主デバイスへの電力の供給を開始する。主デバイスへの電力の供給中に電源ボタン37から起動制御信号が入力されるとき、電源ユニット35は、主デバイスへの電力の供給を停止する。図1に示す例では、主デバイスは、CPU11、MCH13a、ICH13b、システムメモリ15、GPU17、ディスプレイ19、HDD21、通信モジュール23、ファームウェアROM25、NVRAM27および入力デバイス39が該当する。また、主デバイスのうち情報処理装置10としての機能の発揮に要する最小限のデバイスを基本デバイスと呼ぶ。図1に示す例では、基本デバイスには、CPU11、MCH13a、ICH13b、システムメモリ15、GPU17、ディスプレイ19およびNVRAM27が該当する。また、基本デバイス以外の主デバイスを周辺デバイスと呼ぶ。図1に示す例では、HDD21と通信モジュール23が周辺デバイスに該当する。
The
入力デバイス39は、ユーザの操作を受け付け、受け付けた操作に応じた操作信号をEC27に出力する。入力デバイス39には、例えば、キーボード、マウス、タッチセンサなどのいずれか、またはそれらの任意の組み合わせが含まれる。
なお、MCH13aは、ICH13bと一体化して1個のチップセット13として構成されてもよい。
The
The
(機能構成)
次に、情報処理装置10の機能構成例について説明する。
図2は、本実施形態に係る情報処理装置10の機能構成例を示すブロック図である。
情報処理装置10は、処理部110および制御部120を含んで構成される。
(Function configuration)
Next, a functional configuration example of the
FIG. 2 is a block diagram showing a functional configuration example of the
The
CPU11は、電源ユニット35からの電力の供給開始を検出するときブートを開始する。ブートとは、電力の供給が開始されてから情報処理装置10全体が利用可能な状態にするまでの一連の処理を指す。ブートには、システム・ファームウェアに従って実行されるPOST処理が含まれる。POST処理は、プリブートとも呼ばれる。CPU11は、電力の供給開始を検出するとき最初にファームウェアROM25からシステム・ファームウェアを読み出し、読み出したシステム・ファームウェアに記述された命令で指示される処理を開始する。この処理がPOST処理に相当する。他方、CPU11は、電源ユニット35からの電力の供給が停止されるとき動作を停止する(シャットダウン)。
The
本願では、各種のプログラム(システム・ファームウェア、OSも含む)で記述された命令で示される処理を実行することを「プログラムを実行する」と呼ぶことがある。また、プログラムの実行を開始することを「プログラムを起動する」と呼ぶことがある。ドライバーで指示される処理を実行することを「ドライバーを実行する」と呼ぶことがある。CPU11は、読み出したシステム・ファームウェアを実行して処理部110として機能する。処理部110は、POST処理部112、および進捗情報管理部114を含んで構成される。
In the present application, executing a process indicated by an instruction described in various programs (including system firmware and OS) may be referred to as “executing a program”. Further, starting the execution of the program may be referred to as “starting the program”. Executing the process instructed by the driver is sometimes called “executing the driver”. The
システム・ファームウェアは、複数のドライバー(指令)を含んで構成される。複数のドライバーは、階層化され、1個または複数の予め定めた機能やデバイスごとに分類されたカテゴリ(分類)に対する処理(コマンド)をまとめたものである。個々のドライバーには、そのドライバーの識別情報としてステータスコードが予め設定されている。ステータスコードは、対応するドライバーが属するカテゴリごとに共通の識別情報(例えば、最上位の桁から所定の桁数の番号)を含む。
また、システム・ファームウェアに予め配列された順序で、個々のドライバーで指示される過程(ステップ)が実行される。システム・ファームウェアに配列された複数のドライバーは、上記のカテゴリもしくはそのカテゴリをさらに細分化して、相互に順序が隣接する複数のドライバーからなるセグメント(区分)ごとに区分される。1つのセグメントは、いずれかのカテゴリに属するが、1つのカテゴリは必ずしも1つのセグメントに対応するとは限らない。システム・ファームウェアでは、各セグメントの終端を示すアンカーポイントが予め設定され、その直後のセグメントと区別される。従って、実行を完了したドライバーに対応するステータスコードは、POST処理の進捗状況を示す進捗情報とみることもできる。
The system firmware includes a plurality of drivers (commands). The plurality of drivers is a layered collection of processes (commands) for a category (classification) classified by one or a plurality of predetermined functions or devices. A status code is preset for each driver as identification information of the driver. The status code includes identification information common to each category to which the corresponding driver belongs (for example, a number with a predetermined number of digits from the highest digit).
Also, the steps instructed by the individual drivers are executed in the order pre-arranged in the system firmware. The plurality of drivers arranged in the system firmware are further subdivided into the above categories or the categories, and are divided into segments (sections) each including a plurality of drivers whose order is adjacent to each other. One segment belongs to any category, but one category does not always correspond to one segment. In the system firmware, an anchor point indicating the end of each segment is preset and distinguished from the segment immediately after it. Therefore, the status code corresponding to the driver that has completed execution can be regarded as progress information indicating the progress of the POST process.
POST処理部112は、システム・ファームウェアを構成する複数のドライバーのそれぞれを、予め設定された順序で逐次に実行する。逐次に実行するとは、あるドライバーの実行を完了した後、次の順序のドライバーの実行を開始することである。POST処理部112は、あるドライバーに対する処理結果として所定の返り値(応答)を取得したとき、実行を完了したと判定することができる。POST処理部112は、実行を完了したドライバーを示す実行完了情報を進捗情報管理部114に通知する。そして、POST処理部112がシステム・ファームウェア全体の処理が完了した後、CPU11は、OSを起動させる(OSブート)。つまり、POST処理部112は、OSを起動させる前に、システム・ファームウェアに基づくPOST処理を実行する、といえる。
The
進捗情報管理部114は、POST処理部112から入力される実行完了情報を参照してPOST処理の進捗情報を管理する。進捗情報管理部114は、自部への電力の供給開始(電源投入)を検出するとき、電源投入を示す進捗情報を制御部120に出力する。
進捗情報管理部114は、実行完了情報が示すステータスコードが、予め定めたアンカーポイントに達するごとに、そのステータスコードを示す進捗情報を制御部120に出力する。
The progress
The progress
次に、システム・ファームウェアの構成例について説明する。システム・ファームウェアを構成する複数のドライバーは、基本デバイス初期化コード、一貫性検証コード、デバイス検出コード、システム設定コードおよび起動管理コードなどに分類される。デバイス検出コードは、個々のデバイスごとにさらに分類される。システム・ファームウェアには、個々のコードの実行に用いられるパラメータセットを含む。 Next, a configuration example of the system firmware will be described. The drivers that make up the system firmware are classified into a basic device initialization code, a consistency verification code, a device detection code, a system setting code, and a boot management code. The device detection code is further classified for each individual device. The system firmware contains a set of parameters used to execute the individual code.
基本デバイス初期化コードは、基本デバイスの検出、初期化、システムメモリ15へのシステム・ファームウェアの記録(ロード)を指示するコードである。システム・ファームウェアには、それらのコードで記述されたドライバーを実行するための1以上のパラメータからなるパラメータセットが含まれる。
一貫性検証コードは、システム・ファームウェアの一貫性の検証を指示するドライバーを記述したコードである。一貫性の検証は、システム・ファームウェア全体の完全性と信頼性を判定する処理である。一貫性検証コードは、システム・ファームウェアの一部を修復するための修復コードを含んでいてもよい。修復コードは、例えば、修復対象コード情報(後述)で指示されるコードの修復を示すドライバーが記述されたコードを含む。
The basic device initialization code is a code for instructing detection, initialization of the basic device, and recording (loading) of the system firmware in the
The consistency verification code is a code that describes a driver that instructs verification of the consistency of system firmware. Consistency verification is the process of determining the integrity and reliability of the entire system firmware. The consistency verification code may include repair code for repairing a portion of the system firmware. The repair code includes, for example, a code in which a driver indicating the repair of the code indicated by the repair target code information (described later) is described.
デバイス検出コードは、デバイス検出処理を指示するドライバーを記述したコードである。デバイス検出処理は、基本デバイスに接続される他のデバイスを検出し、検出した他のデバイスを初期化する処理である。検出対象となる他のデバイスは、上記の周辺デバイスに相当する。デバイス検出処理の処理結果として、検出したデバイスごとに動作の可否(イネーブル/ディスエーブル)を示す起動デバイス情報をシステム設定情報と関連付けてシステムメモリ15に記憶される。システム設定情報は、OSの起動の際に参照される。
The device detection code is a code that describes a driver that instructs a device detection process. The device detection process is a process of detecting another device connected to the basic device and initializing the detected other device. The other device to be detected corresponds to the above peripheral device. As the processing result of the device detection processing, the boot device information indicating whether or not the operation is enabled (enabled/disabled) for each detected device is stored in the
システム設定コードは、システム設定処理を指示するコードである。システム設定処理は、システム設定のためのユーザインタフェースを提供し、システム設定情報を構成する1以上のパラメータを定める処理である。システム設定処理には、例えば、所定のシステム設定画面をディスプレイ19に表示させ、表示開始から所定期間内に入力デバイス39から入力される操作信号で指示もしくは選択されるパラメータセットを設定する処理が含まれる。システム設定処理には、所定期間を経過しても操作信号が入力されない場合には、予めシステム・ファームウェアに含まれるシステム設定情報のパラメータもしくはNVRAM29に予め記憶されたパラメータをシステムメモリ15に設定する処理が含まれる。
The system setting code is a code that instructs the system setting process. The system setting process is a process of providing a user interface for system setting and defining one or more parameters constituting the system setting information. The system setting process includes, for example, a process of displaying a predetermined system setting screen on the
起動管理コードは、システム起動処理(OSブート)を指示するドライバーを記述したコード(ブート・マネジャ)である。システム起動処理は、HDD21の所定の記憶領域から予め記憶されたOSローダを読み出し、システムメモリ15に記憶(ロード)する処理である。
POST処理が完了した後、CPU11はOSローダを実行し、HDD21からOSモジュール、デバイス・ドライバーなどを読み出し、システムメモリ15に記憶(ロード)する。その後、CPU11はOSを起動する。CPU11は、OSを起動させる際、デバイス設定情報を参照して、動作可能と特定されたデバイスを起動させる。この段階で起動させるデバイスは、HDD21以外の周辺デバイスが該当する。
The boot management code is a code (boot manager) that describes a driver that instructs system boot processing (OS boot). The system activation process is a process of reading an OS loader stored in advance from a predetermined storage area of the
After the POST processing is completed, the
次に、本実施形態に係るシステム・ファームウェアのカテゴリデータの例について説明する。図3は、本実施形態に係るシステム・ファームウェアのカテゴリデータの例を示す図である。カテゴリデータは、ステータスコードごとのドライバーのカテゴリを示す。図3に示す例では、ステータスコードは、16進の4桁の数値で表される。ステータスコードの末尾の「h」は、16進数を示す符号である。ステータスコードの上1桁の数は、個々のカテゴリを示し、残りの3桁で各カテゴリ内のドライバーが区別される。ステータスコードの上1桁の「0」は、「Others」、つまり、その他のデバイスまたは機能を示す。「0」に関するカテゴリは、基本デバイス初期化コード、システム設定コード、および起動管理コードをそれぞれ構成するドライバーが含まれる。「1」、「2」、「3」、「4」、「5」は、それぞれ「Memory」、「I/O IF1」、「WLAN」、「WWAN」、「I/O IF2」、つまり、記憶媒体、第1種の入出力インタフェース、無線構内ネットワークデバイス、無線広域ネットワークデバイス、第2種の入出力インタフェースに係るデバイス別コードを示す。「F」は、「Management Engine」(マネジメントエンジン)に関するカテゴリである。「F」に関するカテゴリには、例えば、電力制御、盗難対策機能、デジタルデータの著作権管理、に関連するドライバーが含まれる。 Next, an example of category data of the system firmware according to this embodiment will be described. FIG. 3 is a diagram showing an example of category data of the system firmware according to this embodiment. The category data indicates the driver category for each status code. In the example shown in FIG. 3, the status code is represented by a 4-digit hexadecimal number. "H" at the end of the status code is a code indicating a hexadecimal number. The first digit of the status code indicates an individual category, and the remaining three digits distinguish the driver in each category. The first digit "0" of the status code indicates "Others", that is, other device or function. The category related to “0” includes drivers that respectively configure the basic device initialization code, the system setting code, and the boot management code. “1”, “2”, “3”, “4”, and “5” are respectively “Memory”, “I/O IF1”, “WLAN”, “WWAN”, and “I/O IF2”, that is, The device-specific codes relating to the storage medium, the first type input/output interface, the wireless local area network device, the wireless wide area network device, and the second type input/output interface are shown. “F” is a category related to “Management Engine” (management engine). The category related to “F” includes, for example, drivers related to power control, anti-theft function, and copyright management of digital data.
図1および図2に戻り、EC31の機能構成について説明する。EC31は、CPU11とは独立に動作する。CPU11に対する電力の供給が停止しても、EC31への電力の供給が継続される。EC31は、予め自部のメモリに展開された所定のファームウェアを実行して制御部120として機能する。EC31が実行するファームウェアは、CPU11が最初に実行を開始するシステム・ファームウェアとは別個である。以下の説明では、EC31が実行するファームウェアを、ECファームウェアと呼ぶことがある。制御部120は、進捗情報蓄積部122、異常検出部124および修復設定部126を含んで構成される。
Returning to FIG. 1 and FIG. 2, the functional configuration of the
進捗情報蓄積部122は、処理部110から入力される進捗情報を入力されるごとに蓄積し、処理履歴(ログ)として形成する。処理履歴は、入力される順に進捗情報が累積してなる。より具体的には、進捗情報蓄積部122は、入力される進捗情報と、その時点の時刻を示すタイムレコードと、その進捗情報に対応するカテゴリとを含むセットを記憶する。記憶されるセットが、処理履歴の構成要素となる。図4に示す処理履歴の例では、ID、ステータスコード(進捗情報)、タイムレコード、期間およびカテゴリを含んで構成される。
The progress
図4の第1列に示すIDは、個々の進捗情報の順序を示す番号である。第2列に示すステータスコードの欄には、必ずしもステータスコードが記述されるとは限らない。第2列では、例えば、ID「1」に対応付けて「Power On」が記述されている。「Power On」は、電源供給の開始を示す。第3列に示すタイムレコードは、対応する進捗情報が入力される時刻を示す。第4列に示す期間は、その直前の進捗情報が入力された時刻から、その時点の進捗情報が入力される時刻までの経過時間を示す。進捗情報蓄積部122は、その直前の進捗情報に対応付けられたタイムレコードが示す時刻から、その時点で進捗情報が入力される時刻までの経過時間を期間として定め、定めた期間を進捗情報と対応付けて記憶する。但し、図4のID「1」に対応する「Power On」が最初の進捗情報であるため、期間として「0」(ms)を対応付けて記述されている。第5列に示すカテゴリとして、進捗情報として入力されるステータスコードに対応するカテゴリ情報が記述される。進捗情報蓄積部122は、EC31の記憶媒体に予め記憶させておいたシステム・ファームウェアのカテゴリデータを参照して、入力されるステータスコードに対応するカテゴリを特定し、特定したカテゴリをステータスコードと対応付けて記憶する。但し、「Power On」は、ステータスコードではないために、カテゴリを特定することができず、第5列のID「1」に対応するカテゴリの欄は空欄となる。なお、処理履歴においてIDは省略されてもよい。
The ID shown in the first column of FIG. 4 is a number indicating the order of individual progress information. The status code is not always described in the status code column shown in the second column. In the second column, for example, “Power On” is described in association with ID “1”. “Power On” indicates the start of power supply. The time record shown in the third column indicates the time when the corresponding progress information is input. The period shown in the fourth column indicates the elapsed time from the time when the progress information immediately before that time is input to the time when the progress information at that time is input. The progress
異常検出部124(図2)は、進捗情報蓄積部122が蓄積した処理履歴に基づいてPOST処理の異常を検出する。異常検出部124は、例えば、POST処理がまだ完了しておらず、自装置の動作の終了を検出するとき、異常現象の一形態としてPOST処理のハングアップの発生を判定する。異常検出部124は、例えば、電源ユニット35から主デバイスへの電力の供給中に、電源ボタン37から起動制御情報が入力されるとき、自装置の動作の終了を検出することができる。このとき、CPU11は、OSのシャットダウンを開始し、シャットダウンが完了したときに情報処理装置10の動作が終了する。POST処理においてハングアップが発生すると、処理部110から進捗情報の入力が停止するためである。ハングアップとは、あるドライバーに対する処理結果として所定の応答が取得できず、以降の処理への進行が停止した状態を意味する。
The abnormality detection unit 124 (FIG. 2) detects an abnormality in the POST processing based on the processing history accumulated by the progress
異常検出部124は、動作の終了を検出するとき、シャットダウンを示す進捗情報と動作の終了を検出した時刻を示すタイムレコードを対応付けて進捗情報蓄積部122に記憶する。異常検出部124は、直前の進捗情報に対応するタイムレコードに対応する時刻から動作の終了を検出した時刻までの経過時間である期間を、さらに進捗情報に対応付けて進捗情報蓄積部122に記憶する。直前の進捗情報は、動作の終了を検出する前に処理部110から進捗情報蓄積部122に最後に入力された進捗情報に相当する。そして、異常検出部124は、その経過時間が、所定の経過時間の閾値(例えば、2〜5秒)以上であるとき、POST処理のハングアップが発生したと判定する。経過時間の閾値は、最後に入力される進捗情報が示すドライバーの直後のセグメントに係る通常の処理時間よりも格段に大きい値であればよい。異常検出部124は、ハングアップが発生したと判定するとき、ハングアップの発生を示す異常情報を進捗情報に付加して記憶する。その経過時間が、所定の経過時間の閾値未満であるとき、POST処理のハングアップは発生していないと判定する。図4の第9行に示す例では、ID「8」に対応付けて、ステータスコード、タイムスタンプ、および期間の各欄に、「Shutdown (hang)」、「2018/11/14 20:12:45:230」、および「15,074 ms」と記述されている。ステータスコードの欄の記述のうち、「(hang)」がハングアップの発生を示す異常情報に相当する。「15,074 ms」は、最後に進捗情報が入力された時刻から、動作の終了が検出された時刻までの経過時間を示す。この経過時間は、所定の経過時間の閾値以上となる。
When detecting the end of the operation, the
修復設定部126(図2)は、進捗情報蓄積部122に蓄積された処理履歴を参照し、異常が発生した過程を推定する。修復設定部126は、POST処理における異常の発生と、POST処理の再開が所定回数(例えば、3〜5回)以上繰り返され、異常の発生が推定される過程を含むセグメントが共通となる場合に、そのセグメントに対する対策の実行を設定する。但し、以下では説明を簡単にするため、POST処理における異常発生の都度、異常の発生が推定された過程を含むセグメントに対する対策を実行させる場合を例にする。
The repair setting unit 126 (FIG. 2) refers to the processing history accumulated in the progress
修復設定部126は、処理履歴の末尾における「Shutdown (hang)」の記述を含む進捗情報の直前の進捗情報が示すステータスコードに係るドライバーを、ハングアップの発生直前のドライバーとして特定することができる。修復設定部126は、さらにシステム・ファームウェアを参照し、特定したドライバーが属するセグメントの次のセグメントをハングアップの発生に係るセグメントとして特定する。修復設定部126は、特定したセグメントの最初のドライバーから最後のドライバーのいずれかで指示される過程を未完了過程として絞り込むことができる。
The
修復設定部126は、EC31の記憶媒体に予め記憶されたカテゴリデータを参照して、推定したセグメントに含まれるいずれかのドライバー(例えば、そのセグメントの最初または最後のドライバー)のステータスコードに対応するカテゴリを特定する。修復設定部126は、特定したカテゴリに応じた形態の修復処理を示す設定情報を設定する。特定したカテゴリがシステム・ファームウェアの検証(例えば、システム・ファームウェアの一貫性検証、設定パラメータの検証、等)に係る場合、修復設定部126は、ICH13b(図1)に対して、修復モードでの起動を示す起動モード情報を設定する。このような場合には、システム・ファームウェアの一部または全部が損傷している可能性があるためである。設定された起動モード情報が修復モードを示す場合には、ICH13bは、電力の供給が再開されるとき修復モードで起動する。ICH13bは、修復モードにおいてファームウェアROM25に記憶されたシステム・ファームウェアのコードを修復する。例えば、ICH13bは、予めNVRAM27に記憶されたシステム・ファームウェアを、MCH13aを経由して読み出し、ファームウェアROM25に記憶されたシステム・ファームウェアのコードを、読み出したコードに更新する。
ICH13bは、システム・ファームウェアのコードを修復した後、自部に設定された起動モード情報を、通常モードを示す起動モード情報に更新する。通常モードを示す起動モード情報が設定されている場合、ICH13bはシステム・ファームウェアの修復を行わない。ICH13bには、初期設定として、通常モードを示す起動モード情報を設定しておく。その後、CPU11は修復後のシステム・ファームウェアに従ってPOST処理を実行する。
The
After repairing the code of the system firmware, the
そこで、POST処理を成功裏に完了したとき、POST処理部112は、完了したPOST処理を指示するシステム・ファームウェアのコードをNVRAM27に予め記憶しておいてもよい。または、NVRAM27に予め動作の確認がなされたシステム・ファームウェアのコードと設定パラメータを予め記憶しておいてもよい。
ICH13bは、POST処理の実行前に、更新したコードに対して既知の手法を用いて一貫性の検証と誤り訂正の一方または両方を行ってもよい。
Therefore, when the POST processing is completed successfully, the
The
特定したカテゴリが特定のデバイスに係る場合には、修復設定部126は、そのデバイスに関する対策を実行させる。修復設定部126は、例えば、次回以降のPOST処理におけるそのデバイスに係る過程の省略(スキップ)を設定してもよい。その場合、修復設定部126は、システム・ファームウェアのパラメータセットのうち、そのデバイスに係る過程の実行否を示す実行要否パラメータをファームウェアROM25に設定する。POST処理部112は、実行要否パラメータを参照して、次回のPOST処理において、そのデバイスに係る過程を省略する。
If the specified category relates to a specific device, the
修復設定部126は、実行要否パラメータの設定に代えて、または、その設定とともに、そのデバイスに係る過程を示すデバイス別コードを修復対象として示す修復対象コード情報をファームウェアROM25に設定する。POST処理部112は、実行要否パラメータを参照して、次回のPOST処理において、修復対象コード情報で示されるコードであって、そのデバイスに係るデバイス別コードを修復する。その場合、修復設定部126は、NVRAM27から、そのデバイスに係る過程を示すデバイス別コードを読み出し、ファームウェアROM25に記憶されたシステム・ファームウェアのうち、そのデバイスに係る過程を示すデバイス別コードを、読み出したデバイス別コードに更新する。修復設定部126は、更新したコードに対して既知の手法を用いて一貫性の検証および誤り訂正を行ってもよい。
The
次に、本実施形態に係るPOST処理の例について説明する。図5は、本実施形態に係るPOST処理の例を示すフローチャートである。
(ステップS102)CPU11は、電源ユニット35からの電力の供給開始を検出するとき、ファームウェアROM25からシステム・ファームウェアを読み出す。その後、ステップS104の処理に進む。
(ステップS104)CPU11は、読み出したシステム・ファームウェアの実行を開始し、処理部110としての機能(POST処理を含む)を開始する。
進捗情報管理部114は、電源投入を示す進捗情報を生成し、制御部120に出力する。その後、ステップS106の処理に進む。
Next, an example of the POST process according to this embodiment will be described. FIG. 5 is a flowchart showing an example of the POST processing according to this embodiment.
(Step S102) When the
(Step S104) The
The progress
(ステップS106)POST処理部112は、システム・ファームウェアを構成するドライバーを実行する。
進捗情報管理部114は、実行が完了したドライバーを監視し、最後に実行が完了したドライバーが所定のアンカーポイントに到達するとき、そのドライバーを示すステータスコードを進捗情報として制御部120に出力する。但し、進捗情報管理部114は、POST処理の開始当初、つまり、自部への電力の供給開始を検出するとき、電源投入を示す進捗情報を制御部120に出力する。その後、システム・ファームウェアを構成するドライバーのうち、実行対象のドライバーを次のドライバーに進め、ステップS108の処理に進む。
(Step S106) The
The progress
(ステップS108)POST処理部112は、POST処理が完了したか否かを判定する。POST処理部112は、システム・ファームウェアを構成する全ドライバーについて実行が完了するとき、POST処理が完了したと判定することができる。その後、ステップS110の処理に進む。POST処理が完了した段階では、起動管理コードの実行も完了し、HDD21に予め記憶されたOSローダが読み出され、システムメモリ15に記憶された状態となる。
(ステップS110)CPU11は、OSローダを実行し、HDD21からOSモジュール、デバイス・ドライバーなどを読み出し、システムメモリ15に記憶する。そして、CPU11は、OSブートを実行する。その後、図5に示す処理を終了する。
(Step S108) The
(Step S110) The
次に、本実施形態に係る異常検出処理の例について説明する。図6は、本実施形態に係る異常検出処理の例を示すフローチャートである。
制御部120は、図6に示す処理を、電源ユニット35から主デバイスに電力が供給されていないとき、または電源ボタン37から起動制御情報が入力されるときに開始する。
(ステップS122)異常検出部124は、OSのシャットダウンが指示されたか否かを判定する。異常検出部124は、例えば、通電中に電源ボタン37からの起動制御情報が入力されるとき、OSのシャットダウンが指示されたと判定し、起動制御情報が入力されないとき、シャットダウンは指示されていないと判定することができる。異常検出部124が、シャットダウンが指示されたと判定する場合(ステップS122 YES)、シャットダウンを示す進捗情報とシャットダウンを検出した時刻を示すタイムレコードを対応付けて進捗情報蓄積部122に記憶する。その後、ステップS128の処理に進む。シャットダウンが指示されていないと判定する場合(ステップS122 NO)、ステップS124の処理に進む。
Next, an example of the abnormality detection processing according to the present embodiment will be described. FIG. 6 is a flowchart showing an example of the abnormality detection processing according to this embodiment.
The
(Step S122) The
(ステップS124)進捗情報蓄積部122は、処理部110からの進捗情報の入力を待ち受ける。進捗情報蓄積部122に進捗情報が入力されるとき(ステップS124 YES)、ステップS126の処理に進む。進捗情報蓄積部122に進捗情報が入力されないとき(ステップS124 NO)、ステップS122の処理に戻る。
(ステップS126)進捗情報蓄積部122は、入力された進捗情報を、その時刻を示す時刻情報としてタイムレコードと対応付けて蓄積する。入力された進捗情報がステータスコードである場合には、進捗情報蓄積部122は、カテゴリデータを参照してステータスコードに対応するカテゴリ情報を特定し、特定したカテゴリ情報をさらに進捗情報と対応付けて蓄積する。その後、ステップS122の処理に進む。
(Step S124) The progress
(Step S126) The progress
(ステップS128)異常検出部124は、直前の進捗情報が入力された時刻からシャットダウンを判定した時刻までの経過時間が所定の経過時間の閾値以上であるか否かを判定する。所定の経過時間の閾値以上であると判定するとき(ステップS128 YES)、ステップS130の処理に進む。所定の経過時間の閾値未満であると判定するとき(ステップS128 NO)、図6の処理を終了する。
(ステップS130)異常検出部124は、POST処理においてハングアップが発生したと判定する。その後、ステップS132の処理に進む。
(ステップS132)異常検出部124は、ハングアップの発生を示す異常情報を進捗情報に付加して記憶する。その後、図6の処理を終了する。
(Step S128) The
(Step S130) The
(Step S132) The
次に、本実施形態に係る修復設定処理の例について説明する。
図7は、本実施形態に係る修復設定処理の例を示すフローチャートである。
(ステップS142)修復設定部126は、進捗情報蓄積部122に蓄積された処理履歴を参照し、ハングアップの発生を示す進捗情報の直前の進捗情報が示すステータスコードを特定する。修復設定部126は、システム・ファームウェアを参照し、特定したステータスコードで示されるドライバーが属するセグメントの次のセグメントをハングアップの発生に係るセグメントとして推定する。その後、ステップS144の処理に進む。
(ステップS144)修復設定部126は、予め記憶されたカテゴリデータを参照して、推定したセグメントのいずれかのドライバーのステータスコードに対応するカテゴリを定める。その後、ステップS146の処理に進む。
Next, an example of the repair setting process according to this embodiment will be described.
FIG. 7 is a flowchart showing an example of the repair setting process according to this embodiment.
(Step S142) The
(Step S144) The
(ステップS146)定めたカテゴリが特定のデバイスに関連するカテゴリであるとき(ステップS146 YES)、修復設定部126は、ステップS148の処理に進む。定めたカテゴリが特定のデバイスに関連するカテゴリではないとき(ステップS146 NO)、修復設定部126は、ステップS150の処理に進む。
(ステップS148)修復設定部126は、定めたカテゴリに関連するデバイスに関する対策を実行させる。例えば、修復設定部126は、定めたカテゴリに関連するデバイスに係る過程の実行否を示す実行要否パラメータをファームウェアROM25に設定する。修復設定部126は、定めたカテゴリに関連するデバイスに係るデバイス別コードを修復対象として示す修復対象コード情報をファームウェアROM25に設定する。その後、図7に示す処理を終了する。
(ステップS150)修復設定部126は、ICH13bに対して、修復モードでの起動を示す起動モード情報を設定する。その後、図7に示す処理を終了する。
(Step S146) When the determined category is a category related to a specific device (step S146 YES), the
(Step S148) The
(Step S150) The
なお、以上の説明では、異常検出部124は、最後に進捗情報が処理部110から入力された時刻からOSのシャットダウンを検出する時刻までの経過時間が、所定の経過時間の閾値以上である場合に、ハングアップを検出する場合を例にしたが、これには限られない。異常検出部124は、POST処理がまだ完了していない段階において、最後に進捗情報が入力された時刻から、新たな進捗情報が入力されない状態が継続する時間が、所定の経過時間の閾値以上である場合に、ハングアップを検出してもよい。このとき、異常検出部124は、起動制御信号を電源ユニット35に出力し、電源ユニット35に対して主デバイスへの電力の供給を停止させてもよい。このとき、OSがシャットダウンすることになる。異常検出部124は、上記のように、シャットダウンを示す進捗情報およびシャットダウンを検出した時刻を示すタイムレコードを対応付け、さらにハングアップの発生を示す異常情報を進捗情報に付加して進捗情報蓄積部122に記憶する。
In the above description, the
また、異常検出部124には、システム・ファームウェアのセグメントごとに処理時間の異常を検出するための検出閾値を予め設定しておいてもよい。検出閾値は、通常の処理時間よりも顕著に大きい値であればよい。進捗情報蓄積部122は、上記のように、処理部110から入力される進捗情報に基づいて、その進捗情報に係るセグメントの処理時間を算出する。異常検出部124は、進捗情報蓄積部122は算出した処理時間が設定された検出閾値以上となるか否かを判定し、検出閾値以上となるとき、処理の遅延を示す異常情報を、進捗情報に付加して進捗情報蓄積部122に記録してもよい。
修復設定部126は、進捗情報に異常情報が付加されたセグメントを特定し、上記のカテゴリデータを参照して、推定したセグメントのいずれかのドライバーのステータスコードに対応するカテゴリを特定してもよい。修復設定部126は、上記のように、特定したカテゴリに応じた形態の修復処理を設定してもよい。
Further, the
The
以上に説明したように、本実施形態に係る情報処理装置10は、システム・ファームウェアに基づく処理(例えば、POST処理)を実行する処理部110と、その処理を制御する制御部120と、を備える。処理部は、その処理の進捗状況を示す進捗情報を、システム・ファームウェアに基づく処理の実行中に制御部120に出力し、制御部120は、その処理の完了前に進捗情報が入力されるタイミングに基づいてその処理の異常を検出する。
この構成によれば、制御部120は、システム・ファームウェアに基づく処理の進捗状況を示す進捗情報に基づいて、その処理の異常を検出することができる。
As described above, the
With this configuration, the
また、制御部120は、進捗情報が最後に入力された時刻から自装置のシャットダウンが指示される時刻までの経過時間に基づいて異常の発生を判定し、異常を示す異常情報を記憶してもよい。
この構成によれば、システム・ファームウェアの処理の異常として、ハングアップを検出ならびに記録することができる。
Further, the
With this configuration, it is possible to detect and record a hang-up as an abnormality in the processing of the system firmware.
また、進捗情報は、実行が完了した過程を示すステータスコードであり、制御部120は、自装置の動作停止が指示されるとき、最後に入力された進捗情報に基づいて、実行が完了していない過程である未完了過程を推定する。また、制御部120は、システム・ファームウェアの処理に含まれる過程ごとのカテゴリを示すカテゴリデータに基づいて、未完了過程の種別を定める。
この構成によれば、システム・ファームの処理のうち、異常が発生した未完了過程が推定され、推定された未完了過程の種別が定まる。そのため、未完了過程の種別に応じてシステム・ファームウェアの処理を正常に終了するための手がかりを得ることができる。
In addition, the progress information is a status code indicating a process in which the execution is completed, and when the
According to this configuration, of the processes of the system farm, the incomplete process in which the abnormality has occurred is estimated, and the type of the estimated incomplete process is determined. Therefore, it is possible to obtain a clue for normally ending the processing of the system firmware according to the type of the incomplete process.
また、未完了過程がシステム・ファームウェアの検証に関する過程であるとき、制御部120は、システム・ファームウェアの修復を設定する。
この構成によれば、システム・ファームウェアを修復することで、修復後のシステム・ファームウェアに基づく処理を、正常に完了させることができる。
Also, when the incomplete process is a process related to verification of the system firmware, the
According to this configuration, by repairing the system firmware, the processing based on the repaired system firmware can be normally completed.
未完了過程が処理部110に接続される機器に関する過程であるとき、制御部120は、その機器に関する過程の省略を設定する。
この構成によれば、次にシステム・ファームウェアに基づく処理が実行されるとき、その機器に関する過程が省略されるので、その処理をより確実に完了させることができる。
When the incomplete process is a process related to a device connected to the
According to this configuration, when the process based on the system firmware is executed next time, the process related to the device is omitted, so that the process can be completed more reliably.
未完了過程が処理部110に接続される機器に関する過程であるとき、制御部120は、その機器に関する過程に係る機器別ファームウェアの修復を設定する。
この構成によれば、次にシステム・ファームウェアに基づく処理が実行されるとき、修復された機器別ファームウェアに基づいてその機器に関する過程が実行されるので、その処理をより確実に完了させることができる。
When the incomplete process is a process related to a device connected to the
With this configuration, when the process based on the system firmware is executed next time, the process related to the device is executed based on the repaired device-specific firmware, so that the process can be completed more reliably. ..
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。上述の実施形態において説明した各構成は、任意に組み合わせることができる。 Although the embodiments of the present invention have been described in detail above with reference to the drawings, the specific configuration is not limited to the above-described embodiments, and includes a design and the like within a range not departing from the gist of the present invention. The configurations described in the above embodiments can be arbitrarily combined.
10…情報処理装置、11…CPU、13…チップセット、13a…MCH、13b…ICH、15…システムメモリ、17…GPU、19…ディスプレイ、21…HDD、23…通信モジュール、25…ファームウェアROM、27…NVRAM、31…EC、35…電源ユニット、37…電源ボタン、39…入力デバイス、110…処理部、112…POST処理部、114…進捗情報管理部、120…制御部、122…進捗情報蓄積部、124…異常検出部、126…修復設定部 10... Information processing device, 11... CPU, 13... Chip set, 13a... MCH, 13b... ICH, 15... System memory, 17... GPU, 19... Display, 21... HDD, 23... Communication module, 25... Firmware ROM, 27... NVRAM, 31... EC, 35... Power supply unit, 37... Power button, 39... Input device, 110... Processing unit, 112... POST processing unit, 114... Progress information management unit, 120... Control unit, 122... Progress information Storage unit, 124... Abnormality detection unit, 126... Repair setting unit
Claims (6)
前記処理を制御する制御部と、を備え、
前記処理部は、
前記処理の進捗状況を示す進捗情報を前記処理の実行中に前記制御部に出力し、
前記制御部は、
前記処理の完了前に前記進捗情報が最後に入力された時刻から自装置の動作停止が指示される時刻までの経過時間に基づいて異常の発生を判定し、
前記異常を判定するとき、前記異常を示す異常情報を記憶する
情報処理装置。 A processing unit that executes processing based on system firmware before the operating system starts,
A control unit for controlling the processing,
The processing unit is
Outputting progress information indicating the progress status of the process to the control unit during execution of the process,
The control unit is
Before the completion of the process, the occurrence of abnormality is determined based on the elapsed time from the time when the progress information was last input to the time when the operation stop of the own device is instructed,
An information processing device that stores abnormality information indicating the abnormality when determining the abnormality .
前記制御部は、
自装置の動作停止が指示されるとき、
最後に入力された進捗情報に基づいて、実行が完了していない過程である未完了過程を推定し、
前記処理に含まれる過程ごとのカテゴリを示すカテゴリデータに基づいて、
前記未完了過程の種別を定める
請求項1に記載の情報処理装置。 The progress information indicates the process of completion of execution,
The control unit is
When instructed to stop the operation of own device,
Based on the progress information entered at the end, estimate the incomplete process, which is the process that has not been completed,
Based on the category data indicating the category for each process included in the process,
The information processing apparatus according to claim 1, wherein the type of the incomplete process is determined.
請求項2に記載の情報処理装置。 The information processing apparatus according to claim 2 , wherein when the incomplete process is a process related to verification of the system firmware, the control unit sets restoration of the system firmware.
請求項2または請求項3に記載の情報処理装置。 When said uncompleted process is a process related to equipment connected to the processing unit, wherein the control unit, the information processing apparatus according to claim 2 or claim 3 sets the omission of process relating to the device.
請求項2から請求項4のいずれか一項に記載の情報処理装置。 When the a process related equipment uncompleted process is connected to the processing unit, wherein the control unit, any one of the preceding claims 2 to set the repair of equipment by firmware according to the process relating to the device The information processing device according to 1.
前記処理を制御する制御部と、を備える情報処理装置の方法であって、
前記処理部が、前記処理の進捗状況を示す進捗情報を前記処理の実行中に前記制御部に出力するステップと、
前記制御部が、前記処理の完了前に前記進捗情報が最後に入力された時刻から自装置の動作停止が指示される時刻までの経過時間に基づいて異常の発生を判定し、
前記異常を判定するとき、前記異常を示す異常情報を記憶するステップと、を有する
情報処理方法。 A processing unit that executes processing based on system firmware before the operating system starts,
A method of an information processing apparatus comprising: a control unit that controls the processing,
A step in which the processing section outputs progress information indicating a progress status of the processing to the control section during execution of the processing;
The control unit determines the occurrence of abnormality based on the elapsed time from the time when the progress information was last input before the completion of the process to the time when the operation stop of the own device is instructed,
Storing the abnormality information indicating the abnormality when the abnormality is determined .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019033144A JP6723400B1 (en) | 2019-02-26 | 2019-02-26 | Information processing apparatus and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019033144A JP6723400B1 (en) | 2019-02-26 | 2019-02-26 | Information processing apparatus and information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6723400B1 true JP6723400B1 (en) | 2020-07-15 |
JP2020140241A JP2020140241A (en) | 2020-09-03 |
Family
ID=71523913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019033144A Active JP6723400B1 (en) | 2019-02-26 | 2019-02-26 | Information processing apparatus and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6723400B1 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007102511A (en) * | 2005-10-05 | 2007-04-19 | Hitachi Ltd | Information processor |
JP5275715B2 (en) * | 2008-07-31 | 2013-08-28 | 株式会社日本デジタル研究所 | Error notification method, information processing apparatus, and communication system |
JP2013011988A (en) * | 2011-06-28 | 2013-01-17 | Toshiba Corp | Diagnostic method for ic cards and program codes |
JP5994246B2 (en) * | 2011-12-16 | 2016-09-21 | 日本電気株式会社 | Information processing apparatus, information processing method, and program |
JP2016170621A (en) * | 2015-03-12 | 2016-09-23 | 株式会社リコー | Image processing system, image processing method and program |
JP2017097398A (en) * | 2015-11-18 | 2017-06-01 | 株式会社リコー | Inspection device, inspection method, inspection program, and recording medium storing inspection program |
-
2019
- 2019-02-26 JP JP2019033144A patent/JP6723400B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2020140241A (en) | 2020-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5564054A (en) | Fail-safe computer boot apparatus and method | |
US5745669A (en) | System and method for recovering PC configurations | |
US20040158702A1 (en) | Redundancy architecture of computer system using a plurality of BIOS programs | |
US7941658B2 (en) | Computer system and method for updating program code | |
EP2068246A1 (en) | Auto repair method of system configurations using single key control | |
US9424022B2 (en) | Method for updating firmware of an electronic device within a computer | |
CN102722394B (en) | Start upgrading method of embedded equipment | |
JP5328720B2 (en) | Information processing device | |
US20120191965A1 (en) | Boot systems and methods, and related devices | |
JP4876099B2 (en) | Information processing device | |
TW200809489A (en) | BIOS damage detection and repair method and the motherboard | |
KR100899582B1 (en) | Information processing apparatus, control apparatus therefor, control method therefor and control program | |
JP6723400B1 (en) | Information processing apparatus and information processing method | |
JPH08129495A (en) | Computer system and self test method therefor | |
JP2009211625A (en) | Start log storage method for information processor | |
CN110471800B (en) | Server and method for automatically overhauling substrate management controller | |
TWI808362B (en) | Computer system and method capable of self-monitoring and restoring an operation of operating system | |
JP2005165415A (en) | Information processor and method and program for starting system | |
US7822492B2 (en) | Methods and systems for operating an automated system using a process definition model | |
CN111382009B (en) | Automatic system maintenance method and computer equipment with automatic maintenance function | |
JP2021157489A (en) | Information processing apparatus and information processing system | |
JP2005031903A (en) | Information processor | |
US20030177147A1 (en) | Method for updating a keyboard controller in a notebook computer | |
CN111400076B (en) | Downtime restoration method, device, equipment and storage medium | |
JP4061911B2 (en) | Memory check method, method, and memory check program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190226 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200327 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200407 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200602 |
|
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: 20200616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200623 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6723400 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |