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

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

Info

Publication number
JP7047268B2
JP7047268B2 JP2017134897A JP2017134897A JP7047268B2 JP 7047268 B2 JP7047268 B2 JP 7047268B2 JP 2017134897 A JP2017134897 A JP 2017134897A JP 2017134897 A JP2017134897 A JP 2017134897A JP 7047268 B2 JP7047268 B2 JP 7047268B2
Authority
JP
Japan
Prior art keywords
image
software
updated
difference data
image 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.)
Active
Application number
JP2017134897A
Other languages
English (en)
Other versions
JP2019016295A (ja
Inventor
篤 竹下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2017134897A priority Critical patent/JP7047268B2/ja
Publication of JP2019016295A publication Critical patent/JP2019016295A/ja
Application granted granted Critical
Publication of JP7047268B2 publication Critical patent/JP7047268B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、情報処理装置及びプログラムに関する。
例えば、特許文献1には、第1のプログラムと、第1のプログラムと協働する第2のプログラムとを実行してデータ処理を行うデータ処理装置であって、保存手段に保存された情報と、特定される更新プログラムに基づいて更新される第1のプログラムまたは第2のプログラムに関わる情報とが、整合すると判断した場合は、更新すべき更新プログラムを取得し、整合しないと判断した場合は、保存手段に保存された情報を消去した後、更新すべき更新プログラムを取得し、取得した更新プログラムに基づいて、第1のプログラムまたは第2のプログラムを更新するデータ処理装置が開示されている。
また、例えば、特許文献2には、第1の起動処理中の所定の処理時点までに生成されたデータ(22)と、前記所定の処理時点後の第1の起動処理に使用されたプログラムデータ(31)とを含むイメージ(32)を第1の記憶媒体に記憶させる記憶制御手段と、前記第1の起動処理完了後に第2の起動処理を実行するとき、前記第1の記憶媒体に記憶された前記イメージ(32)に基づいて、前記所定の処理時点から起動処理を開始する起動処理制御手段と、を具備する電子機器が開示されている。
特開2013-218510号公報 特開2015-39058号公報
例えばハイバネーションの機能を利用して、自装置の状態を複製した複製データを記憶しておき、記憶した複製データを使用して高速に起動する技術が知られている。このように、記憶した複製データを使用して自装置を起動する場合、例えば、ソフトウェアを更新すると、複製データを記憶した時点の自装置の状態との不整合が生じてしまい、正常に起動されない場合がある。このような場合に通常の起動(コールドブート)を行うと、記憶した複製データを使用して起動する場合よりも起動時間が長くなってしまう。
本発明の目的は、自装置の状態を複製した複製データを記憶した後にソフトウェアを更新した場合に、記憶した複製データを用いる代わりに通常起動を行う構成と比較して、起動時間を短縮することにある。
請求項1に記載の発明は、自装置の起動手順に含まれる起動ステップ毎に、当該起動ステップが実行される前の自装置の状態を複製した複製データと当該起動ステップが実行された後の自装置の状態を複製した複製データとの差分データを記憶する記憶手段と、特定のソフトウェアが更新された後に前記起動手順で自装置を起動する場合に、当該起動手順に含まれる起動ステップに対応する差分データのうち、更新された当該ソフトウェアに関連する差分データを除く残りの差分データを前記記憶手段から読み出して自装置を起動した後、差分データを用いずに当該ソフトウェアを起動する起動手段とを備える情報処理装置である。
請求項2に記載の発明は、前記記憶手段は、前記起動手段により更新された前記ソフトウェアが起動された後、更新された当該ソフトウェアに関連する差分データを新たに記憶し、前記起動手段は、更新された前記ソフトウェアに関連する差分データを前記記憶手段が新たに記憶した後に前記起動手順で自装置を起動する場合、前記残りの差分データと新たに記憶された当該ソフトウェアに関連する差分データとを当該記憶手段から読み出して自装置を起動することを特徴とする請求項1に記載の情報処理装置である。
請求項3に記載の発明は、更新された前記ソフトウェアに関連する差分データには、更新された当該ソフトウェアを起動する起動ステップに対応する差分データが含まれることを特徴とする請求項2に記載の情報処理装置である。
請求項4に記載の発明は、前記ソフトウェアが更新された場合に、前記起動手順に含まれる起動ステップに対応する差分データのうち、更新された当該ソフトウェアに関連する差分データを前記記憶手段から削除する削除手段をさらに備えることを特徴とする請求項1に記載の情報処理装置である。
請求項5に記載の発明は、前記削除手段は、更新された前記ソフトウェアに関連する差分データとして、当該ソフトウェアを起動する起動ステップに対応する差分データ、及び、当該起動ステップの後に実行される他の起動ステップに対応する差分データを削除することを特徴とする請求項4に記載の情報処理装置である。
請求項6に記載の発明は、複数のソフトウェアについて当該ソフトウェアと当該ソフトウェアに関連する差分データとを予め対応付けた対応関係を取得する対応関係取得手段をさらに備え、前記起動手段は、取得された前記対応関係において更新された前記ソフトウェアに対応付けられた差分データを除き、残りの差分データを前記記憶手段から読み出すことを特徴とする請求項1に記載の情報処理装置である。
請求項7に記載の発明は、前記対応関係には、前記複数のソフトウェアのそれぞれに対して、当該ソフトウェアが更新されることにより影響を受ける差分データが対応付けられていることを特徴とする請求項6に記載の情報処理装置である。
請求項8に記載の発明は、自装置の起動手順に含まれる起動ステップ毎に、当該起動ステップが実行される前のスナップショットと当該起動ステップが実行された後のスナップショットとの違いに関する情報を取得する取得手段と、特定のソフトウェアが更新された後に前記起動手順で自装置を起動する場合に、前記取得手段が取得した前記情報のうち、更新された当該ソフトウェアに関連する情報を除く残りの情報により自装置をハイバネーション起動した後、当該ソフトウェアに関連する情報を用いずに当該ソフトウェアを起動する起動手段とを備える情報処理装置である
求項に記載の発明は、コンピュータに、特定のソフトウェアが更新された後に自装置を起動する場合に、自装置の起動手順に含まれる起動ステップ毎に存在するデータであって、当該起動ステップが実行される前の自装置の状態を複製した複製データと当該起動ステップが実行された後の自装置の状態を複製した複製データとの差分である差分データの中から、更新された当該ソフトウェアに関連する差分データを除く残りの差分データを取得する機能と、取得された差分データを用いて自装置を起動した後、差分データを用いずに更新された前記ソフトウェアを起動する機能とを実現させるためのプログラムである。
請求項1記載の発明によれば、自装置の状態を複製した複製データを記憶した後にソフトウェアを更新した場合に、記憶した複製データを用いる代わりに通常起動を行う構成と比較して、起動時間を短縮することができる。
請求項2記載の発明によれば、ソフトウェアを更新した場合に、自装置の起動が完了したときの自装置の状態を複製した複製データを新たに記憶する構成と比較して、自装置の起動に使用するデータの作成時間を短縮することができる。
請求項3記載の発明によれば、ソフトウェアを更新した場合に、より確実に、自装置を起動することができる。
請求項4記載の発明によれば、ソフトウェアが更新された場合に、更新されたソフトウェアに関連する差分データを記憶手段に残す構成と比較して、記憶手段の空き領域を増やすことができる。
請求項5記載の発明によれば、より確実に、記憶手段の空き領域を増やすことができる。
請求項6記載の発明によれば、ソフトウェアとソフトウェアに関連する差分データとが関連付けられていない構成と比較して、より確実に、自装置を起動することができる。
請求項7記載の発明によれば、ソフトウェアとソフトウェアに関連する差分データとが関連付けられていない構成と比較して、自装置の起動時に異常が発生する可能性を低減することができる。
請求項8記載の発明によれば、スナップショットを記憶した後にソフトウェアを更新した場合に、記憶したスナップショットを用いる代わりに通常起動を行う構成と比較して、起動時間を短縮することができる
求項記載の発明によれば、自装置の状態を複製した複製データを記憶した後にソフトウェアを更新した場合に、記憶した複製データを用いる代わりに通常起動を行う構成と比較して、起動時間を短縮する機能を、コンピュータにより実現できる。
本実施の形態に係る画像処理装置のハードウェア構成例を示す図である。 本実施の形態に係る画像処理装置の機能構成例を示したブロック図である。 起動管理情報の一例を示す図である。 イメージ構成情報の一例を示す図である。 イメージ関連情報の一例を示す図である。 (a)~(e)は、画像処理装置を起動させる処理の具体例を説明するための図である。 画像処理装置を起動させる処理手順の一例を示したフローチャートである。 本実施の形態を適用可能なコンピュータのハードウェア構成例を示した図である。
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
<画像処理装置のハードウェア構成>
まず、本実施の形態に係る画像処理装置100のハードウェア構成について説明する。図1は、本実施の形態に係る画像処理装置100のハードウェア構成例を示す図である。本実施の形態に係る画像処理装置100は、例えば、画像読み取り機能(スキャン機能)、印刷機能(プリント機能)、複写機能(コピー機能)及びファクシミリ機能等の各種の画像処理機能を備えた、いわゆる複合機である。なお、本実施の形態において、画像処理装置100は、情報処理装置の一例として用いられる。
図示するように、本実施の形態に係る画像処理装置100は、制御部110と、HDD(Hard Disk Drive)120と、操作パネル130と、画像読取部140と、画像形成部150と、通信インタフェース(以下、「通信I/F」と表記する)160とを備える。なお、これらの各機能部はバス170に接続されており、このバス170を介してデータの授受を行う。
制御部110は、画像処理装置100の各部の動作を制御する。この制御部110は、CPU(Central Processing Unit)110a、RAM(Random Access Memory)110b、ROM(Read Only Memory)110cにより構成される。
CPU110aは、ROM110c等に記憶された各種プログラムをRAM110bにロードして実行することにより、画像処理装置100における各機能を実現する。RAM110bは、CPU110aの作業用メモリ等として用いられるメモリ(記憶部)である。ROM110cは、CPU110aが実行する各種プログラム等を記憶するメモリ(記憶部)である。
HDD120は、各種データを記憶する記憶部である。HDD120には、例えば、画像読取部140の画像読み取りによって生成された画像データや、通信I/F160によって外部から受信した画像データ等が記憶される。また、HDD120は、画像処理装置100を起動した状態(起動後の状態)に復元するためのイメージデータを記憶する。このイメージデータは、いわゆるハイバネーション起動に用いられるデータである。イメージデータの詳細については、後述する。
操作パネル130は、各種の情報を表示するとともに、ユーザからの操作を受け付ける。この操作パネル130は、液晶ディスプレイ等で構成された表示パネル、表示パネルの上に配置され、ユーザによりタッチされた位置を検出するタッチパネル、ユーザにより押下される物理キー等から構成される。そして、操作パネル130は、例えば、画像処理装置100の操作画面等の各種画面を表示パネルに表示したり、タッチパネル及び物理キーによりユーザからの操作を受け付けたりする。
画像読取部140は、原稿台上にセットされた用紙等の記録材に形成されている画像を読み取って、読み取った画像を示す画像情報(画像データ)を生成する。ここで、画像読取部140は、例えばスキャナーであり、光源から原稿に照射した光に対する反射光をレンズで縮小してCCD(Charge Coupled Devices)で受光するCCD方式や、LED光源から原稿に順に照射した光に対する反射光をCIS(Contact Image Sensor)で受光するCIS方式のものを用いるとよい。
画像形成部150は、用紙等の記録材に画像を形成する印刷機構である。ここで、画像形成部150は、例えばプリンターであり、感光体に付着させたトナーを記録材に転写して像を形成する電子写真方式や、インクを記録材上に吐出して像を形成するインクジェット方式のものを用いるとよい。
通信I/F160は、不図示のネットワークを介して他の装置との間で各種データの送受信を行う通信インタフェースである。
そして、この画像処理装置100では、制御部110による制御の下、画像読取部140によってスキャン機能が実現され、画像形成部150によってプリント機能が実現され、画像読取部140及び画像形成部150によってコピー機能が実現され、画像読取部140、画像形成部150及び通信I/F160によってファクシミリ機能が実現される。
<イメージデータの説明>
本実施の形態に係る画像処理装置100では、上述したように、HDD120に、画像処理装置100を起動した状態に復元するためのイメージデータが記憶される。ここで、イメージデータには、基本イメージと差分イメージとが存在する。
基本イメージは、画像処理装置100が起動された場合の予め定められた時点における画像処理装置100の状態を保存するものである。言い換えると、基本イメージは、画像処理装置100が起動する場合に実行される起動ステップのうち、最初に実行される起動ステップが実行された状態を保存するものであり、即ち、最初に実行される起動ステップに対応するイメージデータである。
基本イメージとしては、例えば、画像処理装置100のOS起動直後のメモリ状態を保存するものが例示される。この場合、基本イメージは、OS起動という起動ステップに対応するイメージデータとして捉えることができる。以下では、基本イメージをOS起動に対応するイメージデータとして説明するが、本実施の形態に係る基本イメージは、OS起動に対応するものに限られない。
差分イメージは、画像処理装置100の起動手順に含まれる起動ステップ毎に用意される差分データである。より具体的には、差分イメージは、起動手順に含まれる起動ステップ毎に、その起動ステップが実行された状態を保存するものである。言い換えると、差分イメージは、起動ステップが実行される前の画像処理装置100の状態を複製した複製データと起動ステップが実行された後の画像処理装置100の状態を複製した複製データとの差分データである。また、差分イメージは、起動ステップが実行される前のスナップショットと起動ステップが実行された後のスナップショットとの差分データ、即ち、両スナップショットの違いに関する情報として捉えることもできる。
そして、本実施の形態に係る画像処理装置100は、起動の際に、HDD120に保存された基本イメージ及び差分イメージを読み出して起動するように構成される。言い換えると、画像処理装置100は、保存された基本イメージ及び差分イメージによりハイバネーション起動を行うように構成される。
ここで、画像処理装置100が有するソフトウェアが更新された場合について説明する。この場合、HDD120に保存されているイメージデータは、ソフトウェア更新前の状態を復元するものである。そのため、保存されているイメージデータと更新されたソフトウェアとの間で不整合が生じてしまい、保存されているイメージデータにより起動しても、画像処理装置100が正常に起動されない場合がある。
そこで、本実施の形態では、ソフトウェアを更新することによって影響を受けるイメージデータを除いて、残りのイメージデータを用いて画像処理装置100を起動させる。そして、画像処理装置100は、更新したソフトウェアに関連するイメージデータを新たに作成する。以下、このような処理を実現するための画像処理装置100等の説明を行う。
なお、基本イメージ及び差分イメージ等のイメージデータは、これらのイメージデータを使用せずに画像処理装置100を起動させることにより予め作成され、HDD120に記憶される。また、後述するように、画像処理装置100の有するソフトウェアが更新された場合には、後述するイメージ作成部109によりイメージデータが作成され、HDD120に記憶される。
<画像処理装置の機能構成>
次に、本実施の形態に係る画像処理装置100の機能構成について説明する。図2は、本実施の形態に係る画像処理装置100の機能構成例を示したブロック図である。
本実施の形態に係る画像処理装置100は、ソフトウェア更新部101と、起動ステップ管理部102と、イメージ構成管理部103と、イメージ関連情報管理部104と、ソフトウェア情報管理部105と、イメージ特定部106と、イメージ削除部107と、イメージ展開部108と、イメージ作成部109とを備える。
ソフトウェア更新部101は、画像処理装置100が有する特定のソフトウェアを更新する。ここで、ソフトウェア更新部101は、例えば、ユーザが指定したソフトウェアや、外部サーバ(不図示)等から更新対象として通知されたソフトウェアを更新する。
起動ステップ管理部102は、画像処理装置100を起動する際に実行される起動手順に含まれる起動ステップを管理する。ここで、起動ステップ管理部102は、画像処理装置100の起動手順に含まれる起動ステップを管理するための情報(以下、「起動管理情報」と称する)を保持する。この起動管理情報には、画像処理装置100を起動する際に実行される起動ステップの処理内容、及び各起動ステップを実行する順番が示されている。起動管理情報の詳細については、後述する。
イメージ構成管理部103は、基本イメージ及び差分イメージを管理する。ここで、イメージ構成管理部103は、基本イメージ及び差分イメージを管理するための情報(以下、「イメージ構成情報」と称する)を保持する。このイメージ構成情報には、画像処理装置100を起動する際に実行される起動ステップと、その起動ステップが実行された状態を保存するイメージデータの情報とが予め対応付けられている。
例えば、OS起動という起動ステップには、基本イメージが対応付けられている。また、例えば、一のアプリケーションを起動する起動ステップには、この起動ステップが実行される前の画像処理装置100の状態を複製した複製データとこの起動ステップが実行された後の画像処理装置100の状態を複製した複製データとの差分である差分イメージが対応付けられている。イメージ構成情報の詳細については、後述する。
イメージ関連情報管理部104は、ソフトウェアとイメージデータとの関連を示す情報(以下、「イメージ関連情報」と称する)を管理する。このイメージ関連情報には、画像処理装置100が有する複数のソフトウェアについて、ソフトウェアとそのソフトウェアに関連するイメージデータとが予め対応付けられている。イメージ関連情報の詳細については、後述する。なお、本実施の形態では、対応関係の一例として、イメージ関連情報が用いられる。
ソフトウェア情報管理部105は、画像処理装置100が有するソフトウェアの情報(以下、「ソフトウェア情報」と称する)を管理する。このソフトウェア情報には、画像処理装置100が有するソフトウェアの名称、ソフトウェアのバージョン(版)などのソフトウェアの情報が登録されている。また、ソフトウェア更新部101は、ソフトウェアを更新すると、ソフトウェア情報において、更新したソフトウェアにフラグを立てたり、ソフトウェアのバージョンを新しいものに変更したりする。
イメージ特定部106は、ソフトウェア更新部101により特定のソフトウェアが更新された場合、イメージ関連情報管理部104の管理するイメージ関連情報を参照し、更新されたソフトウェアに関連するイメージデータを特定する。言い換えると、イメージ特定部106は、ソフトウェア更新部101により特定のソフトウェアが更新された場合、イメージ関連情報において、更新されたソフトウェアに対応付けられているイメージデータを特定する。
ここで、イメージ特定部106は、例えば、ソフトウェアが更新されたことをソフトウェア更新部101から通知されたのを契機として、更新されたソフトウェアに関連するイメージデータを特定する。また、イメージ特定部106は、例えば、一定時間毎に(例えば1分毎に)、ソフトウェア情報を参照し、更新されたソフトウェアを把握してもよい。
イメージ削除部107は、画像処理装置100を起動する際に実行される起動ステップに対応するイメージデータのうち、イメージ特定部106により特定されたイメージデータをHDD120から削除する。
イメージ展開部108は、イメージデータをHDD120から読み出してRAM110bに展開し、画像処理装置100を起動する。言い換えると、イメージ展開部108は、イメージデータをHDD120から読み出してRAM110bに展開して、画像処理装置100を起動した状態に復元する。ここで、イメージ展開部108は、画像処理装置100を起動する場合、起動ステップ管理部102の管理する起動管理情報、イメージ構成管理部103の管理するイメージ構成情報を参照する。そして、イメージ展開部108は、画像処理装置100の起動ステップに対応するイメージデータを特定し、特定したイメージデータを展開して、画像処理装置100を起動する。
さらに説明すると、イメージ展開部108は、ソフトウェア更新部101により特定のソフトウェアが更新された後に、画像処理装置100を起動する場合には、画像処理装置100の起動ステップに対応するイメージデータのうち、更新されたソフトウェアに関連するイメージデータ(即ち、イメージ特定部106により、更新されたソフトウェアに関連するイメージデータとして特定されたイメージデータ)を除く残りのイメージデータを選択する。そして、イメージ展開部108は、選択したイメージデータをHDD120から読み出してRAM110bに展開し、画像処理装置100を起動する。
付言すると、ソフトウェアが更新された場合には、更新後のソフトウェアを使用可能な状態にするために、画像処理装置100の起動(再起動)が必要になることがある。このように、イメージ展開部108は、更新後のソフトウェアを使用可能な状態にするために、ソフトウェアの更新を契機として画像処理装置100を起動する。
ただし、本実施の形態では、ソフトウェアの更新を契機として画像処理装置100を起動する構成に限られるものではない。例えば、イメージ展開部108は、ソフトウェアの更新後にユーザによって画像処理装置100を起動する操作が行われたことを契機として、画像処理装置100を起動してもよい。
イメージ作成部109は、ソフトウェア更新部101によりソフトウェアが更新された場合に、イメージ展開部108により画像処理装置100が起動された後、イメージデータを使用せずに、更新されたソフトウェアを起動する。より具体的には、イメージ作成部109は、イメージ展開部108により画像処理装置100が起動された後、まだ実行されていない残りの起動ステップを実行する。そして、イメージ作成部109は、実行した起動ステップ(即ち、残りの起動ステップ)に対応するイメージデータ作成する。
さらに説明すると、残りの起動ステップとは、画像処理装置100の起動手順に含まれる起動ステップのうち、イメージ展開部108がイメージデータを展開して実行した起動ステップを除く、残りの起動ステップである。言い換えると、残りの起動ステップとは、更新されたソフトウェアに関連する起動ステップである。即ち、残りの起動ステップとは、更新されたソフトウェアに関連するイメージデータを展開することによって実行される、起動ステップである。より具体的には、残りの起動ステップとは、更新されたソフトウェアを起動する起動ステップ、その起動ステップの後に実行される他の起動ステップである。
なお、イメージ作成部109は、残りの起動ステップに対応するイメージデータ、言い換えると、更新されたソフトウェアに関連するイメージデータを作成する。そのため、ソフトウェアの更新に伴って、そのソフトウェアに関連するイメージデータを更新するものとして捉えることができる。
なお、イメージ作成部109によって作成されたイメージデータは、HDD120に格納され、画像処理装置100の起動に用いられる。即ち、作成されたイメージデータがHDD120に格納された後、画像処理装置100が起動される場合、イメージ展開部108は、作成されたイメージデータとその他のイメージデータとをHDD120から読み出して、画像処理装置100を起動する。
そして、図2に示す画像処理装置100を構成する各機能部は、ソフトウェアとハードウェア資源とが協働することにより実現される。具体的には、画像処理装置100を図1に示したハードウェア構成にて実現した場合、例えば、ROM110cに格納されているOSのプログラムやアプリケーション・プログラムが、RAM110bに読み込まれてCPU110aに実行されることにより、ソフトウェア更新部101、起動ステップ管理部102、イメージ構成管理部103、イメージ関連情報管理部104、ソフトウェア情報管理部105、イメージ特定部106、イメージ削除部107、イメージ展開部108、イメージ作成部109等の各機能部が実現される。また、起動ステップ管理部102が管理する起動管理情報、イメージ構成管理部103が管理するイメージ構成情報、イメージ関連情報管理部104が管理するイメージ関連情報、ソフトウェア情報管理部105が管理するソフトウェア情報等は、例えば、HDD120に記憶される。
本実施の形態では、記憶手段の一例として、HDD120が用いられる。取得手段の一例として、イメージ展開部108が用いられる。起動手段の一例として、イメージ展開部108、イメージ作成部109が用いられる。対応関係取得手段の一例として、イメージ関連情報管理部104が用いられる。削除手段の一例として、イメージ削除部107が用いられる。格納手段の一例として、イメージ作成部109が用いられる。
<起動管理情報の説明>
次に、起動ステップ管理部102が管理する起動管理情報について、詳細に説明する。図3は、起動管理情報の一例を示す図である。
図3に示す起動管理情報には、画像処理装置100が起動する際に実行される起動ステップとして、OS起動、初期化、画像処理アプリ起動、UIアプリ起動の4つの起動ステップが示されている。言い換えると、画像処理装置100が起動する場合に、予め定められた実行順序として、OS起動、初期化、画像処理アプリ起動、UIアプリ起動の順番に、連続的に(シーケンシャルに)処理を行って起動することが示されている。
ここで、OS起動では、画像処理装置100のOSを起動する処理、言い換えると、画像処理装置100のOSカーネルを起動する処理が行われる。初期化では、共通ライブラリを起動する処理が行われる。この初期化の処理では、画像処理装置100が有する種々のアプリケーションが初期化されたり、画像処理装置100に接続されている認証デバイスやストレージなどのハードウェアが初期化されたりする。なお、共通ライブラリとは、複数のプログラムが共通して利用するプログラムの集まりである。
また、画像処理アプリ起動では、画像処理装置100が有するアプリケーションのうち、画像処理に関連するアプリケーション(以下、「画像処理アプリ」と称する)を起動する処理が行われる。UIアプリ起動では、画像処理装置100が有するアプリケーションのうち、ユーザからの操作を受け付ける操作パネル130のユーザインタフェースに関連するアプリケーション(以下、「UIアプリ」と称する)を起動する処理が行われる。
<イメージ構成情報の説明>
次に、イメージ構成管理部103が管理するイメージ構成情報について、詳細に説明する。図4は、イメージ構成情報の一例を示す図である。ここでは、画像処理装置100の起動の際に、図3に示す起動ステップが実行されるものとして説明する。
本実施の形態では、図4に示すように、起動手順の起動ステップのそれぞれに対して、イメージデータが対応付けられている。付言すると、画像処理装置100が起動する場合に最初に行われる起動ステップ(この例では、OS起動)には、基本イメージが対応付けられている。また、画像処理装置100が起動する場合の最初の起動ステップ以外の起動ステップ(この例では、初期化、画像処理アプリ起動、UIアプリ起動)には、差分イメージが対応付けられている。図4に示す例では、初期化、画像処理アプリ起動、UIアプリ起動に対してそれぞれ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)が対応付けられている。
例えば、初期化の起動ステップには、差分イメージ(初期化)が対応付けられている。この差分イメージ(初期化)は、初期化の起動ステップが実行される前の画像処理装置100の状態を複製した複製データと初期化の起動ステップが実行された後の画像処理装置100の状態を複製した複製データとの差分データである。
<イメージ関連情報の説明>
次に、イメージ関連情報管理部104が管理するイメージ関連情報について、詳細に説明する。図5は、イメージ関連情報の一例を示す図である。
上述したように、イメージ関連情報では、画像処理装置100が有するソフトウェアのそれぞれに対して、そのソフトウェアに関連するイメージデータが予め対応付けられている。ここで、ソフトウェアに関連するイメージデータとは、ソフトウェアが更新されることによって特定の影響を受けるイメージデータである。特定の影響とは、更新されたソフトウェアとの間でデータの不整合が生じる(又は、不整合が生じる可能性がある)、という影響である。付言すると、特定の影響とは、イメージデータを展開すると画像処理装置100が正常に起動されない(又は、正常に起動されない可能性がある)、という影響である。本実施の形態では、このようなイメージデータは画像処理装置100の起動には使用されず、残りのイメージデータを用いて画像処理装置100の起動が行われる。
図5に示すイメージ関連情報には、画像処理装置100が有するソフトウェアとして、ブートローダ、OS、共通ライブラリ、画像処理アプリ、UIアプリの5つが示されている。これらのソフトウェアに対して、ソフトウェアに関連するイメージデータが対応付けられている。
より具体的には、例えば、OSには、関連するイメージデータとして、基本イメージ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)という4つのイメージデータが対応付けられている。付言すると、OSが影響を及ぼすイメージデータとして、基本イメージ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)という4つのイメージデータが存在する。
さらに説明すると、OSが影響を及ぼすイメージデータには、OSを起動するOS起動に対応する基本イメージに加えて、OS起動の後に実行される他の起動ステップのイメージデータ(差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動))が存在する。
例えば、OSを更新した場合には、OSの更新前に作成された基本イメージ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)が影響を受ける。これらのイメージデータは、OSを更新したことにより、更新後のOSとの間でデータ内容に不整合が生じる。そのため、OS更新後にこれらのイメージデータを用いて起動すると、画像処理装置100が正常に起動されない場合がある。
同様に、例えば、共通ライブラリには、関連するイメージデータとして、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)という3つのイメージデータが対応付けられている。共通ライブラリが影響を及ぼすイメージデータには、共通ライブラリを起動する起動ステップである初期化に対応する差分イメージ(初期化)に加えて、初期化の後に実行される他の起動ステップのイメージデータ(差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動))が存在する。
また、例えば、画像処理アプリには、関連するイメージデータとして、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)という2つのイメージデータが対応付けられている。画像処理アプリが影響を及ぼすイメージデータには、画像処理アプリを起動する起動ステップである画像処理アプリ起動に対応する差分イメージ(画像処理アプリ起動)に加えて、画像処理アプリ起動の後に実行される他の起動ステップのイメージデータ(差分イメージ(UIアプリ起動))が存在する。
さらに、例えば、UIアプリには、関連するイメージデータとして、差分イメージ(UIアプリ起動)という1つのイメージデータが対応付けられている。UIアプリが影響を及ぼすイメージデータには、UIアプリを起動する起動ステップであるUIアプリ起動に対応する差分イメージ(UIアプリ起動)が存在する。
このように、本実施の形態では、ソフトウェアのそれぞれに対して、ソフトウェアに関連するイメージデータが予め対応付けられている。ソフトウェアに関連するイメージデータは、ソフトウェアの更新により特定の影響を受けるイメージデータであり、言い換えると、そのソフトウェアを起動する起動ステップに対応するイメージデータ、及び、その起動ステップの後に実行される他の起動ステップに対応するイメージデータである。
なお、ブートローダとは、OSを起動するためのソフトウェアである。画像処理装置100が起動する場合、OSが起動される前にブートローダが呼び出されて、ブートローダによりOSが起動される。図5に示す例では、ブートローダには何れのイメージデータも対応付けられていない。
<画像処理装置を起動する処理の具体例>
次に、本実施の形態に係る画像処理装置100を起動させる処理について、具体例を挙げて説明する。図6(a)~(e)は、画像処理装置100を起動させる処理の具体例を説明するための図である。
ここでは、画像処理装置100が、図3に示すOS起動、初期化、画像処理アプリ起動、UIアプリ起動の4つの起動ステップで起動するものとする。また、図4に示すイメージデータがHDD120に格納されているものとする。さらに、図5に示すイメージ関連情報が用いられるものとする。
まず、イメージデータを使用する高速起動との比較のために、イメージデータを使用しない通常起動の場合について説明する。図6(a)に示す例は、通常起動の場合の例である。ここでは、画像処理装置100の電源がオン(ON)されると、イメージデータを使用せずに、OS起動、初期化、画像処理アプリ起動、UIアプリ起動の処理が順に行われる。
次に、図6(b)に示す例は、画像処理装置100を通常起動で起動させた後、高速起動のためのイメージデータを作成する場合の例である。ここでは、図6(a)に示す例と同様に、画像処理装置100の電源がオン(ON)されると、イメージデータを使用せずに、OS起動、初期化、画像処理アプリ起動、UIアプリ起動の処理が順に行われる。そして、画像処理装置100の電源がオンされてからUIアプリ起動の処理まで完了した状態に復元するためのイメージデータが作成される。付言すると、ここで作成されるイメージデータは、画像処理装置100の起動手順に含まれる全ての起動ステップに対応するイメージデータといえる。
次に、図6(c)に示す例は、イメージデータを使用して画像処理装置100を起動させる高速起動の場合の例である。ここでは、各起動ステップに対応するイメージデータを使用して画像処理装置100が起動される。
より具体的には、画像処理装置100の電源がオンされると、イメージ展開部108は、OS起動に対応するイメージデータとして、基本イメージを選択する。同様に、イメージ展開部108は、初期化、画像処理アプリ起動、UIアプリ起動に対応するイメージデータとして、それぞれ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)を選択する。そして、イメージ展開部108は、基本イメージ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)を順番にHDD120から読み出してRAM110bに展開し、画像処理装置100を起動する。
さらに説明すると、基本イメージを展開することにより、画像処理装置100は、OS起動直後の状態に復元される。次に、差分イメージ(初期化)を展開することにより、画像処理装置100は、初期化の処理が実行された後の状態に復元される。次に、差分イメージ(画像処理アプリ起動)を展開することにより、画像処理装置100は、画像処理アプリ起動の処理が実行された後の状態に復元される。次に、差分イメージ(UIアプリ起動)を展開することにより、画像処理装置100は、UIアプリ起動の処理が実行された後の状態に復元される。その結果、図6(c)の高速起動では、図6(a)の通常起動の場合と比較して、起動時間が短縮される。
次に、図6(d)を参照しながら、UIアプリを更新する例について説明する。図5に示すイメージ関連情報では、UIアプリには、差分イメージ(UIアプリ起動)が対応付けられている。そのため、ソフトウェア更新部101がUIアプリを更新した場合、イメージ特定部106は、UIアプリに関連するイメージデータとして、差分イメージ(UIアプリ起動)を特定する。そして、イメージ削除部107は、HDD120に格納された差分イメージ(UIアプリ起動)を削除する。
その後、イメージ展開部108は、画像処理装置100を起動する場合、起動ステップに対応するイメージデータのうち、更新されたUIアプリに関連するイメージデータ(即ち、差分イメージ(UIアプリ起動))を除く残りのイメージデータを選択する。より具体的には、イメージ展開部108は、基本イメージ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)を選択する。
そして、イメージ展開部108は、図6(d)に示すように、基本イメージ、差分イメージ(初期化)、差分イメージ(画像処理アプリ起動)を順にHDD120から読み出してRAM110bに展開し、画像処理装置100を起動する。付言すると、画像処理装置100は、UIアプリに関連するイメージデータの起動ステップ(この例では、UIアプリ起動)の前の起動ステップまで実行された状態に復元される。
さらに、イメージ作成部109は、図6(d)に示すように、イメージデータを使用せずに、残りの起動ステップを実行する。この例では、残りの起動ステップは、「UIアプリ起動」であり、更新後のUIアプリを起動する処理である。イメージ作成部109は、更新後のUIアプリを起動した後、「UIアプリ起動」のイメージデータ(即ち、差分イメージ(UIアプリ起動))を作成する。
次に、図6(e)を参照しながら、画像処理アプリを更新する例について説明する。図5に示すイメージ関連情報では、画像処理アプリには、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)が対応付けられている。そのため、ソフトウェア更新部101が画像処理アプリを更新した場合、イメージ特定部106は、画像処理アプリに関連するイメージデータとして、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)を特定する。そして、イメージ削除部107は、HDD120に格納された差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)を削除する。
その後、イメージ展開部108は、画像処理装置100を起動する場合、起動ステップに対応するイメージデータのうち、更新された画像処理アプリに関連するイメージデータ(即ち、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動))を除く残りのイメージデータを選択する。より具体的には、イメージ展開部108は、基本イメージ、差分イメージ(初期化)を選択する。
そして、イメージ展開部108は、図6(e)に示すように、基本イメージ、差分イメージ(初期化)を順にHDD120から読み出してRAM110bに展開し、画像処理装置100を起動する。付言すると、画像処理装置100は、画像処理アプリに関連するイメージデータの起動ステップ(この例では、画像処理アプリ起動、UIアプリ起動)の前の起動ステップまで実行された状態に復元される。
さらに、イメージ作成部109は、図6(e)に示すように、イメージデータを使用せずに、残りの起動ステップを実行する。この例では、残りの起動ステップは、「画像処理アプリ起動」、「UIアプリ起動」であり、画像処理アプリの起動以降の処理である。イメージ作成部109は、更新後の画像処理アプリを起動し、さらに、UIアプリを起動する。そして、イメージ作成部109は、「画像処理アプリ起動」のイメージデータ(即ち、差分イメージ(画像処理アプリ起動))、及び「UIアプリ起動」のイメージデータ(即ち、差分イメージ(UIアプリ起動))を作成する。
図6(d)、(e)に示すように、イメージ展開部108は、更新されたソフトウェアに関連するイメージデータを除く他のイメージデータを使用して、画像処理装置100を起動する。また、イメージ作成部109は、更新されたソフトウェアに関連するイメージデータを新たに作成する。その結果、図6(d)、(e)に示す例では、図6(c)の通常起動の場合と比較して、起動時間が短縮される。また、図6(d)、(e)に示す例では、図6(c)のようにUIアプリ起動の処理まで完了した状態に復元するためのイメージデータを作成する場合と比較して、イメージデータの作成時間が短縮される。
なお、図6(e)に示す例では、イメージ作成部109は、残りの起動ステップを全て実行した後に、各起動ステップに対応するイメージデータを作成することとしたが、このような構成に限られない。本実施の形態では、イメージ作成部109は、残りの起動ステップを実行する毎に、実行した起動ステップに対応するイメージデータを作成してもよい。例えば、図6(e)に示す例の場合、イメージ作成部109は、更新後の画像処理アプリを起動した後、UIアプリを起動する前に、差分イメージ(画像処理アプリ起動)を作成してもよい。
さらに、図6(e)に示す例では、残りの起動ステップに対応するイメージデータを全て作成することとしたが、このような構成に限られない。例えば、イメージ作成部109は、複数の起動ステップのうちの一の起動ステップ(例えば、「画像処理アプリ起動」)に対応するイメージデータを作成し、次に画像処理装置100が起動されるタイミングで、複数の起動ステップのうちの他の起動ステップ(例えば、「UIアプリ起動」)に対応するイメージデータを作成してもよい。
<画像処理装置を起動させる処理手順の説明>
次に、画像処理装置100を起動させる処理手順について説明する。図7は、画像処理装置100を起動させる処理手順の一例を示したフローチャートである。
図7に示す例では、図6に示す例と同様に、画像処理装置100が、図3に示すOS起動、初期化、画像処理アプリ起動、UIアプリ起動の4つの起動ステップで起動するものとする。また、図4に示すイメージデータがHDD120に格納されているものとする。さらに、図5に示すイメージ関連情報が用いられるものとする。なお、この例では、画像処理装置100が有するアプリケーションのうち、画像処理アプリを更新するものとして説明する。
まず、画像処理装置100の電源がオンされた後、ソフトウェア更新部101は、例えば、ユーザが指定したソフトウェアや外部サーバ(不図示)等から更新対象として通知されたソフトウェアを更新する(ステップ101)。この例では、ソフトウェア更新部101は画像処理アプリを更新する。
次に、イメージ特定部106は、イメージ関連情報管理部104の管理するイメージ関連情報を参照し、更新されたソフトウェアに関連するイメージデータを特定する(ステップ102)。次に、イメージ削除部107は、イメージ特定部106により特定されたイメージデータを削除する(ステップ103)。この例では、画像処理アプリに関連するイメージデータとして、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)がHDD120から削除される。
次に、画像処理装置100において再起動の処理が行われる(ステップ104)。ここでは、まず、ブートローダが起動される。そして、ブートローダが起動された後、イメージ展開部108は、起動管理情報、イメージ構成情報を参照し、起動手順に含まれる起動ステップに対応するイメージデータを特定する。そして、イメージ展開部108は、特定したイメージデータのうち、未展開のイメージデータが存在するか否かを判定する(ステップ105)。
ステップ105で肯定の判断(Yes)がされた場合、イメージ展開部108は、未展開のイメージデータをHDD120から読み出してRAM110bに展開する(ステップ106)。ここで、未展開のイメージデータが複数存在する場合には、イメージ展開部108は、複数のイメージデータのうち、起動手順の順番で先に実行される起動ステップのイメージデータを展開する。ステップ106の後、ステップ105に移行し、引き続き、未展開のイメージデータが存在するか否かの判定が行われる。
一方、ステップ105で否定の判断(No)がされた場合、イメージ展開部108は、イメージデータを使用せずに、起動手順に含まれる起動ステップのうちの残りの起動ステップの処理を実行する(ステップ107)。
この例では、基本イメージ、差分イメージ(初期化)が未展開のイメージデータとしてHDD120に存在する。一方、差分イメージ(画像処理アプリ起動)、差分イメージ(UIアプリ起動)は、イメージ削除部107により削除されており、HDD120には存在しない。そのため、ステップ105で肯定の判断(Yes)がされて基本イメージが展開された後(ステップ106)、さらにステップ105で肯定の判断(Yes)がされて差分イメージ(初期化)が展開される(ステップ106)。その後、ステップ105で否定の判断(No)がされ、残りの起動ステップである「画像処理アプリ起動」、「UIアプリ起動」がイメージデータを使用せずに順に実行される(ステップ107)。
なお、例えば、基本イメージがHDD120に存在していない場合には、OSが更新されたことにより、基本イメージ及び差分イメージ、即ち、起動手順に含まれる全ての起動ステップに対応するイメージデータが削除され、HDD120に格納されていないと考えられる。この場合には、ステップ105で否定の判断(No)がされ、ステップ107において、OS起動及びOS起動の後の起動ステップの処理が順に実行される。
ステップ107で残りの起動ステップの処理が実行された後、イメージ作成部109はイメージデータを作成する(ステップ108)。ここで、イメージ作成部109は、残りの起動ステップに対応するイメージデータを作成する。即ち、イメージ作成部109は、起動手順に含まれる起動ステップに対応するイメージデータのうち、HDD120に存在していないイメージデータを新たに作成する。そして、本処理フローは終了する。
この例では、イメージ作成部109は、「画像処理アプリ起動」に対応する差分イメージ(画像処理アプリ起動)、「UIアプリ起動」に対応する差分イメージ(UIアプリ起動)を作成する。
また、例えば、基本イメージがHDD120に存在しない場合には、イメージ作成部109は、基本イメージ及び差分イメージ、即ち、起動手順に含まれる全ての起動ステップに対応するイメージデータを作成する。
なお、起動手順に含まれる全ての起動ステップに対応するイメージデータがHDD120に格納されている場合には、ステップ106においてイメージデータが全て展開されて、画像処理装置100の起動が完了する。そして、イメージデータが全て展開された後、ステップ105で否定の判断(No)がされ、本処理フローは終了する。
以上説明したように、本実施の形態に係る画像処理装置100において、特定のソフトウェアが更新された場合、イメージ特定部106は、更新されたソフトウェアに関連するイメージデータを特定する。そして、ソフトウェアの更新後に画像処理装置100を起動する場合、イメージ展開部108は、起動手順に含まれる起動ステップに対応するイメージデータのうち、更新されたソフトウェアに関連するイメージデータを除く残りのイメージデータを用いて画像処理装置100を起動させる。そして、イメージ作成部は、起動手順に含まれる起動ステップのうち、まだ実行されていない残りの起動ステップを実行し、実行した起動ステップに対応するイメージデータを作成する。
このように、画像処理装置100は、特定のソフトウェア更新後に画像処理装置100を起動する場合、不整合の生じないイメージデータで高速起動をして、更新されたソフトウェアに関連するイメージデータを新たに作成する。よって、本実施の形態に係る画像処理装置100を用いることにより、例えば、ソフトウェアを更新した場合に通常起動を行う構成と比較して、画像処理装置100の起動時間が短縮される。また、本実施の形態に係る画像処理装置100を用いることにより、例えば、イメージデータとして、画像処理装置100の起動が完了したときの状態を複製したイメージデータを、新たに記憶する構成と比較して、イメージデータの作成時間が短縮される。
また、上述した例では、イメージ削除部107は、更新されたソフトウェアに関連するイメージデータを削除したが、本実施の形態では、イメージデータを削除せずにHDD120に残しておいてもよい。この場合、イメージ展開部108は、ソフトウェアの更新後に画像処理装置100を起動する場合、起動ステップに対応するイメージデータのうち、更新されたソフトウェアに関連するイメージデータを選択せずに、残りのイメージデータを使用して画像処理装置100を起動させる。ここで、イメージ削除部107は、更新されたソフトウェアに関連するイメージデータが選択されないようにするために、更新されたソフトウェアに関連するイメージデータに対してフラグを付与したり、更新されたソフトウェアに関連するイメージデータを他のイメージデータとは異なる記憶領域に格納したりしてもよい。
さらに、上述した例では、画像処理装置100は、イメージデータを用いてハイバネーション起動を行うこととしたが、ハイバネーション起動するか、又はイメージデータを用いずに通常起動するかを、切り替え可能に構成することとしてもよい。例えば、通常起動を行う設定がされている場合には、イメージデータを用いない通常起動が行われる。一方、ハイバネーション起動を行う設定がされている場合には、上述した例のように、イメージ展開部108がイメージデータをHDD120からRAM110bに読み出して起動される。
<他の構成例>
次に、本実施の形態に係る画像処理装置100の他の構成例について説明する。上述した例では、特定のソフトウェアが更新された後、イメージ展開部108がイメージデータを展開して画像処理装置100を起動し、イメージ作成部109が残りの起動ステップを実行してイメージデータを作成した。これに対して、他の構成例では、イメージ作成部109は、特定のソフトウェアが更新されたタイミングでイメージデータを作成する。
さらに説明すると、例えば、ソフトウェアが更新された場合、画像処理装置100を起動させずに、更新後のソフトウェアが使用可能な状態になる場合がある。このような場合、イメージ作成部109は、ソフトウェアが更新された後、更新後のソフトウェアを起動する起動ステップを実行することにより、更新後のソフトウェアを起動する起動ステップに対応するイメージデータを作成してもよい。
また、イメージ作成部109は、更新後のソフトウェアを起動する起動ステップを実行し、さらに、その後に実行する必要のある他の起動ステップも実行することにより、更新後のソフトウェアを起動する起動ステップに対応するイメージデータに加えて、他の起動ステップに対応するイメージデータを作成してもよい。
このように、イメージ作成部109は、ソフトウェアが更新された場合に、画像処理装置100が起動される前に、更新されたソフトウェアに関連するイメージデータを作成してもよい。
また、本実施の形態では、起動ステップ毎に用意されたイメージデータにより、ハイバネーション起動を行う場合について説明したが、このような構成に限られない。例えば、本実施の形態を、仮想化の技術に適用してもよい。この場合、起動ステップ毎に用意されたイメージデータにより、例えば、仮想化されたサーバのリソースにおいて、起動した状態に復元される。同様に、例えば、本実施の形態を、プロセスマイグレーションの技術に適用してもよい。
<適用可能なコンピュータの説明>
ところで、本実施の形態に係る画像処理装置100による処理は、例えば、PC(Personal Computer)等の汎用のコンピュータにおいて実現してもよい。そこで、この処理をコンピュータ200で実現するものとして、そのハードウェア構成について説明する。図8は、本実施の形態を適用可能なコンピュータ200のハードウェア構成例を示した図である。なお、本実施の形態において、コンピュータ200は、情報処理装置の一例として用いられる。
コンピュータ200は、演算手段であるCPU201と、記憶手段であるメインメモリ202及び磁気ディスク装置(HDD)203とを備える。ここで、CPU201は、OSやアプリケーション等の各種プログラムを実行する。また、メインメモリ202は、各種プログラムやその実行に用いるデータ等を記憶する記憶領域であり、磁気ディスク装置203は、図2に示す各機能部を実現するためのプログラムを格納する。そして、このプログラムがメインメモリ202にロードされ、このプログラムに基づく処理がCPU201により実行されることで、各機能部が実現される。
さらに、コンピュータ200は、外部との通信を行うための通信インタフェース(I/F)204と、ビデオメモリやディスプレイ等からなる表示機構205と、キーボードやマウス等の入力デバイス206とを備える。
より具体的には、CPU201が、ソフトウェア更新部101、起動ステップ管理部102、イメージ構成管理部103、イメージ関連情報管理部104、ソフトウェア情報管理部105、イメージ特定部106、イメージ削除部107、イメージ展開部108、イメージ作成部109等を実現するプログラムを、例えば磁気ディスク装置203からメインメモリ202に読み込んで実行することにより、これらの機能部が実現される。また、起動ステップ管理部102が管理する起動管理情報、イメージ構成管理部103が管理するイメージ構成情報、イメージ関連情報管理部104が管理するイメージ関連情報、ソフトウェア情報管理部105が管理するソフトウェア情報等は、例えば、磁気ディスク装置203に記憶される。
また、本発明の実施の形態を実現するプログラムは、通信手段により提供することはもちろん、CD-ROM等の記録媒体に格納して提供することも可能である。
なお、上記では種々の実施形態および変形例を説明したが、これらの実施形態や変形例どうしを組み合わせて構成してももちろんよい。
また、本開示は上記の実施形態に何ら限定されるものではなく、本開示の要旨を逸脱しない範囲で種々の形態で実施することができる。
100…画像処理装置、101…ソフトウェア更新部、102…起動ステップ管理部、103…イメージ構成管理部、104…イメージ関連情報管理部、105…ソフトウェア情報管理部、106…イメージ特定部、107…イメージ削除部、108…イメージ展開部、109…イメージ作成部、110b…RAM、120…HDD

