JP7069551B2 - Information processing equipment and information processing method - Google Patents

Information processing equipment and information processing method Download PDF

Info

Publication number
JP7069551B2
JP7069551B2 JP2017055028A JP2017055028A JP7069551B2 JP 7069551 B2 JP7069551 B2 JP 7069551B2 JP 2017055028 A JP2017055028 A JP 2017055028A JP 2017055028 A JP2017055028 A JP 2017055028A JP 7069551 B2 JP7069551 B2 JP 7069551B2
Authority
JP
Japan
Prior art keywords
processing time
specific
processing
system management
level software
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
JP2017055028A
Other languages
Japanese (ja)
Other versions
JP2018156603A (en
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.)
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 JP2017055028A priority Critical patent/JP7069551B2/en
Publication of JP2018156603A publication Critical patent/JP2018156603A/en
Application granted granted Critical
Publication of JP7069551B2 publication Critical patent/JP7069551B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、情報処理装置及び情報処理方法に関する。 The present invention relates to an information processing apparatus and an information processing method.

SMI(System Management Interrupts)と称されるシステム管理割込みは、拡張機能を提供する場合に使用される。また、システム管理割込みは、システム管理作業にも使用することができる。システム管理割込みは、特殊な電気的信号行をプロセッサに直接使用する点がNMI(Non-Maskable Interrupt)と似ている。システム管理割込みは、一般的にはマスクできない。 System management interrupts, called SMIs (System Management Interrupts), are used to provide extended functionality. System management interrupts can also be used for system management work. System-managed interrupts are similar to NMIs (Non-Mastable Interrupt) in that they use special electrical signal lines directly in the processor. System management interrupts generally cannot be masked.

プロセッサは、システム管理割込みを受け取ると、SMM(System Management Mode)と称されるシステム管理モードに入る。このモードでは、非常に低いレベルのハンドラールーチンが実行されシステム管理割込みを処理する。システム管理モードは、一般的にはBIOS(Basic Input/Output System)やEFI(Extensible Firmware Interface)といったシステム管理ファームウェアから直接提供される。 Upon receiving the system management interrupt, the processor enters a system management mode called SMM (System Management Mode). In this mode, very low level handler routines are executed to handle system management interrupts. The system management mode is generally provided directly from system management firmware such as BIOS (Basic Input / Output System) or EFI (Extensible Firmware Interface).

システム管理割込みは、システム管理ファームウェアの上位のOS(Operating System)やドライバといった上位ソフトウェアに直接かかわることなく発生するため、上位ソフトウェアの運用に悪影響を及ぼす場合がある。不完全な記述のシステム管理割込み処理ルーティンは、長時間かかることがある。そのため、上位ソフトウェアは、必要なときにハンドラーを先取りすることができなくなる。この状態は、正しくチューニングが行われ高い応答性を持つシステムであっても定期的に高遅延を見せる原因となる。このように、システム管理モードでは、システム管理ファームウェアのみが動作可能で、上位ソフトウェアが全く動作不可能となる。 Since the system management interrupt occurs without being directly related to the higher-level software such as the higher-level OS (Operating System) and driver of the system-management firmware, it may adversely affect the operation of the higher-level software. Incompletely described system management interrupt handling routines can take a long time. As a result, higher-level software cannot anticipate handlers when needed. This condition causes a high delay on a regular basis even in a system that is tuned correctly and has high responsiveness. As described above, in the system management mode, only the system management firmware can operate, and the higher-level software cannot operate at all.

また、システム管理モードは、上位ソフトウェアのランタイムのうち、唯一、システム管理ファームウェアのコードを独立して動作させることが可能なモードでもある。そのため、システム管理ファームウェアは、プラットフォーム特有の障害処理、不揮発性メモリの書き込み、不揮発性メモリのガベージコレクション、ライブメモリダンプ機能といった、システム管理ファームウェアとしての基本機能のみならず付加価値機能に至るまで、多岐にわたる特定処理を実行することができる。 In addition, the system management mode is also the only mode in which the code of the system management firmware can be operated independently among the runtimes of the higher-level software. Therefore, the system management firmware has a wide range of functions including not only basic functions as system management firmware but also value-added functions such as platform-specific failure handling, writing of non-volatile memory, garbage collection of non-volatile memory, and live memory dump function. It is possible to execute specific processing over.

システム管理モードを使用したシステム管理ファームウェアの特定処理にかかる時間は、例えばRAS(Reliability Availability Serviceability)機能の高可用性、高信頼性の向上に伴う処理量の増大に起因して、長くなる可能性がある。 The time required for specifying the system management firmware using the system management mode may be long, for example, due to the high availability of the RAS (Reliability Availability Service) function and the increase in the processing amount due to the improvement of high reliability. be.

例えば、10ギガビット毎秒の通信環境では、システム管理モードの時間が1ミリ秒であれば、約10メガビットのパケットロスとなる。同一時間におけるパケットロス量は、今後、通信技術の向上に伴い、更に増大する。 For example, in a communication environment of 10 gigabits per second, if the system management mode time is 1 millisecond, a packet loss of about 10 megabits will occur. The amount of packet loss at the same time will increase further with the improvement of communication technology in the future.

このような背景に関連する技術として、特許文献1には、OSの運用に悪影響を与えずに、OSの運用中におけるシステム管理モードのプログラム処理時間を最適化できる装置が開示されている。特許文献1に記載の装置は、システム管理モードで実行するプログラムを格納する。そして、この装置は、プロセッサがスリープモードの状態であるかを判定する。そして、この装置は、プロセッサがOSの実行中に、プロセッサをシステム管理モードへ移行させ、プログラムの一部を実行させた後、システム管理モードを終了させることを、プログラムの実行が完了するまで、1サイクル以上繰り返し行い、システム管理モードへの移行直前の判定結果を参照し、スリープモードであるときには、スリープモードでないときと比較して、1サイクルあたりのプログラムの実行時間を長くして、プログラムをプロセッサに実行させる。 As a technique related to such a background, Patent Document 1 discloses a device capable of optimizing the program processing time of the system management mode during the operation of the OS without adversely affecting the operation of the OS. The apparatus described in Patent Document 1 stores a program executed in the system management mode. The device then determines if the processor is in sleep mode. Then, while the processor is executing the OS, this device shifts the processor to the system management mode, executes a part of the program, and then terminates the system management mode until the execution of the program is completed. Repeat for one cycle or more, refer to the judgment result immediately before the transition to the system management mode, and in the sleep mode, the execution time of the program per cycle is longer than in the non-sleep mode, and the program is executed. Let the processor do it.

特開2014-089622号公報Japanese Unexamined Patent Publication No. 2014-089622

特許文献1に記載の技術では、システム管理モードを使用したシステム管理ファームウェアの特定処理にかかる時間を短縮することが考慮されている。しかしながら、実情は、このような特定処理にかかる時間の短縮が限界となりつつある。 In the technique described in Patent Document 1, it is considered to reduce the time required for the specific processing of the system management firmware using the system management mode. However, in reality, the reduction of the time required for such a specific process is becoming a limit.

この発明は、上記実情に鑑みて成されたものであり、システム管理モードを使用したシステム管理ファームウェアの特定処理にかかる時間を短縮せずとも、このような特定処理に起因する上位ソフトウェアにおける遅延に対して、好適に対応することができる情報処理装置及び情報処理方法の提供を目的とする。 The present invention has been made in view of the above circumstances, and even if the time required for the specific processing of the system management firmware using the system management mode is not shortened, the delay in the higher-level software due to such specific processing can be caused. On the other hand, it is an object of the present invention to provide an information processing apparatus and an information processing method that can be suitably dealt with.

