[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2020057250A - Information processor, and control method and program therefor - Google Patents

Information processor, and control method and program therefor Download PDF

Info

Publication number
JP2020057250A
JP2020057250A JP2018188111A JP2018188111A JP2020057250A JP 2020057250 A JP2020057250 A JP 2020057250A JP 2018188111 A JP2018188111 A JP 2018188111A JP 2018188111 A JP2018188111 A JP 2018188111A JP 2020057250 A JP2020057250 A JP 2020057250A
Authority
JP
Japan
Prior art keywords
program
verification
activation
unit
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018188111A
Other languages
Japanese (ja)
Inventor
山下 貴弘
Takahiro Yamashita
貴弘 山下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018188111A priority Critical patent/JP2020057250A/en
Publication of JP2020057250A publication Critical patent/JP2020057250A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

To provide an information processor, and a control method and a program therefor capable of starting an information processor in a short time while verifying a program during normal operation.SOLUTION: An information processor includes: verification means that, after the information processor is started, when start information indicates start of a first program, verifies the first program, and when the start information indicates start of a second program, verifies the second program; first starting means that, when the verification of the first program by the verification means is successful, if there is no start instruction of the second program, starts the first program; and restarting means that, when the verification of the first program by the verification means is successful, if there is a start instruction of the second program, records start information indicating restarting of the second program and restarts the information processor.SELECTED DRAWING: Figure 5

Description

本発明は、情報処理装置、情報処理装置の制御方法及びプログラムに関する。   The present invention relates to an information processing apparatus, a control method for the information processing apparatus, and a program.

近年の情報処理装置や画像形成装置は、フラグ情報や特定の入力などに基づき、起動するOS(Operating System)を切り替える機能を有するものがある。このような機能は、例えば、通常動作用のOSが破損した場合は、リカバリ用のOSを起動し、通常動作用システムを復旧する。また、システムを起動する前に、電子署名などを用いて、システムを構成するファイルやデータを検証することで、改ざんされた悪意あるシステムの起動を防止する機能を有するものもある。ここで、検証対象が増えるほど、検証のための演算処理が増大するため、システム起動に要する時間も長くなる傾向がある。   Some information processing apparatuses and image forming apparatuses in recent years have a function of switching an OS (Operating System) to be started based on flag information or a specific input. With such a function, for example, when the OS for normal operation is damaged, the OS for recovery is started to recover the system for normal operation. In addition, some systems have a function of preventing a falsified malicious system from starting by verifying files and data constituting the system using an electronic signature or the like before starting the system. Here, as the number of verification targets increases, the number of calculation processes for verification increases, so that the time required for system startup tends to increase.

下記の特許文献1には、フラグの有無によって検証処理が必要か否かを判断し、必要な場合のみ検証処理を行う技術が開示されている。   Patent Literature 1 below discloses a technique of determining whether verification processing is necessary based on the presence or absence of a flag, and performing verification processing only when necessary.

国際公開第2009/013831号International Publication No. 2009/013831

通常動作用OSとリカバリ用OSなどの複数の対象について検証処理を行うと、検証処理に要する時間が増大することにより、システム起動時間が長くなり、結果的に、ユーザの待ち時間が増大するという課題がある。   When the verification process is performed on a plurality of targets such as the normal operation OS and the recovery OS, the time required for the verification process increases, so that the system boot time increases, and as a result, the user's waiting time increases. There are issues.

本発明の目的は、通常動作時に、プログラムの検証を行いつつ、情報処理装置を短時間で起動することができるようにすることである。   An object of the present invention is to enable an information processing apparatus to be started in a short time while verifying a program during a normal operation.

本発明の情報処理装置は、情報処理装置であって、前記情報処理装置の起動後、起動情報が第1のプログラムの起動を示す場合には、第1のプログラムの検証を行い、前記起動情報が第2のプログラムの起動を示す場合には、第2のプログラムの検証を行う検証手段と、前記検証手段による前記第1のプログラムの検証が成功した場合、前記第2のプログラムの起動指示がない場合には、前記第1のプログラムを起動する第1の起動手段と、前記検証手段による前記第1のプログラムの検証が成功した場合、前記第2のプログラムの起動指示がある場合には、前記第2のプログラムの起動を示す起動情報を記録し、前記情報処理装置を再起動する再起動手段とを有する。   An information processing apparatus according to the present invention is an information processing apparatus, and after activation of the information processing apparatus, when activation information indicates activation of a first program, the information processing apparatus verifies the first program, Indicates the activation of the second program, a verification unit for verifying the second program, and if the verification of the first program by the verification unit succeeds, an instruction for starting the second program is issued. If not, first activation means for activating the first program, and if the verification of the first program by the verification means succeeds, if there is an instruction to activate the second program, A restart unit that records start information indicating the start of the second program and restarts the information processing apparatus.

本発明によれば、通常動作時に、プログラムの検証を行いつつ、情報処理装置を短時間で起動することができる。   According to the present invention, at the time of normal operation, the information processing apparatus can be started up in a short time while verifying the program.

画像形成装置の構成例を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration example of an image forming apparatus. HDDに保存されているデータの例を示す図である。FIG. 3 is a diagram illustrating an example of data stored in an HDD. 起動処理を示すフローチャートである。It is a flowchart which shows a starting process. 起動処理のうちBIOSの検証処理を示すフローチャートである。9 is a flowchart illustrating a BIOS verification process in the boot process. 起動処理のうちローダの処理を示すフローチャートである。9 is a flowchart illustrating a loader process in the startup process.

以下、本発明を実施するための最良の形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。   Hereinafter, the best mode for carrying out the present invention will be described with reference to the drawings. The following embodiments do not limit the invention according to the claims, and all combinations of the features described in the embodiments are not necessarily essential for solving the invention.

図1は、本発明の実施形態による画像形成装置100のハードウェア構成例を示す図である。画像形成装置100は、情報処理装置の一例である。中央演算処理装置(以下CPUという)101は、画像形成装置100を稼働させるためのプログラムを実行する。システムバス102は、CPU101が、他のユニットにアクセスするための通路、及び、他のユニット同士がアクセスするための通路である。   FIG. 1 is a diagram illustrating a hardware configuration example of an image forming apparatus 100 according to an embodiment of the present invention. The image forming apparatus 100 is an example of an information processing device. A central processing unit (hereinafter, referred to as a CPU) 101 executes a program for operating the image forming apparatus 100. The system bus 102 is a passage through which the CPU 101 accesses other units, and a passage through which other units access each other.

ハードディスクドライブユニット(以下HDDという)103は、画像形成装置100が動作するために必要な各種プログラム、データベース、一時保存ファイルを格納している。ランダムアクセスメモリ((以下RAMという)104は、画像形成装置100のプログラムが展開され、プログラム動作時の変数や、各ユニットからダイレクトメモリアクセス((以下DMAという)で転送されるデータの格納領域を有する。   A hard disk drive unit (hereinafter referred to as an HDD) 103 stores various programs, databases, and temporary storage files necessary for the operation of the image forming apparatus 100. The random access memory (hereinafter, referred to as RAM) 104 stores a program for the image forming apparatus 100 and stores a variable at the time of program operation and a storage area for data transferred from each unit by direct memory access (hereinafter, referred to as DMA). Have.

ネットワークコントローラ105とネットワークコントローラI/F106は、画像形成装置100とネットワーク上の他の機器との間の通信を制御する。USBホストコントローラ107とUSBホストI/F108は、画像形成装置100とUSBデバイスとの間の通信を制御する。USBホストI/F108は、USBケーブルを使用してUSBデバイスと接続される。USBデバイスの形態によっては、USBケーブルは使用せず直接接続される。   The network controller 105 and the network controller I / F 106 control communication between the image forming apparatus 100 and other devices on the network. The USB host controller 107 and the USB host I / F 108 control communication between the image forming apparatus 100 and the USB device. The USB host I / F 108 is connected to a USB device using a USB cable. Some USB devices are directly connected without using a USB cable.

CPLD109は、CPU101を介して、基盤回路上の信号線のローレベル/ハイレベルの状況を読み取り、CPU101が上記のローレベル/ハイレベルの状況の設定を変更可能にする。CPLD109は、プログラマブルなロジックデバイスであり、画像形成装置100上で電力のオフ/オンを制御可能にする。CPLD109の内部には、General Purpose Input Output(以下GPIOという)が存在する。CPU101は、そのGPIOレジスタの設定値を変更することで、電力のオフ/オンを可能としている。   The CPLD 109 reads the low-level / high-level status of the signal line on the board circuit via the CPU 101, and enables the CPU 101 to change the setting of the low-level / high-level status. The CPLD 109 is a programmable logic device, and makes it possible to control power off / on on the image forming apparatus 100. The General Purpose Input Output (hereinafter referred to as GPIO) exists inside the CPLD 109. The CPU 101 can turn off / on the power by changing the set value of the GPIO register.

ディスプレイ111は、画像形成装置100の動作状況をユーザ等が確認できるように表示する。ディスプレイコントローラ110は、ディスプレイ111の表示を制御する。入力部113は、画像形成装置100へのユーザからの指示を受け付ける。入力部コントローラ112は、入力部113を制御する。入力部113は、例えば、キーボード、マウス、テンキー、カーソルキー、又はタッチパネルである。入力部113がタッチパネルである場合は、物理的にはディスプレイ111の表面に入力部113が装着される。   The display 111 displays an operation state of the image forming apparatus 100 so that a user or the like can check the operation state. The display controller 110 controls display on the display 111. The input unit 113 receives an instruction from the user to the image forming apparatus 100. The input unit controller 112 controls the input unit 113. The input unit 113 is, for example, a keyboard, a mouse, a numeric keypad, a cursor key, or a touch panel. When the input unit 113 is a touch panel, the input unit 113 is physically mounted on the surface of the display 111.

リアルタイムクロック(以下RTCという)114は、画像形成装置100の時計機能、アラーム機能、及びタイマ機能等を有する。不揮発メモリ115は、書き換え可能なメモリである。不揮発メモリ115は、BIOS(Basic Input Output System)121を保存する。通電開始直後に、CPU101は、BIOS121の処理を開始する。また、不揮発メモリ115は、データ領域を有し、後述する署名検証処理に使用する公開鍵や特殊起動フラグ120を保存する。   The real-time clock (hereinafter, referred to as RTC) 114 has a clock function, an alarm function, a timer function, and the like of the image forming apparatus 100. The nonvolatile memory 115 is a rewritable memory. The non-volatile memory 115 stores a BIOS (Basic Input Output System) 121. Immediately after the start of energization, the CPU 101 starts processing of the BIOS 121. The nonvolatile memory 115 has a data area, and stores a public key and a special activation flag 120 used for signature verification processing described later.

スキャナ117は、スキャナI/F116を介して、システムバス102に接続される。スキャナ117は、原稿の画像を光学的に読み取り、画像データを生成する。プリンタ119は、プリンタI/F118を介して、システムバス102に接続される。プリンタ119は、画像データを印刷する。   The scanner 117 is connected to the system bus 102 via the scanner I / F 116. The scanner 117 optically reads an image of a document and generates image data. The printer 119 is connected to the system bus 102 via the printer I / F 118. The printer 119 prints image data.

図2は、HDD103に保存されているデータを示す図である。HDD103は、2種類のオペレーティングシステム(以下OSという)201,202と、ローダ(Loader)203を保存し、2種類の保存領域204,205を有する。OS201は、通常動作用途に使用されるOSである。OS202は、OS201のアップデートや破損時のリカバリを想定したリカバリOSである。ローダ203は、入力部113やフラグ情報の有無により、OS201及び202のいずれを起動するかを判断する。保存領域204及び205には、それぞれ、プリント処理などを行うファームウェア、設定ファイル、ユーザデータが保存される。保存領域204は、OS201が使用する領域である。保存領域205は、OS202が使用する領域である。保存領域204及び205は、その用途によって、保存されるプログラムが異なり、保存領域のサイズが異なっている。なお、前述したいずれのデータについても、後述する検証処理で判断材料とするための、予め計算され導出された電子署名情報が付与されている。   FIG. 2 is a diagram illustrating data stored in the HDD 103. The HDD 103 stores two types of operating systems (hereinafter referred to as OS) 201 and 202 and a loader (Loader) 203, and has two types of storage areas 204 and 205. The OS 201 is an OS used for a normal operation purpose. The OS 202 is a recovery OS assuming update of the OS 201 or recovery at the time of damage. The loader 203 determines which of the OSs 201 and 202 to activate based on the presence of the input unit 113 and the flag information. The storage areas 204 and 205 store firmware for performing print processing and the like, setting files, and user data, respectively. The storage area 204 is an area used by the OS 201. The storage area 205 is an area used by the OS 202. In the storage areas 204 and 205, programs to be stored are different depending on the use, and the sizes of the storage areas are different. It should be noted that any of the above-mentioned data is provided with electronic signature information calculated and derived in advance, which is used as a judgment material in a verification process described later.

図3は、画像形成装置100の起動処理を示すフローチャートである。画像形成装置100の起動後、画像形成装置100は、図3のフローチャートの処理を行う。以下、画像形成装置100の制御方法を説明する。   FIG. 3 is a flowchart illustrating a startup process of the image forming apparatus 100. After the activation of the image forming apparatus 100, the image forming apparatus 100 performs the processing of the flowchart in FIG. Hereinafter, a control method of the image forming apparatus 100 will be described.

まず、ステップS301では、CPU101は、不揮発メモリ115上に格納されているBIOS121を読み出し、BIOS121の処理を実施する。CPU101は、BIOS121の処理により、ローダ203、OS201およびOS202に対して署名検証処理を行い、その結果によって、改ざんの有無を判定する。ステップS301の詳細は、後に図4を参照しながら説明する。   First, in step S301, the CPU 101 reads the BIOS 121 stored on the nonvolatile memory 115, and performs the processing of the BIOS 121. The CPU 101 performs a signature verification process on the loader 203, the OS 201, and the OS 202 by the process of the BIOS 121, and determines whether there is any falsification based on the result. Details of step S301 will be described later with reference to FIG.

次に、ステップS302では、CPU101は、BIOS121の処理により、HDD103上のローダ203を読み出し、ローダ203の処理を行う。CPU101は、ローダ203の処理により、OS201及び202のいずれを起動するかを判断し、その判断結果に基づいて、OS201及び202のいずれかとそれに対応する格納領域204又は205のファームウェア等を読み出す。ステップS302の詳細は、後に図5を参照しながら説明する。   Next, in step S302, the CPU 101 reads out the loader 203 on the HDD 103 by the process of the BIOS 121, and performs the process of the loader 203. The CPU 101 determines which of the OSs 201 and 202 is to be activated by the processing of the loader 203, and reads out one of the OSs 201 and 202 and the firmware or the like of the storage area 204 or 205 corresponding thereto based on the determination result. Details of step S302 will be described later with reference to FIG.

次に、ステップS303では、CPU101は、ステップS302で読み出したOSの処理により、図1に記載の各ハードウェアブロックの初期化を行い、使用可能な状態とする。   Next, in step S303, the CPU 101 initializes each hardware block illustrated in FIG. 1 by the processing of the OS read in step S302, and sets the hardware block to a usable state.

次に、ステップS304では、CPU101は、ハードウェアブロックの初期化完了後、OSの処理により、各種ファームウェアの起動処理を開始し、画像形成装置100が備える機能を実行可能な状態とする。   Next, in step S304, after the initialization of the hardware block is completed, the CPU 101 starts the activation processing of various firmware by the processing of the OS, and makes the function of the image forming apparatus 100 executable.

図4は、図3のステップS301のCPU101が起動するBIOS121の処理を示すフローチャートである。本実施形態では、BIOS121がOSとローダの検証処理を行う例について説明する。検証処理は、不揮発メモリ115上に保存された公開鍵を使用し、署名検証処理を行うが、その他の手法を用いてもよい。本実施形態では、ステップS402、S403、S404は、同じ手法で検証を行う例を示しているが、それぞれ異なる手法を用いてもよい。   FIG. 4 is a flowchart showing the processing of the BIOS 121 started by the CPU 101 in step S301 of FIG. In the present embodiment, an example will be described in which the BIOS 121 performs an OS and loader verification process. In the verification process, the signature verification process is performed using the public key stored on the nonvolatile memory 115. However, another method may be used. In the present embodiment, steps S402, S403, and S404 show an example in which verification is performed by the same method, but different methods may be used.

まず、ステップS401では、CPU101は、不揮発メモリ115に特殊起動フラグ120が記録されているか否かをチェックする。特殊起動フラグ120は、起動情報である。初期時には、特殊起動フラグ120が記録されていない。特殊起動フラグ120の記録処理は、後に図5を参照しながら説明する。CPU101は、特殊起動フラグ120が記録されている場合(S401のYes)には、特殊起動フラグ120がリカバリ用OS202の起動を示すので、リカバリ用OS202の起動をユーザが指示したと判断し、ステップS402に進む。一方、CPU101は、特殊起動フラグ120が記録されていない場合(S401のNo)には、特殊起動フラグ120が通常動作用OS201の起動を示すので、リカバリ用OS202の起動をユーザが指示していないと判断し、ステップS403に進む。   First, in step S401, the CPU 101 checks whether or not the special activation flag 120 is recorded in the nonvolatile memory 115. The special start flag 120 is start information. At the initial stage, the special activation flag 120 is not recorded. The recording process of the special activation flag 120 will be described later with reference to FIG. If the special start flag 120 is recorded (Yes in S401), the CPU 101 determines that the user has instructed the start of the recovery OS 202 because the special start flag 120 indicates the start of the recovery OS 202. Proceed to S402. On the other hand, when the special start flag 120 is not recorded (No in S401), the user does not instruct the start of the recovery OS 202 because the special start flag 120 indicates the start of the normal operation OS 201. And the process proceeds to step S403.

ステップS402では、CPU101は、HDD103上のリカバリ用OS202に対して署名検証処理を行い、ステップS404に進む。リカバリ用OS202は、CPU101が実行するプログラムである。ステップS403では、CPU101は、HDD103上の通常動作用OS201に対して署名検証処理を行い、ステップS404に進む。通常動作用OS201は、CPU101が実行するプログラムである。   In step S402, the CPU 101 performs a signature verification process on the recovery OS 202 on the HDD 103, and proceeds to step S404. The recovery OS 202 is a program executed by the CPU 101. In step S403, the CPU 101 performs a signature verification process on the normal operation OS 201 on the HDD 103, and proceeds to step S404. The normal operation OS 201 is a program executed by the CPU 101.

ステップS404では、CPU101は、HDD103上のローダ203に対して署名検証処理を行う。ローダ203は、CPU101が実行するプログラムである。次に、ステップS405では、CPU101は、OS201及び202のいずれかの検証とローダ203の検証のうちのいずれか一方でも検証が失敗(NG)した場合(S405のYes)には、ステップS406に進む。一方、CPU101は、OS201及び202のいずれかの検証とローダ203の検証のいずれの検証も成功(OK)した場合(S405のNo)には、ステップS407に進む。   In step S404, the CPU 101 performs a signature verification process on the loader 203 on the HDD 103. The loader 203 is a program executed by the CPU 101. Next, in step S405, if the verification has failed (NG) in either of the verification of the OS 201 or 202 and the verification of the loader 203 (Yes in S405), the process proceeds to step S406. . On the other hand, if the verification of either the OS 201 or 202 or the verification of the loader 203 is successful (OK) (NO in S405), the CPU 101 proceeds to step S407.

ステップS406では、CPU101は、改ざんがなされたと判断し、ディスプレイ111に対してエラー表示を行うことにより、エラーを通知し、起動処理を中止する。ステップS407では、CPU101は、起動処理の継続を決定し、ローダ203をHDD103からRAM104にロードし、ローダ203を起動する。   In step S406, the CPU 101 determines that tampering has been performed, notifies the error by displaying an error on the display 111, and stops the startup processing. In step S407, the CPU 101 determines to continue the startup processing, loads the loader 203 from the HDD 103 to the RAM 104, and starts the loader 203.

図5は、図3のステップS302のCPU101が起動するローダ203の処理を示すフローチャートである。図4のステップS405で検証結果がOKだった場合に、図5のフローチャートの処理が実施される。   FIG. 5 is a flowchart showing the processing of the loader 203 started by the CPU 101 in step S302 of FIG. If the verification result is OK in step S405 in FIG. 4, the processing in the flowchart in FIG. 5 is performed.

まず、ステップS501では、CPU101は、不揮発メモリ115に特殊起動フラグ120が記録されているか否かをチェックする。CPU101は、特殊起動フラグ120が記録されている場合(S501のYes)には、ステップS502に進む。一方、CPU101は、特殊起動フラグ120が記録されていない場合(S501のNo)には、ステップS504に進む。   First, in step S501, the CPU 101 checks whether or not the special activation flag 120 is recorded in the nonvolatile memory 115. When the special activation flag 120 is recorded (Yes in S501), the CPU 101 proceeds to step S502. On the other hand, when the special activation flag 120 is not recorded (No in S501), the CPU 101 proceeds to step S504.

ステップS502では、CPU101は、リカバリOS202が図4の処理により正常であると検証されたと判断し、不揮発メモリ115上の特殊起動フラグ120を消去する。すなわち、CPU101は、通常動作用OS201の起動を示す起動情報を記録する。これにより、ユーザの指示が無いにもかかわらず、リカバリ用OS202が起動されることを防止する。次に、ステップS503では、CPU101は、HDD103上のリカバリ用OS202をRAM104にロードし、リカバリ用OS202を起動する。   In step S502, the CPU 101 determines that the recovery OS 202 has been verified to be normal by the processing in FIG. 4, and deletes the special startup flag 120 in the nonvolatile memory 115. That is, the CPU 101 records the start information indicating the start of the normal operation OS 201. This prevents the recovery OS 202 from being activated even when there is no user instruction. Next, in step S503, the CPU 101 loads the recovery OS 202 on the HDD 103 into the RAM 104 and activates the recovery OS 202.

ステップS504では、CPU101は、通常動作用OS201が図4の処理により正常であると検証されたと判断し、ユーザによるリカバリOS202の起動指示の有無をチェックする。例えば、CPU101は、入力部113から特殊キー押下の操作を検知した場合には、ユーザによるリカバリOS202の起動指示があったと判断する。CPU101は、ユーザによるリカバリOS202の起動指示がある場合(S504のYes)には、ステップS505に進む。一方、CPU101は、ユーザによるリカバリOS202の起動指示がない場合(S504のNo)には、ステップS507に進む。   In step S <b> 504, the CPU 101 determines that the normal operation OS 201 has been verified to be normal by the processing in FIG. 4, and checks whether the user has issued an instruction to start the recovery OS 202. For example, when the CPU 101 detects the operation of pressing the special key from the input unit 113, the CPU 101 determines that the user has issued an instruction to start the recovery OS 202. If there is an instruction from the user to activate the recovery OS 202 (Yes in S504), the CPU 101 proceeds to step S505. On the other hand, when there is no instruction from the user to start the recovery OS 202 (No in S504), the CPU 101 proceeds to step S507.

ステップS505では、CPU101は、未検証のリカバリ用OS202を検証するため、不揮発メモリ115に特殊起動フラグ120を記録する。これにより、図4のステップS401の判定結果を変えることができ、CPU101は、BIOS121に対してリカバリ用OS202の検証を指示することができる。次に、ステップS506では、CPU101は、BIOS121から処理をやり直すため、画像形成装置100を再起動する。これにより、CPU101は、図3のステップS301から起動処理をやり直し、前述した通り、BIOS121においてリカバリ用OS202を検証することができ、更には、ステップS503によってリカバリ用OS202を起動することができる。   In step S505, the CPU 101 records the special startup flag 120 in the nonvolatile memory 115 in order to verify the unverified recovery OS 202. Thereby, the determination result of step S401 in FIG. 4 can be changed, and the CPU 101 can instruct the BIOS 121 to verify the recovery OS 202. Next, in step S506, the CPU 101 restarts the image forming apparatus 100 to restart the process from the BIOS 121. As a result, the CPU 101 can restart the boot process from step S301 in FIG. 3, verify the recovery OS 202 in the BIOS 121 as described above, and can boot the recovery OS 202 in step S503.

ステップS507では、CPU101は、通常動作用OS201をHDD103からRAM104にロードし、通常動作用OS201を起動する。   In step S507, the CPU 101 loads the normal operation OS 201 from the HDD 103 to the RAM 104, and starts the normal operation OS 201.

以上、図4及び図5の処理により、CPU101は、通常使用時はリカバリ用OS202の検証処理を省くことにより、検証時間の増大をOS一つ分に抑制することができる。一方で、ユーザによるリカバリ用OS202の起動指示があった場合でも、再起動を挟むものの、リカバリ用OS202の検証処理はなされるため、堅牢性は維持される。   As described above, by the processing in FIGS. 4 and 5, the CPU 101 can suppress the increase in the verification time to one OS by omitting the verification processing of the recovery OS 202 during normal use. On the other hand, even when the recovery OS 202 is instructed by the user, the robustness is maintained because the recovery OS 202 is verified, although the restart is interposed.

画像形成装置100は、通常動作用OS201による通常起動の起動時間の遅延を減らすことができる。また、画像形成装置100は、検証処理プログラムをBIOS121のみに組み込み、ローダ203に組み込む必要がないため、ローダ203のHDD103の使用量増加を抑制することができる。   The image forming apparatus 100 can reduce the delay of the startup time of the normal startup by the normal operation OS 201. Further, the image forming apparatus 100 incorporates the verification processing program only into the BIOS 121 and does not need to be incorporated into the loader 203, so that an increase in the usage of the HDD 103 of the loader 203 can be suppressed.

CPU101は、特殊起動フラグ120がない場合には、リカバリ用OS202を検証せず、通常動作用OS201のみを検証することにより、画像形成装置100の起動時間を短縮することができる。   When there is no special startup flag 120, the CPU 101 does not verify the recovery OS 202 but only the normal operation OS 201, thereby shortening the startup time of the image forming apparatus 100.

また、ユーザが特殊キーを押下した場合には、CPU101は、特殊起動フラグ120を記録し、画像形成装置100を再起動する。再起動後、CPU101は、特殊起動フラグ120が記録されているので、リカバリ用OS202を検証し、特殊起動フラグ120を消去し、リカバリ用OS202を起動する。   When the user presses the special key, the CPU 101 records the special activation flag 120 and restarts the image forming apparatus 100. After the restart, the CPU 101 verifies the recovery OS 202 because the special startup flag 120 is recorded, erases the special startup flag 120, and starts the recovery OS 202.

(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other embodiments)
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or an apparatus via a network or a storage medium, and one or more processors in a computer of the system or the apparatus read and execute the program. This processing can be realized. Further, it can be realized by a circuit (for example, an ASIC) that realizes one or more functions.

なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。   It should be noted that each of the above-described embodiments is merely an example of a concrete example for carrying out the present invention, and the technical scope of the present invention should not be interpreted in a limited manner. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features.

100 画像形成装置、101 CPU、103 HDD、120 特殊起動フラグ、121 BIOS、201,202 OS、203 ローダ REFERENCE SIGNS LIST 100 image forming apparatus, 101 CPU, 103 HDD, 120 special startup flag, 121 BIOS, 201, 202 OS, 203 loader

Claims (11)

情報処理装置であって、
前記情報処理装置の起動後、起動情報が第1のプログラムの起動を示す場合には、第1のプログラムの検証を行い、前記起動情報が第2のプログラムの起動を示す場合には、第2のプログラムの検証を行う検証手段と、
前記検証手段による前記第1のプログラムの検証が成功した場合、前記第2のプログラムの起動指示がない場合には、前記第1のプログラムを起動する第1の起動手段と、
前記検証手段による前記第1のプログラムの検証が成功した場合、前記第2のプログラムの起動指示がある場合には、前記第2のプログラムの起動を示す起動情報を記録し、前記情報処理装置を再起動する再起動手段と
を有することを特徴とする情報処理装置。
An information processing device,
After the information processing apparatus is activated, if the activation information indicates the activation of the first program, the first program is verified. If the activation information indicates the activation of the second program, the second program is validated. Verification means for verifying the program of
When the verification of the first program by the verification unit succeeds, when there is no instruction to start the second program, a first activation unit that activates the first program;
When the verification of the first program by the verification means is successful, and when there is a start instruction of the second program, start information indicating the start of the second program is recorded, and the information processing apparatus is An information processing apparatus, comprising: restart means for restarting.
前記検証手段による前記第2のプログラムの検証が成功した場合、前記第2のプログラムを起動する第2の起動手段をさらに有することを特徴とする請求項1に記載の情報処理装置。   2. The information processing apparatus according to claim 1, further comprising a second activation unit that activates the second program when the verification of the second program by the verification unit is successful. 前記第2の起動手段は、前記検証手段による前記第2のプログラムの検証が成功した場合、前記第1のプログラムの起動を示す起動情報を記録し、前記第2のプログラムを起動することを特徴とする請求項2に記載の情報処理装置。   When the verification of the second program by the verification unit succeeds, the second activation unit records activation information indicating activation of the first program, and activates the second program. The information processing apparatus according to claim 2, wherein 前記検証手段による前記第1のプログラムの検証が失敗した場合、エラーを通知する通知手段をさらに有することを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置。   4. The information processing apparatus according to claim 1, further comprising a notification unit that notifies an error when the verification of the first program by the verification unit fails. 5. 前記検証手段は、起動後、前記第2のプログラムの起動を示す起動情報が記録されていない場合には、第1のプログラムの検証を行い、前記第2のプログラムの起動を示す起動情報が記録されている場合には、第2のプログラムの検証を行うことを特徴とする請求項1〜4のいずれか1項に記載の情報処理装置。   The verification unit verifies the first program if the activation information indicating the activation of the second program is not recorded after the activation, and records the activation information indicating the activation of the second program. The information processing apparatus according to claim 1, wherein the verification of the second program is performed when the verification is performed. 前記第1のプログラムは、第1のオペレーティングシステムであり、
前記第2のプログラムは、第2のオペレーティングシステムであることを特徴とする請求項1〜5のいずれか1項に記載の情報処理装置。
The first program is a first operating system,
The information processing apparatus according to claim 1, wherein the second program is a second operating system.
前記検証手段は、ローダの検証を行い、
前記検証手段による前記第1のオペレーティングシステムと前記ローダの検証が成功した場合、又は前記検証手段による前記第2のオペレーティングシステムと前記ローダの検証が成功した場合、前記ローダを起動する第3の起動手段をさらに有することを特徴とする請求項6に記載の情報処理装置。
The verification means verifies the loader,
When the verification of the first operating system and the loader by the verification unit succeeds, or when the verification of the second operating system and the loader by the verification unit succeeds, a third activation that activates the loader. 7. The information processing apparatus according to claim 6, further comprising a unit.
前記第1の起動手段と前記第2の起動手段は、中央演算処理装置が起動する前記ローダの処理であることを特徴とする請求項7に記載の情報処理装置。   8. The information processing apparatus according to claim 7, wherein the first activation unit and the second activation unit are processes of the loader activated by a central processing unit. 前記検証手段は、前記中央演算処理装置が起動するBIOSの処理であることを特徴とする請求項8に記載の情報処理装置。   9. The information processing apparatus according to claim 8, wherein the verification unit is a process of a BIOS started by the central processing unit. 情報処理装置の制御方法であって、
検証手段により、前記情報処理装置の起動後、起動情報が第1のプログラムの起動を示す場合には、第1のプログラムの検証を行い、前記起動情報が第2のプログラムの起動を示す場合には、第2のプログラムの検証を行う検証ステップと、
第1の起動手段により、前記検証ステップで前記第1のプログラムの検証が成功した場合、前記第2のプログラムの起動指示がない場合には、前記第1のプログラムを起動する第1の起動ステップと、
再起動手段により、前記検証ステップで前記第1のプログラムの検証が成功した場合、前記第2のプログラムの起動指示がある場合には、前記第2のプログラムの起動を示す起動情報を記録し、前記情報処理装置を再起動する再起動ステップと
を有することを特徴とする情報処理装置の制御方法。
A method for controlling an information processing device, comprising:
The verification means verifies the first program when the activation information indicates the activation of the first program after the activation of the information processing apparatus, and verifies the activation of the first program when the activation information indicates the activation of the second program. Comprises a verification step of verifying a second program;
A first activating step for activating the first program if the first activating means succeeds in the verification of the first program in the verifying step and if there is no instruction to activate the second program; When,
When the verification of the first program is successful in the verification step by the restart unit, if there is an instruction to start the second program, the start information indicating the start of the second program is recorded, And a restarting step of restarting the information processing apparatus.
コンピュータを、請求項1〜9のいずれか1項に記載された情報処理装置の各手段として機能させるためのプログラム。   A program for causing a computer to function as each unit of the information processing apparatus according to claim 1.
JP2018188111A 2018-10-03 2018-10-03 Information processor, and control method and program therefor Pending JP2020057250A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018188111A JP2020057250A (en) 2018-10-03 2018-10-03 Information processor, and control method and program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018188111A JP2020057250A (en) 2018-10-03 2018-10-03 Information processor, and control method and program therefor

Publications (1)

Publication Number Publication Date
JP2020057250A true JP2020057250A (en) 2020-04-09

Family

ID=70107392

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018188111A Pending JP2020057250A (en) 2018-10-03 2018-10-03 Information processor, and control method and program therefor

Country Status (1)

Country Link
JP (1) JP2020057250A (en)

Similar Documents

Publication Publication Date Title
JP7059127B2 (en) Information processing device that detects tampering with software executed at startup and its control method
US20140149644A1 (en) Electronic apparatus, method of updating firmware, and computer-readable recording medium
US8949816B2 (en) Firmware updating method, image forming apparatus, and storage medium
US11928217B2 (en) Information processing apparatus, control method of information processing apparatus, and storage medium
JP7321795B2 (en) Information processing device, information processing method and program
JP7608211B2 (en) Information processing device, information processing method, and program
JP2020160747A (en) Information processing device, control method therefor, and program
WO2010113282A1 (en) A reconfigurable information processing device having a verification function and a control method therefor
JP7374780B2 (en) Information processing device and method of controlling the information processing device
US11106797B2 (en) Data processing apparatus, image processing apparatus and method for verifying and restoring operating system in activation mode
JP2020057250A (en) Information processor, and control method and program therefor
JP2020082441A (en) Image formation device, control method and program of the same
JP2020086516A (en) Information processing device, control method of information processing device, and program
JP7696707B2 (en) Information processing device, information processing method, and program
JP2019128775A (en) Information processing device, control method therefor, and program
JP2018156230A (en) Information processor
CN111382009B (en) Automatic system maintenance method and computer equipment with automatic maintenance function
JP2022157063A (en) Information processing device, information processing method and program
JP7322233B2 (en) Information processing device and tampering detection method for detecting tampering of software executed at startup
JP2017102887A (en) Information processing device, start method, and start program
JP7614881B2 (en) Information processing device
US12323536B2 (en) Information processing apparatus and control method for information processing apparatus
JP2025033167A (en) Information processing device, method for controlling information processing device, and program
JP2019200660A (en) Information processing apparatus, method for controlling information processing apparatus, and program
JP2024058152A (en) Information processing apparatus and control method thereof