Claims (9)

  1. 自装置の起動手順に含まれる起動ステップ毎に、当該起動ステップが実行される前の自装置の状態を複製した複製データと当該起動ステップが実行された後の自装置の状態を複製した複製データとの差分データを記憶する記憶手段と、
    特定のソフトウェアが更新された後に前記起動手順で自装置を起動する場合に、当該起動手順に含まれる起動ステップに対応する差分データのうち、更新された当該ソフトウェアに関連する差分データを除く残りの差分データを前記記憶手段から読み出して自装置を起動した後、差分データを用いずに当該ソフトウェアを起動する起動手段と
    を備える情報処理装置。
  2. 前記記憶手段は、前記起動手段により更新された前記ソフトウェアが起動された後、更新された当該ソフトウェアに関連する差分データを新たに記憶し、
    前記起動手段は、更新された前記ソフトウェアに関連する差分データを前記記憶手段が新たに記憶した後に前記起動手順で自装置を起動する場合、前記残りの差分データと新たに記憶された当該ソフトウェアに関連する差分データとを当該記憶手段から読み出して自装置を起動すること
    を特徴とする請求項1に記載の情報処理装置。
  3. 更新された前記ソフトウェアに関連する差分データには、更新された当該ソフトウェアを起動する起動ステップに対応する差分データが含まれること
    を特徴とする請求項2に記載の情報処理装置。
  4. 前記ソフトウェアが更新された場合に、前記起動手順に含まれる起動ステップに対応する差分データのうち、更新された当該ソフトウェアに関連する差分データを前記記憶手段から削除する削除手段をさらに備えること
    を特徴とする請求項1に記載の情報処理装置。
  5. 前記削除手段は、更新された前記ソフトウェアに関連する差分データとして、当該ソフトウェアを起動する起動ステップに対応する差分データ、及び、当該起動ステップの後に実行される他の起動ステップに対応する差分データを削除すること
    を特徴とする請求項4に記載の情報処理装置。
  6. 複数のソフトウェアについて当該ソフトウェアと当該ソフトウェアに関連する差分データとを予め対応付けた対応関係を取得する対応関係取得手段をさらに備え、
    前記起動手段は、取得された前記対応関係において更新された前記ソフトウェアに対応付けられた差分データを除き、残りの差分データを前記記憶手段から読み出すこと
    を特徴とする請求項1に記載の情報処理装置。
  7. 前記対応関係には、前記複数のソフトウェアのそれぞれに対して、当該ソフトウェアが更新されることにより影響を受ける差分データが対応付けられていること
    を特徴とする請求項6に記載の情報処理装置。
  8. 自装置の起動手順に含まれる起動ステップ毎に、当該起動ステップが実行される前のスナップショットと当該起動ステップが実行された後のスナップショットとの違いに関する情報を取得する取得手段と、
    特定のソフトウェアが更新された後に前記起動手順で自装置を起動する場合に、前記取得手段が取得した前記情報のうち、更新された当該ソフトウェアに関連する情報を除く残りの情報により自装置をハイバネーション起動した後、当該ソフトウェアに関連する情報を用いずに当該ソフトウェアを起動する起動手段と
    を備える情報処理装置。
  9. コンピュータに、
    特定のソフトウェアが更新された後に自装置を起動する場合に、自装置の起動手順に含まれる起動ステップ毎に存在するデータであって、当該起動ステップが実行される前の自装置の状態を複製した複製データと当該起動ステップが実行された後の自装置の状態を複製した複製データとの差分である差分データの中から、更新された当該ソフトウェアに関連する差分データを除く残りの差分データを取得する機能と、
    取得された差分データを用いて自装置を起動した後、差分データを用いずに更新された前記ソフトウェアを起動する機能と
    を実現させるためのプログラム。
