(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
当該情報処理装置が有する所定の機能が利用される前に、当該所定の機能に関する一部の処理を実行する実行部と、
前記一部の処理の実行に応じて、前記一部の処理において利用されるデータを第１の記憶部から第２の記憶部に読み込む読込部と、
前記所定の機能の実行履歴を実行履歴記憶部に記憶する記憶処理部と、
を有し、
前記実行部は、前記実行履歴記憶部に記憶された実行履歴に応じて、前記情報処理装置の起動時に前記一部の処理を実行する、
ことを特徴とする情報処理装置。
【請求項２】
前記実行部は、第１の条件が満たされたタイミングで、前記一部の処理を実行する、
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記実行部は、第２の条件が満たされたタイミングで、前記一部の処理が実行されることで読み込まれたデータを前記第２の記憶部から解放する、
ことを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記第１の記憶部は、不揮発性の記憶部であり、
前記第２の記憶部は、揮発性の記憶部である、
ことを特徴とする請求項１乃至３いずれか一項記載の情報処理装置。
【請求項５】
情報処理端末と前記情報処理端末を操作部として有する情報処理装置とを含む情報処理システムであって、
当該情報処理システムが有する所定の機能が利用される前に、当該所定の機能に関する一部の処理を実行する実行部と、
前記一部の処理の実行に応じて、前記一部の処理において利用されるデータを第１の記憶部から第２の記憶部に読み込む読込部と、
前記所定の機能の実行履歴を実行履歴記憶部に記憶する記憶処理部と、
を有し、
前記実行部は、前記実行履歴記憶部に記憶された実行履歴に応じて、前記情報処理装置の起動時に前記一部の処理を実行する、
ことを特徴とする情報処理システム。
【請求項６】
情報処理装置が実行する情報処理方法であって、
当該情報処理装置が有する所定の機能が利用される前に、当該所定の機能に関する一部の処理を実行する実行手順と、
前記一部の処理の実行に応じて、前記一部の処理において利用されるデータを第１の記憶部から第２の記憶部に読み込む読込手順と、
前記所定の機能の実行履歴を実行履歴記憶部に記憶する記憶手順と、
を有し、
前記実行手順は、前記実行履歴記憶部に記憶された実行履歴に応じて、前記情報処理装置の起動時に前記一部の処理を実行する、
ことを特徴とする情報処理方法。
【請求項７】
前記実行手順は、第１の条件が満たされたタイミングで、前記一部の処理を実行する、
ことを特徴とする請求項６記載の情報処理方法。
【請求項８】
前記実行手順は、第２の条件が満たされたタイミングで、前記一部の処理が実行されることで読み込まれたデータを前記第２の記憶部から解放する、
ことを特徴とする請求項６又は７記載の情報処理方法。
【請求項９】
前記第１の記憶部は、不揮発性の記憶部であり、
前記第２の記憶部は、揮発性の記憶部である、
ことを特徴とする請求項６乃至８いずれか一項記載の情報処理方法。
【請求項１０】
情報処理装置に、
当該情報処理装置が有する所定の機能が利用される前に、当該所定の機能に関する一部の処理を実行する実行手順と、
前記一部の処理の実行に応じて、前記一部の処理において利用されるデータを第１の記憶部から第２の記憶部に読み込む読込手順と、
前記所定の機能の実行履歴を実行履歴記憶部に記憶する記憶手順と、
を実行させ、
前記実行手順は、前記実行履歴記憶部に記憶された実行履歴に応じて、前記情報処理装置の起動時に前記一部の処理を実行する、
ことを特徴とするプログラム。
【請求項１１】
前記実行手順は、第１の条件が満たされたタイミングで、前記一部の処理を実行する、
ことを特徴とする請求項１０記載のプログラム。
【請求項１２】
前記実行手順は、第２の条件が満たされたタイミングで、前記一部の処理が実行されることで読み込まれたデータを前記第２の記憶部から解放する、
ことを特徴とする請求項１０又は１１記載のプログラム。
【請求項１３】
前記第１の記憶部は、不揮発性の記憶部であり、
前記第２の記憶部は、揮発性の記憶部である、
ことを特徴とする請求項１０乃至１２いずれか一項記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
ＰＣ（Personal Computer）や組み込み機器等の情報処理装置において、ユーザが何度も利用する機能に関連するプログラム等をメモリ等にキャッシュすることで、利用時における機能の応答性を向上させることができる。当該機能に関するプログラム等がキャッシュされていれば、当該機能の利用が指示された際に、当該プログラムのロードや初期化等の処理を省くことができるからである。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、或る機能に関連するプログラム等がキャッシュされるためには、当該機能が利用される必要が有る。したがって、情報処理装置の起動後において、或る機能の初回の利用時には、当該機能が実行されるまでに遅延が生じてしまい、ユーザにストレスを感じさせてしまう可能性が有る。
【０００４】
本発明は、上記の点に鑑みてなされたものであって、機能の利用時の応答性を向上させることを目的とする。
【課題を解決するための手段】
【０００５】
そこで上記課題を解決するため、情報処理装置は、当該情報処理装置が有する所定の機能が利用される前に、当該所定の機能に関する一部の処理を実行する実行部と、前記一部の処理の実行に応じて、前記一部の処理において利用されるデータを第１の記憶部から第２の記憶部に読み込む読込部と、前記所定の機能の実行履歴を実行履歴記憶部に記憶する記憶処理部と、を有し、前記実行部は、前記実行履歴記憶部に記憶された実行履歴に応じて、前記情報処理装置の起動時に前記一部の処理を実行する。
【発明の効果】
【０００６】
機能の利用時の応答性を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】第１の実施の形態における情報処理システムの構成例を示す図である。
【図２】第１の実施の形態における情報処理端末のハードウェア構成例を示す図である。
【図３】第１の実施の形態における情報処理端末の機能構成例を示す図である。
【図４】情報処理端末が実行する処理手順の一例を説明するためのシーケンス図である。
【発明を実施するための形態】
【０００８】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、第１の実施の形態における情報処理システムの構成例を示す図である。図１に示される情報処理システム１において、画像形成装置１０は、情報処理端末２０と通信可能に接続される。画像形成装置１０と情報処理端末２０との通信は、例えば、ＵＳＢ（Universal Serial Bus）、近距離無線通信、又はＬＡＮ（有線又は無線の別は問わない）等のネットワークを介して行われる。
【０００９】
画像形成装置１０は、印刷、スキャン、コピー、及びＦＡＸ送受信等のうちの２以上の機能を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を有する機器が画像形成装置１０として用いられてもよい。また、本実施の形態における画像形成装置１０は、機器の一例であり、プロジェクタ、テレビ会議システム、又はデジタルカメラ等の機器が、画像形成装置１０の代わりに用いられてもよい。
【００１０】
情報処理端末２０は、例えば、スマートフォンやタブレット型端末等、単独で完結した情報処理を実行可能な電子機器である。本実施の形態において、情報処理端末２０は、画像形成装置１０の操作部として機能する。より詳しくは、情報処理端末２０は、従来、画像形成装置１０の専用の操作部として設置されていた操作パネルの代わりに、画像形成装置１０に接続される。
【００１１】
情報処理端末２０は、例えば、画像形成装置１０の所定の位置（例えば、操作パネルが配置される位置）に固定されて設置される。したがって、情報処理端末２０及び画像形成装置１０とは、一台の装置として把握されてもよい。または、情報処理端末２０は、画像形成装置１０から取り外し可能（分離可能）であってもよい。情報処理端末２０が取り外された状態において、情報処理端末２０は、Ｂｌｕｅｔｏｏｔｈ（登録商標）又は赤外線等の無線通信等を介して、画像形成装置１０の操作部として機能可能であってもよい。
【００１２】
図２は、第１の実施の形態における情報処理端末のハードウェア構成例を示す図である。図２において、情報処理端末２０は、ＣＰＵ２０１、メモリ２０２、補助記憶装置２０３、タッチパネル２０４、及び無線通信装置２０５等を有する。
【００１３】
補助記憶装置２０３は、不揮発性の記憶部の一例であり、例えば、情報処理端末２０にインストールされたプログラム等を記憶する。メモリ２０２は、揮発性の記憶部の一例であり、例えば、プログラムの起動指示があった場合に、補助記憶装置２０３からプログラムを読み出して記憶する。ＣＰＵ２０１は、メモリ２０２に記憶されたプログラムに従って情報処理端末２０に係る機能を実現する。
【００１４】
タッチパネル２０４は、入力機能と表示機能との双方を備えた電子部品であり、情報の表示や、ユーザからの入力の受け付け等を行う。タッチパネル２０４は、表示装置２１１及び入力装置２１２等を含む。
【００１５】
表示装置２１１は、液晶ディスプレイ等であり、タッチパネル２０４の表示機能を担う。入力装置２１２は、表示装置２１１に対する接触物の接触を検出するセンサを含む電子部品である。接触物の接触の検出方式は、静電方式、抵抗膜方式、又は光学方式等、公知の方式のいずれであってもよい。なお、接触物とは、タッチパネル２０４の接触面（表面）に接触する物体をいう。斯かる物体の一例として、ユーザの指や専用又は一般のペン等が挙げられる。
【００１６】
無線通信装置２０５は、無線ＬＡＮ（Local Area Network）又は移動体通信網等における通信を行うために必要とされるアンテナ等の電子部品である。
【００１７】
図３は、第１の実施の形態における情報処理端末の機能構成例を示す図である。図３において、情報処理端末２０は、機能実行部２１及びプラットフォーム部２２等を含む。これら各部は、情報処理端末２０にインストールされた１以上のプログラムが、ＣＰＵ２０１に実行させる処理により実現される。情報処理端末２０は、また、機能情報記憶部２３及びログ記憶部２４等を利用する。これら各記憶部は、例えば、補助記憶装置２０３等を用いて実現可能である。
【００１８】
機能実行部２１は、それぞれが特定の機能を実現するプログラムの集合である。当該プログラムは、ユーザによって直接的に利用されるアプリケーションプログラムであってもよいし、アプリケーションプログラムから呼び出される下位のプログラムであってもよい。また、１つの機能実行部２１は、複数のプログラムによって実現されてもよい。図３には、機能実行部２１として、機能Ａ実行部２１ａ及び機能Ｂ実行部２２ｂ等が例示されている。機能Ａ実行部２１ａは、機能Ａを実行する。機能Ｂ実行部２２ｂは、機能Ｂを実行する。機能Ａ及び機能Ｂは、具体的な機能が抽象化された表現である。例えば、機能Ａは、暗号機能であってもよい。
【００１９】
プラットフォーム部２２は、機能実行部２１に対して基盤となる機能を提供する部分であり、例えば、Ｊａｖａ（登録商標）の仮想マシンやＯＳ（Operating System）等を含んでいてもよい。図３において、プラットフォーム部２２は、リソース管理部２２１、システム部２２２、機能設定部２２３、機能管理部２２４等を含む。
【００２０】
リソース管理部２２１は、各種の機能の実行に必要なリソース（メモリ２０２やＣＰＵ２０１等）の負荷等を監視する。
【００２１】
システム部２２２は、或る機能の実行時おいて、当該機能が必要とするデータ（クラス等）のロード、初期化、及びキャッシュ等を行う。例えば、システム部２２２は、ＯＳやＪａｖａ（登録商標）の仮想マシンによって実現されてもよい。
【００２２】
機能設定部２２３は、各機能（各機能実行部２１）の有効化又は無効化の設定をユーザから受け付ける。
【００２３】
機能管理部２２４は、機能設定部２２３が有効化の設定をユーザから受け付けた機能に対応する機能実行部２１に対して、準備処理の実行指示を行う。本実施の形態において、機能実行部２１の準備処理とは、当該機能実行部２１が実行する機能の初回以降の利用時の応答性を向上させるために実行される処理をいう。例えば、準備処理では、当該機能実行部２１が利用するプログラム又はプログラム群等のデータについて、補助記憶装置２０３からメモリ２０２（厳密には、キャッシュメモリ）へのロード、初期化、及びキャッシュ等が行われることを目的とする処理である。
【００２４】
このような準備処理の目的に鑑みれば、或る機能実行部２１の準備処理においては、当該機能実行部２１が利用するクラス等のデータのロード等の処理が明示的に実装されることが考えられる。しかしながら、各機能実行部２１が利用するクラス等を、開発者が予め把握するには手間がかかり、煩雑な作業が要求される。特に、Ｊａｖａ（登録商標）のような仮想マシンを使用する場合は、例えば、暗号機能の実行に際し、どのクラスがロードされ、各クラスについてどのような初期化処理が行われるかは、仮想マシン内においてブラックボックス化されているため、開発者がこれらの情報を正確に把握するのは困難である。
【００２５】
そこで、本実施の形態では、或る機能実行部２１の準備処理においては、当該機能の一部分について簡易的又はダミー的な処理が実装される。そうすることで、準備処理の実行により、必要なクラス等の一部又は全部のロードや初期化等に加え、当該クラス等のキャッシュが暗黙的にシステム部２２２によって実行されることを期待する。例えば、ＡＥＳ（Advanced Encryption Standard）を使用した暗号機能に係る機能実行部２１であれば、簡易な文字列（例えば、「ＳＡＭＰＬＥ」等）についてのＡＥＳ（Advanced Encryption Standard）を使用した暗号処理が準備処理として実装されてもよい。また、認証機能に係る機能実行部２１であれば、Ｓｉｇｎａｔｕｒｅクラスによるサンプルデータの署名検証処理が、準備処理として実行されてもよい。また、暗号通信機能に係る機能実行部２１であれば、ローカルループバックによるＳＳＬ（Secure Socket Layer）／ＴＬＳ（Transport Layer Security）通信処理が、準備処理として実行されてもよい。このような準備処理では、必要なクラス等の全てのロード、初期化、キャッシュ等が行われない可能性も有る。しかし、必要なクラス等の一部についてでも、ロード、初期化、キャッシュ等が行われることで、ユーザによる機能の利用時には、当該一部のクラスに関するロード及び初期化に等かかる時間を短縮することができる。したがって、或る機能の初回利用時における機能の応答性を向上させることができる。
【００２６】
なお、準備処理において実行される、機能の一部分に係る処理は、例えば、当該機能に係る機能実行部２１が実行する全通りのパスについての共通のパスに係る処理であってもよい。又は、全通りのパスのうち、実行頻度が高いと予想されるパスに係る処理であってもよい。全通りのパスとは、全ての分岐先を辿ることによって得られるパスをいう。又は、全通りのパスのうち、基本系列に係るパスであってもよい。或る機能に関して、基本系列とは、当該機能についての基本的な（又は一般的な）処理手順をいう。
【００２７】
以下、情報処理端末２０が実行する処理手順について説明する。図４は、情報処理端末が実行する処理手順の一例を説明するためのシーケンス図である。図４では、機能実行部２１の具体例として、機能Ａ実行部２１ａに関して説明する。但し、機能Ｂ実行部２２ｂや他の機能実行部２１についても実行される処理手順は同様でよい。
【００２８】
例えば、機能Ａ実行部２１ａは、情報処理端末２０を機能Ａ実行部２１ａとして機能させるプログラムのインストール直後等において、機能ＩＤの発行を機能管理部２２４に要求する（Ｓ１０１）。機能管理部２２４は、機能Ａ実行部２１ａについて、他の機能実行部２１と重複しない機能ＩＤを生成し、当該機能ＩＤを機能実行部２１に応答する（Ｓ１０２）。
【００２９】
続いて、機能Ａ実行部２１ａは、当該機能ＩＤと、機能Ａ実行部２１ａの準備処理の識別情報と、機能Ａ実行部２１ａの終了処理の識別情報と、準備条件と、終了条件とを含む機能情報の登録を機能管理部２２４に要求する（Ｓ１０３）。機能管理部２２４は、当該要求に応じ、当該機能情報を機能情報記憶部２３に記憶する（Ｓ１０４）。したがって、機能情報記憶部２３には、機能実行部２１ごとに、機能ＩＤ、準備処理の識別情報、終了処理の識別情報、準備条件、及び終了条件等が対応付けられて記憶される。
【００３０】
終了処理とは、機能Ａの終了時（機能Ａ実行部２１ａのアンロード時）に実行される処理をいう。例えば、機能Ａにおいて利用されたクラスアンロードや、メモリの節約のためのキャッシュクリア又はヒープ領域の解放等が終了処理において実行される。
【００３１】
準備処理の識別情報及び終了処理の識別情報とは、例えば、準備処理又は終了処理のアドレス情報である。具体的には、Ｃ／Ｃ＋＋言語であれば、準備処理が実装されている関数のポインタが当該アドレス情報であってもよい。また、Ｊａｖａ（登録商標）であれば、準備処理が実装されているクラスのメソッドへの参照が当該アドレス情報であってもよい。
【００３２】
また、準備条件とは、準備処理の実行タイミングを規定する情報をいう。すなわち、準備条件が満たされた場合に、準備処理が実行される。第１の実施の形態では、「機能Ａの有効化がユーザによって設定された際に、メモリの空き容量が所定値以上である」ことが、準備条件として指定された例について説明する。機能Ａが有効化されたということは、機能Ａが利用される可能性が高くなったと判断することができ、メモリの空き容量が所定値以上であれば、機能Ａに関する準備処理の実行により、他の機能の性能に対する影響が小さいと考えられるからである。なお、準備条件が指定されない場合には、例えば、情報処理端末２０の起動時等、既定の条件が準備条件として採用されてもよい。
【００３３】
また、終了条件とは、終了処理の実行タイミングを規定する情報をいう。すなわち、終了条件が満たされた場合に、終了処理が実行される。例えば、機能Ａの無効化が設定されたことが、終了条件として指定されてもよい。
【００３４】
なお、ステップＳ１０１〜Ｓ１０３は、例えば、情報処理端末２０を機能Ａ実行部２１ａとして機能させるプログラムのインストール後に１回だけ実行されればよい。
【００３５】
その後、情報処理システム１が起動されている状態における任意のタイミングで、ユーザによって機能Ａの有効化が設定されたとする（Ｓ２０１）。当該設定は、例えば、機能設定部２２３が表示装置２１１に表示する設定画面を介して行われる。機能設定部２２３は、当該設定に応じ、機能Ａに対応する機能Ａ実行部２１ａに有効化を通知する（Ｓ２０２）。機能Ａ実行部２１ａは、自らの機能ＩＤ（以下、「対象機能ＩＤ」という。）を指定して、自らの有効化を機能管理部２２４に通知する（Ｓ２０３）。
【００３６】
機能管理部２２４は、機能Ａ実行部２１ａからの有効化の通知に応じ、対象機能ＩＤに対応付けられて機能情報記憶部２３に記憶されている準備条件を確認する（Ｓ２０４）。ここで、機能Ａ実行部２１ａに関する準備条件は、「機能Ａの有効化がユーザによって指定された際に、メモリの空き容量が所定値以上であること」である。したがって、メモリの空き容量が所定値以上であれば、当該準備条件は満たされる。そこで、機能管理部２２４は、リソース管理部２２１に対してリソース情報の取得を要求する（Ｓ２０５）。リソース管理部２２１は当該要求に応じ、ＣＰＵの負荷状況、Ｉ／Ｏの使用頻度、及びメモリの使用状況等を含むリソース情報を機能管理部２２４に通知する（Ｓ２０６）。
【００３７】
当該リソース情報に基づいて、メモリの空き容量が所定値以上であると判定される場合、ステップＳ３０１〜Ｓ３０９が実行される。
【００３８】
ステップＳ３０１において、機能管理部２２４は、対象機能ＩＤに対応付けられて機能情報記憶部２３に記憶されている準備処理の識別情報に基づいて、機能Ａ実行部２１ａの準備処理を呼び出す（Ｓ３０１）。当該呼び出しに応じ、機能Ａ実行部２１ａは、機能Ａに関する準備処理を実行する（Ｓ３０２）。その結果、システム部２２２は、当該準備処理において必要とされたクラス等のデータについて、ロード、初期化、及びキャッシュ等を行う（Ｓ３０３）。Ｊａｖａ（登録商標）であれば、初期化として、ＪＩＴコンパイラによるネイティブコードへのコンパイルが実行されてもよい。
【００３９】
また、機能管理部２２４は、準備処理の実行中に、当該準備処理に関する負荷を計測する（Ｓ３０４）。例えば、メモリ使用量の増加量や、ＣＰＵ負荷の増加量等が計測される。機能管理部２２４は、準備処理が終了すると、計測結果を対象機能ＩＤに対応付けて、機能情報記憶部２３に記憶する。なお、当該計測結果は、次回の準備条件の充足の有無の判定に利用されてもよい。例えば、「メモリの空き容量が所定値以上である」、という条件において、「所定値」に対して、当該計測結果における「メモリの使用量の増加量＋α」が当てはめられてもよい。
【００４０】
その後、任意のタイミングで、機能Ａの利用要求がユーザによって入力されると（Ｓ３０５）、機能Ａ実行部２１ａは、機能Ａを実行する（Ｓ３０６）。この際、機能Ａに関しては、準備処理が実行されているため、情報処理端末２０の起動後に機能Ａが初めて利用される場合であっても、準備処理が実行されない場合に比べて、機能Ａの応答性を高めることができる。
【００４１】
機能Ａの実行が完了すると、機能Ａ実行部２１ａは、対象機能ＩＤを指定して、機能Ａが実行されたことを機能管理部２２４に通知する（Ｓ３０７）。機能管理部２２４は、当該通知に応じ、機能Ａの実行履歴をログ記憶部２４に記憶する（Ｓ３０８）。例えば、現在日時及び対象機能ＩＤ等を含むログ情報が、ログ記憶部２４に記憶される。
【００４２】
続いて、機能Ａ実行部２１ａは、必要に応じて、機能Ａの実行結果を応答する（Ｓ３０９）。
【００４３】
一方、メモリの空き容量が所定値未満であると判定される場合、ステップＳ４０５以降が実行される。ステップＳ４０５以降における各ステップの処理内容は、ステップ番号の１の位の値が共通するステップＳ３０Ｘ（Ｘは、１〜９）と同じでよい。
【００４４】
ステップＳ４０５以降では、ユーザが機能Ａを利用するまでに事前に機能Ａの準備処理が実行されていないため、機能Ａの実行時（Ｓ４０６）において、ステップＳ３０３と同様の処理が実行される（Ｓ４０３）。したがって、この場合、機能Ａが実質的に実行されるまでにはステップＳ４０３に要する時間だけ遅延が生じることになる。
【００４５】
なお、例えば、ユーザによって、機能Ａの無効化が設定された場合、機能管理部２２４は、終了条件に基づいて、機能Ａの終了処理を呼び出す。その結果、機能Ａ実行部２１ａによって終了処理が実行されて、準備処理によって消費された一部又は全部のリソースが解放される。
【００４６】
又は、準備処理の実行時から機能Ａが利用されずに所定時間経過したことが、機能Ａの終了条件とされてもよい。この場合、機能管理部２２４は、機能Ａの準備処理の実行後の所定時間内に機能Ａが利用されない場合、機能Ａの終了処理を呼び出す。
【００４７】
また、図４では、メモリの空き容量について言及したが、ＣＰＵの負荷やその他のリソースの負荷等に関する条件が、準備条件として指定されてもよい。
【００４８】
上述したように、第１の実施の形態によれば、ユーザによって或る機能が利用される前に、当該機能に関して準備処理が実行される。したがって、当該機能が利用される際には、当該機能に必要なクラス等のデータが、ロードされ、初期化され、キャッシュされていることを期待することができる。その結果、当該機能の利用時の応答性の向上を期待することができる。
【００４９】
次に、第２の実施の形態について説明する。第２の実施の形態では第１の実施の形態と異なる点について説明する。したがって、特に言及されない点については、第１の実施の形態と同様でもよい。
【００５０】
第２の実施の形態では、準備処理の実行のタイミングについて、他の例を説明する。機能管理部２２４は、ログ記憶部２４に記憶されたログ情報に基づいて、各機能に関する準備処理の実行のタイミングを判断してもよい。
【００５１】
第１の実施の形態によれば、機能Ａが実行されるたびに機能Ａが実行されたことを示すログ情報がログ記憶部２４に記憶される。また、例えば、システム部２２２が、情報処理端末２０の電源のＯＮ時と、電源のＯＦＦ時とにおいて、電源のＯＮ又はＯＦＦを示すログ情報をログ記憶部２４に記憶してもよい。
【００５２】
このようなログ記憶部２４によれば、機能管理部２２４は、情報処理端末２０の各回の起動（電源ＯＮ）から電源ＯＦＦまでの期間（以下、「起動期間」という。）について、機能Ａの実行回数を把握することができる。また、機能管理部２２４は、過去Ｎ回の起動期間のうち、何回の起動期間において、機能Ａが実行されたのかを把握することができる。
【００５３】
例えば、過去１０回の起動期間のうち、９回の起動期間において機能Ａが実行され、１回の起動期間における起動Ａの実行回数の平均値が３回であれば、１回の起動期間において機能Ａが実行される回数の期待値が、以下のように算出されてもよい。
９÷１０×３＝２．７
機能管理部２２４は、例えば、情報処理端末２０の毎回の起動時において、当該期待値を、機能情報記憶部２３に機能情報が記憶されている各機能について算出する。機能管理部２２４は、当該期待値が、予め設定された閾値以上である機能については、情報処理端末２０の起動時において準備処理を呼び出す。又は、当該期待値が上位Ｍ番目までの機能の準備処理が呼び出されてもよい。また、情報処理端末２０の起動処理の完了時におけるリソースの負荷状況に応じて、Ｍの値が変更されてもよい。
【００５４】
機能管理部２２４は、準備処理を呼び出した後、情報処理端末２０の起動時から所定時間利用されない機能については、終了処理を呼び出してもよい。
【００５５】
なお、第２の実施の形態は、第１の実施の形態と組み合わせて実施されてもよい。
【００５６】
上述したように、第２の実施の形態によれば、情報処理端末２０の起動時に、機能の実行履歴に応じて、当該機能の準備処理が実行される。その結果、当該機能の利用時の応答性を向上させることができる。
【００５７】
なお、上記各実施の形態において、情報処理端末２０が実行した処理は、画像形成装置１０が実行してもよい。すなわち、画像形成装置１０が図３の機能構成を有してもよい。
【００５８】
なお、上記各実施の形態において、情報処理端末２０又は画像形成装置１０は、情報処理装置の一例である。機能Ａは、所定の機能の一例である。機能Ａ実行部２１ａは、実行部の一例である。システム部２２２は、読込部の一例である。機能管理部２２４は、記憶処理部の一例である。ログ記憶部２４は、実行履歴記憶部の一例である。準備条件は、第１の条件の一例である。終了条件は、第２の条件の一例である。補助記憶装置２０３は、第１の記憶部の一例である。メモリ２０２は、第２の記憶部の一例である。
【００５９】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００６０】
１            情報処理システム
１０          画像形成装置
２０          情報処理端末
２１          機能実行部
２２          プラットフォーム部
２１ａ        機能Ａ実行部
２２ｂ        機能Ｂ実行部
２２１        リソース管理部
２２２        システム部
２２３        機能設定部
２２４        機能管理部
２３          機能情報記憶部
２４          ログ記憶部
２０１        ＣＰＵ
２０２        メモリ
２０３        補助記憶装置
２０４        タッチパネル
２０５        無線通信装置
２１１        表示装置
２１２        入力装置
【先行技術文献】
【特許文献】
【００６１】
【特許文献１】特開２０１５−９２３１８号公報
【図１】
0006665596.tif 000002
【図２】
0006665596.tif 000003
【図３】
0006665596.tif 000004
【図４】
0006665596.tif 000005