JP2007041694A - Upgrade method of firmware - Google Patents
Upgrade method of firmware Download PDFInfo
- Publication number
- JP2007041694A JP2007041694A JP2005222968A JP2005222968A JP2007041694A JP 2007041694 A JP2007041694 A JP 2007041694A JP 2005222968 A JP2005222968 A JP 2005222968A JP 2005222968 A JP2005222968 A JP 2005222968A JP 2007041694 A JP2007041694 A JP 2007041694A
- Authority
- JP
- Japan
- Prior art keywords
- firmware
- program
- installation
- hash value
- upgrade
- 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.)
- Withdrawn
Links
Images
Abstract
Description
CPUを持ち、ファームウェアをインストールすることによって動作するデバイスに関する。 It relates to a device that has a CPU and operates by installing firmware.
従来、ファームウェアによって動作するデバイスは、ユーザによってバージョンアップすることが可能なものがあった。その際、本来許可されていないユーザのデバイスに対して高機能なファームウェアをインストールされてしまうことを防ぐため、以下のような施策のうちの1つ、または複数を施すことがあった。 Conventionally, some devices that operate on firmware can be upgraded by a user. At that time, in order to prevent a highly functional firmware from being installed on a user device that is not originally permitted, one or more of the following measures may be taken.
個々のデバイスは唯一の番号を持ち、ファームウェア製造者は許可されたユーザが使用するデバイスの番号をファームウェアに付与する。インストール実行時に、インストールプログラムはデバイスの持つ番号とインストールするファームウェアが持つ番号を調べ、一致すればインストールが行われる。 Each device has a unique number and the firmware manufacturer gives the firmware the device number used by the authorized user. When the installation is executed, the installation program checks the number of the device and the number of the firmware to be installed, and if they match, the installation is performed.
デバイスは電源ON時に、デバイスの保持する番号と、実行するファームウェアが持つ番号が一致すれば、動作を開始する。 When the device is turned on, if the number held by the device matches the number of the firmware to be executed, the device starts its operation.
ユーザのデバイスで動作中のファームウェアは唯一の番号を持ち、ファームウェア製造者はユーザに提供する新しいファームウェアに対して、対象となるユーザが保持するデバイスのファームウェアと同値な番号を付与し、インストールプログラムはインストール時に前記番号を検査し、一致すればインストールを実行する。 The firmware running on the user's device has a unique number, and the firmware manufacturer gives the new firmware provided to the user a number equivalent to the firmware of the device held by the target user, and the installation program The number is checked at the time of installation, and if it matches, the installation is executed.
ユーザは現在動作しているファームウェアに対して与えられる唯一の番号を保持しており、ファームウェア製造者は新たに提供するファームウェアに対して対象とするユーザが持つ番号と同値な番号を付与しておき、インストールプログラムはインストール時にユーザに前記番号を要求し、一致すればインストールを開始する。 The user holds a unique number assigned to the currently operating firmware, and the firmware manufacturer assigns a number equivalent to the number of the target user to the newly provided firmware. The installation program requests the number from the user at the time of installation, and starts the installation if they match.
上記はすべてユーザごとに、もしくは個々のファームウェアごとに(同じ機能のファームウェアであっても個別に)バージョンアップを管理する方法である。ユーザが不正に新しい高機能なファームウェアを入手した場合の、インストールおよびファームウェアの実行を防ぐことができる。 The above is a method for managing version upgrades for each user or for each individual firmware (individually even firmware having the same function). Installation and execution of firmware can be prevented when a user illegally obtains new high-performance firmware.
ファームウェアは保持する機能によって種類に分けて管理されており、各種類ごとに唯一の番号を持ち、インストールプログラムは、新たに提供されたファームウェアが持つ番号と、現在動作中のファームウェアが持つ番号を比較し、一致した場合のみインストールを実行する。 Firmware is managed by type depending on the functions it holds. Each type has a unique number, and the installation program compares the number of the newly provided firmware with the number of the currently operating firmware. If it matches, install only.
ファームウェアは保持する機能、配布・公開された日時、バージョンなどによって種類に分けて管理されており、各種類ごとに唯一の番号を持ち、新たに提供されたファームウェアはインストール可能な前記番号を持ち、インストールプログラムは現在動作中のファームウェアの番号と、前記番号を比較し、一致した場合にインストールを実施する。 The firmware is managed by type depending on the function to be held, the date and time of distribution / release, version, etc., each type has a unique number, the newly provided firmware has the number that can be installed, The installation program compares the number of the currently operating firmware with the number, and if the numbers match, the installation program is installed.
上記(5)〜(6)は、ファームウェアの種類ごとに(たとえば、同じ機能のファームウェアは識別せずに)バージョンアップを管理する方法である。ユーザごとに管理しない製品において、許可されていない高機能なファームウェアのインストール、保守対象としないバージョンに対するバージョンアップを防ぐことが可能である。 The above (5) to (6) are methods for managing version upgrades for each type of firmware (for example, without identifying firmware having the same function). For products that are not managed for each user, it is possible to prevent installation of high-performance firmware that is not permitted and version upgrades that are not subject to maintenance.
又、従来例としては、例えば特許文献1と特許文献2をあげることが出来る。
(1)〜(4)の方法でファームウェアのバージョンアップを管理しようとすると、次のような課題があった。 When trying to manage firmware upgrades by the methods (1) to (4), there are the following problems.
ファームウェア製造者は、ユーザのデバイスが保持する番号、ユーザのデバイスで動作中のファームウェアが保持する番号、およびそのバージョンなどを、「ユーザごと」に管理し、指定したユーザに対して唯一のファームウェアを作成する必要があった。しかしユーザごとに管理を必要としない製品もあり、そのような製品のファームウェアのバージョンアップにおいて、ユーザごとの管理はファームウェア製造者にとって負担が大きいため不適と言える。 The firmware manufacturer manages the number held by the user's device, the number held by the firmware running on the user's device, its version, etc., on a “per user” basis. There was a need to create. However, there are products that do not require management for each user, and it can be said that management for each user is unsuitable for updating the firmware of such products because the burden on the firmware manufacturer is large.
(5)〜(6)の方法でファームウェアのバージョンアップを管理しようとすると、次のような課題があった。 When trying to manage firmware upgrades by the methods (5) to (6), there are the following problems.
ファームウェアの番号が型番号、バージョン番号、シリアル番号などでは、悪意のあるユーザにとっては解析されやすく、別の種類に区分されている高機能なファームウェアを、それが持つ番号を改ざんし、別の低機能な種類のファームウェアに対してインストールされてしまう可能性がある。 If the firmware number is a model number, version number, serial number, etc., it is easy for a malicious user to analyze, and a high-performance firmware that is classified into another type is tampered with by changing its number. It may be installed for functional types of firmware.
また、上記の課題を解決するにあたって、以下の件も考慮しなければならない。 In order to solve the above problems, the following matters must be taken into consideration.
デバイス自身で判定させ、他に機材を必要としない。 Let the device judge itself, no other equipment is required.
従来のファームウェアのバージョンアップと同等の手順、手間とし、ユーザに不便をかけさせない。 The procedure and effort are the same as the conventional firmware version upgrade, and the user is not inconvenienced.
上記問題を解決するため、以下の手段を講じる。 In order to solve the above problems, the following measures are taken.
バージョンアップ用のファームウェアは、そのファームウェアにバージョンアップすることが許可されている以前のファームウェアのHASH値リストを持つ。 The firmware for upgrading has a HASH value list of previous firmware that is permitted to be upgraded to that firmware.
インストールプログラムは、ファームウェアをバージョンアップするときに、ファームウェアが保持するHASH値リストと現在動作中のファームウェアのHASH値との比較を行い、一致していればバージョンアップを実行する。 When upgrading the firmware, the installation program compares the HASH value list held by the firmware with the HASH value of the currently operating firmware, and if they match, upgrades the version.
HASH値の作成は(ファームウェア+秘密値)から作成し、秘密値を変更することによって、バージョンアップの対象とする以前のファームウェアのHash値リスト値を変更する。 The HASH value is created from (firmware + secret value), and by changing the secret value, the Hash value list value of the previous firmware to be upgraded is changed.
これらの手段を講じることにより、以下の作用を得ることができる。 By taking these measures, the following actions can be obtained.
バージョンアップが許可されていないファームウェアに対して、ユーザがバージョンアップを実行することを防ぐことが出来る。 It is possible to prevent the user from executing version upgrade for firmware that is not permitted to be upgraded.
インストールプログラムを実行するデバイス自身がバージョンアップの可否を判断し、バージョンアップの可否のために他の機材を必要としない。
判定する基準が単なる番号ではなく、現在動作しているファームウェアのHash値で行うことにより、以下のメリットが得られる。
The device itself that executes the installation program determines whether or not the upgrade is possible, and no other equipment is required for the upgrade.
By using the hash value of the currently operating firmware instead of a simple number as the criterion for determination, the following advantages can be obtained.
型番情報、バージョン情報等分かりやすい情報ではなく、ファームウェアに秘密値を加えたHash値で判定するため、バージョンアップ可能なファームウェアの情報を、Hash値リストから特定することは困難であるといえる。そのため、悪意のあるユーザによりHash値リストを書き換えられて勝手にバージョンアップされる可能性を低くすることができる。特に、秘密値を1つのファームウェア内に複数持つ、秘密値の変更をリリースするファームウェアごとに変更する、などを行えば、ハッキングされる可能性を非常に低くすることが可能である。 Since it is determined not by easy-to-understand information such as model number information and version information but by a hash value obtained by adding a secret value to the firmware, it can be said that it is difficult to specify firmware information that can be upgraded from the hash value list. Therefore, it is possible to reduce the possibility that the Hash value list is rewritten by a malicious user and the version is arbitrarily upgraded. In particular, if there is a plurality of secret values in one firmware, or changes are made for each firmware that releases secret value changes, the possibility of hacking can be made very low.
ファームウェアが自分の番号情報を持っておく必要がない。(HASH値はファームウェアから生成できるため) The firmware does not need to have its own number information. (Because HASH values can be generated from firmware)
本発明の効果として、以下の事項が挙げられる。 The following matters are mentioned as effects of the present invention.
バージョンアップが許可されていないファームウェアに対して、ユーザがバージョンアップを実行することを防ぐことが出来る。 It is possible to prevent the user from executing version upgrade for firmware that is not permitted to be upgraded.
インストールプログラムを実行するデバイス自身がバージョンアップの可否を判断し、バージョンアップの可否のために他の機材を必要としない。 The device itself that executes the installation program determines whether or not the version can be upgraded, and no other equipment is required for the upgrade.
判定する基準が単なる番号ではなく、現在動作しているファームウェアのHash値で行うことにより、以下のメリットが得られる。 By using the Hash value of the currently operating firmware instead of a simple number as the criterion for determination, the following advantages can be obtained.
型番情報、バージョン情報等分かりやすい情報ではなく、ファームウェアに秘密値を加えたHash値で判定するため、バージョンアップ可能なファームウェアの情報を、Hash値リストから特定することは困難であるといえる。そのため、悪意のあるユーザによりHash値リストを書き換えられて勝手にバージョンアップされる可能性を低くすることができる。特に、秘密値を1つのファームウェア内に複数持つ、秘密値の変更をリリースするファームウェアごとに変更する、などを行えば、ハッキングされる可能性を非常に低くすることが可能である。 Since it is determined not by easy-to-understand information such as model number information and version information but by a hash value obtained by adding a secret value to the firmware, it can be said that it is difficult to specify firmware information that can be upgraded from the hash value list. Therefore, it is possible to reduce the possibility that the Hash value list is rewritten by a malicious user and the version is arbitrarily upgraded. In particular, if there is a plurality of secret values in one firmware, or changes are made for each firmware that releases secret value changes, the possibility of hacking can be made very low.
HASH値はファームウェアから生成できるため、ファームウェアが自分の番号情報を持っておく必要がない。 Since the HASH value can be generated from the firmware, it is not necessary for the firmware to have its own number information.
本発明は以下に詳述するように、デバイスのファームウェアをバージョンアップする方法に関するものである。 The present invention relates to a method for upgrading the firmware of a device, as will be described in detail below.
図1は、本実施例のネットワークシステムが動作可能な構成を示す図である。
図1において、110は単機能プリンタ(以下SFP(SingleFunctionPrinter)と呼ぶ)、120は複合機(以下MFP(Multi Function Printer)と呼ぶ)であり、それぞれLAN100に接続されている。
FIG. 1 is a diagram illustrating a configuration in which the network system of this embodiment can operate.
In FIG. 1, reference numeral 110 denotes a single function printer (hereinafter referred to as SFP (Single Function Printer)), and
SFP110、MFP120はPC130からネットワークを介して印刷ジョブを受信し印刷処理を行う。また、SFP110、MFP120はPC130からの指示により、新規ファームウェアのインストール要求を受信し、可能であれば新規ファームウェアプログラムを受信し、インストールを実行する。140はファイアウォールであり、LAN100を外部のインタネット150に接続する。またLAN100はファイアウォール140、インタネット150を介して更に別のネットワーク160に接続される。
The SFP 110 and MFP 120 receive a print job from the PC 130 via the network and perform print processing. In addition, the SFP 110 and the MFP 120 receive a new firmware installation request according to an instruction from the PC 130, and if possible, receive a new firmware program and execute installation. A
図2は、一般的なパーソナルコンピュータの内部構成を示した図であり、図1におけるPC130の内部構成はこのようになっている。PC200は、ROM202もしくはハードディスク(HD)211に記憶された、あるいはフレキシブルディスクドライブ(FD)212より供給される各種ソフトウェアを実行するCPU201を備え、システムバス204に接続される各機器を総括的に制御する。203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。205はキーボードコントローラ(KBC)で、キーボード(KB)209や不図示のポインティングデバイス等からの指示入力を制御する。206はCRTコントローラ(CRTC)で、CRTディスプレイ(CRT)210の表示を制御する。207はディスクコントローラ(DKC)で、ブートプログラム、本発明を実現するプログラム、種々のアプリケーション、編集ファイル、ユーザファイル等を記憶するハードディスク(HD)211およびフレキシブルディスクコントローラ(FD)212とのアクセスを制御する。208はネットワークインタフェースカード(NIC)で、LAN220を介して、ネットワークプリンタ、他のネットワーク機器あるいは他のPCと双方向にデータをやりとりする。
FIG. 2 is a diagram showing an internal configuration of a general personal computer, and the internal configuration of the PC 130 in FIG. 1 is as described above. The PC 200 includes a
なお、本実施例においては、LAN220は図1におけるLAN100と同じものである。
In this embodiment, the
図3において、300は、本発明プログラムが稼動するMFPまたはSFPの内部構成の一例であり、図1における110、120と同等である。デバイス300は、ROM302もしくはハードディスク(HD)310に記憶された、あるいはフレキシブルディスクドライブ(FD)311より供給される各種プログラムを実行するCPU301を備え、システムバス304に接続される各機器を総括的に制御する。303はRAMで、CPU301の主メモリ、ワークエリア等として機能する。305はユーザインタフェースコントローラ(UIC)で、ユーザインタフェース(UI)309への表示、309からの指示入力を制御する。ファンクションコントローラ(FUNCC)306は各デバイス特有の機能であるファンクション(FUNC)310を実現/制御する。モノクロプリンタであればモノクロプリントエンジンコントローラとモノクロプリントエンジン、カラープリンタであればカラープリントエンジンコントローラとカラープリントエンジン、MFPであればデバイス300は各機能のファンクションコントローラ(FUNCC)306とファンクション(FUNC)310をそれぞれ持つ。307はディスクコントローラ(DKC)で、ブートプログラム、本発明の動作を行うプログラム、種々のアプリケーション、データファイルを記憶するハードディスク(HD)311およびフレキシブルディスクコントローラ(FD)312とのアクセスを制御する。308はネットワークインタフェースカード(NIC)で、LAN320を介して、ネットワークプリンタ、他のネットワーク機器あるいは他のPCと双方向にデータをやりとりする。なお、本実施例においては、LAN320は図1におけるLAN100、LAN190と同じものである。
3, 300 is an example of the internal configuration of the MFP or SFP in which the program of the present invention is run, and is equivalent to 110 and 120 in FIG. The
図4は、本発明の印刷システムにおけるMFPとSFPのインストール動作の説明図である。410はメディアであり、バージョンアップ用のファームウェアプログラム411とバージョンアップ対象となるファームウェアのハッシュ値のリスト412を格納している。420、421はMFPまたはSFPを表すデバイスであり、図1における110、120と同等である。デバイス420で動作中のファームウェアプログラムHash2で表され、ハッシュ値リスト412に表示されている。したがって、このメディア410に格納されているバージョンアップ用ファームウェアプログラムはデバイス420に対してインストール可能であることが分かる。ところがデバイス421のハッシュ値はHash8であり、ハッシュ値リスト412には存在しない。よって、デバイス421はメディア410に格納されているファームウェアプログラムのインストールは許可されない。
FIG. 4 is an explanatory diagram of the installation operation of the MFP and SFP in the printing system of the present invention.
図5は本発明の動作における、インストール動作のシーケンス図である。PC510において、インストール操作が開始されると、デバイス520へインストールプログラムが転送される。その際、ハッシュ値リストも同時に転送される。デバイス520はインストールプログラムの処理を開始させ、まず、現在デバイスで動作しているファームウェアのハッシュ値を算出し(521)、受信したハッシュ値リストに、算出したハッシュ値があるか否かを調べ(521、522)、存在すれば新規ファームウェアのインストール処理を開始する(523)。その後、PC510からファームウェアプログラムのデータを受信し(513~515)、インストールを実行する(524)。
FIG. 5 is a sequence diagram of the installation operation in the operation of the present invention. When the installation operation is started in the
図6は本発明におけるハッシュ値の算出を表す式である。本発明におけるハッシュ値とは、ファームウェアのデータにインストールプログラムが秘密に保持する秘密値をあわせてハッシュ関数H( )に入力し、その出力のことを指す。 FIG. 6 is an expression representing calculation of a hash value in the present invention. The hash value in the present invention refers to the output of the firmware data that is input to the hash function H () together with the secret value held secretly by the installation program.
図7はデバイスで動作するファームウェアプログラムのフローチャートである。まず、電源が投入されるとデバイスの初期化処理を行い(処理710)、初期化が終了すると外部からの要求待ちとなる(処理711)。新規ファームウェアインストール要求を受信すると、インストールプログラムの受信を行う(処理720)。その他の要求を受信すると、その他の処理を行い(処理730)、再び外部からの要求待ち(処理711)となる。処理720を終了後、デバイスのブートプログラムを、インストールプログラムが起動するように設定し(処理721)、リブートを行い(処理722)、処理を終了する(処理799)。
FIG. 7 is a flowchart of a firmware program operating on the device. First, when the power is turned on, a device initialization process is performed (process 710). When the initialization is completed, an external request is waited (process 711). When a new firmware installation request is received, an installation program is received (process 720). When another request is received, other processing is performed (processing 730), and the request from the outside is again waited (processing 711). After the
図8は図7の処理720で受信するインストールプログラムのフローチャートである。まず、現在動作中のファームウェアのハッシュ値を、図6のとおりに作成する(処理810)。インストールプログラムが保持するハッシュ値リストから、前記算出したハッシュ値を検索し(処理811)、ハッシュ値リストに前記算出したハッシュ値が含まれていれば、処理821へ進む。無ければ処理830へ進む。処理820では新規ファームウェアのダウンロードを図5のPC510から行い、ファームウェアの検査を行いダウンロードが成功したか否かを判定する(処理821)。ダウンロードが成功した場合は処理840へ進み、失敗と判定されれば処理830へ進む。処理840では、ダウンロードした新規ファームウェアが、次回リブート後に動作開始するように設定し(処理840)、デバイスをリブートする(処理841)。処理830ではファームウェアの更新が失敗したことをパネル表示またはPC510へ通知する。その後、処理831にて今まで稼動していたファームウェアが動作するように設定し、処理841へ進む。
FIG. 8 is a flowchart of the installation program received in the
図9は、デバイスのインストール動作時に関係するプログラムのメモリマップである。CPUが電源投入後、最初に参照するアドレスがAddress A(アドレス910)であり、Address Aを先頭にブートプログラムが格納されている。Address B(アドレス920)、Address C(アドレス930)にはファームウェアプログラムが格納されているエリアの先頭アドレスであり、Address Dを先頭にしたエリアにはインストールプログラムが格納される。 FIG. 9 is a memory map of programs related to the device installation operation. After the CPU is turned on, the first address to be referenced is Address A (address 910), and the boot program is stored with Address A as the head. Address B (address 920) and Address C (address 930) are the top addresses of the area where the firmware program is stored, and the installation program is stored in the area starting with Address D.
ブートプログラムはどのプログラムを実行するかが設定されており、仮にここで現在稼動中のファームウェアプログラムがファームウェア0格納エリア(エリア921)に格納されているとすると、ブートプログラムはアドレス920から処理を実行するように設定されている。図7において、処理711のようにインストール要求を受信した場合、まずインストールプログラム格納エリア(エリア941)にインストールプログラムを格納し(処理720)、処理721で次回起動時はアドレス940からの処理を実行するように設定される。その後リブートされ、図8のインストールプログラムのフローに従って処理を実行し、処理820で新規ファームウェアプログラムのダウンロードを行う際には、ファームウェア1格納エリア(エリア931)へ格納する。新規ファームウェアのダウンロードが終了すると、ブートプログラムがアドレス930から処理を実行するように設定され(処理840)、デバイスをリブート(処理841)後、アドレス830から処理が開始され、新規ファームウェアの実行が開始される。
The boot program is set as to which program is to be executed. If the currently active firmware program is stored in the firmware 0 storage area (area 921), the boot program executes processing from the
図10は、記憶媒体の一例であるCD−ROMのメモリマップを示す図である。9999はディレクトリ情報を記憶してある領域で、以降のインストールプログラムを記憶してある領域9998およびデバイス用のインストールプログラムを記憶してある領域9997、デバイス用の新規ファームウェアプログラムを記憶してある領域9996の位置を示している。9998は、PC上でデバイスへ領域9996のインストールを実行するプログラムを記憶している領域である。9997は、デバイス上で動作するインストールを実行するプログラムを記憶してある領域である。9996は、デバイスのファームウェアプログラムを記憶してある領域である。9996に記憶されているプログラムが、例えばPC200を使用して印刷デバイス300にインストールされる際には、まずインストールプログラムを記憶してある領域9998に記憶されているインストールプログラムがPC200にロードされ、CPU201によって実行される。次に、CPU201によって実行されるインストールプログラムが、デバイス用インストールプログラムを記憶してある領域9997を印刷デバイス300に転送し、CPU301によって実行される。次にCPU301によって実行されるデバイス用インストールプログラムが、PC200へデバイス用ファームウェアの要求を行い、PC200はインストールプログラムによってデバイス用ファームウェアを印刷デバイス300へ送信し、印刷デバイス300はデバイス用インストールプログラムによってデバイス用ファームウェアをハードディスク311に格納する。
FIG. 10 is a diagram showing a memory map of a CD-ROM which is an example of a storage medium. 9999 is an area in which directory information is stored, an
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェース機器、リーダなど)から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。 Note that the present invention may be applied to a system or an integrated device including a plurality of devices (for example, a host computer, an interface device, a reader, etc.) or an apparatus including a single device.
また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。 In addition, a storage medium in which a program code of software that realizes the functions of the above-described embodiments is supplied to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the program code in the storage medium. It goes without saying that the object of the present invention can also be achieved by reading and executing.
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。 In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM,CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。 As a storage medium for supplying the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。 In addition, the functions of the above-described embodiments are realized by executing the program code read by the computer, and the OS running on the computer is part of the actual processing based on the instruction of the program code. Alternatively, the functions of the above-described embodiment can be realized by performing all of them and performing the processing.
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。 Further, after the program code read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. The CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments can be realized by the processing.
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体から、そのプログラムをパソコン通信など通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。 The present invention can also be applied to a case where the program is distributed to a requester via a communication line such as personal computer communication from a storage medium in which a program code of software realizing the functions of the above-described embodiments is recorded. Needless to say.
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005222968A JP2007041694A (en) | 2005-08-01 | 2005-08-01 | Upgrade method of firmware |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005222968A JP2007041694A (en) | 2005-08-01 | 2005-08-01 | Upgrade method of firmware |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007041694A true JP2007041694A (en) | 2007-02-15 |
Family
ID=37799636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005222968A Withdrawn JP2007041694A (en) | 2005-08-01 | 2005-08-01 | Upgrade method of firmware |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007041694A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008217326A (en) * | 2007-03-02 | 2008-09-18 | Nec System Technologies Ltd | Hard disk built-in apparatus and method, and disk array system |
JP4906854B2 (en) * | 2006-07-03 | 2012-03-28 | パナソニック株式会社 | Information processing apparatus, information recording apparatus, information processing system, program update method, program, and integrated circuit |
US8887288B2 (en) | 2008-02-18 | 2014-11-11 | Ricoh Company, Ltd. | Method of detecting software falsification, apparatus configured to detect software falsification, and computer-readable storage medium |
WO2021029232A1 (en) * | 2019-08-15 | 2021-02-18 | フェリカネットワークス株式会社 | Information processing device, information processing method, program, and information processing system |
-
2005
- 2005-08-01 JP JP2005222968A patent/JP2007041694A/en not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4906854B2 (en) * | 2006-07-03 | 2012-03-28 | パナソニック株式会社 | Information processing apparatus, information recording apparatus, information processing system, program update method, program, and integrated circuit |
JP2008217326A (en) * | 2007-03-02 | 2008-09-18 | Nec System Technologies Ltd | Hard disk built-in apparatus and method, and disk array system |
US8887288B2 (en) | 2008-02-18 | 2014-11-11 | Ricoh Company, Ltd. | Method of detecting software falsification, apparatus configured to detect software falsification, and computer-readable storage medium |
WO2021029232A1 (en) * | 2019-08-15 | 2021-02-18 | フェリカネットワークス株式会社 | Information processing device, information processing method, program, and information processing system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103559052B (en) | The apparatus and method for that firmware updates | |
US9280374B2 (en) | Virtual machine asynchronous patch management | |
US8875125B2 (en) | Operation system installation methods and media | |
TWI430174B (en) | Approaches for installing software using bios | |
US7791745B2 (en) | Information processing apparatus on which printer driver can be installed, information processing apparatus, control method, program, and storage medium | |
JP4608265B2 (en) | System and method for manufacturing and executing an insertable portable operating system module | |
JP5333579B2 (en) | Management server, boot server, network boot system, and network boot method | |
US20060265630A1 (en) | Method, system and computer program for distributing software patches | |
US8112808B2 (en) | Server apparatus and installation information making method | |
US7512833B1 (en) | Universal imaging utility program | |
CN1441352A (en) | Information processor, control method and storage medium for said information processor | |
TWI515658B (en) | Method and system for creating a virtual appliance | |
JP2006107185A (en) | Computer system with terminal allowing off-line work | |
US7409575B2 (en) | Recovery of computer systems | |
JP2011150499A (en) | Thin client system, thin client terminal, and thin client program | |
JP2007041694A (en) | Upgrade method of firmware | |
US20170199733A1 (en) | Method for terminal to update operating system, terminal and system | |
JP2009070248A (en) | Image processor and image processing method | |
CN106155713B (en) | Startup information management method and device | |
JP6429455B2 (en) | Image forming apparatus, control method therefor, and program | |
CN114296873B (en) | Virtual machine image protection method, related device, chip and electronic equipment | |
JP2007011944A (en) | Image processor and firmware upgrading method | |
JP2009009494A (en) | Information processor, information processing method and control program | |
JP2019153050A (en) | Activation control device, activation control system, activation control method and activation control program | |
JP7171339B2 (en) | Information processing device, control method for information processing device, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20081007 |