JP2017134897A 2017-07-10 2017-07-10 情報処理装置及びプログラム Active JP7047268B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017134897A JP7047268B2 (ja) 2017-07-10 2017-07-10 情報処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017134897A JP7047268B2 (ja) 2017-07-10 2017-07-10 情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2019016295A JP2019016295A (ja) 2019-01-31
JP7047268B2 true JP7047268B2 (ja) 2022-04-05

Family

ID=65358729

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017134897A Active JP7047268B2 (ja) 2017-07-10 2017-07-10 情報処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP7047268B2 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005284491A (ja) 2004-03-29 2005-10-13 Mitsubishi Electric Corp 計算機の起動時間短縮方式
JP2009516264A (ja) 2005-11-14 2009-04-16 アーデンス・インコーポレイテッド オペレーティングシステムの高速な起動のための方法および装置
JP2010218399A (ja) 2009-03-18 2010-09-30 Ricoh Co Ltd 情報処理装置、画像形成装置、データ復帰方法、プログラム、記憶媒体
JP2012018554A (ja) 2010-07-08 2012-01-26 Konica Minolta Business Technologies Inc 画像処理装置およびハイバネーション起動方法
JP2012221326A (ja) 2011-04-11 2012-11-12 Murata Mach Ltd 電子機器
JP2013004044A (ja) 2011-06-22 2013-01-07 Canon Inc 画像形成装置、画像形成装置の起動制御方法及びプログラム
JP2013134754A (ja) 2011-12-27 2013-07-08 Sony Corp 情報処理装置及び情報処理装置の制御方法、並びにコンピューター・プログラム
JP2017109395A (ja) 2015-12-17 2017-06-22 コニカミノルタ株式会社 画像形成装置およびプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005284491A (ja) 2004-03-29 2005-10-13 Mitsubishi Electric Corp 計算機の起動時間短縮方式
JP2009516264A (ja) 2005-11-14 2009-04-16 アーデンス・インコーポレイテッド オペレーティングシステムの高速な起動のための方法および装置
JP2010218399A (ja) 2009-03-18 2010-09-30 Ricoh Co Ltd 情報処理装置、画像形成装置、データ復帰方法、プログラム、記憶媒体
JP2012018554A (ja) 2010-07-08 2012-01-26 Konica Minolta Business Technologies Inc 画像処理装置およびハイバネーション起動方法
JP2012221326A (ja) 2011-04-11 2012-11-12 Murata Mach Ltd 電子機器
JP2013004044A (ja) 2011-06-22 2013-01-07 Canon Inc 画像形成装置、画像形成装置の起動制御方法及びプログラム
JP2013134754A (ja) 2011-12-27 2013-07-08 Sony Corp 情報処理装置及び情報処理装置の制御方法、並びにコンピューター・プログラム
JP2017109395A (ja) 2015-12-17 2017-06-22 コニカミノルタ株式会社 画像形成装置およびプログラム

