JP7439546B2 - Information processing device, information processing method and program - Google Patents

Information processing device, information processing method and program Download PDF

Info

Publication number
JP7439546B2
JP7439546B2 JP2020015428A JP2020015428A JP7439546B2 JP 7439546 B2 JP7439546 B2 JP 7439546B2 JP 2020015428 A JP2020015428 A JP 2020015428A JP 2020015428 A JP2020015428 A JP 2020015428A JP 7439546 B2 JP7439546 B2 JP 7439546B2
Authority
JP
Japan
Prior art keywords
storage unit
dump information
information
unit
stored
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
JP2020015428A
Other languages
Japanese (ja)
Other versions
JP2021124756A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2020015428A priority Critical patent/JP7439546B2/en
Publication of JP2021124756A publication Critical patent/JP2021124756A/en
Application granted granted Critical
Publication of JP7439546B2 publication Critical patent/JP7439546B2/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 device, an information processing method, and a program.

情報処理装置において、OS(Operating System)に含まれるプログラムのうち、プロセス管理、I/O管理およびファイル管理等の重要な機能を担う部分であるカーネルの実行に致命的な支障が生じて、正常な動作の継続が不能になる状態をカーネルパニックと称する。このカーネルパニックが発生した場合、メインメモリ等のデータの状態をダンプファイルとして記憶装置に出力する処理であるパニックダンプを実行することが知られている。このダンプファイルを活用することによって、カーネルおよびドライバ等の不具合の修正および改良に役立てることができる。 In information processing equipment, a fatal problem occurs in the execution of the kernel, which is the part of the programs included in the OS (Operating System) that is responsible for important functions such as process management, I/O management, and file management, resulting in normal operation. A state in which it is impossible to continue normal operations is called a kernel panic. When this kernel panic occurs, it is known to execute a panic dump, which is a process of outputting the state of data in the main memory or the like to a storage device as a dump file. By utilizing this dump file, it can be used to correct and improve defects in the kernel, drivers, etc.

従来、パニックダンプでは、コストの観点等からHDD(Hard Disk Drive)等の補助記憶装置を搭載できない機器では、十分なダンプファイルを記憶する領域を確保できないため、有益なダンプ情報を残せない問題がある。ここで、ダンプ情報とは、保存したダンプファイルに含まれる情報を示すものとする。すなわち、ダンプファイルをダンプ情報と捉えることもできる。また、パニックダンプが複数回発生すると、記憶装置に空き領域がない場合、古いデータを上書きしてしまい、必要なダンプ情報が得られないという問題もある。一方で、ネットワークを利用して、サーバ上のストレージにダンプファイルを保存する手段も考えられるが、セキュリティ面でネットワーク環境の構築が困難な場合、またはログデーアを外部へ持ち出せない場合等において、装置内にダンプファイルを保持する必要がある。すなわち、パニックダンプにおいては、ダンプファイルの縮小、および必要なダンプ情報の抽出が求められている。 Conventionally, with panic dumps, devices that cannot be equipped with auxiliary storage devices such as HDDs (Hard Disk Drives) due to cost reasons have the problem of not being able to leave useful dump information because they cannot secure enough space to store dump files. be. Here, dump information refers to information included in a saved dump file. In other words, the dump file can also be regarded as dump information. Furthermore, if a panic dump occurs multiple times, old data will be overwritten if there is no free space in the storage device, resulting in the problem that necessary dump information cannot be obtained. On the other hand, it is possible to use a network to save the dump file to storage on a server, but if it is difficult to build a network environment from a security perspective or if log data cannot be taken outside, It is necessary to keep the dump file in . That is, in panic dumping, it is required to reduce the dump file and extract necessary dump information.

このようなダンプファイルの縮小を図る技術として、予め設定した保存サイズに適したコアファイル(ダンプファイル)を生成することにより、メモリダンプするサイズを縮小する手法が開示される(例えば特許文献1)。 As a technique for reducing the size of such a dump file, a method is disclosed in which the size of a memory dump is reduced by generating a core file (dump file) suitable for a preset storage size (for example, Patent Document 1) .

しかしながら、引用文献1に記載された技術では、個々のダンプファイルのサイズを縮小するために、元のダンプファイルの一部の情報だけを選択的に保存するため、有益なダンプ情報が失われる虞があるという問題がある。また、このようなダンプファイルが保存されるのは、カーネルパニックが生じた場合のみであり、カーネルパニックまで陥らないエラーの発生時における当該エラーのログデータについての保存処理については考慮されていないという問題もある。 However, in the technique described in Cited Document 1, in order to reduce the size of each dump file, only part of the information in the original dump file is selectively saved, so there is a risk that useful dump information may be lost. There is a problem that there is. Additionally, such dump files are saved only when a kernel panic occurs, and the process for saving log data for errors that do not lead to a kernel panic is not considered. There are also problems.

本発明は、上記に鑑みてなされたものであり、カーネルパニックに限らないエラーの発生時における情報を、限られた記憶領域上に有益なダンプ情報として残すことができる情報処理装置、情報処理方法およびプログラムを提供することを目的とする。 The present invention has been made in view of the above, and provides an information processing device and an information processing method that can leave information at the time of occurrence of an error not limited to a kernel panic as useful dump information in a limited storage area. and programs.

上述した課題を解決し、目的を達成するために、本発明は、エラーを示すダンプ情報を記憶する第1記憶部と、エラー発生時のログデータを記憶する第2記憶部と、前記第2記憶部に記憶された前記エラー発生時のログデータの種類を判別する判別部と、前記第1記憶部にダンプ情報が記憶されているか否かを判定する第2判定部と、前記第2判定部により前記第1記憶部にダンプ情報が記憶されていると判定された場合、前記判別部により判別された種類と同じ種類のダンプ情報が前記第1記憶部に存在するか否かを判定する第1判定部と、前記第1判定部により前記同じ種類のダンプ情報が前記第1記憶部に存在すると判定された場合、前記第2記憶部に記憶された前記エラー発生時のログデータを削除する削除部と、前記第2判定部により前記第1記憶部にダンプ情報が存在しないと判定された場合、または、前記第1判定部により前記同じ種類のダンプ情報が前記第1記憶部に存在しないと判定された場合、前記第2記憶部に記憶されたログデータを、前記判別部により判別された種類と関連付けてダンプ情報として前記第1記憶部に保存する書込部と、を備え、前記書込部は、カーネルパニックの発生時にログデータを新規のダンプ情報として前記第1記憶部に保存し、前記書込部により前記新規のダンプ情報が前記第1記憶部に保存された後、前記情報処理装置を再起動させる再起動部をさらに備え、前記第2判定部は、前記再起動部による再起動後、前記第1記憶部に前記新規のダンプ情報が保存されているか否かを判定し、前記判別部は、前記第2判定部により前記第1記憶部に前記新規のダンプ情報が保存されていると判定された場合、該新規のダンプ情報の種類を判別し、前記第1判定部は、前記判別部により判別された前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在するか否かを判定し、前記削除部は、前記第1判定部により前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在すると判定された場合、前記新規のダンプ情報を削除し、前記書込部は、前記第1判定部により前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在しないと判定された場合、前記判別部により判別された前記新規のダンプ情報の種類を、前記新規のダンプ情報と関連付けて前記第1記憶部に保存することを特徴とする。 In order to solve the above-mentioned problems and achieve the objects, the present invention provides a first storage section that stores dump information indicating an error, a second storage section that stores log data when an error occurs, and a first storage section that stores dump information indicating an error. a determining unit that determines the type of log data at the time of the error stored in the storage unit ; a second determining unit that determines whether dump information is stored in the first storage unit; and the second determining unit. If the unit determines that dump information is stored in the first storage unit, it is determined whether dump information of the same type as the type determined by the determination unit exists in the first storage unit. If the first determination unit and the first determination unit determine that the same type of dump information exists in the first storage unit, delete the log data at the time of the error stored in the second storage unit. and when the second determining unit determines that the dump information does not exist in the first storage unit, or the first determining unit determines that the same type of dump information exists in the first storage unit. a writing unit that stores the log data stored in the second storage unit as dump information in the first storage unit in association with the type determined by the determination unit, if it is determined that the log data is not stored in the second storage unit ; The writing unit stores log data as new dump information in the first storage unit when a kernel panic occurs, and after the new dump information is stored in the first storage unit by the writing unit, The information processing device further includes a restart unit that restarts the information processing device, and the second determination unit determines whether or not the new dump information is stored in the first storage unit after the restart unit restarts the information processing device. If the second determining unit determines that the new dump information is stored in the first storage unit, the determining unit determines the type of the new dump information, and determines the type of the new dump information, The determination unit determines whether dump information of the same type as the new dump information determined by the determination unit exists in the first storage unit, and the deletion unit If it is determined that dump information of the same type as the new dump information exists in the first storage unit, the new dump information is deleted, and the writing unit deletes the new dump information by the first determination unit. If it is determined that the same type of dump information as the type of new dump information does not exist in the first storage unit, the type of new dump information determined by the determining unit is associated with the new dump information. The information is stored in the first storage unit .

本発明によれば、カーネルパニックに限らないエラーの発生時における情報を、限られた記憶領域上に有益なダンプ情報として残すことができる。 According to the present invention, information at the time of occurrence of an error not limited to a kernel panic can be left as useful dump information on a limited storage area.

図1は、実施形態に係る情報処理装置のハードウェア構成の一例を示す図である。FIG. 1 is a diagram illustrating an example of the hardware configuration of an information processing apparatus according to an embodiment. 図2は、実施形態に係る情報処理装置の機能ブロックの構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of the configuration of functional blocks of the information processing device according to the embodiment. 図3は、機械学習により学習モデルを構築し、当該学習モデルを用いて判別処理を行う動作を説明する図である。FIG. 3 is a diagram illustrating the operation of constructing a learning model through machine learning and performing a discrimination process using the learning model. 図4は、実施形態に係る情報処理装置のカーネルパニック発生時処理の流れの一例を示すフローチャートである。FIG. 4 is a flowchart illustrating an example of the flow of processing when a kernel panic occurs in the information processing apparatus according to the embodiment. 図5は、実施形態に係る情報処理装置のデータ判断処理の流れの一例を示すフローチャートである。FIG. 5 is a flowchart illustrating an example of the flow of data judgment processing of the information processing apparatus according to the embodiment. 図6は、実施形態に係る情報処理装置のエラー発生時のログ保存処理の流れの一例を示す図である。FIG. 6 is a diagram illustrating an example of the flow of log saving processing when an error occurs in the information processing apparatus according to the embodiment. 図7は、実施形態に係る情報処理装置の一例としてのPCのハードウェア構成を示す図である。FIG. 7 is a diagram illustrating a hardware configuration of a PC as an example of an information processing device according to an embodiment. 図8は、実施形態に係る情報処理装置の一例としてのMFPのハードウェア構成を示す図である。FIG. 8 is a diagram illustrating a hardware configuration of an MFP as an example of an information processing device according to an embodiment.

以下、添付図面を参照しながら、本発明に係る情報処理装置、情報処理方法およびプログラムを詳細に説明する。また、以下の実施形態によって本発明が限定されるものではなく、以下の実施形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。 Hereinafter, an information processing apparatus, an information processing method, and a program according to the present invention will be described in detail with reference to the accompanying drawings. Further, the present invention is not limited to the following embodiments, and the constituent elements in the following embodiments include those that can be easily conceived by a person skilled in the art, those that are substantially the same, and those that are within the so-called equivalent range. is included. Furthermore, various omissions, substitutions, changes, and combinations of constituent elements can be made without departing from the gist of the following embodiments.

