JP2023035144A - 情報処理装置及び情報処理プログラム - Google Patents

情報処理装置及び情報処理プログラム Download PDF

Info

Publication number
JP2023035144A
JP2023035144A JP2021141772A JP2021141772A JP2023035144A JP 2023035144 A JP2023035144 A JP 2023035144A JP 2021141772 A JP2021141772 A JP 2021141772A JP 2021141772 A JP2021141772 A JP 2021141772A JP 2023035144 A JP2023035144 A JP 2023035144A
Authority
JP
Japan
Prior art keywords
software
version
diagnostic program
firmware
information
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
JP2021141772A
Other languages
English (en)
Inventor
英紀 能條
Hidenori Nojo
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujifilm Business Innovation Corp filed Critical Fujifilm Business Innovation Corp
Priority to JP2021141772A priority Critical patent/JP2023035144A/ja
Publication of JP2023035144A publication Critical patent/JP2023035144A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

Figure 2023035144000001
【課題】ソフトウェアのバージョン情報を管理するサーバが存在しない環境でも、不適切に更新されることを防止する情報処理装置及びプログラムを提供する。
【解決手段】更新処理プログラムは、自装置にインストールされている第1ファームウェアのバージョン及びそれよりも古いバージョンのファームウェアへの更新を禁止するか否かを判定するための第1診断プログラムが付加された第1ファームウェアを取得し、第1ファームウェアの更新対象とする第2ファームウェアのバージョン及び当該バージョンよりも古いバージョンのファームウェアへの更新を禁止するか否かを判定するための第2診断プログラムが付加された第2ファームウェアを取得し、第1診断プログラム及び第2診断プログラムのうち、バージョンの新しい診断プログラムを実行し、当該診断プログラムが第1ファームウェアから第2ファームウェアへの更新を禁止と判定した場合に、更新を禁止する。
【選択図】図8

Description