Also Published As

Publication number Publication date
JP2019016295A (ja) 2019-01-31

Similar Documents

Publication Publication Date Title
US10503532B2 (en) Creating a virtual machine clone of the host computing device and handling of virtual machine clone requests via an I/O filter
US10067835B2 (en) System reset
US20160378528A1 (en) Propagating changes from a virtual machine clone to a physical host device
JP7069672B2 (ja) アプリケーションの更新方法およびプログラム
US20130036300A1 (en) Method of fixing error of boot image for fast booting and image forming apparatus for performing the method
US9332147B2 (en) Image forming apparatus and method of booting image forming apparatus having hibernation function
JP4944812B2 (ja) 情報処理システムと情報処理方法とプログラム
US20090219569A1 (en) Information processing apparatus, information processing system, and information processing method
JP5943681B2 (ja) 情報処理装置、情報処理装置のファームウエア更新方法及びプログラム
US20190004761A1 (en) Printer apparatus and program
US9766877B2 (en) Information processing apparatus that performs update of firmware, control method for the information processing apparatus, and storage medium
US20150324161A1 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
JP7047268B2 (ja) 情報処理装置及びプログラム
US10484571B2 (en) Multifunction device, reboot method, and non-transitory recording medium storing computer readable program
JP4905378B2 (ja) 情報処理装置、情報処理システム、及びプログラム
US20190187926A1 (en) Information processing apparatus, information processing method, and storage medium
US20050231756A1 (en) Image forming apparatus
JP6953828B2 (ja) 情報処理装置及びプログラム
JP4444641B2 (ja) 情報処理装置、画像形成装置、及び電子データ移動方法
JP7192303B2 (ja) 情報処理装置およびプログラム
KR101845467B1 (ko) 빠른 부팅을 위한 부트 이미지의 에러를 복구하는 방법 및 이를 수행하는 화상형성장치
JP5932511B2 (ja) 情報処理装置、ソフトウェアの更新方法及びコンピュータプログラム
JP7171685B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP7424457B2 (ja) 画像形成装置及びプログラム
JP6381218B2 (ja) ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200619

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211207

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220307

R150 Certificate of patent or registration of utility model

Ref document number: 7047268

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150