また、コンピュータソフトウェアとは、コンピュータの動作に関するプログラム、その他コンピュータによる処理の用に供する情報であってプログラムに準ずるものをいう(以下、コンピュータソフトウェアは、ソフトウェアという)。アプリケーションとは、ソフトウェアの分類のうち、特定の作業を行うために使用されるソフトウェアの総称である。また、ファームウェアとは、電子機器に組み込まれたハードウェアを制御するためのソフトウェアである。そして、オペレーティングシステム(OS)とは、コンピュータを制御し、アプリケーションソフト等がコンピュータ資源を利用可能にするためのソフトウェアのことである。オペレーティングシステムは、入出力の制御、メモリおよびハードディスク等のハードウェアの管理、ならびにプロセスの管理といった、コンピュータの基本的な管理・制御を行っている。アプリケーションは、オペレーティングシステムが提供する機能を利用して動作する。プログラムとは、コンピュータに対する指令であって、一の結果を得ることができるように組み合わせたものをいう。また、プログラムに準ずるものとは、コンピュータに対する直接の指令ではないためプログラムとは呼べないが、コンピュータの処理を規定するという点でプログラムに類似する性質を有するものをいう。例えば、データ構造(データ要素間の相互関係で表される、データの有する論理的構造)がプログラムに準ずるものに該当する。 Furthermore, computer software refers to programs related to computer operations and other information used for processing by a computer that is equivalent to a program (hereinafter, computer software will be referred to as software). An application is a general term for software used to perform a specific task among software categories. Further, firmware is software for controlling hardware built into electronic equipment. An operating system (OS) is software that controls a computer and allows application software and the like to use computer resources. The operating system performs basic management and control of a computer, such as controlling input/output, managing hardware such as memory and hard disks, and managing processes. Applications operate using functions provided by the operating system. A program is a set of instructions to a computer that are combined to produce a single result. Also, what is said to be similar to a program refers to something that cannot be called a program because it is not a direct command to a computer, but has properties similar to a program in that it specifies computer processing. For example, a data structure (a logical structure of data expressed by mutual relationships between data elements) corresponds to a program.

例えば、本実施形態に係る情報処理装置の構成は、PC(Personal Computer)、MFP(Multifunction Peripheral:複合機)、プロジェクタ、スマートフォン、携帯電話、タブレット端末、PDA(Personal Digital Assistant)IWB(Interactive White Board:電子黒板)デジタルサイネージ、HUD(Head-Up Display)装置、ウェアラブルPC産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、自動車、ゲーム機器、コンシューマ向け電子機器、組み込み機械等に適用することが可能である。なお、複合機(MFP)とは、コピー機能、スキャナ機能、プリンタ機能、およびファクス機能等の複数の異なる機能を有する装置である。 For example, the configuration of the information processing apparatus according to the present embodiment includes a PC (Personal Computer), an MFP (Multifunction Peripheral), a projector, a smartphone, a mobile phone, a tablet terminal, a PDA (Personal Digital Assistant), and an IWB (Interac tive White Board :Electronic whiteboard) Applicable to digital signage, HUD (Head-Up Display) devices, wearable PC industrial machinery, imaging devices, sound collection devices, medical equipment, network home appliances, automobiles, game devices, consumer electronic devices, embedded machinery, etc. Is possible. Note that a multifunction peripheral (MFP) is a device that has a plurality of different functions such as a copy function, a scanner function, a printer function, and a fax function.

(情報処理装置のハードウェア構成)
図1は、実施形態に係る情報処理装置のハードウェア構成の一例を示す図である。図1を参照しながら、本実施形態に係る情報処理装置1のハードウェア構成について説明する。
(Hardware configuration of information processing device)
FIG. 1 is a diagram illustrating an example of the hardware configuration of an information processing apparatus according to an embodiment. The hardware configuration of the information processing device 1 according to the present embodiment will be described with reference to FIG. 1.

図1に示す情報処理装置1は、カーネルパニックの発生時、およびカーネルパニックまで陥らない通常動作時におけるエラー(以下、通常エラーと称する場合がある)の発生時にログデータを含むダンプファイルを保存する装置である。また、カーネルパニックおよび通常エラーを総称して、単に「エラー」と称する場合がある。図1に示すように、情報処理装置1は、CPU(Central Processing Unit)501と、不揮発性メモリ502(第1記憶部)と、メインメモリ503(第2記憶部)と、ROM(Read Only Memory)504と、ネットワークI/F505と、を備えている。 The information processing device 1 shown in FIG. 1 saves a dump file containing log data when a kernel panic occurs and when an error (hereinafter sometimes referred to as a normal error) occurs during normal operation that does not lead to a kernel panic. It is a device. Additionally, kernel panics and normal errors may be collectively referred to simply as "errors." As shown in FIG. 1, the information processing device 1 includes a CPU (Central Processing Unit) 501, a nonvolatile memory 502 (first storage section), a main memory 503 (second storage section), and a ROM (Read Only Memory). ) 504 and a network I/F 505.

CPU501は、情報処理装置1の動作を統括的に制御する演算装置である。CPU501は、重要な機能を担うカーネルを含むOSに従って情報処理装置1の動作を制御する。 The CPU 501 is a calculation device that centrally controls the operation of the information processing device 1 . The CPU 501 controls the operation of the information processing device 1 according to the OS including a kernel that performs important functions.

不揮発性メモリ502は、電源を供給しなくてもデータの記憶を可能とする不揮発性の記憶装置である。不揮発性メモリ502は、上述のように、エラー発生時においてメインメモリ503に展開されているログデータ等をダンプファイル30(ダンプ情報)として記憶する。また、不揮発性メモリ502は、ダンプファイル30の他、後述するように、学習モデル40を用いて判別されたダンプファイル30の種類の情報も記憶する。また、ダンプファイル30は、固定長のデータであってもよく、可変長のデータであってもよい。また、不揮発性メモリ502は、HDD(Hard Disk Drive)またはネットワークストレージ等の大容量の記憶装置を想定しておらず、本実施形態では、小容量の不揮発性の記憶装置を想定するものとする。 The nonvolatile memory 502 is a nonvolatile storage device that can store data without supplying power. As described above, the nonvolatile memory 502 stores log data and the like developed in the main memory 503 when an error occurs as the dump file 30 (dump information). In addition to the dump file 30, the nonvolatile memory 502 also stores information about the type of the dump file 30 determined using the learning model 40, as will be described later. Furthermore, the dump file 30 may be fixed-length data or variable-length data. Furthermore, the non-volatile memory 502 is not assumed to be a large-capacity storage device such as an HDD (Hard Disk Drive) or network storage, but is assumed to be a small-capacity non-volatile storage device in this embodiment. .

メインメモリ503は、プログラムが展開されると共に一時データが記憶されるワークエリアとして機能する揮発性の記憶装置である。CPU501によりOSの実行中に、メインメモリ503には、カーネル等のプログラムからコールされた関数の名称、関数の順序、およびコールされたタイミング等の情報がログデータとして記録される。そして、カーネルパニックの発生時に、これらのログデータを含む情報がダンプファイル30として不揮発性メモリ502に記憶される。また、カーネルパニックではない通常エラーの発生時に生じたログデータについては、後述する所定のタイミングで、ダンプファイル30として不揮発性メモリ502に記憶される。また、ダンプファイル30には、例えばドライバのログデータ、およびカーネルデバッガのログデータ等が含まれる。 The main memory 503 is a volatile storage device that functions as a work area where programs are expanded and temporary data is stored. While the OS is being executed by the CPU 501, information such as the names of functions called from a program such as a kernel, the order of the functions, and the timing of the calls is recorded as log data in the main memory 503. Then, when a kernel panic occurs, information including these log data is stored in the nonvolatile memory 502 as the dump file 30. Further, log data generated when a normal error other than a kernel panic occurs is stored in the nonvolatile memory 502 as a dump file 30 at a predetermined timing to be described later. Further, the dump file 30 includes, for example, driver log data, kernel debugger log data, and the like.

ROM504は、カーネルを含むOS、およびCPU10によって実行される各種プログラムおよび各種データが格納される記憶装置である。したがって、カーネルを含むOSは、情報処理装置1の起動時にROM504からメインメモリ503に展開される。また、ROM504は、予め機械学習により教師データを用いて学習された学習モデル40を記憶している。この学習モデル40は、後述するように、ダンプファイルの種別を判別するためのモデルである。なお、学習モデル40は、ROM504に記憶されていることに限られず、不揮発性メモリ502に記憶されていてもよい。また、カーネルを含むOSについても、ROM504に記憶されていることに限られず、不揮発性メモリ502に記憶されていて、当該不揮発性メモリ502からOSがメインメモリ503に展開されるものとしてもよい。 The ROM 504 is a storage device that stores an OS including a kernel, various programs executed by the CPU 10, and various data. Therefore, the OS including the kernel is expanded from the ROM 504 to the main memory 503 when the information processing device 1 is started. Further, the ROM 504 stores a learning model 40 that has been learned in advance by machine learning using teacher data. This learning model 40 is a model for determining the type of dump file, as will be described later. Note that the learning model 40 is not limited to being stored in the ROM 504, and may be stored in the nonvolatile memory 502. Further, the OS including the kernel is not limited to being stored in the ROM 504, but may be stored in the non-volatile memory 502, and the OS may be expanded from the non-volatile memory 502 to the main memory 503.

ネットワークI/F505は、情報処理装置1をネットワーク2に接続するための通信モジュールである。ネットワークI/F505は、例えば、イーサネット(登録商標)に対応し、TCP(Transmission Control Protocol)/IP(Internet Protocol)等に準拠した通信が可能とする。情報処理装置1は、ネットワークI/F505を介して、ネットワーク2に接続された他の情報処理装置とデータ通信を行うことができる。例えば、情報処理装置1は、ネットワークI/F505を介して、他の情報処理装置から予め学習されている学習モデル40を受信して用いるものとしてもよい。 Network I/F 505 is a communication module for connecting information processing device 1 to network 2 . The network I/F 505 is compatible with, for example, Ethernet (registered trademark) and enables communication based on TCP (Transmission Control Protocol)/IP (Internet Protocol) and the like. The information processing device 1 can perform data communication with other information processing devices connected to the network 2 via the network I/F 505. For example, the information processing device 1 may receive and use the learning model 40 learned in advance from another information processing device via the network I/F 505.

(情報処理装置の機能ブロック構成)
図2は、実施形態に係る情報処理装置の機能ブロックの構成の一例を示す図である。図2を参照しながら、本実施形態に係る情報処理装置1の機能ブロックの構成について説明する。
(Functional block configuration of information processing device)
FIG. 2 is a diagram illustrating an example of the configuration of functional blocks of the information processing device according to the embodiment. The configuration of functional blocks of the information processing device 1 according to this embodiment will be described with reference to FIG. 2.

図2に示すように、情報処理装置1は、カーネル部101と、第1判定部102と、第2判定部103と、判別部104と、書込部105と、削除部106と、再起動部107と、を備えている。 As shown in FIG. 2, the information processing device 1 includes a kernel unit 101, a first determination unit 102, a second determination unit 103, a determination unit 104, a writing unit 105, a deletion unit 106, and a reboot unit 102. 107.

カーネル部101は、OS(Operating System)に含まれる機能のうち、プロセス管理、I/O管理およびファイル管理等の重要な動作を実行する機能部である。カーネル部101は、図1に示すCPU501によりプログラム(OSのカーネル)が実行されることによって実現される。 The kernel unit 101 is a functional unit that executes important operations such as process management, I/O management, and file management among the functions included in the OS (Operating System). The kernel unit 101 is realized by executing a program (OS kernel) by the CPU 501 shown in FIG.