上記目的を達成するため、本願発明に係る情報処理装置は、システム管理ファームウェアと、前記システム管理ファームウェアの上位ソフトウェアとを備え、前記上位ソフトウェアは、当該上位ソフトウェアにて、処理やデータ転送の処理時間が、標準的な処理時間、あるいは、推定処理時間よりも、予め定められた特定時間多く経過した場合に、当該上位ソフトウェアにおける遅延の要因が、システム管理モードを使用した前記システム管理ファームウェアの特定処理に起因するかを判定する要因判定部を有し、前記上位ソフトウェアは、前記特定処理にて許容されない遅延があったかを判定する遅延判定部を更に有し、前記要因判定部は、前記特定処理にて許容されない遅延があったと前記遅延判定部が判定した場合に、前記上位ソフトウェアにおける遅延の要因が前記特定処理に起因すると判定し、前記上位ソフトウェアは、前記特定処理にかかる推定処理時間と、前記特定処理にかかった実処理時間とを取得する処理時間取得部を更に有し、前記遅延判定部は、前記処理時間取得部が取得した前記推定処理時間と前記実処理時間とに基づいて、前記特定処理にて許容されない遅延があったかを判定し、前記システム管理ファームウェアは、前記上位ソフトウェアからアクセス可能な格納領域であって前記推定処理時間と前記実処理時間とが格納されている格納領域を前記上位ソフトウェアに通知する格納領域通知部を更に有し、前記処理時間取得部は、前記システム管理ファームウェアから通知された格納領域に格納されている前記推定処理時間と前記実処理時間とを取得するIn order to achieve the above object, the information processing apparatus according to the present invention includes system management firmware and higher-level software of the higher-level software, and the higher-level software is the higher-level software for processing and data transfer processing time. However, when a predetermined specific time elapses longer than the standard processing time or the estimated processing time, the cause of the delay in the higher-level software is the specific processing of the system management firmware using the system management mode. The higher-level software further has a delay determination unit for determining whether or not there is an unacceptable delay in the specific processing, and the factor determination unit is used for the specific processing. When the delay determination unit determines that there is an unacceptable delay, it is determined that the cause of the delay in the higher-level software is due to the specific processing, and the higher-level software determines that the estimated processing time required for the specific processing and the said. Further, the delay determination unit has a processing time acquisition unit for acquiring the actual processing time required for the specific processing, and the delay determination unit is based on the estimated processing time acquired by the processing time acquisition unit and the actual processing time. It is determined whether or not there is an unacceptable delay in the specific processing, and the system management firmware uses the storage area accessible from the higher-level software in which the estimated processing time and the actual processing time are stored. Further, the storage area notification unit for notifying the higher-level software is provided, and the processing time acquisition unit acquires the estimated processing time and the actual processing time stored in the storage area notified from the system management firmware .

また、上記発明を達成するため、本願発明に係る情報処理方法は、システム管理ファームウェアの上位ソフトウェアが、当該上位ソフトウェアにて、処理やデータ転送の処理時間が、標準的な処理時間、あるいは、推定処理時間よりも、予め定められた特定時間多く経過した場合に、当該上位ソフトウェアにおける遅延の要因が、前記システム管理ファームウェアによるシステム管理の特定処理に起因するかを判定する要因判定段階を含み、前記上位ソフトウェアは、前記特定処理にて許容されない遅延があったかを判定する遅延判定段階を更に有し、前記要因判定段階は、前記特定処理にて許容されない遅延があったと前記遅延判定段階が判定した場合に、前記上位ソフトウェアにおける遅延の要因が前記特定処理に起因すると判定し、前記上位ソフトウェアは、前記特定処理にかかる推定処理時間と、前記特定処理にかかった実処理時間とを取得する処理時間取得段階を更に有し、前記遅延判定段階は、前記処理時間取得段階が取得した前記推定処理時間と前記実処理時間とに基づいて、前記特定処理にて許容されない遅延があったかを判定し、前記システム管理ファームウェアは、前記上位ソフトウェアからアクセス可能な格納領域であって前記推定処理時間と前記実処理時間とが格納されている格納領域を前記上位ソフトウェアに通知する格納領域通知段階を更に有し、前記処理時間取得段階は、前記システム管理ファームウェアから通知された格納領域に格納されている前記推定処理時間と前記実処理時間とを取得するFurther, in order to achieve the above invention, in the information processing method according to the present invention, the higher-level software of the system management firmware uses the higher-level software to set the processing time for processing or data transfer to the standard processing time or estimation. Includes a factor determination step for determining whether the cause of the delay in the higher-level software is due to the specific processing of system management by the system management firmware when a predetermined specific time has elapsed more than the processing time. The higher-level software further has a delay determination step of determining whether or not there is an unacceptable delay in the specific process, and the delay determination step determines that the factor determination step has an unacceptable delay in the specific process. In this case, it is determined that the cause of the delay in the higher-level software is due to the specific processing, and the higher-level software acquires the estimated processing time required for the specific processing and the actual processing time required for the specific processing. The delay determination stage further has an acquisition stage, and the delay determination stage determines whether or not there is an unacceptable delay in the specific processing based on the estimated processing time acquired by the processing time acquisition stage and the actual processing time. The system management firmware further has a storage area notification stage for notifying the higher-level software of a storage area that is accessible from the higher-level software and in which the estimated processing time and the actual processing time are stored. The processing time acquisition step acquires the estimated processing time and the actual processing time stored in the storage area notified by the system management software .

このような構成においては、システム管理モードを使用したシステム管理ファームウェアの特定処理にかかる時間を短縮せずとも、このような特定処理に起因する上位ソフトウェアにおける遅延に対して、好適に対応することができる。 In such a configuration, it is possible to appropriately cope with the delay in the higher-level software caused by such a specific process without shortening the time required for the specific process of the system management firmware using the system management mode. can.

この実施の形態における情報処理装置の構成の一例を示す図である。It is a figure which shows an example of the structure of the information processing apparatus in this embodiment. 特定処理情報格納部に格納されている情報の一例をテーブル形式で示す図である。It is a figure which shows an example of the information stored in the specific processing information storage part in a table format. 処理時間格納部に格納される情報の一例をテーブル形式で示す図である。It is a figure which shows an example of the information stored in a processing time storage part in a table format. システム管理モードを使用した特定処理に伴うBIOSの処理の一例を示すフローチャートである。It is a flowchart which shows an example of the process of BIOS associated with the specific process using the system management mode. BIOSからの格納領域の通知に伴うOSの処理の一例を示すフローチャートである。It is a flowchart which shows an example of the processing of the OS accompanying the notification of a storage area from BIOS. OSにてタイムアウトが検知されたこと伴うOSの処理の一例を示すフローチャートである。It is a flowchart which shows an example of the processing of the OS with the time-out detected by the OS. 最小構成の情報処理装置の一例を示す図である。It is a figure which shows an example of the information processing apparatus of the minimum configuration.

以下、図面を参照しつつ、本発明の一実施形態を詳細に説明する。図1は、この実施の形態におけるサーバ100の構成の一例を示す図である。ここで、サーバ100とは、コンピュータネットワークにおいて、他のコンピュータに対し、自身の持っている機能やサービス、データ等を提供するコンピュータである。なお、サーバ100は、この発明における「情報処理装置」の一例である。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a diagram showing an example of the configuration of the server 100 in this embodiment. Here, the server 100 is a computer that provides its own functions, services, data, and the like to other computers in a computer network. The server 100 is an example of the "information processing device" in the present invention.

サーバ100は、BIOS110と、OS120とを備える。ここで、BIOS120とは、サーバ100の主基板等に格納され、起動時のOS120の読み込みや、接続された装置・機器に対する基本的な入出力制御等を行うシステム管理ファームウェアである。一方、OS120とは、機器の基本的な管理や制御のための機能や、多くのソフトウェアが共通して利用する基本的な機能等を実装し、システム全体を管理するソフトウェアである。なお、BIOS110は、この発明における「システム管理ファームウェア」の一例である。一方、OS120は、この発明における「上位ソフトウェア」の一例である。 The server 100 includes a BIOS 110 and an OS 120. Here, the BIOS 120 is a system management firmware that is stored in the main board or the like of the server 100 and performs reading of the OS 120 at startup and basic input / output control for connected devices / devices. On the other hand, the OS 120 is software that manages the entire system by implementing functions for basic management and control of devices, basic functions commonly used by many software, and the like. The BIOS 110 is an example of the "system management firmware" in the present invention. On the other hand, the OS 120 is an example of the "upper software" in the present invention.

BIOS110は、特定処理実行部111と、推定処理時間算出部112と、実処理時間算出部113と、格納領域通知部114と、特定処理情報格納部115と、処理時間格納部116とを有する。 The BIOS 110 includes a specific processing execution unit 111, an estimated processing time calculation unit 112, an actual processing time calculation unit 113, a storage area notification unit 114, a specific processing information storage unit 115, and a processing time storage unit 116.

