IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社リコーの特許一覧

特許7480494情報処理装置、情報処理システム及び情報処理方法
<>
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図1
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図2
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図3
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図4
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図5
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図6
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図7
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図8
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図9
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図10
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図11
  • 特許-情報処理装置、情報処理システム及び情報処理方法 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-30
(45)【発行日】2024-05-10
(54)【発明の名称】情報処理装置、情報処理システム及び情報処理方法
(51)【国際特許分類】
   G06F 8/65 20180101AFI20240501BHJP
   H04N 1/00 20060101ALI20240501BHJP
【FI】
G06F8/65
H04N1/00 127B
【請求項の数】 6
(21)【出願番号】P 2019200146
(22)【出願日】2019-11-01
(65)【公開番号】P2021072054
(43)【公開日】2021-05-06
【審査請求日】2022-09-14
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】志賀 洋介
【審査官】渡辺 順哉
(56)【参考文献】
【文献】特開2013-011982(JP,A)
【文献】特開2017-037673(JP,A)
【文献】特開2016-218932(JP,A)
【文献】特開2015-094984(JP,A)
【文献】国際公開第2017/154263(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/60-8/77
G06F 9/44-9/445
H04N 1/00
H04L 67/00
(57)【特許請求の範囲】
【請求項1】
情報処理装置であって、
当該情報処理装置の動作の停止の指示が入力される前に、当該情報処理装置に処理を実行させるプログラムの更新用のデータを、ネットワークを介して接続される他の装置から取得する取得部と、
当該情報処理装置の動作の停止の指示が入力されると、前記取得部によって取得されたデータに対して重要性を示す情報が付加されている場合に、当該データに基づいて前記プログラムを更新する処理に移行する更新部と、
当該情報処理装置の動作の停止の指示が入力されると、前記取得部によって取得されたデータに対して前記重要性を示す情報が付加されていない場合に、当該データに基づく前記プログラムの更新の要否をユーザに選択させる画面を表示させる表示制御部と、
を有することを特徴とする情報処理装置。
【請求項2】
前記更新部は、当該情報処理装置の動作の停止の指示が入力されると、前記取得部によって取得されたデータに対して前記重要性を示す情報が付加されている場合であって、当該データによって前記プログラムが更新されていない場合は、ユーザに対して問い合わせることなく当該データに基づいて前記プログラムを更新する、
ことを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記更新部は、前記取得部によって取得されたデータに対して前記重要性を示す情報が付加されていない場合に、前記他の装置から取得可能な前記プログラムの更新用のデータのバージョン情報を取得し、
前記表示制御部は、前記取得部によって取得されたデータのバージョン情報と、前記更新部によって取得されたバージョン情報とを含む前記画面を表示させる、
ことを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
前記取得部は、当該取得部が取得したデータのバージョン情報と、前記更新部によって取得されたバージョンが異なる場合であって、前記画面において前記プログラムを更新しないことが選択された後で当該情報処理装置の起動された場合に、前記他の装置から前記更新用のデータを取得する、
ことを特徴とする請求項1乃至3いずれか一項記載の情報処理装置。
【請求項5】
情報処理装置と他の装置とを含む情報処理システムであって、
前記情報処理装置は、
当該情報処理装置の動作の停止の指示が入力される前に、当該情報処理装置に処理を実行させるプログラムの更新用のデータを、ネットワークを介して接続される他の装置から取得する取得部と、
当該情報処理装置の動作の停止の指示が入力されると、前記取得部によって取得されたデータに対して重要性を示す情報が付加されている場合に、当該データに基づいて前記プログラムを更新する処理に移行する更新部と、
当該情報処理装置の動作の停止の指示が入力されると、前記取得部によって取得されたデータに対して前記重要性を示す情報が付加されていない場合に、当該データに基づく前記プログラムの更新の要否をユーザに選択させる画面を表示させる表示制御部と、
を有することを特徴とする情報処理システム。
【請求項6】
情報処理装置が、
当該情報処理装置の動作の停止の指示が入力される前に、当該情報処理装置に処理を実行させるプログラムの更新用のデータを、ネットワークを介して接続される他の装置から取得する取得手順と、
当該情報処理装置の動作の停止の指示が入力されると、前記取得手順において取得されたデータに対して重要性を示す情報が付加されている場合に、当該データに基づいて前記プログラムを更新する処理に移行する更新手順と、
当該情報処理装置の動作の停止の指示が入力されると、前記取得手順において取得されたデータに対して前記重要性を示す情報が付加されていない場合に、当該データに基づく前記プログラムの更新の要否をユーザに選択させる画面を表示させる表示制御手順と、
を実行することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム及び情報処理方法に関する。
【背景技術】
【0002】
従来、自らにインストールされているプログラムについて、定期的にバージョンアップの有無をネットワークを介して確認し、バージョンアップされている場合には、最新版をダウンロードして自動的にアップデート(更新)する情報処理装置が有る。
【発明の概要】
【発明が解決しようとする課題】
【0003】
自動的なアップデートは、情報処理装置が稼働中の状態(電源がONの状態)において実行されるところ、稼働中においては、ユーザによって情報処理装置が利用されている可能性が高い。情報処理装置がユーザによって利用されている期間においてアップデートが行われると、ユーザによる情報処理装置の利用について、利便性が低下してしまう。例えば、アップデート対象のプログラムに関連する機能が利用できなくなったり、アップデートの負荷により情報処理装置の動作が遅くなったりする。また、アップデートの内容によっては、ユーザの利用中にも関わらず、情報処理装置の再起動が必要とされる場合も有る。
【0004】
そこで、ユーザの利用中には自動的なアップデートを行わないようにすることが考えられる。しかし、起動(電源がOFF)されてから停止する(電源がOFFされる)までに、ユーザによる利用が継続する場合、アップロードする機会が失われ、プログラムのアップデートの遅延が長期化してしまう可能性が有る。
【0005】
本発明は、上記の点に鑑みてなされたものであって、プログラムの更新の遅延の長期化を抑制することを目的とする。
【課題を解決するための手段】
【0006】
そこで上記課題を解決するため、情報処理装置は、当該情報処理装置の動作の停止の指示が入力される前に、当該情報処理装置に処理を実行させるプログラムの更新用のデータを、ネットワークを介して接続される他の装置から取得する取得部と、当該情報処理装置の動作の停止の指示が入力されると、前記取得部によって取得されたデータに対して重要性を示す情報が付加されている場合に、当該データに基づいて前記プログラムを更新する処理に移行する更新部と、当該情報処理装置の動作の停止の指示が入力されると、前記取得部によって取得されたデータに対して前記重要性を示す情報が付加されていない場合に、当該データに基づく前記プログラムの更新の要否をユーザに選択させる画面を表示させる表示制御部と、を有する。
【発明の効果】
【0007】
プログラムの更新の遅延の長期化を抑制することができる。
【図面の簡単な説明】
【0008】
図1】第1の実施の形態における情報処理システム1の構成例を示す図である。
図2】第1の実施の形態における情報処理装置10のハードウェア構成例を示す図である。
図3】第1の実施の形態における情報処理装置10の機能構成例を示す図である。
図4】ファームウェアパッケージの構成例を示す図である。
図5】ファームウェアリストの構成例を示す図である。
図6】第1の実施の形態における情報処理装置10が稼働中に実行する処理手順の一例を説明するためのシーケンス図である。
図7】第1の実施の形態における情報処理装置10が主電源のOFFに応じて実行する処理手順の一例を説明するためのシーケンス図である。
図8】取得済みファームウェアパッケージの優先度の判定処理の処理手順の一例を説明するためのフローチャートである。
図9】ファームウェアパッケージのアップデート処理の処理手順の一例を説明するためのフローチャートである。
図10】第2の実施の形態における情報処理装置10が主電源のOFFに応じて実行する処理手順の一例を説明するためのシーケンス図である。
図11】アップデート確認画面の表示例を示す図である。
図12】第3の実施の形態における情報処理装置10が主電源のONに応じて実行する処理手順の一例を説明するためのシーケンス図である。
【発明を実施するための形態】
【0009】
以下、図面に基づいて本発明の実施の形態を説明する。図1は、第1の実施の形態における情報処理システム1の構成例を示す図である。図1において、情報処理システム1は、情報処理装置10及び公開サーバ20を含む。情報処理装置10と公開サーバ20とは、LAN(Local Area Network)又はインターネット等のネットワーク(有線又は無線の別は問わない)を介して接続される。なお、複数の情報処理装置10が公開サーバ20に接続されてもよい。
【0010】
公開サーバ20は、情報処理装置10の処理を実行させるプログラム群の最新版のバージョンを公開する1以上のコンピュータである。本実施の形態では、説明の便宜上、公開サーバ20によって公開されるプログラムは、情報処理装置10のファームウェアであるとする。なお、プログラム群の公開とは、プログラム群を取得可能(プログラム群にアクセス可能)な状態にすることをいう。
【0011】
情報処理装置10は、例えば、プリンタ又は複合機等の画像形成装置である。情報処理装置10は、公開サーバ20によって公開されるプログラム(ファームウェア)を自動的に取得(ダウンロード)して、当該プログラムについてアップデートを行う。当該プログラムのアップデートとは、当該プログラムによって当該情報処理装置10を更新すること、すなわち、当該プログラムを当該情報処理装置10において有効化することをいう。したがって、アップデート後において、当該プログラムが当該情報処理装置10の一部の処理を制御させることになる。なお、本実施の形態では、アップデートを一例するが、新たなプログラムのインストールについて本実施の形態が適用されてもよい。インストールされることで、当該プログラムは、情報処理装置10において有効化される。すなわち、アップデートもインストールも有効化(情報処理装置10の更新)の一例である。
【0012】
図2は、第1の実施の形態における情報処理装置10のハードウェア構成例を示す図である。図2の情報処理装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。
【0013】
情報処理装置10での処理を実現するプログラムは、CD-ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【0014】
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って情報処理装置10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107は様々な操作指示を入力させるために用いられる。なお、表示装置106及び入力装置107は、操作パネルとして一体的に形成されてもよい。
【0015】
図3は、第1の実施の形態における情報処理装置10の機能構成例を示す図である。図3において、情報処理装置10は、表示制御部11、更新部12、取得部13及びタイマー制御部14等を有する。これら各部は、情報処理装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。情報処理装置10は、また、ファームウェア記憶部15を利用する。ファームウェア記憶部15は、例えば、補助記憶装置102、又は情報処理装置10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【0016】
表示制御部11は、表示装置106への画面の表示に関する制御や、当該画面又は入力装置107を介したユーザによる入力に応じた処理の制御を行う。
【0017】
更新部12は、情報処理装置10におけるファームウェアパッケージのアップデートに関する処理を制御する。取得部13は、公開サーバ20において公開されているファームウェアパッケージのバージョン情報やファームウェアパッケージの実体の取得等を行う。タイマー制御部14は、設定された時間の経過を計測する。なお、バージョン情報とは、ファームウェアパッケージのバージョンを示す情報をいう。ファームウェアパッケージとは、1以上のファームウェアの集合のパッケージ(例えば、書庫ファイル)をいう。
【0018】
図4は、ファームウェアパッケージの構成例を示す図である。図4に示されるように、本実施の形態において、1つのファームウェアパッケージは、ファームウェアリスト、及び1以上のファームウェアとしてのプログラムの実体(図4における、ファームウェアA、ファームウェアB、ファームウェアC、・・・等)を含む。
【0019】
ファームウェアリストは、ファームウェアパッケージに関する属性情報を含むデータ又はファイルである。
【0020】
図5は、ファームウェアリストの構成例を示す図である。図5の(1)及び(2)には、相互にバージョンが異なる2つのファームウェアパッケージのファームウェアリストが含まれている。したがって、(1)及び(2)に示されるファームウェアリストの基本的な構造は同じである。
【0021】
図5に示されるように、ファームウェアリストは、パッケージ情報及びファームウェア群情報を含む。
【0022】
パッケージ情報は、ファームウェアパッケージに関する情報であり、パッケージID及びパッケージバージョンを含む。パッケージIDは、ファームウェアパッケージの種別に関する識別情報であり、その値はバージョンが変化しても不変である。ファームウェアパッケージの種別とは、ファームウェアパッケージを構成するファームウェアの種類の異同によって区別される。なお、図5の(1)及び(2)は、同じ種別のファームウェアパッケージのファームウェアリストであるため、それぞれのパッケージ情報のパッケージIDは同じである。パッケージバージョンは、ファームウェアパッケージのバージョン情報である。ファームウェアパッケージのバージョン情報は、ファームウェアパッケージを構成するいずれかのファームウェアが更新された場合に更新される。
【0023】
ファームウェア群情報は、ファームウェアパッケージに含まれるファームウェアごとに当該ファームウェアの属性情報(ファームウェア情報)を含む。各ファームウェア情報は、ファームウェアID及びファームウェア情報を含む。ファームウェアIDは、ファームウェアの種別に関する識別情報であり、その値はバージョンが変化しても不変である。ファームウェアバージョンは、ファームウェアのバージョン情報である。また、優先度が高いファームウェアのファームウェア情報には、優先度高IDが含まれる。優先度高IDとは、当該バージョンにおいて重要性の高い(優先度の高い)修正(バージョンアップ)が行われたことを示すために付加される情報であると共に、当該修正の識別情報である。したがって、重要性の高い複数の修正(バージョンアップ)が過去に行われたファームウェアのファームウェア情報には、複数の優先度高IDが含まれる。例えば、図5において、(1)のファームウェアA情報には、1つの優先度高IDが含まれているが、(2)のファームウェアA情報には、2つの優先度高IDが含まれている。2つの優先度高IDのうち、「bb」については、ファームウェアAのファームウェアバージョン1.01において行われた修正に対する識別情報である。なお、重要性が高い(優先度が高い)とは、できるだけ早期に情報処理装置10に反映される(情報処理装置10において有効化される)必要が有ることをいう。
【0024】
以下、情報処理装置10が実行する処理手順について説明する。図6は、第1の実施の形態における情報処理装置10が稼働中に実行する処理手順の一例を説明するためのシーケンス図である。
【0025】
例えば、タイマー制御部14が、予め情報処理装置10に設定されているアップデート間隔に基づく自動アップデートの開始日時の到来を検知すると(S101)、更新部12は、ファームウェア記憶部15を参照して、公開サーバ20から既に取得済みのファームウェアパッケージの更新用データ(以下、「取得済みファームウェアパッケージ」という。)のバージョン情報(パッケージバージョン)を確認する(S102,S103)。すなわち、図6の処理手順は、アップデート間隔に基づいて定期的に行われてもよい。なお、ファームウェア記憶部15には、公開サーバ20から最後に取得されたファームウェアパッケージが記憶されている。
【0026】
続いて、更新部12は、公開サーバ20において公開されている、情報処理装置10のファームウェアパッケージの更新用のデータの最新バージョン(すなわち、最新のファームウェア、以下、「公開ファームウェアパッケージ」という。)のバージョン情報(パッケージバージョン)の確認を取得部13に要求する(S104)。更新部12からの要求に応じ、取得部13が公開ファームウェアパッケージのバージョン情報の問い合わせ要求を公開サーバ20へ送信すると(S105)、公開サーバ20は、公開ファームウェアパッケージのバージョン情報を含む応答を返信する(S106)。取得部13は、当該応答を受信すると、当該応答に含まれているバージョン情報を更新部12に応答する(S107)。
【0027】
続いて、更新部12は、取得済みファームウェアパッケージのバージョン情報(パッケージバージョン)と、公開ファームウェアパッケージのバージョン情報(パッケージバージョン)とを比較する(S108)。両者のバージョン情報が一致する場合、ステップS109~S105は実行されずにステップS116へ進む。
【0028】
両者のバージョン情報が異なる場合(取得済みファームウェアパッケージが無い場合も含む)、更新部12は、公開ファームウェアパッケージのダウンロード(取得)を取得部13に要求する(S109)。更新部12からの要求に応じ、取得部13は、公開ファームウェアパッケージを公開サーバ20からダウンロード(取得)する(S110、S111)。続いて、取得部13は、ダウンロード(取得)した公開ファームウェアパッケージを更新部12へ応答する(S112)。更新部12は、公開ファームウェアパッケージをファームウェア記憶部15に記憶する(S113~S115)。この際、取得済みファームウェアパッケージがファームウェア記憶部15に記憶されている場合、取得済みファームウェアパッケージは公開ファームウェアパッケージによって上書きされる。その結果、以降において、当該公開ファームウェアパッケージは、取得済みファームウェアパッケージとなる。
【0029】
続いて、更新部12は、ファームウェアパッケージのアップデートの実行の可否について判定する(S116)。更新部12は、例えば、情報処理装置10の状態等が、アップデートを実行できない条件(以下、「更新不可条件」という。)に該当する場合には、アップデートの実行が不可であると判定し、情報処理装置10の状態が更新不可条件に該当しない場合には、アップデートの実行が可能であると判定する。なお、更新不可条件としては、ユーザが情報処理装置10を使用中(操作中)であることや、ユーザが設定した更新禁止条件(例えば、標準勤務時間は更新禁止等)等が一例として挙げられる。
【0030】
更新不可条件に該当する場合、更新部12は、アップデートを実行しない。一方、更新不可条件に該当しない場合、更新部12は、ファームウェア記憶部15に記憶されている取得済みファームウェアパッケージに基づいて情報処理装置10のファームウェアのアップデートを実行(更新する処理に移行)し(S117)、情報処理装置10を再起動する(S118)。なお、アップデートの実行に応じ、取得済みファームウェアパッケージはファームウェア記憶部15から削除される。
【0031】
ところで、図6の処理手順のみによってファームウェアのアップデートが実行される場合、ユーザが勤務時間を全て更新禁止期間に設定し、かつ、勤務時間以外は常に情報処理装置10の主電源をOFFする場合、ファームウェアが最新の状態に更新される可能性が低くなる。そこで、本実施の形態の情報処理装置10は、主電源のOFFに応じて(動作の停止指示の入力に応じて)、図7に示す処理手順を実行する。
【0032】
図7は、第1の実施の形態における情報処理装置10が主電源のOFFに応じて実行する処理手順の一例を説明するためのシーケンス図である。
【0033】
表示制御部11は、ユーザによって主電源をOFFにする操作が行われたことを検知すると(S121)、シャットダウン要求を更新部12に送信する(S122)。
【0034】
シャットダウン要求に応じ、更新部12は、ファームウェア記憶部15を参照して、取得済みファームウェアパッケージの有無を確認する(S123、S124)。すなわち、取得済みファームウェアパッケージがファームウェア記憶部15に記憶されているか否かが確認される。
【0035】
取得済みファームウェアパッケージが無い場合、更新部12は、情報処理装置10をシャットダウンする(S190)。
【0036】
一方、取得済みファームウェアパッケージが有る場合、更新部12は、取得済みファームウェアパッケージの優先度の判定処理を実行する(S125)。その結果、取得済みファームウェアパッケージについて、優先度が高いか低いかについての判定結果が得られる。
【0037】
取得済みファームウェアパッケージの優先度が高いと判定された場合、更新部12は、情報処理装置10のファームウェアについて、ファームウェア記憶部15に記憶されている取得済みファームウェアパッケージに基づくアップデートを実行して(S126)、情報処理装置10をシャットダウンする(S190)。
【0038】
続いて、図7のステップS125の詳細について説明する。図8は、取得済みファームウェアパッケージの優先度の判定処理の処理手順の一例を説明するためのフローチャートである。図8において処理対象のファームウェアパッケージを、以下「対象パッケージ」という。
【0039】
ステップS201において、更新部12は、対象パッケージの優先度を「低」に初期化する。「低」は、「高」又は「低」のうち、相対的に低い優先度を示す。
【0040】
続いて、更新部12は、対象ファームウェアのファームウェアリストに、未処理のファームウェアのファームウェア情報が有るか否かを判定する(S202)。未処理とは、ステップS203以降について処理対象とされていないことをいう。未処理のファームウェア情報が無い場合(S202でNo)、図8の処理手順は終了する。
【0041】
未処理のファームウェア情報が有る場合(S202でYes)、更新部12は、未処理のファームウェア情報のうちの1つのファームウェア情報(例えば、ファームウェアリストにおいて未処理のファームウェア情報のうちの先頭のファームウェア情報(以下、「対象ファームウェア情報」という。))について、優先度高IDが含まれているか否かを判定する(S203)。対象ファームウェア情報に優先度高IDが含まれていない場合(S203でNo)、ステップS202へ戻る。
【0042】
対象ファームウェア情報に優先度高IDが含まれている場合(S203でYes)、更新部12は、対象ファームウェア情報に含まれている優先度高IDのうち、情報処理装置10のメモリ装置103を構成するROMに記録されていない優先度高IDが有るか否かを判定する(S204)。後述されるように、或るファームウェア情報に係るファームウェアがインストール(アップデート)された場合、当該ファームウェアに係る優先度高IDが情報処理装置10のROMに記録される。したがって、ステップS204では、実質的に、対象ファームウェア情報に係るファームウェアにアップデート済みであるか否かが判定される。対象ファームウェア情報に含まれている全ての優先度高IDが情報処理装置10のROMに記録されている場合(S204でNo)、ステップS202へ戻る。
【0043】
対象ファームウェア情報に含まれている優先度高IDのうち、情報処理装置10のROMに記録されていない優先度高IDが有る場合(S204でYes)、更新部12は、対象パッケージの優先度を「高」に更新し、図8の処理手順を終了する。
【0044】
続いて、図7のステップS126の詳細について説明する。図9は、ファームウェアパッケージのアップデート処理の処理手順の一例を説明するためのフローチャートである。図9において処理対象のファームウェアパッケージを、以下「対象パッケージ」という。
【0045】
ステップS301において、更新部12は、対象ファームウェアのファームウェアリストに、未処理のファームウェアのファームウェア情報が有るか否かを判定する。未処理とは、ステップS302以降について処理対象とされていないことをいう。未処理のファームウェア情報が無い場合(S301でNo)、図9の処理手順は終了する。
【0046】
未処理のファームウェア情報が有る場合(S301でYes)、更新部12は、未処理のファームウェア情報のうちの1つのファームウェア情報(例えば、ファームウェアリストにおいて未処理のファームウェア情報のうち先頭のファームウェア情報(以下、「対象ファームウェア情報」という。))に係るファームウェアを情報処理装置10にインストールすることで、当該ファームウェアをアップデート(すなわち、当該ファームウェアを情報処理装置10において有効化)する(S302)。
【0047】
当該ファームウェアのアップデートに成功すると、更新部12は、対象ファームウェア情報に含まれている優先度高IDのうち、ROMに記録されていない優先度高IDをROMに記録して(S303)、ステップS301へ戻る。
【0048】
上述したように、第1の実施の形態によれば、自動的なアップデートが実行される予定の図6のステップS116のタイミングにおいてアップデートが実行されないまま情報処理装置10の主電源がOFFにされる場合であっても、主電源がOFFにされる前において優先度の高いファームウェアを含むファームウェアパッケージがダウンロードされていればアップデートが実行される。おいて最新版のファームウェアがダウンロードされていればアップデートが実行される。例えば、ユーザが勤務時間を全て更新禁止期間に設定し、かつ、勤務時間以外は常に主電源をOFFするように情報処理装置10を使用している場合であっても、情報処理装置10の主電源のOFFのタイミングでアップデートが実行される。したがって、ファームウェア(プログラム)の更新の遅延の長期化を抑制することができる。
【0049】
次に、第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。したがって、特に言及されない点については、第1の実施の形態と同様でもよい。
【0050】
図10は、第2の実施の形態における情報処理装置10が主電源のOFFに応じて実行する処理手順の一例を説明するためのシーケンス図である。図10中、図7と同一ステップには同一ステップ番号を付し、その説明は省略する。すなわち、第2の実施の形態では、図7の処理手順が図10に置き換えられる。
【0051】
図10では、ステップS125において優先度が低いと判定された場合(すなわち、取得済みファームウェアパッケージに優先度高IDが付加されているファームウェアが含まれていない場合、又は取得済みファームウェアパッケージに優先度高IDが付加されているファームウェアが含まれているが、当該ファームウェアがアップデート済みである場合)の処理手順が図7と異なる。
【0052】
ステップS125において優先度が低いと判定された場合、更新部12は、公開サーバ20における公開ファームウェアパッケージのバージョン情報(パッケージバージョン)の確認を取得部13に要求する(S131)。更新部12からの要求に応じ、取得部13が公開ファームウェアパッケージのバージョン情報の問い合わせ要求を公開サーバ20へ送信すると(S132)、公開サーバ20は、公開ファームウェアパッケージのバージョン情報(パッケージバージョン)を含む応答を返信する(S133)。取得部13は、当該応答を受信すると、当該応答に含まれているバージョン情報を更新部12に応答する(S134)。
【0053】
続いて、更新部12は、アップデートの要否をユーザに確認するためのアップデート確認画面の表示を表示制御部11に要求する(S135)。更新部12からの要求に応じ、表示制御部11は、アップデート確認画面を表示する(S136)。
【0054】
図11は、アップデート確認画面の表示例を示す図である。図11において、アップデート確認画面510は、メッセージ511、ボタン512、ボタン513及びチェックボタン514等を含む。
【0055】
メッセージ511は、アップデートの要否の問い合わせと、取得済みファームウェアパッケージ及び公開ファームウェアパッケージのそれぞれのパッケージバージョンとを含むメッセージである。
【0056】
ボタン512は、アップデートの実行指示を受け付けるためのボタンである。ボタン513は、アップデートを実行しない指示を受け付けるためのボタンである。チェックボタン514は、アップデートを実行しない場合に、以降におけるアップデート確認画面510の表示を要否の指示をユーザから受け付けるためのチェックボタンである。
【0057】
アップデート確認画面510に対してユーザによる入力が行われ、当該入力がアップデートの実行指示である場合、更新部12は、情報処理装置10のファームウェアについて、ファームウェア記憶部15に記憶されている取得済みファームウェアパッケージに基づくアップデートを実行して(S138)、情報処理装置10をシャットダウンする(S190)。
【0058】
一方、当該入力がアップデートを実行しない指示である場合、更新部12は、アップデート確認画面510のチェックボタン514がチェックされていれば、現在の取得済みファームウェアパッケージに関しては、以降においてアップデート確認画面510を表示しないことを示す設定情報を、例えば、補助記憶装置へ記憶して(S139)、情報処理装置10をシャットダウンする(S190)。当該設定情報は、例えば、取得済みファームウェアパッケージのパッケージバージョンと、最新バージョン(公開ファームウェアパッケージのパッケージバージョン)と、アップデート確認画面510を表示しないことを示す情報とを含む情報であってもよい。ステップS139が実行された場合、以降においてステップS125において優先度が低いと判定されると、当該設定情報における取得済みパッケージバージョンと、その時にファームウェア記憶部15に記憶されている取得済みファームウェアパッケージのパッケージバージョンとが異なる場合に限って、ステップS131以降が実行される。
【0059】
上述したように、第2の実施の形態によれば、優先度が高い修正が行われていない場合であっても、ユーザに確認した上で、ファームウェアのバージョンアップを行うことができる。
【0060】
また、最新でないため更新せずにシャットダウンすることをユーザが選択した場合、今後も最新でない場合は更新したくないと予想される。このケースで毎回アップデート確認画面510が表示されるとユーザビリティが低下する可能性が有るが、第2の実施の形態では斯かる可能性を低下させることができる。
【0061】
次に、第3の実施の形態について説明する。第3の実施の形態では第2の実施の形態と異なる点について説明する。したがって、特に言及されない点については、第2の実施の形態と同様でもよい。
【0062】
図12は、第3の実施の形態における情報処理装置10が主電源のONに応じて実行する処理手順の一例を説明するためのシーケンス図である。第3の実施の形態では、主電源のONの際に図12に示す処理手順が追加される。
【0063】
ユーザによって主電源がONにされると(S401)、更新部12は、取得済みファームウェアパッケージが最新でなく、かつ、最後に表示されたアップデート確認画面510において更新しないが選択されたか(すなわち、ボタン513が選択されたか)否かを判定する(S402)。斯かる判定は、アップデート確認画面510が表示され、ボタン513押下された場合に、アップデート確認画面510のメッセージ511に含まれている、取得済みファームウェアパッケージのパッケージバージョン及び最新バージョンと、ボタン513が押下されたことを示す情報とを含む情報を、補助記憶装置102に記録しておくことで行うことができる。
【0064】
取得済みファームウェアパッケージが最新でない、かつ、更新しないが選択された場合、図7のステップS123及びS124と同じ処理が実行されて、取得済みファームウェアパッケージの有無が確認される。取得済みファームウェアパッケージが有る場合には、図6のステップS104~S115と同じ処理が実行されて、取得済みファームウェアパッケージと公開ファームウェアパッケージとのパッケージバージョンが異なる場合に、公開ファームウェアパッケージがダウンロードされて、取得済みファームウェアパッケージが公開ファームウェアパッケージによって上書きされてファームウェア記憶部に記憶される(S403~S416)。
【0065】
上述したように、第3の実施の形態によれば、取得済みファームウェアパッケージが最新でなく、かつ、最後に表示されたアップデート確認画面510において更新しないが選択された場合において、情報処理装置10の起動時に、取得済みファームウェアパッケージを最新のバージョンに更新することができる。
【0066】
なお、上記各実施の形態において、情報処理装置10は、通信機能を備えた装置であれば、画像形成装置に限られない。情報処理装置10は、例えば、PJ(Projector:プロジェクタ)、IWB(Interactive White Board:相互通信が可能な電子式の黒板機能を有する白板)、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、ノートPC(Personal Computer)、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPCまたはデスクトップPC等であってもよい。
【0067】
なお、上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
【0068】
なお、上記各実施の形態において、公開サーバ20は、他の装置の一例である。
【0069】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0070】
10 情報処理装置
11 表示制御部
12 更新部
13 取得部
14 タイマー制御部
15 ファームウェア記憶部
20 公開サーバ
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
106 表示装置
107 入力装置
B バス
【先行技術文献】
【特許文献】
【0071】
【文献】特開2006-252094号公報
【文献】特開2016-197380号公報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12