第1判定部102は、特定のダンプファイルと同じ種類のダンプファイルが不揮発性メモリ502に存在するか否かを判定する機能部である。同じ種類のダンプファイルとは、例えば、同じ障害内容等の情報を含むダンプファイルであり、基となるログデータの内容が一部異なっていても、同じ種類のダンプファイルとして取り扱われる場合もある。第1判定部102は、例えば、図1に示すCPU501によりプログラムが実行されることによって実現される。 The first determining unit 102 is a functional unit that determines whether a dump file of the same type as a specific dump file exists in the nonvolatile memory 502. Dump files of the same type are, for example, dump files that include information such as the same failure details, and may be treated as dump files of the same type even if the contents of the underlying log data are partially different. The first determination unit 102 is realized, for example, by executing a program by the CPU 501 shown in FIG.

第2判定部103は、第1判定部102による判定以外の種々の判定を行う機能部である。例えば、第2判定部103は、不揮発性メモリ502にダンプファイルが記憶されているか否か、および、後述するカーネルパニックが発生したことを示すフラグが立っているか否か等の判定を行う。第2判定部103は、例えば、図1に示すCPU501によりプログラムが実行されることによって実現される。 The second determination unit 103 is a functional unit that performs various determinations other than the determination made by the first determination unit 102. For example, the second determination unit 103 determines whether a dump file is stored in the nonvolatile memory 502, and whether a flag indicating that a kernel panic has occurred, which will be described later, is set. The second determination unit 103 is realized, for example, by executing a program by the CPU 501 shown in FIG.

判別部104は、ROM504から学習モデル40を読み出し、当該学習モデル40を用いて、不揮発性メモリ502上のダンプファイル30、および、メインメモリ503上のログデータの種類を判別する機能部である。判別部104は、例えば、図1に示すCPU501によりプログラムが実行されることによって実現される。 The determining unit 104 is a functional unit that reads the learning model 40 from the ROM 504 and uses the learning model 40 to determine the types of the dump file 30 on the nonvolatile memory 502 and the log data on the main memory 503. The determination unit 104 is realized, for example, by executing a program by the CPU 501 shown in FIG.

書込部105は、メインメモリ503に記憶されているログデータをダンプファイル30として不揮発性メモリ502に書き込む機能部である。書込部105は、例えば、図1に示すCPU501によりプログラムが実行されることによって実現される。 The writing unit 105 is a functional unit that writes log data stored in the main memory 503 to the nonvolatile memory 502 as a dump file 30. The writing unit 105 is realized, for example, by executing a program by the CPU 501 shown in FIG.

削除部106は、不揮発性メモリ502上の新規のダンプファイル30を削除したり、メインメモリ503上のログデータを削除する機能部である。削除部106は、例えば、図1に示すCPU501によりプログラムが実行されることによって実現される。 The deletion unit 106 is a functional unit that deletes the new dump file 30 on the nonvolatile memory 502 and the log data on the main memory 503. The deletion unit 106 is realized, for example, by executing a program by the CPU 501 shown in FIG.

再起動部107は、カーネルパニックが発生した場合に、書込部105によりダンプファイル30が不揮発性メモリ502に保存された後、情報処理装置1を再起動する機能部である再起動部107は、例えば、図1に示すCPU501によりプログラムが実行されることによって実現される。 The restart unit 107 is a functional unit that restarts the information processing apparatus 1 after the dump file 30 is saved in the nonvolatile memory 502 by the writing unit 105 when a kernel panic occurs. , for example, is realized by executing a program by the CPU 501 shown in FIG.

なお、図2に示す第1判定部102、第2判定部103、判別部104、書込部105、削除部106および再起動部107のうち少なくともいずれかの機能部は、専用のハードウェア回路(集積回路等)によって実現されるものとしてもよい。 Note that at least one of the functional units among the first determination unit 102, second determination unit 103, determination unit 104, writing unit 105, deletion unit 106, and restart unit 107 shown in FIG. 2 is a dedicated hardware circuit. It may also be realized by an integrated circuit (such as an integrated circuit).

また、図2に示す情報処理装置1の各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図2に示す情報処理装置1で独立した機能部として図示した複数の機能部を、1つの機能部として構成してもよい。一方、図2に示す情報処理装置1で1つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。 Further, the functions of each functional unit of the information processing device 1 shown in FIG. 2 are conceptually shown, and the configuration is not limited to this. For example, a plurality of functional units illustrated as independent functional units in the information processing device 1 shown in FIG. 2 may be configured as one functional unit. On the other hand, in the information processing device 1 shown in FIG. 2, the functions of one functional unit may be divided into a plurality of functions and configured as a plurality of functional units.

(機械学習による学習モデルの構築について)
図3は、機械学習により学習モデルを構築し、当該学習モデルを用いて判別処理を行う動作を説明する図である。図3を参照しながら、機械学習により学習モデルを構築し、当該学習モデルを用いて判別処理を行う動作を説明する。
(About building a learning model using machine learning)
FIG. 3 is a diagram illustrating the operation of constructing a learning model through machine learning and performing a discrimination process using the learning model. The operation of constructing a learning model by machine learning and performing discrimination processing using the learning model will be described with reference to FIG. 3.

本実施形態において、学習モデル40は、予め情報処理装置1外の情報処理装置(以下では、外部装置と称する)において、過去のログデータを使用した機械学習により構築される。ここでは、機械学習として教師あり学習の例を説明する。 In this embodiment, the learning model 40 is constructed in advance in an information processing device (hereinafter referred to as an external device) outside the information processing device 1 by machine learning using past log data. Here, we will explain an example of supervised learning as machine learning.

まず、図3(a)に示すように、外部装置により予め取得されている過去のログデータ(ダンプファイルとしての形式であってもよい)に対して、当該ログデータの種類を正解ラベルとして付与し、当該ログデータおよび当該正解ラベルの組み合わせを教師データ(ラベル付きデータ)とする。ログデータは、種々の種類の障害が発生した場合の各種情報をログとして記録したデータである。したがって、ログデータの種類とは、例えばログとして含まれる障害に関する種類である。また、教師データに用いるログデータは、例えば、情報処理装置1と機種が同じ他の情報処理装置で障害が発生した場合に取得されたログデータであってもよく、障害を想定してサーバによって生成されたログデータであってもよい。外部装置は、予め用意されたこれらのログデータおよび正解ラベルである複数の教師データを用いて、機械学習により学習モデルを構築する。機械学習の学習アルゴリズムとしては、例えば、教師あり学習の学習アルゴリズムである「分類(Classification)」等を使用するものとすればよい。 First, as shown in Figure 3(a), the type of log data is assigned as a correct label to past log data (which may be in the form of a dump file) that has been acquired in advance by an external device. Then, the combination of the log data and the correct label is used as teacher data (labeled data). Log data is data in which various types of information when various types of failures occur are recorded as logs. Therefore, the type of log data is, for example, the type related to a failure included in the log. Further, the log data used as the teacher data may be, for example, log data obtained when a failure occurs in another information processing apparatus of the same model as the information processing apparatus 1, and may be log data obtained when a failure occurs in another information processing apparatus of the same model as the information processing apparatus 1. It may be generated log data. The external device constructs a learning model by machine learning using these log data prepared in advance and a plurality of pieces of teacher data as correct answer labels. As a learning algorithm for machine learning, for example, "Classification", which is a learning algorithm for supervised learning, may be used.

例えば、図3(a)に示すように、学習に使用するログデータ(データ(1)~データ(3))に対し、ログデータの種類を正解ラベル(障害(1)~障害(3))を付与し、教師データとして用意しておく。すなわち、ログデータ(1)には障害(1)、ログデータ(2)には障害(2)、ログデータ(3)には障害(3)、というようにログデータに対して該ログデータがどのような種類の障害発生時に取得されたログデータであるのか、またはどのような種類の障害発生を想定して生成されたログデータであるのかを対応付けておく。例えば、図3(a)に示す例では、ログデータとしてのデータ(2)には、コールされた関数の名称である「bbb」、および「BBBドライバ」のログが含まれていることが示されている。なお、図3(a)に示す例では、3つの教師データが示されているが、3つに限定されるものではない。 For example, as shown in Figure 3(a), for the log data used for learning (data (1) to data (3)), the type of log data is labeled as the correct answer (fault (1) to fault (3)). and prepare it as teacher data. In other words, log data (1) has a failure (1), log data (2) has a failure (2), log data (3) has a failure (3), and so on. The log data is associated with what type of failure was acquired when the log data occurred, or with what type of failure the log data was generated assuming the occurrence of the failure. For example, in the example shown in FIG. 3(a), data (2) as log data includes the name of the called function "bbb" and the log of "BBB driver". has been done. Note that in the example shown in FIG. 3(a), three pieces of teacher data are shown, but the number is not limited to three.

そして、外部装置は、これらの教師データに対して所定の学習アルゴリズム(例えば上述の「分類」のアルゴリズム)を適用して、学習モデル(図1および図2に示す学習モデル40)を構築する。そして、構築された学習モデル40は、外部装置からネットワーク2およびネットワークI/F505を介して情報処理装置1へ送信され、不揮発性メモリ502またはROM504に記憶される。また、構築された学習モデル40は、外部装置からフラッシュメモリ等の記録メディアを介して情報処理装置1の不揮発性メモリ502またはROM504に記憶されるものとしてもよい。なお、学習アルゴリズムは、ログデータに含まれる情報(一例として、カーネル、その他のソフトウェアからコールされた関数名、コールされた関数の順序、およびコールされたタイミング等)に基づいて、障害の種類を複数パターンに分類することができるような学習モデルを構築するようなアルゴリズムである。 Then, the external device applies a predetermined learning algorithm (for example, the above-mentioned "classification" algorithm) to these teacher data to construct a learning model (the learning model 40 shown in FIGS. 1 and 2). The constructed learning model 40 is then transmitted from the external device to the information processing device 1 via the network 2 and network I/F 505 and stored in the nonvolatile memory 502 or ROM 504. Further, the constructed learning model 40 may be stored in the nonvolatile memory 502 or ROM 504 of the information processing device 1 from an external device via a recording medium such as a flash memory. The learning algorithm identifies the type of failure based on the information contained in the log data (for example, the name of the function called from the kernel or other software, the order of the called function, and the timing of the call). This is an algorithm that constructs a learning model that can classify into multiple patterns.

そして、図3(b)に示すように、ログデータ(4)が、種類の判別の対象となるログデータとして入力されたものとする。この場合、情報処理装置1の判別部104は、図3(b)に示すように、外部装置により構築された学習モデルを用いて、ログデータ(4)の種類、すなわち、障害の種類を判別する。このとき、外部装置により構築された学習モデルは、ログデータの種類が障害(1)~障害(3)のいずれであるかを判別できるモデルとなっているので、判別部104は、ログデータ(4)の種類が、障害(1)~障害(3)のいずれであるかを判別する。なお、学習モデルによる判別の対象となるログデータは、情報処理装置1で発生したすべてのログデータではなく、一部の場合もあり得る。例えば、バックトレースの関数名またはログの種類(AAAドライバ、EEEライブラリ等)を学習データとして使用する。 As shown in FIG. 3(b), it is assumed that log data (4) is input as log data whose type is to be determined. In this case, the determination unit 104 of the information processing device 1 determines the type of log data (4), that is, the type of failure, using a learning model constructed by an external device, as shown in FIG. 3(b). do. At this time, since the learning model constructed by the external device is a model that can determine whether the type of log data is failure (1) to failure (3), the determination unit 104 uses the log data ( 4) Determine which of the failures (1) to (3) the type is. Note that the log data to be determined by the learning model may not be all of the log data generated in the information processing device 1, but may be some of the log data. For example, the backtrace function name or log type (AAA driver, EEE library, etc.) is used as learning data.

図3(b)に示す例では、判別部104は、学習モデルを用いて、ログデータ(4)の種類が障害(2)であると判別する。 In the example shown in FIG. 3B, the determining unit 104 uses the learning model to determine that the type of log data (4) is a failure (2).