特定処理実行部111は、システム管理モードを使用した特定処理を実行する。システム管理モードは、電源管理やハードウェア制御を行うための専用モードである。一方、特定処理には、プラットフォーム特有の障害処理、不揮発性メモリの書き込み、不揮発性メモリのガベージコレクション、ライブメモリダンプ機能といった、システム管理ファームウェアとしての基本機能のみならず付加価値機能に至るまで、多岐にわたる処理が含まれる。 The specific process execution unit 111 executes the specific process using the system management mode. The system management mode is a dedicated mode for power management and hardware control. On the other hand, the specific processing includes not only basic functions as system management firmware but also value-added functions such as platform-specific failure handling, writing of non-volatile memory, garbage collection of non-volatile memory, and live memory dump function. Includes processing over.

推定処理時間算出部112は、特定処理にかかる推定処理時間を算出する。 The estimated processing time calculation unit 112 calculates the estimated processing time required for the specific processing.

実処理時間算出部113は、特定処理にかかった実処理時間を算出する。 The actual processing time calculation unit 113 calculates the actual processing time required for the specific processing.

格納領域通知部114は、OS120からアクセス可能な格納領域であって、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とが格納されている格納領域をOS120に通知する。例えば、格納領域通知部114は、推定処理時間算出部112が算出した推定処理時間が格納されている格納領域をOS120に通知する。また、例えば、格納領域通知部114は、実処理時間算出部113が算出した実処理時間が格納されている格納領域をOS120に通知する。 The storage area notification unit 114 notifies the OS 120 of a storage area that is accessible from the OS 120 and in which the estimated processing time required for the specific processing and the actual processing time required for the specific processing are stored. For example, the storage area notification unit 114 notifies the OS 120 of the storage area in which the estimated processing time calculated by the estimated processing time calculation unit 112 is stored. Further, for example, the storage area notification unit 114 notifies the OS 120 of the storage area in which the actual processing time calculated by the actual processing time calculation unit 113 is stored.

特定処理情報格納部115には、特定処理に関する情報が格納されている。 Information about the specific process is stored in the specific process information storage unit 115.

処理時間格納部116は、OS120からアクセス可能な格納領域である。処理時間格納部116には、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とが格納される。 The processing time storage unit 116 is a storage area accessible from the OS 120. The processing time storage unit 116 stores the estimated processing time required for the specific processing and the actual processing time required for the specific processing.

OS120は、処理時間取得部121と、遅延判定部122と、要因判定部123と、処理時間格納部124とを有する。 The OS 120 has a processing time acquisition unit 121, a delay determination unit 122, a factor determination unit 123, and a processing time storage unit 124.

処理時間取得部121は、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを取得する。例えば、処理時間取得部121は、BIOS110から通知された格納領域に格納されている、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを取得する。 The processing time acquisition unit 121 acquires the estimated processing time required for the specific processing and the actual processing time required for the specific processing. For example, the processing time acquisition unit 121 acquires the estimated processing time required for the specific processing and the actual processing time required for the specific processing stored in the storage area notified from the BIOS 110.

遅延判定部122は、特定処理にて許容されない遅延があったかを判定する。例えば、遅延判定部122は、処理時間取得部121が取得した、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とに基づいて、特定処理にて許容されない遅延があったかを判定する。 The delay determination unit 122 determines whether or not there is an unacceptable delay in the specific process. For example, the delay determination unit 122 determines whether or not there is an unacceptable delay in the specific processing based on the estimated processing time required for the specific processing and the actual processing time required for the specific processing acquired by the processing time acquisition unit 121. do.

要因判定部123は、OS120にてタイムアウトがあった場合に、OS120におけるタイムアウトの要因が、システム管理モードを使用したBIOS110の特定処理に起因するかを判定する。例えば、要因判定部123は、特定処理にて許容されない遅延があったと遅延判定部122が判定した場合に、OS120におけるタイムアウトの要因が特定処理に起因すると判定する。ここで、タイムアウトとは、処理やデータ転送に時間がかかり過ぎるときに、途中で打ち切って終了することである。なお、タイムアウトは、この発明における「上位ソフトウェアにて許容されない遅延」、「上位ソフトウェアにおける遅延」の一例である。 When the OS 120 has a time-out, the factor determination unit 123 determines whether the cause of the time-out in the OS 120 is due to the specific processing of the BIOS 110 using the system management mode. For example, when the delay determination unit 122 determines that there is an unacceptable delay in the specific processing, the factor determination unit 123 determines that the cause of the timeout in the OS 120 is due to the specific processing. Here, the timeout means that when the processing or data transfer takes too much time, the time-out is terminated in the middle. The time-out is an example of "delay not allowed by the higher-level software" and "delay in the higher-level software" in the present invention.

処理時間格納部124には、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とが格納される。 The processing time storage unit 124 stores the estimated processing time required for the specific processing and the actual processing time required for the specific processing.

図2は、特定処理情報格納部115に格納されている情報の一例をテーブル形式で示す図である。特定処理情報格納部115には、識別子、特定処理内容、推定処理時間の各情報が対応付けられて格納されている。 FIG. 2 is a diagram showing an example of information stored in the specific processing information storage unit 115 in a table format. In the specific processing information storage unit 115, each information of the identifier, the specific processing content, and the estimated processing time is stored in association with each other.

識別子の情報は、各特定処理を一意に識別するための識別符号である。 The identifier information is an identification code for uniquely identifying each specific process.

特定処理内容の情報は、識別子によって識別される特定処理の内容を示す情報である。図2に示す例では、例えば、識別子「T1」によって識別される特定処理の内容が「処理A」であることを示している。 The information of the specific processing content is information indicating the content of the specific processing identified by the identifier. In the example shown in FIG. 2, for example, it is shown that the content of the specific process identified by the identifier “T1” is “process A”.

推定処理時間の情報は、特定処理にかかる推定処理時間を示す情報である。図2に示す例では、例えば、識別子「T1」によって識別される「処理A」の特定処理にかかる推定処理時間が「5ms」であることを示している。 The information of the estimated processing time is information indicating the estimated processing time required for the specific processing. In the example shown in FIG. 2, for example, it is shown that the estimated processing time required for the specific processing of the “processing A” identified by the identifier “T1” is “5ms”.

図3は、処理時間格納部116に格納される情報の一例をテーブル形式で示す図である。処理時間格納部116には、識別子、システム管理モード開始時刻、推定総処理時間、実処理時間の各情報が対応付けられて格納される。 FIG. 3 is a diagram showing an example of information stored in the processing time storage unit 116 in a table format. In the processing time storage unit 116, each information of the identifier, the system management mode start time, the estimated total processing time, and the actual processing time is stored in association with each other.

識別子の情報は、各特定処理の履歴を一意に識別するための識別符号である。 The identifier information is an identification code for uniquely identifying the history of each specific process.

システム管理モード開始時刻の情報は、システム管理モードに遷移した時刻を示す情報である。図3に示す例では、例えば、識別子「S1」によって識別される履歴に対応する特定処理の開始時刻が「2017/2/8 2:00:23.23」であることを示している。 The information on the system management mode start time is information indicating the time when the system management mode is entered. In the example shown in FIG. 3, for example, it is shown that the start time of the specific process corresponding to the history identified by the identifier “S1” is “2017/2/8 2:00: 23.23”.

推定総処理時間の情報は、特定処理にかかる推定総処理時間を示す情報である。図3に示す例では、例えば、識別子「S1」によって識別される履歴に対応する特定処理にかかる推定総処理時間が「30ms」であることを示している。 The information of the estimated total processing time is information indicating the estimated total processing time required for the specific processing. In the example shown in FIG. 3, for example, it is shown that the estimated total processing time required for the specific processing corresponding to the history identified by the identifier “S1” is “30 ms”.

実処理時間の情報は、特定処理にかかった実処理時間を示す情報である。図3に示す例では、例えば、識別子「S1」によって識別される履歴に対応する特定処理にかかった実処理時間が「20ms」であることを示している。 The information of the actual processing time is the information indicating the actual processing time taken for the specific processing. In the example shown in FIG. 3, for example, it is shown that the actual processing time required for the specific processing corresponding to the history identified by the identifier “S1” is “20 ms”.