本発明は、情報処理装置及び情報処理プログラムに関する。
例えば、特許文献1には、ネットワークに接続された情報処理装置におけるファームウェアのアップデートを行う情報処理システムが記載されている。この情報処理システムは、ネットワークに接続され、情報処理装置における各部位においてアップデート可能なファームウェアのバージョンの依存関係を記述するマスタファイルと、ファームウェアとを備えたサーバと、ネットワークに接続され、マスタファイルの依存関係を基に、情報処理装置のファームウェアをサーバに格納されたファームウェアを用いてアップデートする管理手段と、を備える。
また、特許文献2には、オプションユニットのプログラムの更新を保証する印刷装置が記載されている。この印刷装置は、印刷を実行する印刷手段と、印刷が実行されたシートにフィニッシング処理を実行するフィニッシャユニットを印刷装置に接続する接続手段と、フィニッシャユニットからハードウェアの識別情報を取得する第1の取得手段と、第1の取得手段により取得されたハードウェアの識別情報に基づいて、フィニッシャユニットのハードウェアが印刷装置のプログラムに適合しているかを判断する第1の判断手段と、第1の判断手段によりフィニッシャユニットのハードウェアが印刷装置のプログラムに適合していると判断された場合に、フィニッシャユニットからプログラムの識別情報を取得する第2の取得手段と、第2の取得手段により取得されたプログラムの識別情報に基づいて、フィニッシャユニットのプログラムが印刷装置のプログラムに対応しているかを判断する第2の判断手段と、を備える。また、この印刷装置は、第2の判断手段によりフィニッシャユニットのプログラムが印刷装置のプログラムに対応していると判断された場合に、フィニッシャユニットのプログラムのバージョンと印刷装置のプログラムのバージョンを比較する比較手段と、比較手段による比較の結果からフィニッシャユニットのプログラムのバージョンと印刷装置のプログラムのバージョンの組み合わせが正しい組み合わせでない場合には、フィニッシャユニットのプログラムを印刷装置のプログラムのバージョンに適合したバージョンのプログラムに更新する更新手段と、を備える。
特開2009-80550号公報 特開2018-160274号公報
ところで、情報処理装置に搭載されているソフトウェアによっては、あるバージョンに更新してからでないとそれより新しいバージョンに更新できない場合がある。また、ソフトウェアをあるバージョンにバージョンアップすると、それ以前のバージョンに戻せなくなる(サポートできなくなる)場合がある。
このような動作保証外の不適切なソフトウェアに更新されないようにするには、ソフトウェアの更新の度にバージョンを確認する必要がある。例えば、ネットワーク上のサーバを利用してソフトウェアのバージョン情報を管理する方法が考えられる。しかし、このサーバがネットワーク上に存在しない環境では、バージョンを管理できず、不適切なソフトウェアに更新されてしまう場合がある。
本開示は、ソフトウェアのバージョン情報を管理するサーバが存在しない環境であっても、不適切なソフトウェアに更新されることを防止することができる情報処理装置及び情報処理プログラムを提供することを目的とする。
上記目的を達成するために、第1態様に係る情報処理装置は、プロセッサを備え、前記プロセッサが、自装置にインストールされている第1ソフトウェアであって、当該第1ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第1診断プログラムが付加された前記第1ソフトウェアを取得し、前記第1ソフトウェアの更新対象とする第2ソフトウェアであって、当該第2ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第2診断プログラムが付加された前記第2ソフトウェアを取得し、前記第1診断プログラム及び前記第2診断プログラムのうち、バージョンの新しい診断プログラムを実行し、当該診断プログラムが前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定した場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止する。
また、第2態様に係る情報処理装置は、第1態様に係る情報処理装置において、前記第1診断プログラム又は前記第2診断プログラムが、前記第1ソフトウェアのバージョンと前記第2ソフトウェアのバージョンとの組み合わせが禁止条件を満たす場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定する。
また、第3態様に係る情報処理装置は、第2態様に係る情報処理装置において、前記禁止条件が、前記第1ソフトウェアのバージョンが前記第2ソフトウェアのバージョンの2つ以上前のバージョンであること、又は、前記第2ソフトウェアのバージョンが前記第1ソフトウェアのバージョンの2つ以上前のバージョンであることを含む。
また、第4態様に係る情報処理装置は、第2態様又は第3態様に係る情報処理装置において、前記第1診断プログラム又は前記第2診断プログラムが、前記第1ソフトウェアのバージョンと前記第2ソフトウェアのバージョンとの組み合わせが禁止条件を満たさない場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を許可と判定する。
また、第5態様に係る情報処理装置は、第1態様に係る情報処理装置において、前記第1診断プログラム又は前記第2診断プログラムが、自装置が備えるデバイスに関する情報であるデバイス情報を取得し、取得したデバイス情報により特定されるデバイスが前記第2ソフトウェアに対応不可能な場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定する。
また、第6態様に係る情報処理装置は、第5態様に係る情報処理装置において、前記第1診断プログラム又は前記第2診断プログラムが、自装置が備えるデバイスに関する情報であるデバイス情報を取得し、取得したデバイス情報により特定されるデバイスが前記第2ソフトウェアに対応可能な場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を許可と判定する。
また、第7態様に係る情報処理装置は、第5態様又は第6態様に係る情報処理装置において、前記プロセッサと接続されたメモリを更に備え、前記デバイスが、前記プロセッサ及び前記メモリを含む。
また、第8態様に係る情報処理装置は、第7態様に係る情報処理装置において、前記デバイス情報が、前記プロセッサのバージョン情報、及び、前記メモリのID情報を含む。
また、第9態様に係る情報処理装置は、第1態様~第8態様の何れか1態様に係る情報処理装置において、前記第1ソフトウェア及び前記第2ソフトウェアの各々が、自装置の動作を制御するファームウェアである。
また、第10態様に係る情報処理装置は、第1態様~第9態様の何れか1態様に係る情報処理装置において、前記プロセッサが、前記第2ソフトウェアから前記第2診断プログラムを分離し、分離した第2診断プログラムのみを実行可能なように自装置にインストールする。
更に、上記目的を達成するために、第11態様に係る情報処理プログラムは、自装置にインストールされている第1ソフトウェアであって、当該第1ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第1診断プログラムが付加された前記第1ソフトウェアを取得し、前記第1ソフトウェアの更新対象とする第2ソフトウェアであって、当該第2ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第2診断プログラムが付加された前記第2ソフトウェアを取得し、前記第1診断プログラム及び前記第2診断プログラムのうち、バージョンの新しい診断プログラムを実行し、当該診断プログラムが前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定した場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止することを、コンピュータに実行させる。
第1態様及び第11態様によれば、ソフトウェアのバージョン情報を管理するサーバが存在しない環境であっても、不適切なソフトウェアに更新されることを防止することができる、という効果を有する。
第2態様によれば、ソフトウェアのバージョンの組み合わせについての禁止条件を用いて、ソフトウェアの更新を禁止することができる、という効果を有する。
第3態様によれば、2つ以上前のバージョンのソフトウェアの更新を禁止することができる、という効果を有する。
第4態様によれば、ソフトウェアのバージョンの組み合わせについての禁止条件を用いて、ソフトウェアの更新を許可することができる、という効果を有する。
第5態様によれば、自装置が備えるデバイスのデバイス情報を用いて、ソフトウェアの更新を禁止することができる、という効果を有する。
第6態様によれば、自装置が備えるデバイスのデバイス情報を用いて、ソフトウェアの更新を許可することができる、という効果を有する。
第7態様によれば、自装置が備えるプロセッサ及びメモリの各々のデバイス情報を用いて、ソフトウェアの更新を禁止又は許可することができる、という効果を有する。
第8態様によれば、自装置が備えるプロセッサのバージョン情報及びメモリのID情報を用いて、ソフトウェアの更新を禁止又は許可することができる、という効果を有する。
第9態様によれば、ファームウェアのバージョン情報を管理するサーバが存在しない環境であっても、不適切なファームウェアに更新されることを防止することができる、という効果を有する。
第10態様によれば、第2診断プログラムのバージョンのほうが新しい場合に、第2診断プログラムのみをインストールすることができる、という効果を有する。
第1の実施形態に係る画像形成装置の電気的な構成の一例を示すブロック図である。 第1の実施形態に係る画像形成装置の機能的な構成の一例を示すブロック図である。 実施形態に係るファームウェアのバージョンと診断プログラムのバージョンとの組み合わせの禁止条件の一例を示す模式図である。 実施形態に係る画像形成装置によるファームウェア更新処理の一例の説明に供する模式図である。 実施形態に係るファームウェアのバージョンと診断プログラムのバージョンとの組み合わせの禁止条件の別の例を示す模式図である。 実施形態に係る画像形成装置によるファームウェア更新処理の別の例の説明に供する模式図である。 第1の実施形態に係る禁止条件テーブルの一例を示す図である。 第1の実施形態に係る更新処理プログラムによる処理の流れの一例を示すフローチャートである。 第2の実施形態に係る対応関係テーブルの一例を示す図である。 第2の実施形態に係る更新処理プログラムによる処理の流れの一例を示すフローチャートである。
以下、図面を参照して、本開示の技術を実施するための形態の一例について詳細に説明する。なお、動作、作用、機能が同じ働きを担う構成要素及び処理には、全図面を通して同じ符号を付与し、重複する説明を適宜省略する場合がある。各図面は、本開示の技術を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本開示の技術は、図示例のみに限定されるものではない。また、本実施形態では、本発明と直接的に関連しない構成や周知な構成については、説明を省略する場合がある。
[第1の実施形態]
図1は、第1の実施形態に係る画像形成装置10の電気的な構成の一例を示すブロック図である。画像形成装置10は、情報処理装置の一例である。なお、情報処理装置は、画像形成装置10に限定されるものではなく、サーバコンピュータ、パーソナルコンピュータ等の汎用的なコンピュータ装置であってもよい。
図1に示すように、本実施形態に係る画像形成装置10は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、入出力インタフェース(I/O)14と、記憶部15と、表示部16と、操作部17と、原稿読取部18と、画像形成部19と、通信部20と、を備えている。
CPU11、ROM12、RAM13、及びI/O14は、バスを介して各々接続されている。I/O14には、記憶部15と、表示部16と、操作部17と、原稿読取部18と、画像形成部19と、通信部20と、を含む各機能部が接続されている。これらの各機能部は、I/O14を介して、CPU11と相互に通信可能とされる。
CPU11、ROM12、RAM13、及びI/O14によって制御部が構成される。制御部は、画像形成装置10の一部の動作を制御するサブ制御部として構成されてもよいし、画像形成装置10の全体の動作を制御するメイン制御部の一部として構成されてもよい。制御部の各ブロックの一部又は全部には、例えば、LSI(Large Scale Integration)等の集積回路又はIC(Integrated Circuit)チップセットが用いられる。上記各ブロックに個別の回路を用いてもよいし、一部又は全部を集積した回路を用いてもよい。上記各ブロック同士が一体として設けられてもよいし、一部のブロックが別に設けられてもよい。また、上記各ブロックのそれぞれにおいて、その一部が別に設けられてもよい。制御の集積化には、LSIに限らず、専用回路又は汎用プロセッサを用いてもよい。
記憶部15としては、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等が用いられる。記憶部15には、本実施形態に係る更新処理プログラム15Aが記憶される。なお、この更新処理プログラム15Aは、ROM12に記憶されていてもよい。この更新処理プログラム15Aは、情報処理プログラムの一例である。
更新処理プログラム15Aは、例えば、画像形成装置10に予めインストールされていてもよい。更新処理プログラム15Aは、不揮発性の記憶媒体に記憶して、又はネットワークを介して配布して、画像形成装置10に適宜インストールすることで実現してもよい。なお、不揮発性の記憶媒体の例としては、CD-ROM(Compact Disc Read Only Memory)、光磁気ディスク、HDD、DVD-ROM(Digital Versatile Disc Read Only Memory)、フラッシュメモリ、メモリカード等が想定される。
表示部16には、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(Electro Luminescence)ディスプレイ等が用いられる。表示部16は、タッチパネルを一体的に有していてもよい。操作部17には、例えば、テンキー、スタートキー等の各種の操作キーが設けられている。表示部16及び操作部17は、操作パネルとして、画像形成装置10のユーザから各種の指示を受け付ける。この各種の指示には、例えば、原稿の読み取りを開始させる指示や、原稿のコピーを開始させる指示等が含まれる。表示部16は、ユーザから受け付けた指示に応じて実行された処理の結果や、処理に対する通知等の各種の情報を表示する。
原稿読取部18は、画像形成装置10の上部に設けられた自動原稿送り装置(図示省略)の給紙台に置かれた原稿を1枚ずつ取り込み、取り込んだ原稿を光学的に読み取って画像情報を得る。あるいは、原稿読取部18は、プラテンガラス等の原稿台に置かれた原稿を光学的に読み取って画像情報を得る。
画像形成部19は、原稿読取部18による読み取りによって得られた画像情報に基づく画像を、記録媒体の一例である用紙に形成する。なお、以下では、画像を形成する方式として、電子写真方式を例示して説明するが、インクジェット方式等の他の方式を採用してもよい。
画像を形成する方式が電子写真方式の場合、画像形成部19は、感光体ドラム、帯電装置、露光装置、現像装置、転写装置、及び定着装置を含んでいる。帯電装置は、感光体ドラムに電圧を印加して感光体ドラムの表面を帯電させる。露光装置は、帯電装置で帯電された感光体ドラムを画像情報に応じた光で露光することにより感光体ドラムに静電潜像を形成する。現像装置は、感光体ドラムに形成された静電潜像をトナーにより現像することで感光体ドラムにトナー像を形成する。転写装置は、感光体ドラムに形成されたトナー像を用紙に転写する。定着装置は、用紙に転写されたトナー像を加熱及び加圧により定着させる。
通信部20は、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等のネットワークに接続されており、パーソナルコンピュータ等の外部機器との間でネットワークを介して通信が可能とされる。
ところで、上述したように、動作保証外の不適切なソフトウェアに更新されないようにするには、ソフトウェアの更新の度にバージョンを確認する必要がある。例えば、ネットワーク上のサーバを利用してソフトウェアのバージョン情報を管理する方法がある。しかし、このサーバがネットワーク上に存在しない環境では、バージョンを管理できず、不適切なソフトウェアに更新されてしまう場合がある。
このため、本実施形態に係る画像形成装置10は、自装置にインストールされている第1ソフトウェアに付加された第1診断プログラム、及び、更新対象の第2ソフトウェアに付加された第2診断プログラムのうち、バージョンの新しい診断プログラムを実行し、当該診断プログラムが第1ソフトウェアから第2ソフトウェアへの更新を禁止すると判定した場合に、第1ソフトウェアから第2ソフトウェアへの更新を禁止する。
具体的に、本実施形態に係る画像形成装置10のCPU11は、記憶部15に記憶されている更新処理プログラム15AをRAM13に書き込んで実行することにより、図2に示す各部として機能する。なお、CPU11は、プロセッサの一例である。
図2は、第1の実施形態に係る画像形成装置10の機能的な構成の一例を示すブロック図である。
図2に示すように、本実施形態に係る画像形成装置10のCPU11は、取得部11A、実行部11B、及び更新部11Cとして機能する。
取得部11Aは、自装置にインストールされている第1ファームウェアを取得する。第1ファームウェアには第1診断プログラムが付加されている。ここでいう「インストール」とは、単なる記憶ではなく、実行可能な状態で記憶されていることをいう。第1診断プログラムは、第1ファームウェアのバージョン及び当該バージョンよりも古いバージョンのファームウェアへの更新を禁止するか否かを判定するためのプログラムである。第1ファームウェアは、自装置の動作を制御するソフトウェアであり、第1ソフトウェアの一例である。第1ファームウェアは、ROM12又は記憶部15に記憶されている。
また、取得部11Aは、第1ファームウェアの更新対象とする第2ファームウェアを取得する。第2ファームウェアには第2診断プログラムが付加されている。第2診断プログラムは、第2ファームウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するためのプログラムである。第2ファームウェアは、第2ソフトウェアの一例であり、外部から取得される。第1ファームウェア及び第2ファームウェアはいずれも自装置のファームウェアであり、バージョンが異なっている。第2ファームウェアは、例えば、第2ファームウェアを記憶したUSB(Universal Serial Bus)メモリ、CD-ROM等の外部記憶媒体から取得してもよいし、あるいは、第2ファームウェアを提供可能なサーバ等からダウンロードして取得してもよい。第1ファームウェア及び第2ファームウェアの各々は、バージョン情報を保持しており、バージョンの新旧が特定される。
実行部11Bは、第1診断プログラム及び第2診断プログラムのうち、バージョンの新しい診断プログラムを実行する。第1診断プログラム及び第2診断プログラムの各々は、バージョン情報を保持しており、バージョンの新旧が特定される。なお、第2診断プログラムのバージョンのほうが新しい場合、実行部11Bは、第2ファームウェアから第2診断プログラムを分離し、分離した第2診断プログラムのみを実行可能なように自装置にインストールする。
更新部11Cは、実行部11Bにより実行された診断プログラムが第1ファームウェアから第2ファームウェアへの更新を禁止と判定した場合に、第1ファームウェアから第2ファームウェアへの更新を禁止する。具体的に、第1診断プログラム又は第2診断プログラムは、第1ファームウェアのバージョンと第2ファームウェアのバージョンとの組み合わせが禁止条件を満たす場合に、第1ファームウェアから第2ファームウェアへの更新を禁止と判定する。この禁止条件は、例えば、第1ファームウェアのバージョンが第2ファームウェアのバージョンの2つ以上前のバージョンであること、又は、第2ファームウェアのバージョンが第1ファームウェアのバージョンの2つ以上前のバージョンであることを含んでいる。この禁止条件は、例えば、診断プログラムに対応付けて禁止条件テーブルとして保持しておけばよい。この場合、更新部11Cは、第1ファームウェアから第2ファームウェアへの更新ができないことをその理由と共にユーザに通知する。
また、更新部11Cは、実行部11Bにより実行された診断プログラムが第1ファームウェアから第2ファームウェアへの更新を許可と判定した場合に、第1ファームウェアから第2ファームウェアへの更新を許可する。具体的に、第1診断プログラム又は第2診断プログラムは、第1ファームウェアのバージョンと第2ファームウェアのバージョンとの組み合わせが禁止条件を満たさない場合に、第1ファームウェアから第2ファームウェアへの更新を許可と判定する。この場合、更新部11Cは、第1ファームウェアから第2ファームウェアへの更新を実行する。
ここで、具体的な例として、最新のバージョンのファームウェアにすると、デバイスドライバ等の他のソフトウェアもアップデートしなければならなかったり、最新のファームウェアにバグがあったりする場合等を考慮して、安定している特定のバージョンにバージョンアップ又はバージョンダウンしたいという要求がある。
しかし、新機能の導入、ハードウェアの不具合等により、一例として、図3に示すように、ファームウェアのバージョンAからバージョンCにバージョンアップする場合に、必ずバージョンA、バージョンB、バージョンCの順でないとバージョンアップできない場合がある。つまり、バージョンAからバージョンCへの直接のバージョンアップを禁止する場合がある。例えば、ファームウェアのファイル構成が変わる、ファイルのデータフォーマットが変わる等の場合に、バージョンアップに制約が発生する可能性がある。新しいファイル構成、新しいデータフォーマットに対応するためには、それに対応したファームウェアを事前にインストールしておく必要があり、特定のファームウェアをインストールしてから、ファイル構成、データフォーマットが新しくなったファームウェアをインストールする場合がある。
図3は、本実施形態に係るファームウェアのバージョンと診断プログラムのバージョンとの組み合わせの禁止条件の一例を示す模式図である。
図3に示すように、一例として、画像形成装置10のファームウェアについてバージョンAからバージョンCが存在するものとする。ファームウェアはバージョンAが最も古く、バージョンCが最も新しい。ファームウェアのバージョンAには診断プログラムのバージョン1が付加され、バージョンBには診断プログラムのバージョン2が付加され、バージョンCには診断プログラムのバージョン2が付加されている。診断プログラムはバージョン1が古く、バージョン2が新しい。図3の例における禁止条件(NG条件)は、画像形成装置10にインストールされているファームウェアのバージョンが更新対象とするファームウェアのバージョンの2つ以上前のバージョンであること、とされる。
図4は、本実施形態に係る画像形成装置10によるファームウェア更新処理の一例の説明に供する模式図である。
図4に示すように、画像形成装置10にはファームウェアのバージョンA(第1ファームウェア)がインストールされている。これに対して、ファームウェアのバージョンC(第2ファームウェア)を更新対象とする。この場合、ファームウェアのバージョンAをインストールしたときに画像形成装置10に格納された診断プログラムのバージョン1(第1診断プログラム)では、バージョンB、バージョンCのファームウェアが開発されていないため、後にバージョンAからバージョンCに直接バージョンアップすることが禁止されることを予見することは困難である。このため、ファームウェアのバージョンAに付加された診断プログラムのバージョン1では、バージョンAからバージョンCへの直接バージョンアップを禁止にできない。このため、ファームウェアのバージョンCに付加された診断プログラムのバージョン2(第2診断プログラム)では、バージョンAからバージョンCへの直接バージョンアップを禁止にする。つまり、ファームウェアのバージョンAからバージョンCに直接バージョンアップしようとした場合には、バージョンCに付加した診断プログラムのバージョン2を実行してバージョンアップを禁止にする。この禁止条件は、上述したように、例えば、診断プログラムに対応付けて禁止条件テーブル(後述の図7参照)として保持しておく。
また、別の例として、図5に示すように、ファームウェアのバージョンCから1つ前のバージョンBへのバージョンダウンは許可するが、バージョンCからバージョンBよりも古いバージョンAへのバージョンダウンを禁止する場合がある。例えば、市場導入後にCPU等の特定のデバイスに不具合が見つかり、新しいデバイスに交換することになった場合、特定の古いファームウェアでは新しいデバイスに対応していないため、特定の古いファームウェアへの更新を禁止したい場合がある。また、デバイスドライバ等のソフトウェアの不具合によって、特定の古いファームウェアにすると動作上問題が発生するため、特定の古いファームウェアへの更新を禁止したい場合がある。
図5は、本実施形態に係るファームウェアのバージョンと診断プログラムのバージョンとの組み合わせの禁止条件の別の例を示す模式図である。
上述の図3の例と同様に、図5に示すように、画像形成装置10のファームウェアについてバージョンAからバージョンCが存在するものとする。図5の例における禁止条件(NG条件)は、更新対象とするファームウェアのバージョンが画像形成装置10にインストールされているファームウェアのバージョンの2つ以上前のバージョンであること、とされる。
図6は、本実施形態に係る画像形成装置10によるファームウェア更新処理の別の例の説明に供する模式図である。
図6に示すように、画像形成装置10にはファームウェアのバージョンC(第1ファームウェア)がインストールされている。これに対して、ファームウェアのバージョンA(第2ファームウェア)を更新対象とする。この場合、更新対象のファームウェアのバージョンAに付与された診断プログラムのバージョン1(第2診断プログラム)では、バージョンB、バージョンCのファームウェアが開発されていないため、後にバージョンCからバージョンAにバージョンダウンすることが禁止されることを予見することは困難である。このため、ファームウェアのバージョンAに付加された診断プログラムのバージョン1では、バージョンCからバージョンAへのバージョンダウンを禁止にできない。このため、ファームウェアのバージョンCに付加された診断プログラムのバージョン2(第2診断プログラム)では、バージョンCからバージョンAへのバージョンダウンを禁止にする。つまり、ファームウェアのバージョンCからバージョンAにバージョンダウンしようとした場合には、バージョンCに付加した診断プログラムのバージョン2を実行してバージョンダウンを禁止にする。この禁止条件は、上述したように、例えば、診断プログラムに対応付けて禁止条件テーブル(後述の図7参照)として保持しておく。
なお、図6の例において、例えば、ファームウェアのバージョンBがインストールされている画像形成装置10に対して、ファームウェアのバージョンAを更新対象とした場合、バージョンBからバージョンAへのバージョンダウンが許可される。このとき、ファームウェアのバージョンBに付加されている診断プログラムのバージョン2は、バージョンダウンせずに、バージョン2のままとしてもよい。つまり、更新前の「ファームウェアバージョンB+診断プログラムバージョン2」が、更新後は「ファームウェアバージョンA+診断プログラムバージョン2」となる。
図7は、第1の実施形態に係る禁止条件テーブルの一例を示す図である。
図7に示す禁止条件テーブルでは、ファームウェアのバージョンAからバージョンCへの直接バージョンアップ、ファームウェアのバージョンCからバージョンAへのバージョンダウン、が禁止条件として登録されている。
次に、図8を参照して、第1の実施形態に係る画像形成装置10の作用を説明する。
図8は、第1の実施形態に係る更新処理プログラム15Aによる処理の流れの一例を示すフローチャートである。
まず、自装置のファームウェアの更新が指示されると、CPU11により更新処理プログラム15Aが起動され、以下の各ステップを実行する。
図8のステップS101では、CPU11が、自装置にインストールされている第1ファームウェアを取得する。第1ファームウェアには第1診断プログラムが付加されている。
ステップS102では、CPU11が、第1ファームウェアの更新対象とする第2ファームウェアを取得する。第2ファームウェアには第2診断プログラムが付加されている。
ステップS103では、CPU11が、第1診断プログラム及び第2診断プログラムの各々のバージョン情報を取得する。
ステップS104では、CPU11が、第1診断プログラム及び第2診断プログラムのうち、バージョンが新しい診断プログラムを特定し、特定した診断プログラムを実行する。なお、第2診断プログラムのバージョンのほうが新しい場合、CPU11は、第2ファームウェアから第2診断プログラムを分離し、分離した第2診断プログラムのみを実行可能なように自装置にインストールする。
ステップS105では、CPU11が、ステップS104で診断プログラムを実行することにより、第1ファームウェアのバージョンと第2ファームウェアのバージョンとの組み合わせについての禁止条件(例えば上述の図7参照)を参照する。
ステップS106では、CPU11が、ステップS105で参照した禁止条件に基づいて、自装置にインストールされている第1ファームウェアの更新を許可するか否かを判定する。禁止条件は、上述したように、例えば、第1ファームウェアのバージョンが第2ファームウェアのバージョンの2つ以上前のバージョンであること、又は、第2ファームウェアのバージョンが第1ファームウェアのバージョンの2つ以上前のバージョンであることを含んでいる。すなわち、第1ソフトウェアのバージョンと第2ソフトウェアのバージョンとの組み合わせが禁止条件を満たさない場合、更新を許可と判定し、第1ソフトウェアのバージョンと第2ソフトウェアのバージョンとの組み合わせが禁止条件を満たす場合、更新を禁止と判定する。CPU11は、第1ファームウェアの更新が可能と判定した場合(肯定判定の場合)、ステップS107に移行し、第1ファームウェアの更新が禁止と判定した場合(否定判定の場合)、ステップS108に移行する。
ステップS107では、CPU11が、第1ファームウェアから第2ファームウェアへの更新を開始し、本更新処理プログラム15Aによる一連の処理を終了する。
ステップS108では、CPU11が、第1ファームウェアから第2ファームウェアへの更新が禁止であることをユーザに通知し、本更新処理プログラム15Aによる一連の処理を終了する。なお、ユーザへの通知は、例えば、「更新対象のファームウェアは正常に動作しない可能性があるためファームウェアの更新を禁止します。」等のメッセージを表示させる。
このように本実施形態によれば、ソフトウェアのバージョン情報を管理するサーバが存在しない環境であっても、診断プログラムに対応付けられた禁止条件を用いて、不適切なソフトウェアに更新されることが防止される。
[第2の実施形態]
上記第1の実施形態では、診断プログラムに対応付けられた禁止条件を用いてソフトウェアの更新を禁止するか否かを判定する形態について説明した。第2の実施形態では、診断プログラムにより取得した自装置のデバイス情報を用いてソフトウェアの更新を禁止するか否かを判定する形態について説明する。
上述の図2を参照して、本実施形態に係る画像形成装置10の機能的な構成について、上記第1の実施形態との相違点を説明する。
更新部11Cは、実行部11Bにより実行された診断プログラムが第1ファームウェアから第2ファームウェアへの更新を禁止と判定した場合に、第1ファームウェアから第2ファームウェアへの更新を禁止する。具体的に、第1診断プログラム又は第2診断プログラムは、自装置が備えるデバイスに関する情報であるデバイス情報を取得し、取得したデバイス情報により特定されるデバイスが第2ファームウェアに対応不可能な場合に、第1ファームウェアから第2ファームウェアへの更新を禁止と判定する。このデバイスには、例えば、CPU11、ROM12、及びRAM13が含まれる。このデバイスには、更に、ストレージデバイスの一例である記憶部15、ネットワークデバイスの一例である通信部20が含まれていてもよい。このデバイス情報には、例えば、CPU11のバージョン情報、ROM12、RAM13、記憶部15、及び通信部20のID(Identification)情報が含まれる。ここでいうID情報とは、各デバイス固有の識別情報である。なお、デバイス情報として、デバイスドライバ等のソフトウェアのバージョン情報等を含むようにしてもよい。
これらのデバイス情報を取得する方法としては、例えば、各デバイスのレジスタにアクセスすることにより取得する方法、あるいは、各デバイスと通信することにより取得する方法等が挙げられる。また、デバイス情報により特定されるデバイスがファームウェアに対応するか否かを判定する方法としては、例えば、デバイス情報(バージョン情報、ID情報等)によって特定されるデバイスと、ファームウェアのバージョンとの対応関係を示す対応関係テーブルを、診断プログラムに対応付けて保持しておけばよい。
図9は、第2の実施形態に係る対応関係テーブルの一例を示す図である。
図9に示す対応関係テーブルでは、一例として、CPUのバージョンA1に対して、ファームウェアのバージョンA、Bは対応可、バージョンCは対応不可、が対応関係として登録されている。
また、更新部11Cは、実行部11Bにより実行された診断プログラムが第1ファームウェアから第2ファームウェアへの更新を許可と判定した場合に、第1ファームウェアから第2ファームウェアへの更新を許可する。具体的に、第1診断プログラム又は第2診断プログラムは、取得したデバイス情報により特定されるデバイスが第2ファームウェアに対応可能な場合に、第1ファームウェアから第2ファームウェアへの更新を許可と判定する。この場合、更新部11Cは、第1ファームウェアから第2ファームウェアへの更新を実行する。
次に、図10を参照して、第2の実施形態に係る画像形成装置10の作用を説明する。
図10は、第2の実施形態に係る更新処理プログラム15Aによる処理の流れの一例を示すフローチャートである。
まず、自装置のファームウェアの更新が指示されると、CPU11により更新処理プログラム15Aが起動され、以下の各ステップを実行する。
図10のステップS111では、CPU11が、自装置にインストールされている第1ファームウェアを取得する。第1ファームウェアには第1診断プログラムが付加されている。
ステップS112では、CPU11が、第1ファームウェアの更新対象とする第2ファームウェアを取得する。第2ファームウェアには第2診断プログラムが付加されている。
ステップS113では、CPU11が、第1診断プログラム及び第2診断プログラムの各々のバージョン情報を取得する。
ステップS114では、CPU11が、第1診断プログラム及び第2診断プログラムのうち、バージョンが新しい診断プログラムを特定し、特定した診断プログラムを実行する。なお、第2診断プログラムのバージョンのほうが新しい場合、CPU11は、第2ファームウェアから第2診断プログラムを分離し、分離した第2診断プログラムのみを実行可能なように自装置にインストールする。
ステップS115では、CPU11が、ステップS114で診断プログラムを実行することにより、自装置が備えるデバイスに関するデバイス情報を取得する。
ステップS116では、CPU11が、ステップS115で取得したデバイス情報に基づいて、一例として、上述の図9に示す対応関係テーブルを参照し、自装置にインストールされている第1ファームウェアの更新を許可するか否かを判定する。デバイス情報は、上述したように、例えば、CPU11のバージョン情報、ROM12、RAM13、記憶部15、及び通信部20のID情報を含んでいる。すなわち、デバイス情報により特定されるデバイスが第2ファームウェアに対応可能な場合、更新を許可と判定し、デバイス情報により特定されるデバイスが第2ファームウェアに対応不可能な場合、更新を禁止と判定する。CPU11は、第1ファームウェアの更新が可能と判定した場合(肯定判定の場合)、ステップS117に移行し、第1ファームウェアの更新が禁止と判定した場合(否定判定の場合)、ステップS118に移行する。
ステップS117では、CPU11が、第1ファームウェアから第2ファームウェアへの更新を開始し、本更新処理プログラム15Aによる一連の処理を終了する。
ステップS118では、CPU11が、第1ファームウェアから第2ファームウェアへの更新が禁止であることをユーザに通知し、本更新処理プログラム15Aによる一連の処理を終了する。なお、ユーザへの通知は、例えば、「更新対象のファームウェアは正常に動作しない可能性があるためファームウェアの更新を禁止します。」等のメッセージを表示させる。
このように本実施形態によれば、ソフトウェアのバージョン情報を管理するサーバが存在しない環境であっても、自装置に搭載されたデバイスから取得されるデバイス情報を用いて、不適切なソフトウェアに更新されることが防止される。特に、自装置で診断プログラムを実行させることで、自装置に搭載されたデバイスと通信しデバイスからの応答でデバイス情報が得られる。このため、サーバが存在しない環境でも、不適切なソフトウェアに更新されることが防止される。
なお、上記各実施形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えば、CPU:Central Processing Unit、等)や、専用のプロセッサ(例えば、GPU:Graphics Processing Unit、ASIC: Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。
また、上記各実施形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は、上記各実施形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。
以上、実施形態に係る情報処理装置として画像形成装置を例示して説明した。実施形態は、情報処理装置の機能をコンピュータに実行させるためのプログラムの形態としてもよい。実施形態は、これらのプログラムを記憶したコンピュータが読み取り可能な非一時的記憶媒体の形態としてもよい。
その他、上記実施形態で説明した情報処理装置の構成は、一例であり、主旨を逸脱しない範囲内において状況に応じて変更してもよい。
また、上記実施形態で説明したプログラムの処理の流れも、一例であり、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
また、上記実施形態では、プログラムを実行することにより、実施形態に係る処理がコンピュータを利用してソフトウェア構成により実現される場合について説明したが、これに限らない。実施形態は、例えば、ハードウェア構成や、ハードウェア構成とソフトウェア構成との組み合わせによって実現してもよい。
10 画像形成装置
11 CPU
11A 取得部
11B 実行部
11C 更新部
12 ROM
13 RAM
14 I/O
15 記憶部
15A 更新処理プログラム
16 表示部
17 操作部
18 原稿読取部
19 画像形成部
20 通信部

Claims (11)

  1. プロセッサを備え、
    前記プロセッサは、
    自装置にインストールされている第1ソフトウェアであって、当該第1ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第1診断プログラムが付加された前記第1ソフトウェアを取得し、
    前記第1ソフトウェアの更新対象とする第2ソフトウェアであって、当該第2ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第2診断プログラムが付加された前記第2ソフトウェアを取得し、
    前記第1診断プログラム及び前記第2診断プログラムのうち、バージョンの新しい診断プログラムを実行し、当該診断プログラムが前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定した場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止する
    情報処理装置。
  2. 前記第1診断プログラム又は前記第2診断プログラムは、前記第1ソフトウェアのバージョンと前記第2ソフトウェアのバージョンとの組み合わせが禁止条件を満たす場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定する
    請求項1に記載の情報処理装置。
  3. 前記禁止条件は、前記第1ソフトウェアのバージョンが前記第2ソフトウェアのバージョンの2つ以上前のバージョンであること、又は、前記第2ソフトウェアのバージョンが前記第1ソフトウェアのバージョンの2つ以上前のバージョンであることを含む
    請求項2に記載の情報処理装置。
  4. 前記第1診断プログラム又は前記第2診断プログラムは、前記第1ソフトウェアのバージョンと前記第2ソフトウェアのバージョンとの組み合わせが禁止条件を満たさない場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を許可と判定する
    請求項2又は請求項3に記載の情報処理装置。
  5. 前記第1診断プログラム又は前記第2診断プログラムは、自装置が備えるデバイスに関する情報であるデバイス情報を取得し、取得したデバイス情報により特定されるデバイスが前記第2ソフトウェアに対応不可能な場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定する
    請求項1に記載の情報処理装置。
  6. 前記第1診断プログラム又は前記第2診断プログラムは、自装置が備えるデバイスに関する情報であるデバイス情報を取得し、取得したデバイス情報により特定されるデバイスが前記第2ソフトウェアに対応可能な場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を許可と判定する
    請求項5に記載の情報処理装置。
  7. 前記プロセッサと接続されたメモリを更に備え、
    前記デバイスは、前記プロセッサ及び前記メモリを含む
    請求項5又は請求項6に記載の情報処理装置。
  8. 前記デバイス情報は、前記プロセッサのバージョン情報、及び、前記メモリのID情報を含む
    請求項7に記載の情報処理装置。
  9. 前記第1ソフトウェア及び前記第2ソフトウェアの各々は、自装置の動作を制御するファームウェアである
    請求項1~請求項8の何れか1項に記載の情報処理装置。
  10. 前記プロセッサは、前記第2ソフトウェアから前記第2診断プログラムを分離し、分離した第2診断プログラムのみを実行可能なように自装置にインストールする
    請求項1~請求項9の何れか1項に記載の情報処理装置。
  11. 自装置にインストールされている第1ソフトウェアであって、当該第1ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第1診断プログラムが付加された前記第1ソフトウェアを取得し、
    前記第1ソフトウェアの更新対象とする第2ソフトウェアであって、当該第2ソフトウェアのバージョン及び当該バージョンよりも古いバージョンのソフトウェアへの更新を禁止するか否かを判定するための第2診断プログラムが付加された前記第2ソフトウェアを取得し、
    前記第1診断プログラム及び前記第2診断プログラムのうち、バージョンの新しい診断プログラムを実行し、当該診断プログラムが前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止と判定した場合に、前記第1ソフトウェアから前記第2ソフトウェアへの更新を禁止することを、
    コンピュータに実行させるための情報処理プログラム。
JP2021141772A 2021-08-31 2021-08-31 情報処理装置及び情報処理プログラム Pending JP2023035144A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021141772A JP2023035144A (ja) 2021-08-31 2021-08-31 情報処理装置及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021141772A JP2023035144A (ja) 2021-08-31 2021-08-31 情報処理装置及び情報処理プログラム

Publications (1)

Publication Number Publication Date
JP2023035144A true JP2023035144A (ja) 2023-03-13

Family

ID=85504520

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021141772A Pending JP2023035144A (ja) 2021-08-31 2021-08-31 情報処理装置及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP2023035144A (ja)

Similar Documents

Publication Publication Date Title
JP5545038B2 (ja) 情報処理装置
EP2879051B1 (en) An electronic device including a MTD used temporarily during non-volatile memory file system update
JP5239755B2 (ja) 情報処理装置、インストール方法、プログラム、記憶媒体
JP2007293737A (ja) ソフトウェア資源の登録管理方法、電子機器、プログラム
US9600751B2 (en) Image forming apparatus and control method thereof with a determination whether an application relates to a dynamic update for reflecting change of the network setting without rebooting the apparatus
US9569600B2 (en) Information processing apparatus with license information management
US20210258442A1 (en) Information processing apparatus and non-transitory computer readable medium
JP2023035144A (ja) 情報処理装置及び情報処理プログラム
US10438021B2 (en) Device and control method
JP2015055927A (ja) 機器管理装置、機器管理システム、機器管理方法、及びプログラム
JP4463061B2 (ja) 電子機器のファームウェア管理装置及び管理方法
JP2007148629A (ja) プリントシステム及びファームウェア更新方法
JP2006268643A (ja) プログラム、情報処理装置および印刷システム
JP2007066132A (ja) プログラムシステム
EP2230598A2 (en) Information processing apparatus, information processing method, and information processing program
JP7154945B2 (ja) 画像形成装置及び画面設定方法
WO2020110767A1 (ja) 情報処理装置、サーバ装置、制御方法、制御プログラム
JP2006178881A (ja) ソフトウェア管理システム及びソフトウェア管理方法
JP4491660B2 (ja) 画像形成装置
JP2006129362A (ja) デジタル複合機
JP2019160133A (ja) 情報処理装置、情報処理システムおよび方法
US20230185553A1 (en) Information processing apparatus, control method of information processing apparatus, and storage medium
US20230300268A1 (en) Information processing apparatus, image forming apparatus, and method of installing an application program therefor
JP7375643B2 (ja) 車載情報処理装置、制御方法及びコンピュータプログラム
JP7367434B2 (ja) 電子機器、電子機器の制御方法および電子機器の制御プログラム