なお、図3に示す例では、判別部104が、学習モデルを用いて、ログデータについて障害の種類を判別する場合について説明したが、これに限定されない。例えば、ログデータのうち最後にコールされた関数名等によって一意に障害の種類が判別できる場合には、学習モデルを用いずに障害の種類を判別してもよい。この場合、障害が発生した場合であっても、一部の種類の障害については、学習モデルを使用した障害の種類の判別処理を省略することができるため、情報処理装置1のメインメモリ503およびCPU501の負荷を抑制することができる。 Note that in the example shown in FIG. 3, a case has been described in which the determining unit 104 uses a learning model to determine the type of failure in log data, but the present invention is not limited to this. For example, if the type of failure can be uniquely determined based on the name of the last function called in the log data, the type of failure may be determined without using a learning model. In this case, even if a failure occurs, the process of determining the type of failure using the learning model can be omitted for some types of failure. The load on the CPU 501 can be suppressed.

また、学習モデルによるログデータの種類の判別として、障害の種類を判別するものとしたが、これに限られず、例えば、ログを出力したドライバの種類であってもよい。 In addition, although the type of failure is determined as the type of log data determined by the learning model, the present invention is not limited to this, and may be, for example, the type of driver that outputs the log.

(カーネルパニック発生時処理)
図4は、実施形態に係る情報処理装置のカーネルパニック発生時処理の流れの一例を示すフローチャートである。図4を参照しながら、本実施形態に係る情報処理装置1のカーネルパニック発生時処理について説明する。情報処理装置1は、カーネルパニックが発生した場合、図4に示すカーネルパニック発生時処理を実行する。
(Processing when kernel panic occurs)
FIG. 4 is a flowchart illustrating an example of the flow of processing when a kernel panic occurs in the information processing apparatus according to the embodiment. Processing when a kernel panic occurs in the information processing device 1 according to the present embodiment will be described with reference to FIG. 4. When a kernel panic occurs, the information processing device 1 executes the process shown in FIG. 4 when a kernel panic occurs.

<ステップS11>
情報処理装置1の書込部105は、不揮発性メモリ502に十分な空き容量があるか否かを判定する。具体的には、書込部105は、不揮発性メモリ502の空き容量が所定値以上あるか否かを判定する。不揮発性メモリ502に十分な空き容量がある場合(不揮発性メモリ502の空き容量が所定値以上である場合)(ステップS11:Yes)、ステップS12へ移行し、十分な空き容量がない場合(不揮発性メモリ502の空き容量が所定値未満である場合)(ステップS11:No)、ステップS13へ移行する。
<Step S11>
The writing unit 105 of the information processing device 1 determines whether there is sufficient free space in the nonvolatile memory 502. Specifically, the writing unit 105 determines whether the free space of the nonvolatile memory 502 is equal to or greater than a predetermined value. If there is sufficient free space in the non-volatile memory 502 (if the free space in the non-volatile memory 502 is greater than or equal to the predetermined value) (step S11: Yes), the process moves to step S12; If the free space of the storage memory 502 is less than a predetermined value (step S11: No), the process moves to step S13.

<ステップS12>
書込部105は、不揮発性メモリ502に十分な空き容量がある場合、カーネルパニックの発生により生成されたログデータ(メインメモリ503に記憶されたログデータ)を、ダンプファイル30として不揮発性メモリ502へ書き込む。そして、ステップS14へ移行する。
<Step S12>
If there is sufficient free space in the nonvolatile memory 502, the writing unit 105 writes log data generated due to the occurrence of a kernel panic (log data stored in the main memory 503) to the nonvolatile memory 502 as a dump file 30. Write to. Then, the process moves to step S14.

<ステップS13>
書込部105は、不揮発性メモリ502に十分な空き容量がない場合、カーネルパニックの発生により生成されたログデータ(メインメモリ503に記憶されたログデータ)を、ダンプファイル30として不揮発性メモリ502に記憶されているデータ(例えば古いダンプファイル)に対して上書きして書き込む。例えば、図2に示すように、不揮発性メモリ502には複数のダンプファイル30が保存されている場合もあり、書込部105は、カーネルパニックの発生により生成されたログデータを、不揮発性メモリ502に記憶されている過去のダンプファイル30のうち古いダンプファイル30から上書きして新たなダンプファイル30として書き込む。そして、ステップS14へ移行する。
<Step S13>
If there is not enough free space in the nonvolatile memory 502, the writing unit 105 writes log data generated due to the occurrence of a kernel panic (log data stored in the main memory 503) to the nonvolatile memory 502 as a dump file 30. overwrite the data stored in the old dump file (for example, an old dump file). For example, as shown in FIG. 2, a plurality of dump files 30 may be stored in the non-volatile memory 502, and the writing unit 105 writes the log data generated due to the occurrence of a kernel panic to the non-volatile memory 502. Among the past dump files 30 stored in 502, the oldest dump file 30 is overwritten and written as a new dump file 30. Then, the process moves to step S14.

<ステップS14>
書込部105は、カーネルパニックが発生したことを示すフラグを立てる。すなわち、書込部105は、カーネルパニックが発生したことを示すフラグ情報を、不揮発性メモリ502に書き込む。そして、ステップS15へ移行する。
<Step S14>
The writing unit 105 sets a flag indicating that a kernel panic has occurred. That is, the writing unit 105 writes flag information indicating that a kernel panic has occurred into the nonvolatile memory 502. Then, the process moves to step S15.

<ステップS15>
情報処理装置1の再起動部107は、情報処理装置1を再起動する。そして、カーネルパニック発生時処理を終了する。
<Step S15>
The restart unit 107 of the information processing device 1 restarts the information processing device 1. Then, the process when a kernel panic occurs ends.

以上のように、情報処理装置1は、カーネルパニックが発生した場合に、不揮発性メモリ502に十分な空き容量がない場合、古いデータに対してダンプファイル30を上書きして書き込むものとしている。これによって、当該カーネルパニックに関するダンプファイル30を、不揮発性メモリ502に確実に記憶させることができ、有益なダンプ情報を不揮発性メモリ502に確実に残すことができる。 As described above, when a kernel panic occurs and there is not enough free space in the nonvolatile memory 502, the information processing device 1 overwrites old data with the dump file 30. Thereby, the dump file 30 related to the kernel panic can be reliably stored in the nonvolatile memory 502, and useful dump information can be reliably left in the nonvolatile memory 502.

(データ判断処理)
図5は、実施形態に係る情報処理装置のデータ判断処理の流れの一例を示すフローチャートである。図5を参照しながら、本実施形態に係る情報処理装置1のデータ判断処理について説明する。情報処理装置1は、再起動後、図5に示すデータ判断処理を実行する。
(Data judgment processing)
FIG. 5 is a flowchart illustrating an example of the flow of data judgment processing of the information processing apparatus according to the embodiment. The data determination process of the information processing device 1 according to the present embodiment will be described with reference to FIG. 5. After restarting, the information processing device 1 executes the data determination process shown in FIG. 5.

<ステップS21>
情報処理装置1の第2判定部103は、再起動後、カーネルパニックが発生したことを示すフラグが立っているか否かを判定する。すなわち、第2判定部103は、カーネルパニックが発生したことを示すフラグ情報が不揮発性メモリ502に記憶されているか否かを判定する。フラグが立っている場合(ステップS21:Yes)、ステップS22へ移行し、フラグが立っていない場合(ステップS21:No)、データ判断処理を終了する。
<Step S21>
After rebooting, the second determination unit 103 of the information processing device 1 determines whether a flag indicating that a kernel panic has occurred is set. That is, the second determination unit 103 determines whether flag information indicating that a kernel panic has occurred is stored in the nonvolatile memory 502. If the flag is set (step S21: Yes), the process moves to step S22, and if the flag is not set (step S21: No), the data judgment process is ended.

<ステップS22>
第2判定部103は、カーネルパニックが発生したことを示すフラグが立っている場合、不揮発性メモリ502に新規のダンプファイル30が保存されているか否かを判定する。不揮発性メモリ502に新規のダンプファイル30が保存されている場合(ステップS22:Yes)、ステップS23へ移行し、新規のダンプファイル30が保存されていない場合(ステップS22:No)、データ判断処理を終了する。
<Step S22>
If the flag indicating that a kernel panic has occurred is set, the second determination unit 103 determines whether a new dump file 30 is stored in the nonvolatile memory 502. If the new dump file 30 is stored in the nonvolatile memory 502 (step S22: Yes), the process moves to step S23, and if the new dump file 30 is not stored (step S22: No), data judgment processing is performed. end.

<ステップS23>
情報処理装置1の判別部104は、ROM504から予め構築されている学習モデル40を読み出し、当該学習モデル40を用いて、不揮発性メモリ502に保存されている上述の新規のダンプファイル30の種類を判別する。そして、ステップS24へ移行する。
<Step S23>
The determining unit 104 of the information processing device 1 reads out the learning model 40 constructed in advance from the ROM 504, and uses the learning model 40 to determine the type of the above-mentioned new dump file 30 stored in the nonvolatile memory 502. Discern. Then, the process moves to step S24.

<ステップS24>
そして、第1判定部102は、判別部104により判別された新規のダンプファイル30の種類と同じ種類のダンプファイル30が不揮発性メモリ502に存在するか否かを判定する。同じ種類のダンプファイル30が存在する場合(ステップS24:Yes)、ステップS25へ移行し、同じ種類のダンプファイル30が存在しない場合(ステップS24:No)、ステップS26へ移行する。
<Step S24>
The first determining unit 102 then determines whether a dump file 30 of the same type as the new dump file 30 determined by the determining unit 104 exists in the nonvolatile memory 502. If the same type of dump file 30 exists (step S24: Yes), the process moves to step S25, and if the same type of dump file 30 does not exist (step S24: No), the process moves to step S26.

<ステップS25>
新規のダンプファイル30と同じ種類のダンプファイル30が不揮発性メモリ502に存在する場合、削除部106は、当該新規のダンプファイル30を不揮発性メモリ502から削除する。これは、不揮発性メモリ502に既に同じ種類のダンプファイル30があれば、当該ダンプファイル30を、カーネルおよびドライバ等の不具合の修正および改良に用いるダンプ情報として利用できるためである。また、削除部106は、第2判定部103により不揮発性メモリ502に記憶されていると判定されたフラグ情報を削除する。
<Step S25>
If a dump file 30 of the same type as the new dump file 30 exists in the nonvolatile memory 502, the deletion unit 106 deletes the new dump file 30 from the nonvolatile memory 502. This is because if the same type of dump file 30 already exists in the nonvolatile memory 502, the dump file 30 can be used as dump information used for correcting and improving defects in the kernel, drivers, and the like. Furthermore, the deletion unit 106 deletes the flag information determined by the second determination unit 103 to be stored in the nonvolatile memory 502.

なお、削除部106は、新規のダンプファイル30を削除することに限られず、存在が確認された同じ種類のダンプファイル30を削除するものとしてもよい。この場合、新規のダンプファイル30を不揮発性メモリ502に残すので、最新のダンプ情報をカーネルおよびドライバ等の不具合の修正および改良に用いることができる。 Note that the deletion unit 106 is not limited to deleting a new dump file 30, and may delete a dump file 30 of the same type whose existence has been confirmed. In this case, since the new dump file 30 is left in the nonvolatile memory 502, the latest dump information can be used to correct and improve defects in the kernel, drivers, and the like.

そして、データ判断処理を終了する。 Then, the data judgment process ends.