図4は、システム管理モードを使用した特定処理に伴うBIOS110の処理の一例を示すフローチャートである。図4の動作フローの説明では、適宜、図1から図3を参照する。 FIG. 4 is a flowchart showing an example of the processing of the BIOS 110 accompanying the specific processing using the system management mode. In the description of the operation flow of FIG. 4, FIGS. 1 to 3 are referred to as appropriate.

プロセッサは、何らかの理由によりシステム管理割込みを受信すると、動作モードをシステム管理モードに遷移させる。システム管理モードに遷移すると(ステップS101;YES)、BIOS110の特定処理実行部111は、処理時間格納部116における空きエントリーに、システム管理モードの開始時刻を格納する(ステップS102)。ステップS102の処理では、特定処理実行部111は、例えば、ハードウェア・クロックから取得した現在時刻を、システム管理モードの開始時刻として格納すればよい。このようにして、BIOS110の処理時間格納部116には、図3に示すようなシステム管理モード開始時刻の情報が格納される。 When the processor receives a system management interrupt for some reason, it shifts the operation mode to the system management mode. Upon transition to the system management mode (step S101; YES), the specific processing execution unit 111 of the BIOS 110 stores the start time of the system management mode in the empty entry in the processing time storage unit 116 (step S102). In the process of step S102, the specific process execution unit 111 may store, for example, the current time acquired from the hardware clock as the start time of the system management mode. In this way, the processing time storage unit 116 of the BIOS 110 stores information on the system management mode start time as shown in FIG.

そして、特定処理実行部111は、システム管理モードを使用して実行すべき特定処理のうち、未実行の特定処理があるかを判定する(ステップS103)。ここで、システム管理モードを使用して実行すべき特定処理は、システム管理モードに遷移する契機となったシステム管理割込みの内容によって異なる。ステップS103の処理では、特定処理実行部111は、システム管理モードに遷移する契機となったシステム管理割込みの内容に応じて、システム管理モードを使用して実行すべき特定処理を特定すればよい。 Then, the specific process execution unit 111 determines whether or not there is an unexecuted specific process among the specific processes to be executed using the system management mode (step S103). Here, the specific processing to be executed using the system management mode differs depending on the content of the system management interrupt that triggered the transition to the system management mode. In the process of step S103, the specific process execution unit 111 may specify the specific process to be executed using the system management mode according to the content of the system management interrupt that triggered the transition to the system management mode.

ステップS103の処理にて未実行の特定処理がある場合(ステップS103;YES)、特定処理実行部111は、未実行の特定処理を実行するにあたり、その特定処理の内容を、推定処理時間算出部112に通知する。ここで、複数の未実行の特定処理があり、これらの特定処理を数回に分けて実行する場合、特定処理実行部111は、これから実行する特定処理の内容のみを通知すればよい。 When there is an unexecuted specific process in the process of step S103 (step S103; YES), the specific process execution unit 111 determines the content of the specific process in executing the unexecuted specific process in the estimated processing time calculation unit. Notify 112. Here, when there are a plurality of unexecuted specific processes and these specific processes are executed in several times, the specific process execution unit 111 need only notify the contents of the specific process to be executed from now on.

BIOS110の推定処理時間算出部112は、特定処理実行部111からの通知を受けると、特定処理にかかる推定処理時間を算出し、算出された推定処理時間に基づいて、処理時間格納部116における推定総処理時間の情報を更新する(ステップS104)。ステップS104の処理では、推定処理時間算出部112は、例えば、特定処理情報格納部115に格納されている情報のうち、特定処理実行部111から通知された特定処理の内容と一致する特定処理内容の情報に対応付けられて格納されている、推定処理時間の情報を読み出す。このとき、特定処理実行部111から複数の特定処理の内容が通知されている場合、推定処理時間算出部112は、通知された全ての特定処理に対応する推定処理時間の情報を全て読み出し、その全ての推定処理時間を加算する。そして、推定処理時間算出部112は、このようにして得られた推定処理時間に基づいて、処理時間格納部116における、ステップS102の処理にて格納されたシステム管理モードの開始時刻に対応付けられた推定総処理時間の情報を更新する。このとき、更新対象の推定総処理時間の情報がNullであれば、推定処理時間算出部112は、算出等により得られた推定処理時間をそのまま推定総処理時間として格納すればよい。一方、更新対象の推定総処理時間の情報がNullでなければ、推定処理時間算出部112は、既に格納されている推定総処理時間に対して、算出等により得られた推定処理時間を加算して得られる推定総処理時間を格納すればよい。このようにして、BIOS110の処理時間格納部116には、図3に示すような推定総処理時間の情報が格納される。そして、推定処理時間算出部112は、処理時間格納部116における推定総処理時間の情報を更新すると、その旨を特定処理実行部111に通知する。 Upon receiving the notification from the specific processing execution unit 111, the estimated processing time calculation unit 112 of the BIOS 110 calculates the estimated processing time required for the specific processing, and estimates in the processing time storage unit 116 based on the calculated estimated processing time. The information on the total processing time is updated (step S104). In the process of step S104, the estimated processing time calculation unit 112, for example, among the information stored in the specific processing information storage unit 115, the specific processing content that matches the content of the specific processing notified from the specific processing execution unit 111. Read the estimated processing time information stored in association with the information in. At this time, when the content of a plurality of specific processes is notified from the specific process execution unit 111, the estimated processing time calculation unit 112 reads out all the information of the estimated processing time corresponding to all the notified specific processes, and the estimated processing time calculation unit 112 reads all the information. Add all estimated processing times. Then, the estimated processing time calculation unit 112 is associated with the start time of the system management mode stored in the process of step S102 in the processing time storage unit 116 based on the estimated processing time thus obtained. Update the estimated total processing time information. At this time, if the information of the estimated total processing time to be updated is Null, the estimated processing time calculation unit 112 may store the estimated processing time obtained by calculation or the like as the estimated total processing time as it is. On the other hand, if the information of the estimated total processing time to be updated is not Null, the estimated processing time calculation unit 112 adds the estimated processing time obtained by calculation or the like to the already stored estimated total processing time. The estimated total processing time obtained can be stored. In this way, the processing time storage unit 116 of the BIOS 110 stores information on the estimated total processing time as shown in FIG. Then, when the estimated processing time calculation unit 112 updates the information on the estimated total processing time in the processing time storage unit 116, the estimation processing time calculation unit 112 notifies the specific processing execution unit 111 to that effect.

特定処理実行部111は、推定処理時間算出部112からの通知を受けると、未実行の特定処理を実行した後(ステップS105)、ステップS103の処理を再度実行する。 Upon receiving the notification from the estimated processing time calculation unit 112, the specific processing execution unit 111 executes the unexecuted specific processing (step S105), and then re-executes the processing of step S103.

ステップS103の処理にて未実行の特定処理がない場合(ステップS103)、即ち、システム管理モードを使用して実行すべき特定処理を全て実行した場合、特定処理実行部111は、その旨を実処理時間算出部113に通知する。 When there is no unexecuted specific process in the process of step S103 (step S103), that is, when all the specific processes to be executed are executed using the system management mode, the specific process execution unit 111 actually realizes that fact. Notify the processing time calculation unit 113.

BIOS110の実処理時間算出部113は、特定処理実行部111からの通知を受けると、特定処理にかかった実処理時間を算出し、算出された実処理時間の情報を処理時間格納部116に格納して(ステップS106)、図4に示す処理を終了する。ステップS106の処理では、実処理時間算出部113は、例えば、処理時間格納部116における、ステップS102の処理にて格納されたシステム管理モードの開始時刻を読み出す。また、実処理時間算出部113は、ハードウェア・クロックから現在時刻を取得する。そして、実処理時間算出部113は、処理時間格納部116から読み出したシステム管理モードの開始時刻から、ハードウェア・クロックから取得した現在時刻までの時間を、特定処理にかかった実処理時間として算出する。そして、実処理時間算出部113は、算出した実処理時間の情報を、処理時間格納部116における、ステップS102の処理にて格納されたシステム管理モードの開始時刻に対応付けて格納する。このようにして、BIOS110の処理時間格納部116には、図3に示すような実処理時間の情報が格納される。 Upon receiving the notification from the specific processing execution unit 111, the actual processing time calculation unit 113 of the BIOS 110 calculates the actual processing time required for the specific processing, and stores the calculated actual processing time information in the processing time storage unit 116. Then (step S106), the process shown in FIG. 4 is terminated. In the process of step S106, the actual processing time calculation unit 113 reads, for example, the start time of the system management mode stored in the process of step S102 in the processing time storage unit 116. Further, the actual processing time calculation unit 113 acquires the current time from the hardware clock. Then, the actual processing time calculation unit 113 calculates the time from the start time of the system management mode read from the processing time storage unit 116 to the current time acquired from the hardware clock as the actual processing time required for the specific processing. do. Then, the actual processing time calculation unit 113 stores the calculated actual processing time information in association with the start time of the system management mode stored in the processing of step S102 in the processing time storage unit 116. In this way, the processing time storage unit 116 of the BIOS 110 stores information on the actual processing time as shown in FIG.

