(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-12
(45)【発行日】2022-12-20
(54)【発明の名称】情報処理装置およびプログラム
(51)【国際特許分類】
G06F 9/4401 20180101AFI20221213BHJP
G06F 12/06 20060101ALI20221213BHJP
【FI】
G06F9/4401
G06F12/06 520F
(21)【出願番号】P 2018153331
(22)【出願日】2018-08-17
【審査請求日】2021-07-21
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】竹下 篤
【審査官】山本 俊介
(56)【参考文献】
【文献】特開2012-018554(JP,A)
【文献】特開2012-221326(JP,A)
【文献】特開2014-178913(JP,A)
【文献】特開2017-117230(JP,A)
【文献】特開2006-011506(JP,A)
【文献】特開2012-221325(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/4401
G06F 12/06
G06F 1/00
(57)【特許請求の範囲】
【請求項1】
情報処理装置であって、
当該情報処理装置の起動が開始された後に利用される起動用データを定めたプロファイル情報を記憶する手段であって、当該情報処理装置の設定に関する情報と当該情報処理装置の構成に関する情報に対応付けられた1つ以上のプロファイル情報を記憶する記憶手段と、
前記記憶された1つ以上のプロファイル情報の中から、当該情報処理装置の現行の設定に関する情報と当該情報処理装置の現行の構成に関する情報に対応付けられたプロファイル情報を選択する選択手段と、
次回の起動が開始される前に前記選択されたプロファイル情報に従って起動用データを取得する取得手段と、
既に実行された起動処理による起動用データの利用の履歴を解析して起動用データごとに優先度を導出する手段と、
前記選択されたプロファイル情報に前記優先度が高い方から順に起動用データを追加して当該プロファイル情報を更新する手段と、
を有する、
ことを特徴とする情報処理装置。
【請求項2】
請求項1に記載の情報処理装置において、
次回の起動が開始される前に、前記選択されたプロファイル情報に従って取得された起動用データを不揮発性の記憶領域にスナップショットイメージとして記憶しておき、
次回の起動が開始された後に、前記スナップショットイメージとして記憶された起動用データを揮発性の記憶領域に展開して、当該展開された起動用データを利用して起動処理を実行する、
ことを特徴とする情報処理装置。
【請求項3】
請求項2に記載の情報処理装置において、
次回の起動が開始される前に、前記選択されたプロファイル情報を利用した仮の起動処理を実行して起動用データを前記揮発性の記憶領域に展開し、当該展開された起動用データを前記不揮発性の記憶領域に前記スナップショットイメージとして記憶する、
ことを特徴とする情報処理装置。
【請求項4】
請求項1に記載の情報処理装置において、
次回の起動が開始される前に、前記選択されたプロファイル情報に従って取得された起動用データを揮発性の記憶領域に展開しておき、
次回の起動が開始された後に、当該展開された起動用データを利用して起動処理を実行する、
ことを特徴とする情報処理装置。
【請求項5】
請求項4に記載の情報処理装置において、
次回の起動が開始される前に、前記選択されたプロファイル情報を利用した仮の起動処理を実行して起動用データを前記揮発性の記憶領域に展開する、
ことを特徴とする情報処理装置。
【請求項6】
コンピュータに、
当該コンピュータの起動が開始された後に利用される起動用データを定めたプロファイル情報を記憶する機能であって、当該コンピュータの設定に関する情報と当該コンピュータの構成に関する情報に対応付けられた1つ以上のプロファイル情報を記憶する機能と、
前記記憶された1つ以上のプロファイル情報の中から、当該コンピュータの現行の設定に関する情報と当該コンピュータの現行の構成に関する情報に対応付けられたプロファイル情報を選択する機能と、
次回の起動が開始される前に前記選択されたプロファイル情報に従って起動用データを取得する機能と、
既に実行された起動処理による起動用データの利用の履歴を解析して起動用データごとに優先度を導出する機能と、
前記選択されたプロファイル情報に前記優先度が高い方から順に起動用データを追加して当該プロファイル情報を更新する機能と、
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置およびプログラムに関する。
【背景技術】
【0002】
特許文献1には、起動開始から起動開始後の特定の時点までの間に揮発性メモリに展開されたデータを、スナップショットイメージの作成に用いるデータと、スワップデバイスに記憶しておくデータに割り振る電子機器が記載されている。特許文献1の電子機器は、どのデータをスナップショットイメージの作成に用いるかをプロファイリングにより判断しており、そのプロファイリングは、ストレージデバイス又はスワップデバイスからメインメモリへデータを読み込むときに発生するページフォールトの履歴を取ることで実行される。
【0003】
また、特許文献2には、初期化処理後の起動ファイルの変化状態を捉えて、起動イメージによる初期化処理と、更新された起動ファイルに基づく初期化処理とを切り替える画像形成装置が記載されている。特許文献2の画像形成装置は、シャットダウン要求時に、起動イメージで特定されるいずれかのデバイスの起動ファイルと保存された対応する起動ファイルとを比較して状態が変化しているかどうかを判断し、起動イメージの状態が変化していると判断した場合、格納手段に格納された起動イメージを削除する。
【0004】
また、特許文献3には、オペレーティングシステムの起動時にユーザにいずれのハイバネーション領域を用いて起動するかを指定させ、指定されたハイバネーション領域の情報を調べ、前回のオペレーティングシステムの終了がハイバネーション割り込みによって終了した場合に、その指定されたハイバネーション領域の情報を用いて復帰処理を行う情報処理システムが記載されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2014-178913号公報
【文献】特開2013-4044号公報
【文献】特開2002-324012号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
例えば特許文献1から3に記載されるように、スナップショットイメージやハイバネーションの機能を利用して起動処理を実行する装置やシステムが知られている。例えば、スナップショットイメージやハイバネーションの機能を利用して、起動処理に利用される起動用データを絞り込むことにより、装置やシステムの起動処理を高速化する試みがなされている。
【0007】
ところが、起動用データを絞り込んだとしても、起動用データのサイズが大きくなればなるほど、起動処理に要する時間は長くなってしまう。その一方で、単純に起動用データのサイズを小さくするだけでは、起動処理に必要なデータが失われてしまい、結果的に起動処理に要する時間が長くなってしまう場合もある。
【0008】
本発明の目的は、情報処理装置の現行の設定に関する情報と現行の構成に関する情報に対応付けられたプロファイル情報を選択することにより、起動用データのサイズを小さくすることで起動処理に要する時間を短くすることにある。
【課題を解決するための手段】
【0009】
請求項1に係る発明は、情報処理装置であって、当該情報処理装置の起動が開始された後に利用される起動用データを定めたプロファイル情報を記憶する手段であって、当該情報処理装置の設定に関する情報と当該情報処理装置の構成に関する情報に対応付けられた1つ以上のプロファイル情報を記憶する記憶手段と、前記記憶された1つ以上のプロファイル情報の中から、当該情報処理装置の現行の設定に関する情報と当該情報処理装置の現行の構成に関する情報に対応付けられたプロファイル情報を選択する選択手段と、次回の起動が開始される前に前記選択されたプロファイル情報に従って起動用データを取得する取得手段と、既に実行された起動処理による起動用データの利用の履歴を解析して起動用データごとに優先度を導出する手段と、前記選択されたプロファイル情報に前記優先度が高い方から順に起動用データを追加して当該プロファイル情報を更新する手段と、を有することを特徴とする情報処理装置である。
【0010】
請求項2に係る発明は、請求項1に記載の情報処理装置において、次回の起動が開始される前に、前記選択されたプロファイル情報に従って取得された起動用データを不揮発性の記憶領域にスナップショットイメージとして記憶しておき、次回の起動が開始された後に、前記スナップショットイメージとして記憶された起動用データを揮発性の記憶領域に展開して、当該展開された起動用データを利用して起動処理を実行する、ことを特徴とする情報処理装置である。
【0011】
請求項3に係る発明は、請求項2に記載の情報処理装置において、次回の起動が開始される前に、前記選択されたプロファイル情報を利用した仮の起動処理を実行して起動用データを前記揮発性の記憶領域に展開し、当該展開された起動用データを前記不揮発性の記憶領域に前記スナップショットイメージとして記憶する、ことを特徴とする情報処理装置である。
【0012】
請求項4に係る発明は、請求項1に記載の情報処理装置において、次回の起動が開始される前に、前記選択されたプロファイル情報に従って取得された起動用データを揮発性の記憶領域に展開しておき、次回の起動が開始された後に、当該展開された起動用データを利用して起動処理を実行する、ことを特徴とする情報処理装置である。
【0013】
請求項5に係る発明は、請求項4に記載の情報処理装置において、次回の起動が開始される前に、前記選択されたプロファイル情報を利用した仮の起動処理を実行して起動用データを前記揮発性の記憶領域に展開する、ことを特徴とする情報処理装置である。
【0015】
請求項6に係る発明は、コンピュータに、当該コンピュータの起動が開始された後に利用される起動用データを定めたプロファイル情報を記憶する機能であって、当該コンピュータの設定に関する情報と当該コンピュータの構成に関する情報に対応付けられた1つ以上のプロファイル情報を記憶する機能と、前記記憶された1つ以上のプロファイル情報の中から、当該コンピュータの現行の設定に関する情報と当該コンピュータの現行の構成に関する情報に対応付けられたプロファイル情報を選択する機能と、次回の起動が開始される前に前記選択されたプロファイル情報に従って起動用データを取得する機能と、既に実行された起動処理による起動用データの利用の履歴を解析して起動用データごとに優先度を導出する機能と、前記選択されたプロファイル情報に前記優先度が高い方から順に起動用データを追加して当該プロファイル情報を更新する機能と、を実現させるプログラムである。
【発明の効果】
【0016】
請求項1に係る発明により、情報処理装置の現行の設定に関する情報と現行の構成に関する情報に対応付けられたプロファイル情報が選択されるため、起動用データのサイズが小さくなり起動処理に要する時間が短くなる。
【0017】
請求項2に係る発明により、情報処理装置の現行の設定と現行の構成に対応したプロファイル情報に従って得られる起動用データのスナップショットイメージを利用した起動処理が実現される。
【0018】
請求項3に係る発明により、仮の起動処理により揮発性の記憶領域に展開される起動用データのスナップショットイメージを得ることができる。
【0019】
請求項4に係る発明により、情報処理装置の現行の設定と現行の構成に応じたプロファイル情報に従って事前に揮発性の記憶領域に展開された起動用データを利用した起動処理が実現される。
【0020】
請求項5に係る発明により、次回の起動が開始された後に利用される起動用データを次回の起動が開始される前に揮発性の記憶領域に展開しておくことができる。
【0021】
請求項1,6に係る発明により、起動処理の実情に即したプロファイル情報の更新が実現される。
【0022】
請求項6に係る発明により、コンピュータの現行の設定に関する情報と現行の構成に関する情報に対応付けられたプロファイル情報が選択されるため、起動用データのサイズが小さくなり起動処理に要する時間が短くなる。
【図面の簡単な説明】
【0023】
【
図1】実施形態の具体例の1つである情報処理装置100を示す図である。
【
図2】ユーザ設定とシステム構成に応じたプロファイル情報を示す図である。
【
図3】シャットダウン処理の具体例1を示す図である。
【
図4】シャットダウン処理の具体例2を示す図である。
【発明を実施するための形態】
【0024】
図1は、発明を実施するための形態(実施形態)の具体例の1つである情報処理装置100を示す図である。
図1に示す具体例の情報処理装置100は、符号を付して図示する構成要素を備えている。
【0025】
制御部10は、
図1に例示する情報処理装置100内の全体を統括的に制御する。制御部10は、例えば各種のプログラムに従って統括的な制御を実行する。制御部10は、例えばCPUやプロセッサなどの演算処理デバイスを利用して実現されてもよい。
【0026】
揮発性記憶部20は、制御部10の作業用の記憶領域として利用される。例えば揮発性記憶部20が備える記憶領域の少なくとも一部が揮発性の記憶領域として利用される。揮発性記憶部20は、例えばランダムアクセスメモリ(Random Access Memory)などの揮発性の記憶デバイスを利用して実現されてもよい。
【0027】
不揮発性記憶部30には、OS(Operating System)のプログラムや様々なアプリケーションのプログラムに関するデータが記憶される。また、例えば不揮発性記憶部30が備える記憶領域の少なくとも一部が不揮発性の記憶領域として利用される。不揮発性記憶部30は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)などの不揮発性の記憶デバイスを利用して実現されてもよい。
【0028】
プロファイル記憶部40は、
図1に例示する情報処理装置100の起動が開始された後に利用される起動データ(起動用のデータ)を定めたプロファイル情報を記憶する。プロファイル記憶部40には、
図1に例示する情報処理装置100の設定に関する情報と情報処理装置100の構成に関する情報に対応付けられた1つ以上のプロファイル情報が記憶される。プロファイル記憶部40は、例えばHDDやSSDなどの不揮発性の記憶デバイスを利用して実現されてもよい。
【0029】
プロファイル選択部50は、プロファイル記憶部40に記憶された1つ以上のプロファイル情報の中から、
図1に例示する情報処理装置100の現行の設定に関する情報と現行の構成に関する情報に対応付けられたプロファイル情報を選択する。
【0030】
起動データ取得部60は、
図1に例示する情報処理装置100の次回の起動が開始される前に、プロファイル選択部50によって選択されたプロファイル情報に従って、情報処理装置100の次回の起動に必要な起動データ(起動用のデータ)を取得する。起動データ取得部60は、例えば、不揮発性記憶部30に記憶された様々なプログラムに関するデータや様々なファイルのデータ中から、起動データとしてプロファイル情報に定められたデータを取得する。
【0031】
イメージ処理部70は、プロファイル情報に従って取得された起動データを不揮発性の記憶領域にスナップショットイメージとして記憶する。イメージ処理部70は、例えば、プロファイル選択部50によって選択されたプロファイル情報に従って起動データ取得部60が取得した起動データを、スナップショットイメージとして不揮発性記憶部30に記憶する。
【0032】
また、イメージ処理部70は、スナップショットイメージを利用した起動が開始された後に、スナップショットイメージとして記憶された起動データを揮発性の記憶領域に展開する。イメージ処理部70は、例えば、不揮発性記憶部30にスナップショットイメージとして記憶された起動データを揮発性記憶部20の記憶領域に展開する。
【0033】
利用履歴解析部80は、既に実行された起動処理による起動データの利用の履歴を解析して起動データごとに優先度を導出する。優先度は、優先の度合い(程度)を示す指標であり、例えば優先的に利用した方がよいと判断される起動データほど高い(大きな)優先度が対応付けられる。利用履歴解析部80は、例えば、
図1に例示する情報処理装置100の過去に実行された起動処理で利用された起動データの履歴(利用履歴)を解析することにより起動データの優先度を導出する。
【0034】
プロファイル処理部90は、利用履歴解析部80による解析の結果に基づいて、必要に応じて、プロファイル記憶部40に記憶されたプロファイル情報を更新する。プロファイル処理部90は、例えば、プロファイル選択部50によって選択されたプロファイル情報に対して、利用履歴解析部80によって導出された優先度が高い方から順に起動用データを追加することにより、そのプロファイル情報を更新してもよい。
【0035】
図1に示す具体例の情報処理装置100は、例えば1台以上のコンピュータを利用して実現されてもよい。そのコンピュータは、CPU等の演算デバイス、メモリやハードディスク等の記憶デバイス、インターネット等の通信回線を利用する通信デバイス、光ディスクや半導体メモリやカードメモリ等の記憶媒体からデータを読み取りデータを書き込むデバイス、ディスプレイ等の表示デバイス、ユーザから操作を受け付ける操作デバイス等のハードウェア資源を備えている。
【0036】
そして、例えば、
図1に例示する情報処理装置100が備える符号を付した複数部分のうちの少なくとも一部の機能に対応したプログラム(ソフトウェア)がコンピュータに読み込まれてメモリ等に記憶され、そのコンピュータが備えるハードウェア資源と読み込まれたソフトウェアとの協働により、
図1に例示する情報処理装置100の少なくとも一部の機能がコンピュータにより実現される。そのプログラムは、例えば、インターネット等の通信回線を介してコンピュータ(情報処理装置100)に提供されてもよいし、光ディスクや半導体メモリやカードメモリ等の記憶媒体に記憶されてコンピュータ(情報処理装置100)に提供されてもよい。
【0037】
また、
図1に示す具体例の情報処理装置100が画像出力の機能を備えるようにしてもよい。例えば、
図1の情報処理装置100は、複数の画像出力機能(印刷機能とスキャナ機能とコピー機能とファクシミリ機能などのうちの少なくともいくつかの機能)を備えた複合型の装置であってもよい。なお、
図1の情報処理装置100は、複数の画像出力機能のうちの1つの機能のみを備えた装置であってもよい。
【0038】
図1に例示する具体例の全体構成は以上のとおりである。次に、
図1の情報処理装置100により実現される処理の具体例について詳述する。なお、
図1に示した構成(部分)については、以下の説明において
図1の符号を利用する。
【0039】
図1の情報処理装置100が利用するプロファイル情報には、情報処理装置100の起動が開始された後に利用される(起動処理で利用される)起動データが定められている。例えば、起動処理で利用されるプログラムやファイルの一覧(リスト)などを示すプロファイル情報が利用されてもよい。
【0040】
プロファイル情報は、プロファイル記憶部40に記憶される。プロファイル記憶部40には、
図1に例示する情報処理装置100の設定に関する情報と情報処理装置100の構成に関する情報に対応付けられた1つ以上のプロファイル情報が記憶される。設定に関する情報の具体例の1つが情報処理装置100のユーザ設定であり、構成に関する情報の具体例の1つが情報処理装置100のシステム構成である。
【0041】
ユーザ設定は、
図1の情報処理装置100を利用するユーザに関する(例えばユーザによって設定される)情報であり、例えば1つ以上の設定項目を含んでいる。ユーザ設定の設定項目に関する具体例には、例えば、言語設定(どの言語を利用しているか)、アプリ情報(どのアプリケーションを利用しているか)、UI設定(ユーザインターフェース画面の表示態様に関する設定)などが含まれる。
【0042】
システム構成は、
図1の情報処理装置100の構成に関する情報である。システム構成の具体例には、例えば、システムメモリ(例えば揮発性記憶部20)のデータ記憶容量、ストレージデバイス(例えば不揮発性記憶部30)のデータ記憶容量、情報処理装置100が利用するソフトウェアのバージョンなどが含まれる。また、
図1の情報処理装置100が画像出力機能を備えた装置であれば、例えば、スキャナ等のデバイスの種類、カラー画像処理機能の有無(白黒のみか否か)、フィニッシャーの有無などの情報がシステム構成に含まれてもよい。
【0043】
図1の情報処理装置100は、例えばユーザ設定とシステム構成に応じた動作を実行する。情報処理装置100は、例えばユーザ設定とシステム構成に応じて選択されるアプリケーションのプログラムやファイルなどを利用する。したがって、ユーザ設定の設定内容とシステム構成の構成内容が異なれば、起動処理で利用されるプログラムやファイルも異なる場合がある。そこで、
図1の情報処理装置100は、ユーザ設定とシステム構成に応じた複数のプロファイル情報を利用する。
【0044】
図2は、ユーザ設定とシステム構成に応じた複数のプロファイル情報の具体例を示す図である。
図2に示す具体例において、ユーザ設定Aとユーザ設定Bには設定内容の少なくとも一部に相違があり、システム構成Xとシステム構成Yには構成内容の少なくとも一部に相違がある。
【0045】
図2に示す具体例では、(1)ユーザ設定Aとシステム構成Xの組み合わせにプロファイル情報P1が対応付けられており、(2)ユーザ設定Bとシステム構成Xの組み合わせにプロファイル情報P2が対応付けられており、(3)ユーザ設定Aとシステム構成Yの組み合わせにプロファイル情報P3が対応付けられており、(4)ユーザ設定Bとシステム構成Yの組み合わせにプロファイル情報P4が対応付けられている。なお、
図2に例示する具体例以外のユーザ設定とシステム構成の組み合わせについてもプロファイル情報が対応付けられてもよい。
【0046】
また、複数のプロファイル情報の組み合わせが利用されてもよい。例えば、
図2に示す具体例でプロファイル情報P4が仮に無かった場合に、ユーザ設定Bに関するプロファイル情報P2(システム構成Xに対応)と、システム構成Yに関するプロファイル情報P3(ユーザ設定Aに対応)の2つのプロファイル情報の組み合わせが、ユーザ設定Bとシステム構成Yに対応付けられたプロファイル情報として利用されてもよい。
【0047】
図1の情報処理装置100は、プロファイル記憶部40に記憶された複数のプロファイル情報の中から現行の設定に関する情報と現行の構成に関する情報に対応付けられたプロファイル情報を選択し、選択したプロファイル情報に従って起動データを取得する。そこで、
図1の情報処理装置100が実行する処理の具体例について説明する。
【0048】
図3は、
図1の情報処理装置100が実行するシャットダウン処理の具体例1を示す図(フローチャート)である。例えば、ユーザが情報処理装置100の電源スイッチを操作して電源オフを指示することにより、
図3に示すフローチャートの処理が開始される。
【0049】
図3に例示するシャットダウン処理が開始されると、まず、現行の設定に関する情報と現行の構成に関する情報が確認される(S301)。例えば、情報処理装置100が現状のユーザ設定の内容と現状のシステム構成の内容を確認する。
【0050】
次に、設定に関する情報と構成に関する情報が変更されたかどうかが確認される(S302)。情報処理装置100は、例えば、前回の起動処理を実行してから現時点(S302の確認時点)までに、現状のユーザ設定の内容と現状のシステム構成の内容が変更されたかどうかを確認する。
【0051】
そして、設定に関する情報と構成に関する情報が変更されている場合には、変更後の現行の設定に関する情報と変更後の現行の構成に関する情報に対応付けられたプロファイル情報があるかどうかが確認され(S303)、変更後の現行の設定に関する情報と変更後の現行の構成に関する情報に対応付けられたプロファイル情報があればそのプロファイル情報が選択される(S304)。例えば、プロファイル選択部50は、プロファイル記憶部40に記憶された1つ以上のプロファイル情報の中に、情報処理装置100の現行のユーザ設定と現行のシステム構成に対応付けられたプロファイル情報があるかどうかを確認し、現行のユーザ設定と現行のシステム構成に対応付けられたプロファイル情報があればそのプロファイル情報を選択する。
【0052】
プロファイル情報が選択されると、情報処理装置100が再起動の処理を実行する(S305)。なお、S302の処理で、設定に関する情報と構成に関する情報が変更されていなければ、プロファイル情報が選択されずに再起動の処理が実行される。また、S303の処理で、変更後の現行の設定に関する情報と変更後の現行の構成に関する情報に対応付けられたプロファイル情報がない場合にも、プロファイル情報が選択されずに再起動の処理が実行される。
【0053】
再起動の処理が実行されると、情報処理装置100がOS(Operating System)とアプリケーションを起動させる(S306)。例えば、S306の処理では、プロファイル情報に依存しない(例えば全てのプロファイル情報に共通の)起動処理が実行される。
【0054】
続いて、プロファイル情報が選択されているかどうかが確認される(S307)。例えば、情報処理装置100がS304の処理でプロファイル情報が選択されたかどうかを確認する。
【0055】
そして、プロファイル情報が選択されていれば、そのプロファイル情報に従って起動データが取得され(S309)、スナップショットイメージが作成される(S310)。例えば、起動データ取得部60が、不揮発性記憶部30に記憶された様々なプログラムに関するデータや様々なファイルのデータ中から、起動データとしてプロファイル情報に定められたデータを取得する。また、イメージ処理部70が、起動データ取得部60によって取得された起動データを、スナップショットイメージとして不揮発性記憶部30に記憶する。次回の起動処理では、そのスナップショットイメージが利用される。
【0056】
これに対し、S307における確認で、プロファイル情報が選択されていなければ、情報処理装置100が前回の起動処理で使用したスナップショットイメージがあるかどうかを確認する(S308)。前回の起動処理で使用したスナップショットイメージがない場合には、プロファイル情報に従った起動データの取得は実行されずに、スナップショットイメージが作成される(S310)。次回の起動処理では、そのスナップショットイメージが利用される。
【0057】
スナップショットイメージが作成されると、情報処理装置100がシステムサスペンドの処理を実行して(S311)、
図3に例示するシャットダウン処理が終了する。なお、S308における確認で、前回の起動処理で使用したスナップショットイメージがある場合には、情報処理装置100がシステムサスペンドの処理を実行して(S311)、
図3に例示するシャットダウン処理が終了する。前回の起動処理で使用したスナップショットイメージがある場合には、そのスナップショットイメージが次回の起動処理でも利用される。
【0058】
図3に例示するシャットダウン処理の具体例1では、シャットダウン処理が終了した後に、揮発性記憶部20(例えばランダムアクセスメモリ)への電源の供給が停止され、揮発性記憶部20の記憶内容が消去されてもよい。
【0059】
図4は、
図1の情報処理装置100が実行するシャットダウン処理の具体例2を示す図(フローチャート)である。例えば、ユーザが情報処理装置100の電源スイッチを操作して電源オフを指示することにより、
図4に示すフローチャートの処理が開始される。
【0060】
なお、
図4に示すシャットダウン処理の具体例2において、S401からS406までの処理は、
図3に示すシャットダウン処理の具体例1のS301からS306までの処理と同じである。そこで、
図4のS401からS406までの処理の説明は省略し、S407の処理から説明する。
【0061】
S407の処理では、プロファイル情報が選択されているかどうかが確認される。例えば、情報処理装置100がS404の処理(S304の処理と同じ)でプロファイル情報が選択されたかどうかを確認する。
【0062】
そして、プロファイル情報が選択されていれば、そのプロファイル情報に従って起動データが取得され(S408)、取得された起動データが揮発性の記憶領域に展開される(S409)。例えば、起動データ取得部60が、不揮発性記憶部30に記憶された様々なプログラムに関するデータや様々なファイルのデータ中から、起動データとしてプロファイル情報に定められたデータを取得する。また、情報処理装置100は、起動データ取得部60によって取得された起動データを、揮発性記憶部20の記憶領域に展開(記憶)する。次回の起動処理では、S409の処理で揮発性記憶部20の記憶領域に展開された起動データが利用される。
【0063】
起動データが揮発性の記憶領域に展開されると、情報処理装置100がシステムサスペンドの処理を実行して(S410)、
図4に例示するシャットダウン処理が終了する。なお、S407における確認で、プロファイル情報が選択されていなければ、S408とS409の処理が実行されずに、情報処理装置100がシステムサスペンドの処理を実行して(S410)、
図4に例示するシャットダウン処理が終了する。
【0064】
図4に例示するシャットダウン処理の具体例2では、シャットダウン処理が終了した後に、揮発性記憶部20(例えばランダムアクセスメモリ)への電源の供給が続けられ、揮発性記憶部20の記憶内容が維持される。
【0065】
図5は、
図1の情報処理装置100が実行する起動処理の具体例を示す図(フローチャート)である。例えば、シャットダウン処理の具体例1(
図3)または具体例2(
図4)により情報処理装置100がシャットダウンされた後、ユーザが情報処理装置100の電源スイッチを操作して電源オンを指示することにより、
図5に示すフローチャートの処理が開始される。
【0066】
図5に例示する起動処理が開始されると、まず、情報処理装置100がシステムリジュームの処理を実行する(S501)。例えば、具体例1(
図3)によりシャットダウンされている場合、情報処理装置100は、具体例1のシャットダウン処理で不揮発性記憶部30にスナップショットイメージとして記憶された起動データを揮発性記憶部20の記憶領域に展開(記憶)する。また、例えば、具体例2(
図4)によりシャットダウンされている場合には、具体例2のシャットダウン処理で既に揮発性記憶部20の記憶領域に展開されている起動データが利用される。こうして、情報処理装置100は、起動途中の状態(例えば
図3のS306または
図4のS406の処理が終了した状態)を再現する。
【0067】
次に、アプリケーションの残処理が実行される(S502)。情報処理装置100は、起動途中の状態(例えば
図3のS306または
図4のS406の処理が終了した状態)から、揮発性記憶部20の記憶領域に展開されている起動データを利用して、残りのアプリケーションの処理を実行して起動処理を完了させる。
【0068】
アプリケーションの残処理に利用されるデータは、予め揮発性記憶部20(例えばランダムアクセスメモリ)の記憶領域に展開されているため、それらのデータを不揮発性記憶部30から読み出す場合に比べて、高速な処理(アプリケーションの残処理)が実現される。
【0069】
また、起動処理が完了した後に、
図1の情報処理装置100は、例えばS503からS506に例示するプロファイル情報の更新または作成の処理を実行してもよい。まず、前回までの起動処理の解析が行われる(S503)。例えば、利用履歴解析部80が、既に実行された起動処理による起動データの利用の履歴を解析して起動データごとに優先度を導出する。
【0070】
例えば、優先的に利用した方がよいと判断される起動データほど高い(大きな)優先度が対応付けられる。起動データごとの優先度は、例えば、対象となるプロファイル情報(例えば
図3のS304または
図4のS404で選択されたプロファイル情報)とは異なる他のプロファイル情報に起動データが含まれる頻度、起動データへのアクセスの順序、起動データのサイズ、起動データの圧縮率(起動データが圧縮されている場合)などを利用して決定されてもよい。
【0071】
前回までの起動処理の解析が行われて起動データごとの優先度が導出されると、優先度に従って起動データがプロファイル情報に追加される(S504)。起動データの追加は終了条件が満たされるまで繰り返される(S505)。例えば、プロファイル処理部90は、対象となるプロファイル情報(例えば
図3のS304または
図4のS404で選択されたプロファイル情報)に対して、利用履歴解析部80によって導出された優先度が高い方から順に起動用データを追加する。プロファイル処理部90は、例えば、プロファイル情報に含まれる起動データの総サイズまたは起動データの総数が予め定められた上限に達するまで、優先度が高い方から順に起動用データを追加する。
【0072】
こうして、起動データが追加されてプロファイル情報が更新される(S506)。例えば、
図3のS304または
図4のS404で選択されたプロファイル情報に、
図5のS504とS505の処理で起動データが追加されて、更新後のプロファイル情報がプロファイル記憶部40に記憶される。なお、例えば、
図3のS304または
図4のS404でプロファイル情報が選択されていなければ、
図5のS504とS505の処理で追加される起動データによって新たなプロファイル情報が作成されてもよい。
【0073】
図3から
図5を利用して説明した具体例において、現行のユーザ設定と現行のシステム構成に対応付けられたプロファイル情報が選択されていれば、プロファイル情報の選択を実施しない場合よりも、プロファイル情報に従って得られる起動データのサイズが小さくなる。
【0074】
例えば、ユーザ設定とシステム構成に依存しないプロファイル情報を利用しようとすると、複数のユーザ設定と複数のシステム構成で必要とされる起動データを網羅するプロファイル情報が必要になる。これに対し、現行のユーザ設定と現行のシステム構成に対応付けられたプロファイル情報を選択すれば、例えば現行のユーザ設定と現行のシステム構成に必要な起動データに絞り込んだプロファイル情報を利用すればよいため、プロファイル情報を選択しない場合よりも、起動データのサイズが小さくなる。また、起動データのサイズが小さくなることにより、起動データのサイズが大きい場合に比べて、起動処理の時間が短くなる。
【0075】
以上、本発明の好適な実施形態を説明したが、上述した実施形態は、あらゆる点で単なる例示にすぎず、本発明の範囲を限定するものではない。本発明は、その本質を逸脱しない範囲で各種の変形形態を包含する。
【符号の説明】
【0076】
10 制御部、20 揮発性記憶部、30 不揮発性記憶部、40 プロファイル記憶部、50 プロファイル選択部、60 起動データ取得部、70 イメージ処理部、80 利用履歴解析部、90 プロファイル処理部、100 情報処理装置。