<ステップS26>
新規のダンプファイル30と同じ種類のダンプファイル30が不揮発性メモリ502に存在しない場合、書込部105は、ステップS23で判別部104により判別された種類を、当該新規のダンプファイル30と関連付けて、不揮発性メモリ502に保存する。この場合、書込部105は、新規のダンプファイル30と、判別部104により判別された種類とを関連付けるために、当該ダンプファイル30のヘッダに種類を付与して管理してもよく、別途、関連付けのためのテーブル(リスト)を作成して管理してもよい。また、削除部106は、第2判定部103により不揮発性メモリ502に記憶されていると判定されたフラグ情報を削除する。これによって、次回のデータ判断処理におけるステップS24の処理において、第1判定部102による同じ種類のダンプファイル30が不揮発性メモリ502に存在するか否かの判定に利用することができる。そして、データ判断処理を終了する。
<Step S26>
If a dump file 30 of the same type as the new dump file 30 does not exist in the nonvolatile memory 502, the writing unit 105 associates the type determined by the determining unit 104 in step S23 with the new dump file 30. , and stored in non-volatile memory 502. In this case, in order to associate the new dump file 30 with the type determined by the determining unit 104, the writing unit 105 may manage the dump file 30 by adding a type to the header of the dump file 30. A table (list) for association may be created and managed. Furthermore, the deletion unit 106 deletes the flag information determined by the second determination unit 103 to be stored in the nonvolatile memory 502. Thereby, in the process of step S24 in the next data judgment process, the first judgment unit 102 can use it to judge whether or not the same type of dump file 30 exists in the nonvolatile memory 502. Then, the data judgment process ends.

(エラー発生時のログ保存処理)
図6は、実施形態に係る情報処理装置のエラー発生時のログ保存処理の流れの一例を示す図である。図6を参照しながら、本実施形態に係る情報処理装置1のエラー発生時のログ保存処理について説明する。情報処理装置1は、例えば、CPU501の負荷に余裕がある場合、メインメモリ503に十分な空き容量がない場合、または一定時間経過するごとに、図6に示すエラー発生時のログ保存処理を実行する。ここで、例えば、メインメモリ503の空き容量、またはメインメモリ503内のログデータ用の記憶領域の容量が所定値未満となった場合、メインメモリ503に十分な空き容量がないと判定するものとすればよい。
(Log saving process when an error occurs)
FIG. 6 is a diagram illustrating an example of the flow of log saving processing when an error occurs in the information processing apparatus according to the embodiment. With reference to FIG. 6, a log saving process when an error occurs in the information processing apparatus 1 according to the present embodiment will be described. For example, the information processing device 1 executes the log saving process in the event of an error as shown in FIG. 6 when there is enough load on the CPU 501, when there is not enough free space in the main memory 503, or every time a certain period of time elapses. do. Here, for example, if the free space of the main memory 503 or the capacity of the storage area for log data in the main memory 503 becomes less than a predetermined value, it is determined that there is not enough free space in the main memory 503. do it.

<ステップS31>
情報処理装置1の第2判定部103は、不揮発性メモリ502にログデータ(ダンプファイル30)が保存されているか否かを判定する。不揮発性メモリ502にログデータが保存されている場合(ステップS31:Yes)、ステップS32へ移行し、不揮発性メモリ502にログデータが保存されていない場合(ステップS31:No)、ステップS34へ移行する。
<Step S31>
The second determination unit 103 of the information processing device 1 determines whether log data (dump file 30) is stored in the nonvolatile memory 502. If the log data is stored in the nonvolatile memory 502 (step S31: Yes), the process moves to step S32, and if the log data is not stored in the nonvolatile memory 502 (step S31: No), the process moves to step S34. do.

<ステップS32>
情報処理装置1の判別部104は、不揮発性メモリ502にログデータ(ダンプファイル30)が保存されている場合、ROM504から予め構築されている学習モデル40を読み出し、当該学習モデル40を用いて、メインメモリ503に記憶されているログデータの種類を判別する。そして、ステップS33へ移行する。
<Step S32>
When the log data (dump file 30) is stored in the nonvolatile memory 502, the determination unit 104 of the information processing device 1 reads the learning model 40 constructed in advance from the ROM 504, and uses the learning model 40 to The type of log data stored in the main memory 503 is determined. Then, the process moves to step S33.

<ステップS33>
情報処理装置1の第1判定部102は、不揮発性メモリ502に保存されているログデータ(ダンプファイル30)を読み出す。この場合、第1判定部102は、当該ログデータ(ダンプファイル30)と関連付けられている種類(障害の種類)を読み出す。そして、ステップS35へ移行する。
<Step S33>
The first determination unit 102 of the information processing device 1 reads log data (dump file 30) stored in the nonvolatile memory 502. In this case, the first determination unit 102 reads out the type (failure type) associated with the log data (dump file 30). Then, the process moves to step S35.

<ステップS34>
情報処理装置1の判別部104は、不揮発性メモリ502にログデータ(ダンプファイル30)が保存されていない場合、ROM504から予め構築されている学習モデル40を読み出し、当該学習モデル40を用いて、メインメモリ503に記憶されているログデータの種類を判別する。そして、ステップS37へ移行する。
<Step S34>
If the log data (dump file 30) is not stored in the nonvolatile memory 502, the determination unit 104 of the information processing device 1 reads the learning model 40 constructed in advance from the ROM 504, and uses the learning model 40 to The type of log data stored in the main memory 503 is determined. Then, the process moves to step S37.

<ステップS35>
そして、第1判定部102は、判別部104により判別されたログデータの種類と同じ種類のログデータ(ダンプファイル30)が不揮発性メモリ502に存在するか否かを判定する。同じ種類のログデータ(ダンプファイル30)が存在する場合(ステップS35:Yes)、ステップS36へ移行し、同じ種類のログデータ(ダンプファイル30)が存在しない場合(ステップS35:No)、ステップS37へ移行する。
<Step S35>
Then, the first determination unit 102 determines whether log data (dump file 30) of the same type as the type of log data determined by the determination unit 104 exists in the nonvolatile memory 502. If the same type of log data (dump file 30) exists (step S35: Yes), the process moves to step S36, and if the same type of log data (dump file 30) does not exist (step S35: No), step S37 Move to.

<ステップS36>
判別部104により判別されたログデータの種類と同じ種類のログデータ(ダンプファイル30)が不揮発性メモリ502に存在する場合、削除部106は、メインメモリ503に保存されているログデータを削除し、不揮発性メモリ502へは当該ログデータを保存しない。これは、不揮発性メモリ502に既に同じ種類のログデータ(ダンプファイル30)があれば、当該ログデータ(ダンプファイル30)を、カーネルおよびドライバ等の不具合の修正および改良に用いるダンプ情報として利用できるためである。
<Step S36>
If the same type of log data (dump file 30) as the type of log data determined by the determination unit 104 exists in the nonvolatile memory 502, the deletion unit 106 deletes the log data stored in the main memory 503. , the log data is not saved in the nonvolatile memory 502. This means that if the same type of log data (dump file 30) already exists in the non-volatile memory 502, the log data (dump file 30) can be used as dump information for correcting and improving defects in the kernel, drivers, etc. It's for a reason.

なお、削除部106は、メインメモリ503に保存されているログデータを削除することに限られず、例えば、不揮発性メモリ502で存在が確認されたログデータを削除部106により削除しつつ、書込部105によりメインメモリ503に保存されているログデータを不揮発性メモリ502に書き込むものとしてもよい。この場合、新しいログデータ(メインメモリ503に記憶されたログデータ)を不揮発性メモリ502にダンプファイル30として残すので、最新のダンプ情報をカーネルおよびドライバ等の不具合の修正および改良に用いることができる。 Note that the deletion unit 106 is not limited to deleting log data stored in the main memory 503; for example, the deletion unit 106 deletes log data whose existence has been confirmed in the nonvolatile memory 502, and deletes the log data stored in the main memory 503. The log data stored in the main memory 503 may be written into the nonvolatile memory 502 by the unit 105 . In this case, new log data (log data stored in the main memory 503) is left in the non-volatile memory 502 as the dump file 30, so the latest dump information can be used to correct and improve defects in the kernel, drivers, etc. .

そして、エラー発生時のログ保存処理を終了する。 Then, the log saving process when an error occurs ends.

<ステップS37>
不揮発性メモリ502にログデータが保存されていない場合、または、判別部104により判別されたログデータの種類と同じ種類のログデータ(ダンプファイル30)が不揮発性メモリ502に存在しない場合、書込部105は、メインメモリ503に記憶されているログデータを、判別部104により判別された種類と関連付けて、ダンプファイル30として不揮発性メモリ502に保存する。この場合、書込部105は、当該ログデータと、判別部104により判別された種類とを関連付けるために、当該ログデータのヘッダに種類を付与して管理してもよく、別途、関連付けのためのテーブル(リスト)を作成して管理してもよい。これによって、次回のエラー発生時のログ保存処理におけるステップS35の処理において、第1判定部102による同じ種類のログデータ(ダンプファイル30)が不揮発性メモリ502に存在するか否かの判定に利用することができる。そして、エラー発生時のログ保存処理を終了する。
<Step S37>
If no log data is stored in the non-volatile memory 502, or if the same type of log data (dump file 30) as the type of log data determined by the determining unit 104 does not exist in the non-volatile memory 502, writing is not performed. The unit 105 stores the log data stored in the main memory 503 in the nonvolatile memory 502 as a dump file 30 in association with the type determined by the determining unit 104. In this case, the writing unit 105 may manage the log data by adding a type to the header of the log data in order to associate the log data with the type determined by the determining unit 104. You may also create and manage a table (list). This allows the first determination unit 102 to use it to determine whether or not the same type of log data (dump file 30) exists in the nonvolatile memory 502 in the process of step S35 in the log storage process when an error occurs next time. can do. Then, the log saving process when an error occurs ends.

(PCのハードウェア構成)
図7は、実施形態に係る情報処理装置の一例としてのPCのハードウェア構成を示す図である。ここで、図7を参照しながら、情報処理装置1がPCであるものとした場合のハードウェア構成について説明する。
(PC hardware configuration)
FIG. 7 is a diagram illustrating a hardware configuration of a PC as an example of an information processing device according to an embodiment. Here, with reference to FIG. 7, the hardware configuration in the case where the information processing device 1 is a PC will be described.

図7に示すように、情報処理装置1の一例としてのPC1aは、CPU601と、ROM602と、RAM603と、HD604と、HDDコントローラ605と、ディスプレイ606と、外部機器接続I/F608と、ネットワークI/F609と、キーボード611と、ポインティングデバイス612と、DVD-RW(Digital Versatile Disc Rewritable)614と、メディアI/F616と、を備えている。これらの構成要素は、アドレスバスおよびデータバス等のバスライン610によって互いに通信可能となるように接続されている。 As shown in FIG. 7, the PC 1a as an example of the information processing device 1 includes a CPU 601, a ROM 602, a RAM 603, an HD 604, an HDD controller 605, a display 606, an external device connection I/F 608, and a network I/F. F609, a keyboard 611, a pointing device 612, a DVD-RW (Digital Versatile Disc Rewritable) 614, and a media I/F 616. These components are communicatively connected to each other by bus lines 610, such as an address bus and a data bus.

CPU601は、PC1a全体の動作を制御する演算装置である。ROM602は、IPL(Initial Program Loader)等のCPU601の駆動に用いられるプログラムを記憶する不揮発性の記憶装置である。RAM603は、CPU601のワークエリアとして使用される揮発性の記憶装置である。 The CPU 601 is an arithmetic unit that controls the entire operation of the PC 1a. The ROM 602 is a nonvolatile storage device that stores programs used to drive the CPU 601, such as an IPL (Initial Program Loader). The RAM 603 is a volatile storage device used as a work area for the CPU 601.

HD604は、プログラム等の各種データを記憶する不揮発性の記憶装置である。HDDコントローラ605は、CPU601の制御に従ってHD604に対する各種データの読み出しまたは書き込みを制御する装置である。 The HD 604 is a nonvolatile storage device that stores various data such as programs. The HDD controller 605 is a device that controls reading and writing of various data to the HD 604 under the control of the CPU 601.