なお、ステップS102以降の処理は、動作モードがシステム管理モードに遷移しない場合(ステップS101;NO)、実行されない。 The processing after step S102 is not executed when the operation mode does not transition to the system management mode (step S101; NO).

図5は、BIOS110からの格納領域の通知に伴うOS120の処理の一例を示すフローチャートである。図5の動作フローの説明では、適宜、図1から図4を参照する。 FIG. 5 is a flowchart showing an example of processing of the OS 120 accompanying the notification of the storage area from the BIOS 110. In the description of the operation flow of FIG. 5, FIGS. 1 to 4 are referred to as appropriate.

BIOS110の格納領域通知部114は、図4に示すステップS106の処理にて実処理時間の情報が処理時間格納部116に格納されると、あるいは、OS120からの通知要求を受けると、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とが格納されている格納領域をOS120に通知する。ここで、格納領域通知部114は、処理時間格納部116のアドレスを通知すればよい。 The storage area notification unit 114 of the BIOS 110 performs specific processing when the information of the actual processing time is stored in the processing time storage unit 116 in the processing of step S106 shown in FIG. 4 or when a notification request from the OS 120 is received. The OS 120 is notified of the storage area in which the estimated processing time and the actual processing time required for the specific processing are stored. Here, the storage area notification unit 114 may notify the address of the processing time storage unit 116.

OS120の処理時間取得部121は、BIOS110からの格納領域の通知を受けると、その格納領域にアクセスして、処理時間格納部116に格納されている、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを含む情報を取得して(ステップS202)、取得した情報を、処理時間格納部124に格納する(ステップS203)。このようにして、OS120の処理時間格納部124には、図3に示すBIOS110の処理時間格納部116に格納されている情報と同様の情報が格納される。 Upon receiving the notification of the storage area from the BIOS 110, the processing time acquisition unit 121 of the OS 120 accesses the storage area, and the estimated processing time required for the specific processing and the specific processing stored in the processing time storage unit 116. The information including the actual processing time taken in the above is acquired (step S202), and the acquired information is stored in the processing time storage unit 124 (step S203). In this way, the processing time storage unit 124 of the OS 120 stores the same information as the information stored in the processing time storage unit 116 of the BIOS 110 shown in FIG.

図6は、OS120にてタイムアウトが検知されたこと伴うOS120の処理の一例を示すフローチャートである。図6の動作フローの説明では、適宜、図1から図5を参照する。 FIG. 6 is a flowchart showing an example of the processing of the OS 120 when the timeout is detected in the OS 120. In the description of the operation flow of FIG. 6, FIGS. 1 to 5 are referred to as appropriate.

OS120は、処理やデータ転送に時間がかかり過ぎるときに、タイムアウト処理を実行することがある。OS120は、タイムアウト処理を実行すると(ステップS301;YES)、RAMの所定領域に設けられたリトライカウンタの格納値であるリトライカウント値を、1加算するように更新し(ステップS302)、更新後のリトライカウント値が特定値に達したか否かを判定する(ステップS303)。ここで、リトライカウント値と比較される特定値は、タイムアウト処理が実行された対象の処理やデータ転送をリトライすべき回数であり、OS120にて実行される処理やデータ転送の種類毎に規定されていればよい。 The OS 120 may execute a time-out process when the process or data transfer takes too much time. When the time-out process is executed (step S301; YES), the OS 120 updates the retry count value, which is the stored value of the retry counter provided in the predetermined area of the RAM, so as to add 1 (step S302), and after the update. It is determined whether or not the retry count value has reached a specific value (step S303). Here, the specific value to be compared with the retry count value is the number of times that the target process or data transfer for which the timeout process has been executed should be retried, and is defined for each type of process or data transfer executed by the OS 120. You just have to.

ステップS303の処理にてリトライカウント値が特定値に達していない場合、OS120は、タイムアウト処理が実行された対象の処理やデータ転送のリトライ処理を実行する(ステップS304)。 If the retry count value has not reached the specific value in the process of step S303, the OS 120 executes the process of the target for which the timeout process has been executed and the data transfer retry process (step S304).

ステップS303にて実行されたリトライ処理によって、処理やデータ転送の処理が正常に実行され、タイムアウト処理が実行されなければ(ステップS301;NO)、OS120は、ステップS302以降の処理を再び実行することなく、図6に示す処理を終了する。 If the process or data transfer process is normally executed by the retry process executed in step S303 and the timeout process is not executed (step S301; NO), the OS 120 re-executes the processes after step S302. Instead, the process shown in FIG. 6 is terminated.

ステップS303の処理にてリトライカウント値が特定値に達した場合(ステップS303;YES)、OS120の遅延判定部122は、BIOS110によって実行された特定処理にて許容されない遅延があったかを判定する(ステップS305)。ステップS305の処理では、遅延判定部122は、例えば、OS120の処理時間格納部124に格納されている、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とに基づいて、特定処理にて許容されない遅延があったかを判定すればよい。このとき、遅延判定部122は、タイムアウト処理が実行された対象の処理やデータ転送が開始されてから、そのタイムアウト処理が実行されるまでの特定期間に実行された特定処理を対象にした判定を行えばよい。特定処理の実行期間は、処理時間格納部124に格納されている情報のうち、システム管理モード開始時刻の情報と、実処理時間の情報とによって特定することができる。そして、遅延判定部122は、特定期間に実行された特定処理があれば、その特定処理にて許容されない遅延があったかを判定する。例えば、遅延判定部122は、その特定処理にかかる推定総処理時間と、その特定処理にかかった実処理時間とを比較して、実処理時間が推定総処理時間よりも長ければ、その特定処理にて許容されない遅延があったと判定すればよい。また例えば、遅延判定部122は、推定総処理時間に対する実処理時間の長さが所定割合よりも長ければ、その特定処理にて許容されない遅延があったと判定してもよい。また例えば、遅延判定部122は、特定処理の種類に応じて、その判定基準や判定方法を異ならせてもよい。また例えば、遅延判定部122は、複数の判定基準や判定方法による複数回の判定を行って、複数の判定結果に基づいて、最終的な判定を行うようにしてもよい。例えば、そして、遅延判定部122は、BIOS110によって実行された特定処理にて許容されない遅延があったかを判定すると、その判定結果を要因判定部123へ通知する。 When the retry count value reaches a specific value in the process of step S303 (step S303; YES), the delay determination unit 122 of the OS 120 determines whether there is an unacceptable delay in the specific process executed by the BIOS 110 (step). S305). In the process of step S305, the delay determination unit 122 specifies, for example, based on the estimated processing time required for the specific processing and the actual processing time required for the specific processing stored in the processing time storage unit 124 of the OS 120. It may be determined whether there is an unacceptable delay in the processing. At this time, the delay determination unit 122 makes a determination targeting the specific process executed in the specific period from the start of the process or data transfer of the target for which the timeout process is executed to the execution of the timeout process. Just do it. The execution period of the specific process can be specified by the information of the system management mode start time and the information of the actual processing time among the information stored in the processing time storage unit 124. Then, if there is a specific process executed in the specific period, the delay determination unit 122 determines whether or not there is an unacceptable delay in the specific process. For example, the delay determination unit 122 compares the estimated total processing time required for the specific processing with the actual processing time required for the specific processing, and if the actual processing time is longer than the estimated total processing time, the specific processing It may be determined that there was an unacceptable delay. Further, for example, if the length of the actual processing time with respect to the estimated total processing time is longer than a predetermined ratio, the delay determination unit 122 may determine that there is an unacceptable delay in the specific processing. Further, for example, the delay determination unit 122 may have different determination criteria and determination methods depending on the type of specific processing. Further, for example, the delay determination unit 122 may make a plurality of determinations based on a plurality of determination criteria and determination methods, and make a final determination based on the plurality of determination results. For example, when the delay determination unit 122 determines whether or not there is an unacceptable delay in the specific processing executed by the BIOS 110, the delay determination unit 122 notifies the factor determination unit 123 of the determination result.

OS120の要因判定部123は、遅延判定部122からの通知を受けると、その判定結果に基づいて、OS120におけるタイムアウトの要因が、システム管理モードを使用したBIOS110の特定処理に起因するかを判定する。 Upon receiving the notification from the delay determination unit 122, the factor determination unit 123 of the OS 120 determines whether the cause of the timeout in the OS 120 is due to the specific processing of the BIOS 110 using the system management mode. ..

ステップS305の処理による判定結果が、「特定処理にて許容されない遅延はなかった」との判定結果である場合(ステップS305;NO)、要因判定部123は、OS120におけるタイムアウトの要因が、システム管理モードを使用したBIOS110の特定処理に起因するものではないと判定し(ステップS306)、図6に示す処理を終了する。 When the determination result by the process of step S305 is the determination result that "there was no unacceptable delay in the specific process" (step S305; NO), the factor determination unit 123 determines that the cause of the timeout in the OS 120 is system management. It is determined that it is not caused by the specific processing of the BIOS 110 using the mode (step S306), and the processing shown in FIG. 6 is terminated.

このように、OS120は、OS120におけるタイムアウトの要因が、システム管理モードを使用したBIOS110の特定処理に起因するものではなく、何らかの障害によるものであることを推定できることから、タイムアウト処理が実行された対象の処理やデータ転送について、不要なリトライ処理を実行しないようにすることができる。 As described above, since it can be estimated that the cause of the timeout in the OS 120 is not due to the specific processing of the BIOS 110 using the system management mode but due to some kind of failure, the OS 120 is the target for which the timeout processing is executed. It is possible to prevent unnecessary retry processing from being executed for the processing and data transfer.

一方、ステップS305の処理による判定結果が、「特定処理にて許容されない遅延があった」との判定結果である場合(ステップS305;YES)、要因判定部123は、OS120におけるタイムアウトの要因が、システム管理モードを使用したBIOS110の特定処理に起因するものであると判定する(ステップS307)。 On the other hand, when the determination result by the process of step S305 is the determination result that "there was an unacceptable delay in the specific process" (step S305; YES), the factor determination unit 123 determines that the cause of the timeout in the OS 120 is. It is determined that the cause is due to the specific processing of the BIOS 110 using the system management mode (step S307).

ステップS307の処理を実行した後、OS120は、リトライカウント値を1減算するように更新し(ステップS308)、タイムアウト処理が実行された対象の処理やデータ転送のリトライ処理を実行する(ステップS304)。 After executing the process of step S307, the OS 120 updates the retry count value by 1 (step S308), and executes the process of the target for which the timeout process has been executed and the retry process of data transfer (step S304). ..

このように、OS120は、OS120におけるタイムアウトの要因が、システム管理モードを使用したBIOS110の特定処理に起因するものであった場合、リトライ処理を実行すれば、タイムアウト処理が実行された対象の処理やデータ転送が正しく実行される可能性が高いことから、リトライ回数のカウントを行うことなくリトライ処理を実行することにより、特定処理に起因するタイムアウトに対して、好適に対応することができる。 As described above, in the OS 120, when the cause of the timeout in the OS 120 is due to the specific processing of the BIOS 110 using the system management mode, if the retry processing is executed, the processing of the target for which the timeout processing is executed can be performed. Since there is a high possibility that the data transfer will be executed correctly, by executing the retry process without counting the number of retries, it is possible to suitably cope with the timeout caused by the specific process.

以上説明したように、情報処理装置100は、BIOS110と、OS120とを備える。そして、OS120は、OS120にてタイムアウトがあった場合に、OS120におけるタイムアウトの要因が、システム管理モードを使用したBIOS110の特定処理に起因するかを判定する要因判定部123を有する。これにより、システム管理モードを使用したBIOS110の特定処理にかかる時間を短縮せずとも、このような特定処理に起因するOS120における遅延に対して、好適に対応することができる。 As described above, the information processing apparatus 100 includes a BIOS 110 and an OS 120. Then, the OS 120 has a factor determination unit 123 that determines whether the cause of the time-out in the OS 120 is due to the specific processing of the BIOS 110 using the system management mode when the time-out occurs in the OS 120. As a result, the delay in the OS 120 caused by such a specific process can be suitably dealt with without shortening the time required for the specific process of the BIOS 110 using the system management mode.

また、OS120は、特定処理にて許容されない遅延があったかを判定する遅延判定部122を更に有する。そして、要因判定部123は、特定処理にて許容されない遅延があったと遅延判定部122が判定した場合に、OS120にける遅延の要因が特定処理に起因すると判定する。これにより、特定処理にて許容されない遅延があったかをBIOS110で判定する必要がないため、システム管理モードにおけるBIOS110の処理負荷を抑制することができる。 Further, the OS 120 further includes a delay determination unit 122 for determining whether or not there is an unacceptable delay in the specific processing. Then, when the delay determination unit 122 determines that there is an unacceptable delay in the specific processing, the factor determination unit 123 determines that the cause of the delay in the OS 120 is due to the specific processing. As a result, it is not necessary for the BIOS 110 to determine whether or not there is an unacceptable delay in the specific processing, so that the processing load of the BIOS 110 in the system management mode can be suppressed.

また、OS120は、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを取得する処理時間取得部121を更に有する。そして、遅延判定部122は、処理時間取得部121が取得した推定処理時間と実処理時間とに基づいて、特定処理にて許容されない遅延があったかを判定する。これにより、OS120は、サーバ管理者の手を煩わせることなく、特定処理にて許容されない遅延があったかを自立的に判定することができる。 Further, the OS 120 further includes a processing time acquisition unit 121 for acquiring an estimated processing time required for the specific processing and an actual processing time required for the specific processing. Then, the delay determination unit 122 determines whether or not there is an unacceptable delay in the specific processing based on the estimated processing time and the actual processing time acquired by the processing time acquisition unit 121. As a result, the OS 120 can independently determine whether or not there is an unacceptable delay in the specific processing without bothering the server administrator.

また、BIOS110は、OS120からアクセス可能な格納領域であって、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とが格納されている格納領域をOS120に通知する格納領域通知部114を更に有する。そして、処理時間取得部121は、BIOS110から通知された格納領域に格納されている推定処理時間と実処理時間とを取得する。これにより、OS120は、システム管理モードが実行されたかを知ることができなくても、システム管理モードを使用したBIOS110の特定処理に関する情報を取得することができる。 Further, the BIOS 110 is a storage area accessible from the OS 120, and is a storage area notification unit that notifies the OS 120 of a storage area in which the estimated processing time required for the specific processing and the actual processing time required for the specific processing are stored. It also has 114. Then, the processing time acquisition unit 121 acquires the estimated processing time and the actual processing time stored in the storage area notified from the BIOS 110. As a result, the OS 120 can acquire information regarding the specific processing of the BIOS 110 using the system management mode even if it cannot know whether the system management mode has been executed.

また、BIOS110は、特定処理にかかった実処理時間を算出する実処理時間算出部113を更に有する。そして、格納領域通知部114は、実処理時間算出部113が算出した実処理時間が格納されている格納領域をOS120に通知する。これにより、特定処理にて許容されない遅延があったかを正確に判定することができる。 Further, the BIOS 110 further has an actual processing time calculation unit 113 for calculating the actual processing time required for the specific processing. Then, the storage area notification unit 114 notifies the OS 120 of the storage area in which the actual processing time calculated by the actual processing time calculation unit 113 is stored. This makes it possible to accurately determine whether or not there is an unacceptable delay in the specific process.

また、BIOS110は、推定処理時間を算出する推定処理時間算出部111を更に有し、格納領域通知部114は、推定処理時間算出部111が算出した推定処理時間が格納されている格納領域をOS120に通知する。これにより、特定処理にて許容されない遅延があったかを正確に判定することができる。 Further, the BIOS 110 further has an estimated processing time calculation unit 111 for calculating the estimated processing time, and the storage area notification unit 114 has a storage area in which the estimated processing time calculated by the estimated processing time calculation unit 111 is stored in the OS 120. Notify to. This makes it possible to accurately determine whether or not there is an unacceptable delay in the specific process.