ディスプレイ606は、カーソル、メニュー、ウィンドウ、文字、または画像等の各種情報を表示する表示装置である。外部機器接続I/F608は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリまたはプリンタ等である。ネットワークI/F609は、ネットワーク2を利用してデータ通信をするためのインターフェースである。 The display 606 is a display device that displays various information such as a cursor, menu, window, characters, or images. External device connection I/F 608 is an interface for connecting various external devices. The external device in this case is, for example, a USB (Universal Serial Bus) memory or a printer. The network I/F 609 is an interface for data communication using the network 2.

キーボード611は、文字、数値、各種指示等の入力のための複数のキーを備えた入力装置である。ポインティングデバイス612は、各種指示の選択、実行、処理対象の選択、カーソルの移動等を行う入力装置である。 The keyboard 611 is an input device that includes a plurality of keys for inputting characters, numbers, various instructions, and the like. The pointing device 612 is an input device that selects and executes various instructions, selects a processing target, moves a cursor, and the like.

DVD-RWドライブ614は、着脱可能な記録媒体の一例としてのDVD613に対する各種データの読み出しまたは書き込みを制御する装置である。なお、DVD613は、例えば、DVD-RWまたはDVD-R(Digital Versatile Disk Recordable)等である。メディアI/F616は、フラッシュメモリ等の記録メディア615に対するデータの読み出し又は書き込み(記憶)を制御するインターフェースである。 The DVD-RW drive 614 is a device that controls reading and writing of various data on the DVD 613, which is an example of a removable recording medium. Note that the DVD 613 is, for example, a DVD-RW or a DVD-R (Digital Versatile Disk Recordable). The media I/F 616 is an interface that controls reading or writing (storage) of data to the recording medium 615 such as a flash memory.

なお、上述の図1に示した情報処理装置1の構成のうち、CPU501は、図7に示すCPU601に相当し、不揮発性メモリ502は、HD604に相当し、メインメモリ503は、RAM603に相当し、ROM504は、ROM602に相当し、ネットワークI/F505は、ネットワークI/F609に相当する。 Note that in the configuration of the information processing device 1 shown in FIG. 1 described above, the CPU 501 corresponds to the CPU 601 shown in FIG. , ROM504 corresponds to ROM602, and network I/F505 corresponds to network I/F609.

(MFPのハードウェア構成)
図8は、実施形態に係る情報処理装置の一例としてのMFPのハードウェア構成を示す図である。さらに、図8を参照しながら、情報処理装置1がMFPであるものとした場合のハードウェア構成について説明する。
(Hardware configuration of MFP)
FIG. 8 is a diagram illustrating a hardware configuration of an MFP as an example of an information processing device according to an embodiment. Furthermore, with reference to FIG. 8, a hardware configuration in the case where the information processing device 1 is an MFP will be described.

図8に示すように、情報処理装置1の一例としてのMFP1bは、コントローラ710と、近距離通信回路720と、エンジン制御部730と、操作パネル740と、ネットワークI/F750と、を備えている。これらのうち、コントローラ710は、コンピュータの主要部であるCPU701と、システムメモリ(MEM-P)702、ノースブリッジ(NB)703、サウスブリッジ(SB)704、ASIC(Application Specific Integrated Circuit)706と、記憶装置であるローカルメモリ(MEM-C)707と、HDDコントローラ708と、記憶装置であるHD709とを有し、ノースブリッジ703とASIC706との間をAGP(Accelerated Graphics Port)バス721で、接続した構成となっている。 As shown in FIG. 8, the MFP 1b as an example of the information processing device 1 includes a controller 710, a short-range communication circuit 720, an engine control section 730, an operation panel 740, and a network I/F 750. . Among these, the controller 710 includes a CPU 701 which is the main part of the computer, a system memory (MEM-P) 702, a north bridge (NB) 703, a south bridge (SB) 704, an ASIC (Application Specific Integrated Circuit) 706, It has a local memory (MEM-C) 707 that is a storage device, an HDD controller 708, and an HD 709 that is a storage device, and the north bridge 703 and ASIC 706 are connected by an AGP (Accelerated Graphics Port) bus 721. The structure is as follows.

CPU701は、MFP1bの全体制御を行う制御装置である。ノースブリッジ703は、CPU701と、システムメモリ702と、サウスブリッジ704と、およびAGPバス721とを接続するためのブリッジであり、システムメモリ702に対する読み書き等を制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタおよびAGPターゲットとを有する。 The CPU 701 is a control device that performs overall control of the MFP 1b. The north bridge 703 is a bridge for connecting the CPU 701, the system memory 702, the south bridge 704, and the AGP bus 721. The north bridge 703 is a bridge for connecting the CPU 701, the system memory 702, the south bridge 704, and the AGP bus 721. ) master and AGP target.

システムメモリ702は、コントローラ710の各機能を実現させるプログラムおよびデータの格納用メモリであるROM702aと、プログラムおよびデータの展開、ならびにメモリ印刷時の描画用メモリ等として用いるRAM702bと、を含む。なお、RAM702bに記憶されているプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM(Compact Disc Read Only Memory)、CD-R(Compact Disc Recordable)、またはDVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。 The system memory 702 includes a ROM 702a, which is a memory for storing programs and data that realizes each function of the controller 710, and a RAM 702b, which is used as a memory for developing programs and data, and for drawing when printing the memory. Note that the programs stored in the RAM 702b are files in an installable or executable format that can be read by a computer such as a CD-ROM (Compact Disc Read Only Memory), a CD-R (Compact Disc Recordable), or a DVD. It may also be configured to be recorded on a suitable recording medium and provided.

サウスブリッジ704は、ノースブリッジ703と、PCIデバイスまたは周辺デバイスとを接続するためのブリッジである。ASIC706は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGPバス721、PCIバス722、HDDコントローラ708およびローカルメモリ707をそれぞれ接続するブリッジの役割を有する。このASIC706は、PCIターゲットおよびAGPマスタ、ASIC706の中核をなすアービタ(ARB)、ローカルメモリ707を制御するメモリコントローラ、ハードウェアロジック等により画像データの回転等を行う複数のDMAC(Direct Memory Access Controller)、ならびに、スキャナ部731およびプリンタ部732との間でPCIバス722を介したデータ転送を行うPCIユニットを含む。なお、ASIC706には、USBインターフェース、またはIEEE1394(Institute of Electrical and Electronics Engineers 1394)インターフェースを接続するようにしてもよい。 South bridge 704 is a bridge for connecting north bridge 703 and PCI devices or peripheral devices. The ASIC 706 is an IC (Integrated Circuit) for image processing that includes hardware elements for image processing, and has the role of a bridge that connects the AGP bus 721, the PCI bus 722, the HDD controller 708, and the local memory 707, respectively. This ASIC 706 includes a PCI target and an AGP master, an arbiter (ARB) that is the core of the ASIC 706, a memory controller that controls the local memory 707, and multiple DMACs (Direct Memory Access Controllers) that rotate image data using hardware logic, etc. , and a PCI unit that transfers data between a scanner unit 731 and a printer unit 732 via a PCI bus 722 . Note that the ASIC 706 may be connected to a USB interface or an Institute of Electrical and Electronics Engineers 1394 (IEEE1394) interface.

ローカルメモリ707は、コピー用画像バッファおよび符号バッファとして用いるローカルメモリである。HD709は、画像データの蓄積、印刷時に用いるフォントデータの蓄積、およびフォームの蓄積を行うためのストレージである。HDDコントローラ708は、CPU701の制御にしたがって、HD709に対するデータの読出しまたは書込みを制御する装置である。 A local memory 707 is used as a copy image buffer and a code buffer. The HD 709 is a storage for storing image data, font data used during printing, and forms. The HDD controller 708 is a device that controls data reading or writing to the HD 709 under the control of the CPU 701.

AGPバス721は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用のバスインタフェースであり、システムメモリ702に高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にすることができる。 The AGP bus 721 is a bus interface for a graphics accelerator card proposed to speed up graphics processing, and can speed up the graphics accelerator card by directly accessing the system memory 702 with high throughput. .

近距離通信回路720は、NFC(Near Field Communication)、またはBluetooth(登録商標)等の通信回路である。近距離通信回路720は、アンテナ720aを備える。 The near field communication circuit 720 is a communication circuit such as NFC (Near Field Communication) or Bluetooth (registered trademark). The short-range communication circuit 720 includes an antenna 720a.

エンジン制御部730は、スキャナ部731と、プリンタ部732とを有する。 The engine control section 730 includes a scanner section 731 and a printer section 732.

操作パネル740は、現在の設定値または選択画面等を表示させ、操作者からの入力を受け付けるタッチパネル等のパネル表示部740a、ならびに、濃度の設定条件等の画像形成に関する条件の設定値を受け付けるテンキーおよびコピー開始指示を受け付けるスタートキー等を含む操作部740bを備えている。 The operation panel 740 includes a panel display section 740a such as a touch panel that displays current setting values or a selection screen, and accepts input from the operator, and a numeric keypad that accepts setting values for conditions related to image formation such as density setting conditions. and an operation section 740b including a start key and the like that accept a copy start instruction.

コントローラ710は、MFP1b全体の制御を行い、例えば、描画、通信、操作パネル740からの入力等を制御する。スキャナ部731またはプリンタ部732には、誤差拡散またはガンマ変換等の画像処理部分が含まれている。 The controller 710 controls the entire MFP 1b, and controls, for example, drawing, communication, input from the operation panel 740, and the like. The scanner section 731 or the printer section 732 includes an image processing section such as error diffusion or gamma conversion.

なお、MFP1bは、操作パネル740のアプリケーション切り替えキーにより、ドキュメントボックス機能、コピー機能、プリンタ機能、およびファクシミリ機能を順次に切り替えて選択することが可能となる。ドキュメントボックス機能の選択時にはドキュメントボックスモードとなり、コピー機能の選択時にはコピーモードとなり、プリンタ機能の選択時にはプリンタモードとなり、ファクシミリモードの選択時にはファクシミリモードとなる。 Note that the MFP 1b can sequentially switch and select a document box function, a copy function, a printer function, and a facsimile function using an application switching key on the operation panel 740. When the document box function is selected, the mode becomes document box mode, when the copy function is selected, the mode becomes copy mode, when the printer function is selected, the mode becomes printer mode, and when the facsimile mode is selected, the mode becomes facsimile mode.

また、ネットワークI/F750は、ネットワーク2を利用してデータ通信をするためのインターフェースである。近距離通信回路720、エンジン制御部730およびネットワークI/F750は、PCIバス722を介して、ASIC706に電気的に接続されている。 Further, the network I/F 750 is an interface for data communication using the network 2. Near field communication circuit 720, engine control unit 730, and network I/F 750 are electrically connected to ASIC 706 via PCI bus 722.

なお、上述の図1に示した情報処理装置1の構成のうち、CPU501は、図8に示すCPU701に相当し、不揮発性メモリ502は、HD709に相当し、メインメモリ503は、RAM702bに相当し、ROM504は、ROM702aに相当し、ネットワークI/F505は、ネットワークI/F750に相当する。 Note that in the configuration of the information processing device 1 shown in FIG. 1 described above, the CPU 501 corresponds to the CPU 701 shown in FIG. 8, the nonvolatile memory 502 corresponds to the HD 709, and the main memory 503 corresponds to the RAM 702b. , ROM504 corresponds to ROM702a, and network I/F505 corresponds to network I/F750.