この発明は、上記の実施の形態に限定されず、様々な変形及び応用が可能である。例えば、サーバ100は、上記の実施の形態で示した全ての技術的特徴を備えるものでなくてもよく、少なくとも1つの課題を解決できるように、上記の実施の形態で説明した一部の構成を備えたものであってもよい。 The present invention is not limited to the above-described embodiment, and various modifications and applications are possible. For example, the server 100 does not have to have all the technical features shown in the above embodiment, and is a part of the configuration described in the above embodiment so as to be able to solve at least one problem. It may be provided with.

上記の実施の形態では、この発明における「情報処理装置」としてサーバ100を例にとって説明した。しかしながら、この発明における「情報処理装置」は、システム管理ファームウェアと、システム管理ファームウェアの上位ソフトウェアを備えたものであればよく、例えば、個人向けの汎用コンピュータであるパーソナルコンピュータや、企業の情報システム等で用いられる大規模・高性能コンピュータであるメインフレーム、科学技術計算等に用いる超高性能コンピュータであるスーパーコンピュータ等であってもよい。また、この発明における「情報処理装置」は、システム管理ファームウェアと、システム管理ファームウェアの上位ソフトウェアとを備えた、携帯電話、スマートフォン、タブレット端末、各種の通信機器、ビデオレコーダ、デジタルテレビ、デジタルカメラ、ゲーム機、電子制御の家電製品や産業機械といった、何らかの形でコンピュータの一種が組み込まれて、情報やデータを扱う電気機械であるコンピュータ応用製品であってもよい。 In the above embodiment, the server 100 has been described as an example of the "information processing apparatus" in the present invention. However, the "information processing apparatus" in the present invention may be any one provided with system management firmware and higher-level software of the system management firmware, for example, a personal computer which is a general-purpose computer for individuals, a corporate information system, and the like. It may be a main frame, which is a large-scale, high-performance computer used in the above, a super computer, which is an ultra-high-performance computer used for scientific and technological calculations, and the like. Further, the "information processing apparatus" in the present invention includes a mobile phone, a smartphone, a tablet terminal, various communication devices, a video recorder, a digital television, a digital camera, and the like, which are equipped with system management firmware and higher-level software of the system management firmware. It may be a computer application product that is an electric machine that handles information and data by incorporating a kind of computer in some form, such as a game machine, an electronically controlled home appliance, or an industrial machine.

上記の実施の形態では、この発明における「システム管理ファームウェア」としてBIOS110を例にとって説明した。しかしながら、この発明における「システム管理ファームウェア」は、本体内部の回路や装置等の基本的な制御を司る機能を持ったものであればよく、例えば、EFI(Extensible Firmware Interface)やUEFI(Unified Extensible Firmware Interface)等であってもよい。 In the above embodiment, the BIOS 110 has been described as an example of the "system management firmware" in the present invention. However, the "system management firmware" in the present invention may have a function of controlling basic control of circuits and devices inside the main body, for example, EFI (Extensible Firmware Interface) and UEFI (Unified Extensible Firmware). Interface) or the like.

上記の実施の形態では、この発明における「上位ソフトウェア」としてOS120を例にとって説明した。しかしながら、この発明における「上位ソフトウェア」は、BIOS、EFI、UEFIといったシステム管理ファームウェアの上位に当たるものであればよく、例えば、デバイスドライバやテストドライバといったドライバ等であってもよい。 In the above embodiment, OS120 has been described as an example of the "upper software" in the present invention. However, the "upper software" in the present invention may be any higher level of the system management firmware such as BIOS, EFI, and UEFI, and may be, for example, a driver such as a device driver or a test driver.

上記の実施の形態では、BIOS110からの格納領域の通知を契機にして、OS120が特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを取得するものとして説明した。しかしながら、OS120が特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを取得する契機は、これに限られない。例えば、OS120からアクセス可能な格納領域は、不変の格納領域であってもよい。即ち、BIOS110は、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを、システム管理モードを使用する度に異なる格納領域ではなく、常に同じ格納領域に格納するようにしてもよい。そして、OS120は、BIOS110からの通知によらず、OS120にてタイムアウトがあったことを契機にして、BIOS110の既知の格納領域にアクセスして、特定処理にかかる推定処理時間と、特定処理にかかった実処理時間とを取得するようにしてもよい。 In the above embodiment, it has been described that the OS 120 acquires the estimated processing time required for the specific processing and the actual processing time required for the specific processing, triggered by the notification of the storage area from the BIOS 110. However, the opportunity for the OS 120 to acquire the estimated processing time required for the specific processing and the actual processing time required for the specific processing is not limited to this. For example, the storage area accessible from the OS 120 may be an immutable storage area. That is, even if the BIOS 110 always stores the estimated processing time required for the specific processing and the actual processing time required for the specific processing in the same storage area instead of a different storage area each time the system management mode is used. good. Then, the OS 120 accesses the known storage area of the BIOS 110 with the time-out in the OS 120 as a trigger, regardless of the notification from the BIOS 110, and takes the estimated processing time required for the specific processing and the specific processing. The actual processing time may be obtained.

上記の実施の形態では、この発明における「上位ソフトウェアにて許容されない遅延」、「上位ソフトウェアにおける遅延」としてタイムアウトを例にとって説明した。しかしながら、この発明における「上位ソフトウェアにて許容されない遅延」、「上位ソフトウェアにおける遅延」は、タイムアウトに限られず、例えば、タイムアウトとはならないまでも、その処理やデータ転送にかかる標準的な処理時間、あるいは、推定処理時間よりも、予め定められた特定時間が経過したこと等であってもよい。 In the above-described embodiment, the timeout has been described as an example of "delay not allowed by the higher-level software" and "delay in the higher-level software" in the present invention. However, the "delay not allowed by the higher-level software" and the "delay in the higher-level software" in the present invention are not limited to the time-out, and for example, the standard processing time required for the processing and data transfer, even if the time-out does not occur. Alternatively, it may be that a predetermined specific time has elapsed rather than the estimated processing time.

上記の実施の形態では、この発明における「情報処理装置」について分かり易く説明することを目的として、この発明における「情報処理装置」にて採用し得る全ての構成を含む実施の形態について説明した。しかしながら、この発明における最小構成の「情報処理装置」に対応する実施の形態のサーバ100は、図7に示すように、BIOS110と、OS120とを備え、OS120が要因判定部123を有していればよい。 In the above-described embodiment, for the purpose of explaining the "information processing apparatus" in the present invention in an easy-to-understand manner, an embodiment including all configurations that can be adopted in the "information processing apparatus" in the present invention has been described. However, as shown in FIG. 7, the server 100 of the embodiment corresponding to the "information processing apparatus" having the minimum configuration in the present invention includes a BIOS 110 and an OS 120, and the OS 120 has a factor determination unit 123. Just do it.

100 サーバ
110 BIOS
120 OS
123 要因判定部
100 server 110 BIOS
120 OS
123 Factor determination unit

Claims (4)

システム管理ファームウェアと、
前記システム管理ファームウェアの上位ソフトウェアと
を備え、
前記上位ソフトウェアは、
当該上位ソフトウェアにて、処理やデータ転送の処理時間が、標準的な処理時間、あるいは、推定処理時間よりも、予め定められた特定時間多く経過した場合に、当該上位ソフトウェアにおける遅延の要因が、システム管理モードを使用した前記システム管理ファームウェアの特定処理に起因するかを判定する要因判定部を有し、
前記上位ソフトウェアは、
前記特定処理にて許容されない遅延があったかを判定する遅延判定部
を更に有し、
前記要因判定部は、前記特定処理にて許容されない遅延があったと前記遅延判定部が判定した場合に、前記上位ソフトウェアにおける遅延の要因が前記特定処理に起因すると判定し、
前記上位ソフトウェアは、
前記特定処理にかかる推定処理時間と、前記特定処理にかかった実処理時間とを取得する処理時間取得部を更に有し、
前記遅延判定部は、前記処理時間取得部が取得した前記推定処理時間と前記実処理時間とに基づいて、前記特定処理にて許容されない遅延があったかを判定し、
前記システム管理ファームウェアは、
前記上位ソフトウェアからアクセス可能な格納領域であって前記推定処理時間と前記実処理時間とが格納されている格納領域を前記上位ソフトウェアに通知する格納領域通知部 を更に有し、
前記処理時間取得部は、前記システム管理ファームウェアから通知された格納領域に格納されている前記推定処理時間と前記実処理時間とを取得する、
情報処理装置。
System management firmware and
Equipped with higher-level software of the system management firmware
The higher-level software is
When the processing time of processing or data transfer in the higher-level software elapses longer than the standard processing time or a predetermined specific time longer than the estimated processing time, the cause of the delay in the higher-level software is It has a factor determination unit that determines whether it is caused by the specific processing of the system management firmware using the system management mode.
The higher-level software is
Delay determination unit that determines whether there is an unacceptable delay in the specific process
Further have
When the delay determination unit determines that there is an unacceptable delay in the specific process, the factor determination unit determines that the cause of the delay in the higher-level software is due to the specific process.
The higher-level software is
Further, it has a processing time acquisition unit for acquiring the estimated processing time required for the specific processing and the actual processing time required for the specific processing.
The delay determination unit determines whether or not there is an unacceptable delay in the specific processing based on the estimated processing time acquired by the processing time acquisition unit and the actual processing time.
The system management firmware is
Further, it has a storage area notification unit that notifies the higher-level software of a storage area that is accessible from the higher-level software and in which the estimated processing time and the actual processing time are stored.
The processing time acquisition unit acquires the estimated processing time and the actual processing time stored in the storage area notified by the system management firmware.
Information processing equipment.
前記システム管理ファームウェアは、The system management firmware is
前記実処理時間を算出する実処理時間算出部Actual processing time calculation unit that calculates the actual processing time
を更に有し、Further have
前記格納領域通知部は、前記実処理時間算出部が算出した実処理時間が格納されている格納領域を前記上位ソフトウェアに通知するThe storage area notification unit notifies the higher-level software of the storage area in which the actual processing time calculated by the actual processing time calculation unit is stored.
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1.
前記システム管理ファームウェアは、The system management firmware is
前記推定処理時間を算出する推定処理時間算出部Estimated processing time calculation unit that calculates the estimated processing time
を更に有し、Further have
前記格納領域通知部は、前記推定処理時間算出部が算出した推定処理時間が格納されている格納領域を前記上位ソフトウェアに通知するThe storage area notification unit notifies the higher-level software of the storage area in which the estimated processing time calculated by the estimated processing time calculation unit is stored.
請求項1又は2に記載の情報処理装置。The information processing apparatus according to claim 1 or 2.
システム管理ファームウェアの上位ソフトウェアが、当該上位ソフトウェアにて、処理やデータ転送の処理時間が、標準的な処理時間、あるいは、推定処理時間よりも、予め定められた特定時間多く経過した場合に、当該上位ソフトウェアにおける遅延の要因が、前記システム管理ファームウェアによるシステム管理の特定処理に起因するかを判定する要因判定段階を含み、
前記上位ソフトウェアは、
前記特定処理にて許容されない遅延があったかを判定する遅延判定段階を更に有し、
前記要因判定段階は、前記特定処理にて許容されない遅延があったと前記遅延判定段階が判定した場合に、前記上位ソフトウェアにおける遅延の要因が前記特定処理に起因すると判定し、
前記上位ソフトウェアは、
前記特定処理にかかる推定処理時間と、前記特定処理にかかった実処理時間とを取得する処理時間取得段階を更に有し、
前記遅延判定段階は、前記処理時間取得段階が取得した前記推定処理時間と前記実処理時間とに基づいて、前記特定処理にて許容されない遅延があったかを判定し、
前記システム管理ファームウェアは、
前記上位ソフトウェアからアクセス可能な格納領域であって前記推定処理時間と前記実処理時間とが格納されている格納領域を前記上位ソフトウェアに通知する格納領域通知段階を更に有し、
前記処理時間取得段階は、前記システム管理ファームウェアから通知された格納領域に格納されている前記推定処理時間と前記実処理時間とを取得する、
情報処理方法。
When the higher-level software of the system management firmware elapses a predetermined specific time longer than the standard processing time or the estimated processing time in the higher-level software. Including a factor determination step of determining whether the cause of the delay in the higher-level software is due to the specific processing of the system management by the system management firmware.
The higher-level software is
Further, it has a delay determination step of determining whether or not there is an unacceptable delay in the specific process.
When the delay determination step determines that there is an unacceptable delay in the specific process, the factor determination step determines that the cause of the delay in the higher-level software is due to the specific process.
The higher-level software is
Further, it has a processing time acquisition step of acquiring the estimated processing time required for the specific processing and the actual processing time required for the specific processing.
The delay determination step determines whether or not there is an unacceptable delay in the specific processing based on the estimated processing time acquired by the processing time acquisition step and the actual processing time.
The system management firmware is
Further, it has a storage area notification stage for notifying the higher-level software of a storage area that is accessible from the higher-level software and in which the estimated processing time and the actual processing time are stored.
The processing time acquisition step acquires the estimated processing time and the actual processing time stored in the storage area notified from the system management firmware.
Information processing method.
JP2017055028A 2017-03-21 2017-03-21 Information processing equipment and information processing method Active JP7069551B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017055028A JP7069551B2 (en) 2017-03-21 2017-03-21 Information processing equipment and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017055028A JP7069551B2 (en) 2017-03-21 2017-03-21 Information processing equipment and information processing method

Publications (2)

Publication Number Publication Date
JP2018156603A JP2018156603A (en) 2018-10-04
JP7069551B2 true JP7069551B2 (en) 2022-05-18

Family

ID=63717303

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017055028A Active JP7069551B2 (en) 2017-03-21 2017-03-21 Information processing equipment and information processing method

Country Status (1)

Country Link
JP (1) JP7069551B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012053110A1 (en) 2010-10-22 2012-04-26 富士通株式会社 Fault monitoring device, fault monitoring method and program
JP2013206046A (en) 2012-03-28 2013-10-07 Nec Corp Information processing apparatus, start time diagnostic method, and program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09244923A (en) * 1996-03-11 1997-09-19 Hitachi Ltd Abnormality monitoring device using watchdog timer

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012053110A1 (en) 2010-10-22 2012-04-26 富士通株式会社 Fault monitoring device, fault monitoring method and program
JP2013206046A (en) 2012-03-28 2013-10-07 Nec Corp Information processing apparatus, start time diagnostic method, and program

Also Published As

Publication number Publication date
JP2018156603A (en) 2018-10-04

Similar Documents

Publication Publication Date Title
CN107832100B (en) APK plug-in loading method and terminal thereof
CN110362402B (en) Load balancing method, device, equipment and readable storage medium
CN109450701B (en) Virtual switch switching method and device, host machine and computer readable storage medium
US11860718B2 (en) Register reading method and apparatus, device, and medium
JP6868087B2 (en) Communication channel method and system to the management controller
CN106937258B (en) A kind of control method of broadcast, device and mobile terminal
US8245085B2 (en) Dump output control apparatus and dump output control method
CN111970339A (en) Request control method and device and electronic equipment
CN110209548B (en) Service control method, system, electronic device and computer readable storage medium
WO2020098266A1 (en) Abnormal response method and device
US10863521B1 (en) Broadcast receiver control method and apparatus, and mobile terminal
JP7069551B2 (en) Information processing equipment and information processing method
CN111831408A (en) Asynchronous task processing method and device, electronic equipment and medium
CN113849160B (en) Dynamic migration method and device for compiling tasks, electronic equipment and storage medium
CN111090627B (en) Log storage method and device based on pooling, computer equipment and storage medium
US9176806B2 (en) Computer and memory inspection method
CN109150993B (en) Method for obtaining network request tangent plane, terminal device and storage medium
CN107977294B (en) Method and device for monitoring temperature of electronic element
CN108718285B (en) Flow control method and device of cloud computing cluster and server
CN107704399B (en) Method and device for storing data
US11144487B1 (en) Method to overload hardware pin for improved system management
JP6226666B2 (en) Batch processing control program, batch processing system
CN112241283B (en) Software upgrading method, device, computer equipment and storage medium
KR102277110B1 (en) Method and apparatus for receiving information of user terminal
WO2024051231A1 (en) Processor and processor error detection method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211130

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: 20220405

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220418

R151 Written notification of patent or utility model registration

Ref document number: 7069551

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151