以上のように、本実施形態に係る情報処理装置1は、カーネルパニックに限らないエラーの発生時におけるログデータ(ダンプファイル含む)について、不揮発性メモリ502に同じ種類のダンプファイルが存在するか否かを判定し、存在する場合には、エラー発生時のログデータ、および不揮発性メモリ502の同じ種類のダンプファイルのうち、少なくともいずれかを削除しつつ、不揮発性メモリ502には、当該種類のダンプファイルが保存された状態とするものとしている。これによって、カーネルパニックに限らないエラーの発生時における情報を、限られた記憶領域上に有益なダンプ情報として残すことができる。 As described above, the information processing apparatus 1 according to the present embodiment determines whether or not a dump file of the same type exists in the nonvolatile memory 502 regarding log data (including a dump file) when an error not limited to a kernel panic occurs. If the error exists, at least one of the log data at the time of the error occurrence and the dump file of the same type in the non-volatile memory 502 is deleted, and the file of the same type is stored in the non-volatile memory 502. It is assumed that the dump file is saved. As a result, information at the time of occurrence of an error not limited to a kernel panic can be left as useful dump information in a limited storage area.

なお、上述の実施形態の各機能は、一または複数の処理回路によって実現することが可能である。ここで、「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上述した各機能を実行するよう設計されたASIC、DSP(Digital Signal Processor)、FPGA(Field-Programmable Gate Array)、SoC(System on a Chip)、GPU(Graphics Processing Unit)や従来の回路モジュール等のデバイスを含むものとする。 Note that each function of the embodiments described above can be realized by one or more processing circuits. Here, the term "processing circuit" refers to a processor that is programmed to execute each function using software, such as a processor implemented using an electronic circuit, or an ASIC or DSP (Digital It includes devices such as a signal processor), a field-programmable gate array (FPGA), a system on a chip (SoC), a graphics processing unit (GPU), and conventional circuit modules.

また、上述の実施形態において、情報処理装置1の各機能部の少なくともいずれかがプログラムの実行によって実現される場合、そのプログラムは、ROM等に予め組み込まれて提供される。また、上述の実施形態に係る情報処理装置1で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVDまたはSD(Secure Digital)カード等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上述の実施形態に係る情報処理装置1で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の実施形態に係る情報処理装置1で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、上述の実施形態に係る情報処理装置1で実行されるプログラムは、上述した各機能部のうち少なくともいずれかを含むモジュール構成となっており、実際のハードウェアとしてはCPUが上述の記憶装置からプログラムを読み出して実行することにより、上述の各機能部が主記憶装置上にロードされて生成されるようになっている。 Furthermore, in the above-described embodiment, when at least one of the functional units of the information processing device 1 is realized by executing a program, the program is provided by being incorporated in a ROM or the like in advance. Further, the program executed by the information processing device 1 according to the above-described embodiment can be stored as a file in an installable or executable format on a CD-ROM, a flexible disk (FD), a CD-R, a DVD, or an SD (Secure). The information may be provided by being recorded on a computer-readable recording medium such as a digital (digital) card. Further, the program executed by the information processing device 1 according to the embodiment described above may be stored on a computer connected to a network such as the Internet, and may be provided by being downloaded via the network. Furthermore, the program executed by the information processing device 1 according to the embodiment described above may be configured to be provided or distributed via a network such as the Internet. Further, the program executed by the information processing device 1 according to the above-described embodiment has a module configuration including at least one of the above-mentioned functional units, and the actual hardware includes the CPU and the above-mentioned storage device. By reading and executing a program from , each of the above-mentioned functional units is loaded onto the main memory and generated.

1 情報処理装置
1a PC
1b MFP
2 ネットワーク
30 ダンプファイル
40 学習モデル
101 カーネル部
102 第1判定部
103 第2判定部
104 判別部
105 書込部
106 削除部
107 再起動部
501 CPU
502 不揮発性メモリ
503 メインメモリ
504 ROM
505 ネットワークI/F
510 バスライン
601 CPU
602 ROM
603 RAM
604 HD
605 HDDコントローラ
606 ディスプレイ
608 外部機器接続I/F
609 ネットワークI/F
610 バスライン
611 キーボード
612 ポインティングデバイス
613 DVD
614 DVD-RWドライブ
615 メディア
616 メディアI/F
701 CPU
702 システムメモリ(MEM-P)
702a ROM
702b RAM
703 ノースブリッジ(NB)
704 サウスブリッジ(SB)
706 ASIC
707 ローカルメモリ(MEM-C)
708 HDDコントローラ
709 HD
710 コントローラ
720 近距離通信回路
720a アンテナ
721 AGPバス
722 PCIバス
730 エンジン制御部
731 スキャナ部
732 プリンタ部
740 操作パネル
740a パネル表示部
740b 操作部
750 ネットワークI/F
1 Information processing device 1a PC
1b MFP
2 Network 30 Dump file 40 Learning model 101 Kernel section 102 First judgment section 103 Second judgment section 104 Discrimination section 105 Writing section 106 Deletion section 107 Restart section 501 CPU
502 Non-volatile memory 503 Main memory 504 ROM
505 Network I/F
510 Bus line 601 CPU
602 ROM
603 RAM
604 HD
605 HDD controller 606 Display 608 External device connection I/F
609 Network I/F
610 Bus line 611 Keyboard 612 Pointing device 613 DVD
614 DVD-RW drive 615 Media 616 Media I/F
701 CPU
702 System memory (MEM-P)
702a ROM
702b RAM
703 North Bridge (NB)
704 South Bridge (SB)
706 ASIC
707 Local memory (MEM-C)
708 HDD controller 709 HD
710 Controller 720 Near field communication circuit 720a Antenna 721 AGP bus 722 PCI bus 730 Engine control section 731 Scanner section 732 Printer section 740 Operation panel 740a Panel display section 740b Operation section 750 Network I/F

特開2007-172414号公報Japanese Patent Application Publication No. 2007-172414

Claims (7)

情報処理装置であって、
エラーを示すダンプ情報を記憶する第1記憶部と、
エラー発生時のログデータを記憶する第2記憶部と、
前記第2記憶部に記憶された前記エラー発生時のログデータの種類を判別する判別部と、
前記第1記憶部にダンプ情報が記憶されているか否かを判定する第2判定部と、
前記第2判定部により前記第1記憶部にダンプ情報が記憶されていると判定された場合、前記判別部により判別された種類と同じ種類のダンプ情報が前記第1記憶部に存在するか否かを判定する第1判定部と、
前記第1判定部により前記同じ種類のダンプ情報が前記第1記憶部に存在すると判定された場合、前記第2記憶部に記憶された前記エラー発生時のログデータを削除する削除部と、
前記第2判定部により前記第1記憶部にダンプ情報が存在しないと判定された場合、または、前記第1判定部により前記同じ種類のダンプ情報が前記第1記憶部に存在しないと判定された場合、前記第2記憶部に記憶されたログデータを、前記判別部により判別された種類と関連付けてダンプ情報として前記第1記憶部に保存する書込部と、
を備え
前記書込部は、カーネルパニックの発生時にログデータを新規のダンプ情報として前記第1記憶部に保存し、
前記書込部により前記新規のダンプ情報が前記第1記憶部に保存された後、前記情報処理装置を再起動させる再起動部をさらに備え、
前記第2判定部は、前記再起動部による再起動後、前記第1記憶部に前記新規のダンプ情報が保存されているか否かを判定し、
前記判別部は、前記第2判定部により前記第1記憶部に前記新規のダンプ情報が保存されていると判定された場合、該新規のダンプ情報の種類を判別し、
前記第1判定部は、前記判別部により判別された前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在するか否かを判定し、
前記削除部は、前記第1判定部により前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在すると判定された場合、前記新規のダンプ情報を削除し、
前記書込部は、前記第1判定部により前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在しないと判定された場合、前記判別部により判別された前記新規のダンプ情報の種類を、前記新規のダンプ情報と関連付けて前記第1記憶部に保存する情報処理装置。
An information processing device,
a first storage unit that stores dump information indicating an error;
a second storage unit that stores log data when an error occurs;
a determining unit that determines the type of log data stored in the second storage unit at the time of the error occurrence;
a second determination unit that determines whether dump information is stored in the first storage unit;
When the second determining unit determines that dump information is stored in the first storage unit, whether dump information of the same type as the type determined by the determining unit exists in the first storage unit. a first determination unit that determines whether
a deletion unit that deletes the log data at the time of the error occurrence stored in the second storage unit when the first determination unit determines that the same type of dump information exists in the first storage unit ;
If the second determining unit determines that the dump information does not exist in the first storage unit, or if the first determining unit determines that the same type of dump information does not exist in the first storage unit. a writing unit that stores the log data stored in the second storage unit in the first storage unit as dump information in association with the type determined by the determination unit;
Equipped with
The writing unit stores log data as new dump information in the first storage unit when a kernel panic occurs;
further comprising a restart unit that restarts the information processing device after the new dump information is stored in the first storage unit by the writing unit,
The second determination unit determines whether or not the new dump information is stored in the first storage unit after the restart by the restart unit,
The determining unit determines the type of the new dump information when the second determining unit determines that the new dump information is stored in the first storage unit,
The first determining unit determines whether dump information of the same type as the new dump information determined by the determining unit exists in the first storage unit,
The deletion unit deletes the new dump information when the first determination unit determines that dump information of the same type as the new dump information exists in the first storage unit;
When the first determining unit determines that dump information of the same type as the new dump information does not exist in the first storage unit, the writing unit writes the new dump information determined by the determining unit. An information processing device that stores a type of dump information in association with the new dump information in the first storage unit .
前記第2判定部による判定動作、前記判別部による前記エラー発生時のログデータの種類の判別動作、前記第1判定部による前記第2判定部の判定結果に応じた判定動作、前記削除部による前記第1判定部の判定結果に応じた削除動作、および、前記書込部による前記第2判定部および前記第1判定部の各判定結果に応じた保存動作は、所定の条件を満たした場合に実行される請求項に記載の情報処理装置。 A determination operation by the second determination unit, an operation by the determination unit to determine the type of log data when the error occurs, a determination operation by the first determination unit according to the determination result of the second determination unit, and a determination operation by the deletion unit. The deletion operation according to the determination result of the first determination section and the storage operation according to the determination results of the second determination section and the first determination section by the writing section are performed when a predetermined condition is satisfied. The information processing apparatus according to claim 1 , wherein the information processing apparatus is executed. 前記書込部は、前記カーネルパニックが発生した場合に、前記第1記憶部の空き容量が所定値以上である場合、前記カーネルパニックの発生時のログデータを新規のダンプ情報として該第1記憶部に保存し、前記空き容量が前記所定値未満である場合、該ログデータを、該第1記憶部に記憶されているダンプ情報に新規のダンプ情報として上書きして保存する請求項1または2に記載の情報処理装置。 When the kernel panic occurs and the free space of the first storage unit is equal to or greater than a predetermined value, the writing unit writes the log data at the time of the occurrence of the kernel panic to the first storage as new dump information. 2. The log data is stored in the first storage section, and when the free space is less than the predetermined value, the log data is overwritten and saved as new dump information on the dump information stored in the first storage section. The information processing device described in . 前記書込部は、前記カーネルパニックの発生時にログデータをダンプ情報として前記第1記憶部に保存した後、該カーネルパニックが発生したことを示すフラグ情報を、前記第1記憶部に書き込み、
前記第2判定部は、前記再起動部による再起動後、前記第1記憶部に前記フラグ情報が記憶されている場合、前記第1記憶部に前記新規のダンプ情報が保存されているか否かを判定し、
前記削除部は、
前記第1判定部により前記同じ種類のダンプ情報が前記第1記憶部に存在すると判定された場合、前記新規のダンプ情報を削除してから、前記フラグ情報を削除し、
前記第1判定部により前記同じ種類のダンプ情報が前記第1記憶部に存在しないと判定された場合、前記書込部によって、前記判別部により判別された種類が、前記新規のダンプ情報と関連付けて前記第1記憶部に保存されてから、前記フラグ情報を削除する請求項1~3のいずれか一項に記載の情報処理装置。
The writing unit stores log data as dump information in the first storage unit when the kernel panic occurs, and then writes flag information indicating that the kernel panic has occurred to the first storage unit;
The second determining unit determines whether or not the new dump information is stored in the first storage unit, when the flag information is stored in the first storage unit after restarting by the restarting unit. Determine,
The deletion section is
If the first determining unit determines that the same type of dump information exists in the first storage unit, deleting the new dump information and then deleting the flag information;
If the first determining unit determines that the same type of dump information does not exist in the first storage unit, the writing unit associates the type determined by the determining unit with the new dump information. The information processing device according to claim 1 , wherein the flag information is deleted after the flag information is stored in the first storage unit.
前記判別部は、機械学習により構築された学習モデルを用いて、前記エラー発生時のログデータの種類を判別する請求項1~のいずれか一項に記載の情報処理装置。 5. The information processing apparatus according to claim 1, wherein the determining unit determines the type of log data at the time of occurrence of the error using a learning model constructed by machine learning. 情報処理装置の情報処理方法であって、
エラー発生時のログデータを第2記憶部に記憶する記憶ステップと、
前記第2記憶部に記憶された前記エラー発生時のログデータの種類を判別する判別ステップと、
第1記憶部にダンプ情報が記憶されているか否かを判定する第2判定ステップと、
前記第2判定ステップで前記第1記憶部にダンプ情報が記憶されていると判定した場合、判別した種類と同じ種類のダンプ情報が第1記憶部に存在するか否かを判定する第1判定ステップと、
前記同じ種類のダンプ情報が前記第1記憶部に存在すると判定した場合、前記第2記憶部に記憶された前記エラー発生時のログデータを削除する削除ステップと、
前記第2判定ステップで前記第1記憶部にダンプ情報が存在しないと判定した場合、または、前記第1判定ステップで前記同じ種類のダンプ情報が前記第1記憶部に存在しないと判定した場合、前記第2記憶部に記憶されたログデータを、判別した種類と関連付けてダンプ情報として前記第1記憶部に保存する書込ステップと、
カーネルパニックの発生時にログデータを新規のダンプ情報として前記第1記憶部に保存するステップと、
前記新規のダンプ情報を前記第1記憶部に保存した後、前記情報処理装置を再起動させる再起動ステップと、
前記情報処理装置の再起動後、前記第1記憶部に前記新規のダンプ情報が保存されているか否かを判定するステップと、
前記第1記憶部に前記新規のダンプ情報が保存されていると判定した場合、該新規のダンプ情報の種類を判別するステップと、
判別した前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在するか否かを判定するステップと、
前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在すると判定した場合、前記新規のダンプ情報を削除するステップと、
前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在しないと判定した場合、判別した前記新規のダンプ情報の種類を、前記新規のダンプ情報と関連付けて前記第1記憶部に保存するステップと、
を有する情報処理方法。
An information processing method for an information processing device, the method comprising:
a storage step of storing log data at the time of error occurrence in a second storage unit;
a determining step of determining the type of log data stored in the second storage unit at the time of the error occurrence;
a second determination step of determining whether dump information is stored in the first storage unit;
If it is determined in the second determination step that dump information is stored in the first storage section, a first determination for determining whether dump information of the same type as the determined type exists in the first storage section; step and
If it is determined that the same type of dump information exists in the first storage unit, a deleting step of deleting the log data at the time of the error occurrence stored in the second storage unit ;
If it is determined in the second determination step that the dump information does not exist in the first storage, or if it is determined in the first determination step that the same type of dump information does not exist in the first storage, a writing step of storing the log data stored in the second storage unit in the first storage unit as dump information in association with the determined type;
storing log data as new dump information in the first storage unit when a kernel panic occurs;
a reboot step of rebooting the information processing device after saving the new dump information in the first storage unit;
After restarting the information processing device, determining whether the new dump information is stored in the first storage unit;
If it is determined that the new dump information is stored in the first storage unit, determining the type of the new dump information;
determining whether dump information of the same type as the determined type of new dump information exists in the first storage unit;
If it is determined that dump information of the same type as the new dump information exists in the first storage unit, deleting the new dump information;
If it is determined that dump information of the same type as the new dump information does not exist in the first storage, the determined type of new dump information is associated with the new dump information and stored in the first storage. the step of saving it to
An information processing method having
情報処理装置のコンピュータに、
エラー発生時のログデータを第2記憶部に記憶する記憶ステップと、
前記第2記憶部に記憶された前記エラー発生時のログデータの種類を判別する判別ステップと、
第1記憶部にダンプ情報が記憶されているか否かを判定する第2判定ステップと、
前記第2判定ステップで前記第1記憶部にダンプ情報が記憶されていると判定した場合、判別した種類と同じ種類のダンプ情報が第1記憶部に存在するか否かを判定する第1判定ステップと、
前記同じ種類のダンプ情報が前記第1記憶部に存在すると判定した場合、前記第2記憶部に記憶された前記エラー発生時のログデータを削除する削除ステップと、
前記第2判定ステップで前記第1記憶部にダンプ情報が存在しないと判定した場合、または、前記第1判定ステップで前記同じ種類のダンプ情報が前記第1記憶部に存在しないと判定した場合、前記第2記憶部に記憶されたログデータを、判別した種類と関連付けてダンプ情報として前記第1記憶部に保存する書込ステップと、
カーネルパニックの発生時にログデータを新規のダンプ情報として前記第1記憶部に保存するステップと、
前記新規のダンプ情報を前記第1記憶部に保存した後、前記情報処理装置を再起動させる再起動ステップと、
前記情報処理装置の再起動後、前記第1記憶部に前記新規のダンプ情報が保存されているか否かを判定するステップと、
前記第1記憶部に前記新規のダンプ情報が保存されていると判定した場合、該新規のダンプ情報の種類を判別するステップと、
判別した前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在するか否かを判定するステップと、
前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在すると判定した場合、前記新規のダンプ情報を削除するステップと、
前記新規のダンプ情報の種類と同じ種類のダンプ情報が前記第1記憶部に存在しないと判定した場合、判別した前記新規のダンプ情報の種類を、前記新規のダンプ情報と関連付けて前記第1記憶部に保存するステップと、
を実行させるためのプログラム。
In the computer of the information processing device ,
a storage step of storing log data at the time of error occurrence in a second storage unit;
a determining step of determining the type of log data stored in the second storage unit at the time of the error occurrence;
a second determination step of determining whether dump information is stored in the first storage unit;
If it is determined in the second determination step that dump information is stored in the first storage section, a first determination for determining whether dump information of the same type as the determined type exists in the first storage section; step and
If it is determined that the same type of dump information exists in the first storage unit, a deleting step of deleting the log data at the time of the error occurrence stored in the second storage unit ;
If it is determined in the second determination step that the dump information does not exist in the first storage, or if it is determined in the first determination step that the same type of dump information does not exist in the first storage, a writing step of storing the log data stored in the second storage unit in the first storage unit as dump information in association with the determined type;
storing log data as new dump information in the first storage unit when a kernel panic occurs;
a reboot step of rebooting the information processing device after saving the new dump information in the first storage unit;
After restarting the information processing device, determining whether the new dump information is stored in the first storage unit;
If it is determined that the new dump information is stored in the first storage unit, determining the type of the new dump information;
determining whether dump information of the same type as the determined new dump information exists in the first storage unit;
If it is determined that dump information of the same type as the new dump information exists in the first storage unit, deleting the new dump information;
If it is determined that dump information of the same type as the new dump information does not exist in the first storage, the determined type of new dump information is associated with the new dump information and stored in the first storage. the step of saving it to
A program to run.
JP2020015428A 2020-01-31 2020-01-31 Information processing device, information processing method and program Active JP7439546B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020015428A JP7439546B2 (en) 2020-01-31 2020-01-31 Information processing device, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020015428A JP7439546B2 (en) 2020-01-31 2020-01-31 Information processing device, information processing method and program

Publications (2)

Publication Number Publication Date
JP2021124756A JP2021124756A (en) 2021-08-30
JP7439546B2 true JP7439546B2 (en) 2024-02-28

Family

ID=77458918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020015428A Active JP7439546B2 (en) 2020-01-31 2020-01-31 Information processing device, information processing method and program

Country Status (1)

Country Link
JP (1) JP7439546B2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000066929A (en) 1998-08-18 2000-03-03 Nec Corp Core file management system and its method
JP2009053935A (en) 2007-08-27 2009-03-12 Fuji Xerox Co Ltd Information processor and history information management program
JP2016057658A (en) 2014-09-05 2016-04-21 日本電気株式会社 Fault information management system and fault information management method
JP2017207894A (en) 2016-05-18 2017-11-24 株式会社日立システムズ Integrated monitoring operation system and method
JP2018073363A (en) 2016-11-04 2018-05-10 株式会社日立製作所 Vehicle operation data acquisition apparatus, vehicle operation data acquisition system, and vehicle operation data acquisition method
JP2019191820A (en) 2018-04-23 2019-10-31 株式会社リコー Dump processing apparatus and image forming apparatus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000066929A (en) 1998-08-18 2000-03-03 Nec Corp Core file management system and its method
JP2009053935A (en) 2007-08-27 2009-03-12 Fuji Xerox Co Ltd Information processor and history information management program
JP2016057658A (en) 2014-09-05 2016-04-21 日本電気株式会社 Fault information management system and fault information management method
JP2017207894A (en) 2016-05-18 2017-11-24 株式会社日立システムズ Integrated monitoring operation system and method
JP2018073363A (en) 2016-11-04 2018-05-10 株式会社日立製作所 Vehicle operation data acquisition apparatus, vehicle operation data acquisition system, and vehicle operation data acquisition method
JP2019191820A (en) 2018-04-23 2019-10-31 株式会社リコー Dump processing apparatus and image forming apparatus

Also Published As

Publication number Publication date
JP2021124756A (en) 2021-08-30

Similar Documents

Publication Publication Date Title
JP5933483B2 (en) Image forming system, image forming apparatus, and log management program
JP6875808B2 (en) Information processing device
US20210144014A1 (en) Information processing apparatus, method for ensuring files and storage medium
JP5381059B2 (en) Device, log recording control method, and program
KR101339869B1 (en) Image forming apparatus and method of overwriting for storage unit in image forming apparatus
JP7439546B2 (en) Information processing device, information processing method and program
JP7279415B2 (en) Information processing device, information processing method, and program
JP2009009323A (en) Setting device, electronic equipment, and setting program
CN103905688A (en) Image processing apparatus and image processing method
US11269680B2 (en) Information processing apparatus, information processing system, and information processing method
US20210350027A1 (en) Information processing apparatus, information processing method and non-transitory recording medium
US11366622B2 (en) Image forming apparatus, management system, method of managing image forming apparatus
US20160188215A1 (en) Information processing apparatus, memory control method for information processing apparatus, and program
JP2012234458A (en) Image processing device, and control method and program for image processing device
CN108885777B (en) Image processing apparatus, image processing method, and storage medium
JP7396067B2 (en) Information processing device, log management method, and program
US11729340B2 (en) Information processing server, method, and recording medium
US20230376300A1 (en) Information processing apparatus, log storage method, and non-transitory recording medium
US20230092303A1 (en) Information processing apparatus, information processing method and non-transitory recording medium
JP2020154741A (en) Electronic apparatus, data saving control method, and data saving control program
JP2006344022A (en) Equipment and program starting method
JP7151514B2 (en) Simulation system, information processing device, program and simulation method
JP7283108B2 (en) Information processing device, control method, and program
JP2023137004A (en) Information processing system, image forming system, and information processing method
JP2008033472A (en) Automatic evaluation system of printer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231221

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240129

R151 Written notification of patent or utility model registration

Ref document number: 7439546

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151