(57)【要約】【課題】画像処理装置等の情報処理装置において、追加ソフトウェアによりその計算機資源（リソース）を有効活用しつつ、装置の基本機能の実行を担保し得る技術を提供する。【解決手段】画像処理装置１２の制御部１２０は、プリント、コピー、ＦＡＸ、スキャン等の基本機能の実行に加え、追加ソフトウェアアプリケーションをインストールすることで追加的な機能を実行する。制御部１２０は、装置に対して利用者が接近する等の基本機能の使用の予兆を検知すると、追加ソフトウェアアプリケ−ションのリソース割り当てに上限を設定し、基本機能のリソースを確保する。【選択図】図１
2019057219.tif 000002
【特許請求の範囲】
【請求項１】
予め定められた基本機能を実行する第１実行部と、
追加ソフトウェアアプリケーションを実行する第２実行部と、
前記基本機能の実行予兆を検知する検知部と、
前記検知部で前記実行予兆を検知した場合に、前記第１実行部へのリソース割り当てを増大させる制御部と、
を備える情報処理装置。
【請求項２】
前記基本機能は複数存在し、
前記制御部は、前記実行予兆を検知した場合に、前記第１実行部の複数の基本機能毎に前記リソース割り当てを増大させる
請求項１に記載の情報処理装置。
【請求項３】
前記検知部は、前記実行予兆とともにその程度を検知し、
前記制御部は、前記程度に応じて前記第１実行部へのリソース割り当てを段階的に増大させる
請求項１に記載の情報処理装置。
【請求項４】
予め定められた基本機能を実行する第１実行部と、
追加ソフトウェアアプリケーションを実行する第２実行部と、
前記基本機能の実行予兆を検知する検知部と、
前記検知部で前記実行予兆を検知した場合に、前記第２実行部へのリソース割り当てを減少させる制御部と、
を備える情報処理装置。
【請求項５】
前記制御部は、前記検知部で前記実行予兆を検知した場合に、前記第２実行部へのリソース割り当てに上限を設定する
請求項４に記載の情報処理装置。
【請求項６】
前記追加ソフトウェアアプリケーションは複数存在し、
前記制御部は、前記実行予兆を検知した場合に、前記第２実行部の複数の追加ソフトウェアアプリケーション毎に前記リソース割り当てを減少させる
請求項４に記載の情報処理装置。
【請求項７】
前記検知部は、前記実行予兆とともにその程度を検知し、
前記制御部は、前記程度に応じて前記第２実行部へのリソース割り当てを段階的に減少させる
請求項４に記載の情報処理装置。
【請求項８】
前記検知部は、利用者との相対的位置関係に応じて前記実行予兆を検知する
請求項１、４のいずれかに記載の情報処理装置。
【請求項９】
前記検知部は、装置に接近する利用者を検知することで前記実行予兆を検知する
請求項８に記載の情報処理装置。
【請求項１０】
前記検知部は、装置の前に位置する利用者を検知することで前記実行予兆を検知する
請求項８に記載の情報処理装置。
【請求項１１】
前記検知部は、前記基本機能の実行指示を受け付けることで前記実行予兆を検知する
請求項１、４のいずれかに記載の情報処理装置。
【請求項１２】
前記検知部は、前記基本機能の実行後一定時間が経過していないことを検知することで前記実行予兆を検知する
請求項１、４のいずれかに記載の情報処理装置。
【請求項１３】
前記検知部は、利用者の過去の使用状況を用いて前記実行予兆を検知する
請求項１、４のいずれかに記載の情報処理装置。
【請求項１４】
前記検知部は、利用者のスケジュールを用いて前記実行予兆を検知する
請求項１、４のいずれかに記載の情報処理装置。
【請求項１５】
前記情報処理装置は画像処理装置であり、
前記基本機能は、プリント、コピー、ＦＡＸ，スキャンの少なくともいずれかである
請求項１〜１４のいずれかに記載の情報処理装置。
【請求項１６】
前記情報処理装置は人工知能を搭載したスピーカであり、
前記基本機能は、音声入力により実行される機能である
請求項１〜１４のいずれかに記載の情報処理装置。
【請求項１７】
コンピュータに、
予め定められた基本機能を実行するための第１リソースを割り当てるステップと、
追加ソフトウェアアプリケーションを実行するための第２リソースを割り当てるステップと、
前記基本機能の実行予兆を検知するステップと、
前記実行予兆を検知した場合に、前記第１リソースの割り当てを増大させるステップと、
を実行させるプログラム。
【請求項１８】
コンピュータに、
予め定められた基本機能を実行するための第１リソースを割り当てるステップと、
追加ソフトウェアアプリケーションを実行するための第２リソースを割り当てるステップと、
前記基本機能の実行予兆を検知するステップと、
前記実行予兆を検知した場合に、前記第２リソースの割り当てを減少させるステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。  
【背景技術】
【０００２】
特許文献１には、アプリケーションのライフ・サイクルを管理し、管理対象のアプリケーションに対応するアプリケーション・ファイルに記載された宣言に従い該アプリケーションを管理するフレームワークを備えた装置が記載されている。対象アプリケーションがインストールされた後のタイミングにおいて、指示手段は、確認手段により確認された対象アプリケーションが所定のタイミングで使用しているリソースの使用量が、取得手段により取得された対象アプリケーションに対応するアプリケーション・ファイルに記載されたリソースの使用量の最大値の宣言を超えていた場合、フレームワークに対して対象アプリケーションを停止するよう指示し、対象アプリケーションが認証アプリケーションであって、認証アプリケーションが所定のタイミングで使用しているリソースの使用量が、取得手段により取得された対象アプリケーションに対応するアプリケーション・ファイルに記載されたリソースの使用量の最大値の宣言を超えていた場合、認証アプリケーションを停止することなく操作画面上のステータスラインにエラーメッセージを表示することが記載されている。    
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５９０４８００号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、コピーやプリント、スキャン、ＦＡＸ等の複数の機能を実行する画像処理装置（あるいは複合機）では、必ずしもその計算機資源（リソース）が有効活用されていない。すなわち、コピーやプリント等で画像処理を行う際には計算機資源を最大限利用するが、それ以外の時間は遊んでいる状態にある。
【０００５】
そこで、画像処理装置に新たなソフトウェアを追加インストールすることで、計算機資源を有効活用することが考えられるが、基本機能を実行するための計算機資源と、追加ソフトウェアを実行するための計算機資源の割り当てが固定的であると、基本機能の実行に支障が生じるおそれがある。
【０００６】
本発明の目的は、画像処理装置等の情報処理装置において、追加ソフトウェアによりその計算機資源（リソース）を有効活用しつつ、装置の基本機能の実行を担保し得る技術を提供することにある。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明は、予め定められた基本機能を実行する第１実行部と、追加ソフトウェアアプリケーションを実行する第２実行部と、前記基本機能の実行予兆を検知する検知部と、前記検知部で前記実行予兆を検知した場合に、前記第１実行部へのリソース割り当てを増大させる制御部とを備える情報処理装置である。
【０００８】
請求項２に記載の発明は、前記基本機能は複数存在し、前記制御部は、前記実行予兆を検知した場合に、前記第１実行部の複数の基本機能毎に前記リソース割り当てを増大させる請求項１に記載の情報処理装置である。
【０００９】
請求項３に記載の発明は、前記検知部は、前記実行予兆とともにその程度を検知し、
前記制御部は、前記程度に応じて前記第１実行部へのリソース割り当てを段階的に増大させる請求項１に記載の情報処理装置である。
【００１０】
請求項４に記載の発明は、予め定められた基本機能を実行する第１実行部と、追加ソフトウェアアプリケーションを実行する第２実行部と、前記基本機能の実行予兆を検知する検知部と、前記検知部で前記実行予兆を検知した場合に、前記第２実行部へのリソース割り当てを減少させる制御部とを備える情報処理装置である。
【００１１】
請求項５に記載の発明は、前記制御部は、前記検知部で前記実行予兆を検知した場合に、前記第２実行部へのリソース割り当てに上限を設定する請求項４に記載の情報処理装置である。
【００１２】
請求項６に記載の発明は、前記追加ソフトウェアアプリケーションは複数存在し、前記制御部は、前記実行予兆を検知した場合に、前記第２実行部の複数の追加ソフトウェアアプリケーション毎に前記リソース割り当てを減少させる請求項４に記載の情報処理装置である。
【００１３】
請求項７に記載の発明は、前記検知部は、前記実行予兆とともにその程度を検知し、前記制御部は、前記程度に応じて前記第２実行部へのリソース割り当てを段階的に減少させる請求項４に記載の情報処理装置である。
【００１４】
請求項８に記載の発明は、前記検知部は、利用者との相対的位置関係に応じて前記実行予兆を検知する請求項１、４のいずれかに記載の情報処理装置である。
【００１５】
請求項９に記載の発明は、前記検知部は、装置に接近する利用者を検知することで前記実行予兆を検知する請求項８に記載の情報処理装置である。
【００１６】
請求項１０に記載の発明は、前記検知部は、装置の前に位置する利用者を検知することで前記実行予兆を検知する請求項８に記載の情報処理装置である。
【００１７】
請求項１１に記載の発明は、前記検知部は、前記基本機能の実行指示を受け付けることで前記実行予兆を検知する請求項１、４のいずれかに記載の情報処理装置である。
【００１８】
請求項１２に記載の発明は、前記検知部は、前記基本機能の実行後一定時間が経過していないことを検知することで前記実行予兆を検知する請求項１、４のいずれかに記載の情報処理装置である。
【００１９】
請求項１３に記載の発明は、前記検知部は、利用者の過去の使用状況を用いて前記実行予兆を検知する請求項１、４のいずれかに記載の情報処理装置である。
【００２０】
請求項１４に記載の発明は、前記検知部は、利用者のスケジュールを用いて前記実行予兆を検知する請求項１、４のいずれかに記載の情報処理装置である。
【００２１】
請求項１５に記載の発明は、前記情報処理装置は画像処理装置であり、前記基本機能は、プリント、コピー、ＦＡＸ，スキャンの少なくともいずれかである請求項１〜１４のいずれかに記載の情報処理装置である。
【００２２】
請求項１６に記載の発明は、前記情報処理装置は人工知能を搭載したスピーカであり、前記基本機能は、音声入力により実行される機能である請求項１〜１４のいずれかに記載の情報処理装置である。
【００２３】
請求項１７に記載の発明は、コンピュータに、予め定められた基本機能を実行するための第１リソースを割り当てるステップと、追加ソフトウェアアプリケーションを実行するための第２リソースを割り当てるステップと、前記基本機能の実行予兆を検知するステップと、前記実行予兆を検知した場合に、前記第１リソースの割り当てを増大させるステップとを実行させるプログラムである。
【００２４】
請求項１８に記載の発明は、コンピュータに、予め定められた基本機能を実行するための第１リソースを割り当てるステップと、追加ソフトウェアアプリケーションを実行するための第２リソースを割り当てるステップと、前記基本機能の実行予兆を検知するステップと、前記実行予兆を検知した場合に、前記第２リソースの割り当てを減少させるステップとを実行させるプログラムである。
【発明の効果】
【００２５】
請求項１、２、４、５、６、１７、１８に記載の発明によれば、追加ソフトウェアアプリケーションによりリソースを有効活用しつつ、装置の基本機能の実行が担保される。
【００２６】
請求項３、７に記載の発明によれば、さらに、装置の基本機能の実行が段階的に担保される。
【００２７】
請求項８、９、１０に記載の発明によれば、さらに、装置と利用者との相対的位置関係により装置の基本機能の実行が担保される。
【００２８】
請求項１１に記載の発明によれば、さらに、実行指示を受け付けることで装置の基本機能の実行が担保される。
【００２９】
請求項１２に記載の発明によれば、さらに、基本機能実行後の一定時間内において装置の基本機能の実行が担保される。
【００３０】
請求項１３に記載の発明によれば、さらに、過去の使用状況に応じて装置の基本機能の実行が担保される。
【００３１】
請求項１４に記載の発明によれば、さらに、利用者のスケジュールに応じて装置の基本機能の実行が担保される。
【００３２】
請求項１５に記載の発明によれば、さらに、画像処理装置の基本機能の実行が担保される。
【００３３】
請求項１６に記載の発明によれば、さらに、人工知能を搭載したスピーカ（ＡＩスピーカ）の基本機能の実行が担保される。
【図面の簡単な説明】
【００３４】
【図１】実施形態の構成ブロック図である。
【図２】実施形態の制御部の機能ブロック図である。
【図３】実施形態の制御部のハードウェア及びソフトウェアの構成図である。
【図４】実施形態の処理フローチャートである。
【図５】実施形態のリソース割り当て変化を示す模式図（その１）である。
【図６】実施形態のリソース割り当て変化を示す模式図（その２）である。
【図７】実施形態の詳細処理フローチャートである。
【図８】他の実施形態の構成ブロック図である。
【図９】他の実施形態の詳細処理フローチャートである。
【図１０】変形例の機能ブロック図である。
【発明を実施するための形態】
【００３５】
以下、図面に基づき本発明の実施形態について、情報処理装置としてコピーやプリント、スキャン、ＦＡＸ等の複数機能を基本機能として実行する画像処理装置（あるいは複合機）を例にとり説明する。
【００３６】
１．構成
図１は、本実施形態における画像処理装置を含む画像処理システムの構成ブロック図である。画像処理システムは、端末装置１０及び画像処理装置１２を備える。端末装置１０と画像処理装置１２は、通信回線１４を介して接続される。通信回線１４は、例えばＬＡＮ（ローカルエリアネットワーク）等のデータ通信ネットワークである。通信回線１４は、有線、無線のいずれでもよい。
【００３７】
端末装置１０は、ＰＣやスマートフォン等であり、利用者の指示に従い、文書のプリント命令を含むプリントジョブ等を送信する。
【００３８】
画像処理装置１２は、１つ又は複数のＣＰＵで構成される制御部１２０，ＲＯＭ１２１、ＲＡＭ１２２、ＨＤＤ１２３、センサ１２４、操作部１２５、及び画像処理部１２６を備える。
【００３９】
１又は複数のＣＰＵで構成される制御部１２０は、ＲＯＭ１２１やＨＤＤ１２３に記憶された処理プログラムに従い、通信回線１４を介して端末装置１０からプリントジョブ命令等を受け付け、ＰＤＬデータを解釈して中間データを生成し、生成した中間データからさらに描画データ（ラスターデータ）を生成する。また、制御部１２０は、操作部１２５から受け付けたコピー、スキャン、ＦＡＸ、メール等の各種アプリケーションの命令を実行する。
【００４０】
画像処理部１２６は、プリントモジュール、スキャナモジュール、ファックスモジュール、メールモジュール、用紙給紙モジュール、原稿給紙モジュール、及び画像処理アクセラレータを備える。
【００４１】
プリントモジュールは、画像を用紙に出力する機能を有するモジュールである。例えば、公知のインクジェット方式の構成を備え、描画データを用紙に印刷する。ノズル等から液体あるいは溶融固体インクを吐出し、紙、フィルム等に記録を行う。インクを吐出する方法には、静電誘引力を利用してインクを吐出させるドロップオンデマンド方式（圧力パルス方式）、高熱により気泡を形成・成長させることで生じる圧力を利用してインクを吐出させる熱インクジェット方式等がある。
【００４２】
スキャナモジュールは、用紙から画像を読み取って電子データに変換するモジュールである。
【００４３】
ファックスモジュールは、モデムやファックス用画像処理モジュールを備え、ファックス機能を実行するモジュールである。
【００４４】
メールモジュールは、電子メール機能を実行するモジュールである。
【００４５】
用紙給紙モジュールは、用紙トレイからプリントモジュールに用紙を搬送するモジュールである。
【００４６】
原稿給紙モジュールは、原稿トレイからファックスモジュールに用紙を搬送するモジュールである。
【００４７】
画像処理アクセラレータは、スキャナモジュール等と連動して圧縮／伸長処理を行うモジュールである。この画像処理アクセラレータは必須ではなく、付加的モジュールとしてもよい。
【００４８】
操作部１２５は、タッチパネルを含み、制御部１２０からの制御指令に応じて画像処理装置１２が備える各種基本機能（コピー、スキャン、ファックス、メール等）に対応するアプリケーションアイコンを表示する。例えば、コピー機能に対応するコピーアイコン、ファックスに対応するファックスアイコン、文書をスキャンしてメール送信する機能に対応するスキャンｔｏメールアイコン等である。
【００４９】
センサ１２４は、画像処理装置１２近傍の人を検知する人感センサや利用者を撮影するカメラ、原稿トレイに原稿がセットされたことを検知するセンサ等で構成され、検知信号を制御部１２０に供給する。
【００５０】
画像処理装置１２は、これら以外にも、用紙のパンチやソート等を行うフィニッシャ、ＵＳＢ、ＩＣカードリーダ等から構成され利用者の認証を行う認証部及び課金部を備えてもよい。また、画像処理装置１２は、通信回線１４を介してインターネット及び外部サーバ（ネットワークサーバ）に接続されてもよく、イーサネット（登録商標）やＷｉＦｉを備えてもよい。
【００５１】
画像処理装置１２の基本機能は、プリント、コピー、スキャン、ＦＡＸ、メールであるが、これらの基本機能以外にも、画像処理装置１２の計算機資源（リソース）を有効活用するために、追加でソフトウェアアプリケーションをＨＤＤ１２３にインストールすることができる。例えば、画像処理装置１２を通信回線１４上のＷｅｂサーバとして機能させるためのソフトウェアアプリケーションをインストールする、あるいは画像処理装置１２を通信回線１４上のファイルサーバとして機能させるためのソフトウェアアプリケーションをインストールする等である。画像処理装置１２をＷｅｂサーバあるいはファイルサーバとして利用することで、基本機能を実行していない間においても画像処理装置１２のリソースを有効活用し得る。Ｗｅｂサーバ機能あるいはファイルサーバ機能は、バックグラウンドで動作する機能といい得る。
【００５２】
制御部１２０は、そのリソースを基本機能の実行と追加ソフトウェアアプリケーションの実行とに割り当てるが、その割り当てが固定的であると、基本機能の実行に支障が生じるおそれがある。例えば、追加ソフトウェアアプリケーションのリソースに上限を設定せずに必要な分だけ割り当てるものとすると、その分だけ基本機能の実行に割り当てられるリソースが不足し、基本機能の実行が困難となり得る。他方で、予め基本機能の実行に必要な分だけリソースを固定的に割り当てておくと、基本機能を実行していない場合に当該リソースが使用されずに遊んでしまう。
【００５３】
そこで、制御部１２０は、デフォルト状態では追加ソフトウェアアプリケーションのリソースに上限を設定せずに必要な分だけ割り当てるとともに、センサ１２４からの検知信号に基づいて基本機能が使用される予兆を検知し、予兆が検知された場合に追加ソフトウェアアプリケーションのリソースに上限を設定して基本機能の実行に必要なリソースを確保する。
【００５４】
なお、実施形態における「リソース」とは、基本機能を実行するアプリケーションや追加ソフトウェアアプリケーションが共通して利用するメモリ領域やこれらのアプリケーションを実行するＣＰＵのコア数、処理能力等、アプリケーションを実行するためのハードウェア資源の少なくともいずれかを意味するものとする。
【００５５】
追加ソフトウェアアプリケーションの数は特に制限されないが、以下では３つの追加ソフトウェアアプリケーションａ、ｂ、ｃが追加される場合を例にとり説明する。
【００５６】
図２は、制御部１２０の機能ブロック図を示す。制御部１２０は、機能ブロックとして、基本機能実行部１２００、基本機能使用予兆検知部１２０１、実行リソース割り当て制御部１２０２、追加ソフトウェアａ実行環境部１２０３、追加ソフトウェアｂ実行環境部１２０４、及び追加ソフトウェアｃ実行環境部１２０５を備える。
【００５７】
基本機能実行部１２００は、第１実行部として機能し、画像処理装置１２の基本機能、具体的にはプリント、コピー、スキャン、ＦＡＸを実行する。勿論、画像処理装置１２の種類や用途毎に基本機能は変化し得る。基本機能は、画像処理装置１２の出荷時に予めプリインストールされている機能である。基本機能にメールを含めてもよい。
【００５８】
追加ソフトウェアａ実行環境部１２０３、追加ソフトウェアｂ実行環境部１２０４、追加ソフトウェアｃ実行環境部１２０５は、第２実行部として機能し、それぞれ追加ソフトウェアアプリケーションａ、ｂ、ｃを実行する。基本機能、及び追加ソフトアプリケーションａ、ｂ、ｃは、仮想マシン（ＶＭ）を使用した仮想化アプローチの下で実行される。仮想化アプローチでは、複数の仮想マシンが物理的なハードウェアリソース上で稼働するように構成され、それぞれの仮想マシンは、自分自身のＣＰＵ割り当て、及びメモリ割り当てを含んでいる。
【００５９】
基本機能使用予兆検知部１２０１は、画像処理装置１２の基本機能の使用の予兆、すなわち基本機能が使用される可能性があることを検知する。「予兆」とは、予め現れるきざしや事の前触れを意味し、装置と利用者との相対的位置関係や、利用者による操作状況を用いて検知される。画像処理装置１２の基本機能がプリント、コピー、スキャン、ＦＡＸであるとすると、これらの少なくともいずれかが使用される可能性があることが検知される。具体的には、
・画像処理装置１２に向かう人が存在する
・画像処理装置１２の前に人が存在する
・画像処理装置１２に原稿がセットされている
・画像処理装置１２にジョブが受け付けられた
等の場合に基本機能が使用される可能性があるといえる。基本機能使用予兆検知部１２０１は、これらの事象あるいはイベントを検知することで基本機能使用予兆を検知する。基本機能使用予兆検知部１２０１は、カメラや人感センサ、圧力センサ、光センサ等によりこれらの事象を検知する。
【００６０】
実行リソース割り当て制御部１２０２は、基本機能使用予兆検知部１２０１での検知結果に応じて基本機能実行部１２００、追加ソフトウェアａ実行環境部１２０３、追加ソフトウェアｂ実行環境部１２０４、追加ソフトウェアｃ実行環境部１２０５のリソース割り当てを動的に変化させる。
【００６１】
定性的には、実行リソース割り当て制御部１２０２は、基本機能使用予兆検知部１２０１で予兆検知されていない場合に比べ、予兆検知された場合に基本機能実行部１２００に割り当てるリソースの割合を増大させる。言い換えれば、実行リソース割り当て制御部１２０２は、基本機能使用予兆検知部１２０１で予兆検知されていない場合には追加ソフトウェアａ実行環境部１２０３、追加ソフトウェアｂ実行環境部１２０４、及び追加ソフトウェアｃ実行環境部１２０５のリソースに上限を設定せず、予兆検知された場合に追加ソフトウェアａ実行環境部１２０３、追加ソフトウェアｂ実行環境部１２０４、追加ソフトウェアｃ実行環境部１２０５のリソースに上限を設定して基本機能実行部１２００に割り当てるリソースを十分に確保する。
【００６２】
制御部１２０は、ＲＯＭ１２１あるいはＨＤＤ１２３に記憶されたプログラムを読み出して実行することで、各機能ブロックの機能を実現する。
【００６３】
図３は、制御部１２０のハードウェアとソフトウェアの構成図を示す。仮想化マシンを用いた仮想化に加えて、仮想化コンテナを用いたコンテナベースの仮想化を実施した場合である。
【００６４】
ハードウェア構成として、ＣＰＵ２０、メモリインターフェイス（Ｉ／Ｆ）２２、システムメモリ２４、入出力インターフェイス（Ｉ／Ｆ）２６、バス２８を備える。
【００６５】
ＣＰＵ２０は、一例としてコア１、コア２、コア３、及びコア４のマルチコア（クアッドコア）から構成される。ここで、コアは、プロセッサ・ダイ上に作成されるプロセッサ回路の中核部分を意味する。ＣＰＵ２０は、バス２８及びメモリＩ／Ｆ２２を介してシステムメモリ２４にアクセスする。また、ＣＰＵ２０は、バス２８及び入出力Ｉ／Ｆ２６を介して通信回線１４及び通信回線１４に接続された端末１０にアクセスする。
【００６６】
システムメモリ２４は、ホストＯＳ（オペレーティングシステム）が占有するホストＯＳ空間に加え、ホストＯＳ上で動作する各アプリケーションが共有する共有空間（アドレス空間）を備える。共有空間には、追加ソフトウェアアプリケーションａ、ｂ、ｃ用のコンテナａ空間２４２、コンテナｂ空間２４３、コンテナｃ空間２４４が設けられる。なお、基本機能を担うソフトウェアアプリケーションについては省略している。
【００６７】
他方、ソフトウェア構成としては、ホストＯＳ３０、ＯＳ仮想化レイヤ３２、及び複数のコンテナａ３４、コンテナｂ３６、コンテナｃ３８を備える。
コンテナａ３４、コンテナｂ３６、コンテナｃ３８は、仮想装置及びソフトウェアアプリケーションを含む。仮想装置は、アプリケーション空間上で実行される。コンテナａ３４は、仮想装置ａ及びソフトウェアアプリケーションａを含み、仮想装置ａがソフトウェアアプリケーションａを実行する。コンテナａ３４のメモリ領域は、コンテナａ空間２４２として共有空間２４１上に確保される。コンテナｂ３６は、仮想装置ｂ及びソフトウェアアプリケーションｂを含み、仮想装置ｂがソフトウェアアプリケーションｂを実行する。コンテナｂ３６のメモリ領域は、コンテナｂ空間２４３として共有空間２４１上に確保される。コンテナｃ３８は、仮想装置ｃ及びソフトウェアアプリケーションｃを含み、仮想装置ｃがソフトウェアアプリケーションｃを実行する。コンテナｃ３８のメモリ領域は、コンテナｃ空間２４４として共有空間２４１上に確保される。
【００６８】
追加ソフトウェアアプリケーションａ、ｂ、ｃのリソース割り当ての割合は、追加ソフトウェアアプリケーションａ、ｂ、ｃを実行するＣＰＵ２０のコア１、コア２、コア３、コア４のコア数、あるいはコア数一定の下での各コアの処理能力、あるいはメモリ２４の共有空間２４１上でのコンテナａ空間２４２、コンテナｂ空間、コンテナｃ空間の割合を意味し、リソース割り当ての変更はこれらの割り当ての変更を意味する。
【００６９】
例えば、デフォルト状態ではコア３及びコア４が追加ソフトウェアアプリケーションａ、ｂ、ｃを実行するところ、基本機能使用予兆検知部１２０１で予兆検知された場合にコア４のみに制限して実行する、あるいはデフォルト状態ではコンテナａ空間２４２、コンテナｂ空間、コンテナｃ空間の割合に制限を設けないところ、基本機能使用予兆検知部１２０１で予兆検知された場合にその割合に上限を設定する等である。いずれの場合も、基本機能を実行するリソース割合は相対的に増大する。仮想化マシン及び仮想化コンテナの技術はコンピュータにおいて公知であり、例えば特開２０１７−２２７６７号公報等に記載されている。
【００７０】
２．処理
２．１  全体処理
図４は、実施形態の処理フローチャートを示す。
【００７１】
画像処理装置１２の電源をオンすると、制御部１２０は、基本機能のソフトウェアアプリケーションを起動し、また、追加ソフトウェアアプリケーションを起動する（Ｓ１０１）。このときのリソースの割り当ては、デフォルトの割り当てである。例えば、基本機能実行部１２００及び追加ソフトウェア実行環境部１２０３〜１２０５のメモリ共有空間２４１上の割り当てをそれぞれ４０％と６０％に設定する等である。
【００７２】
次に、基本機能使用予兆検知部１２０１は、基本機能使用予兆を監視する（Ｓ１０２）。この処理についてはさらに詳述する。基本機能使用予兆検知部１２０１は、基本機能使用予兆を検知した場合に予兆検知フラグをセットし（フラグ＝オンあるいは１）、基本機能使用予兆を検知しない場合には予兆検知フラグをセットしない（フラグ＝オフあるいは０）。
【００７３】
次に、制御部１２０は、基本機能使用予兆部１２０１で基本機能使用予兆が検知されたか否かを判定する（Ｓ１０３）。
【００７４】
基本機能使用予兆が検知された場合（Ｓ１０３でＹＥＳ）、すなわちフラグがセットされている場合には、実行リソース割り当て制御部１２０２は、追加ソフトウェア実行環境部１２０３〜１２０５のリソースに上限を設定する（Ｓ１０４）。他方、基本機能使用予兆が検知されない場合（Ｓ１０３でＮＯ）、すなわちフラグがセットされていない場合には、実行リソース割り当て制御部１２０２は、追加ソフトウェア実行環境部１２０３〜１２０５のリソースに上限を設定することなく、追加ソフトウェアアプリケーションａ、ｂ、ｃの実行に必要な分だけ割り当てる。
【００７５】
基本機能使用予兆検知部１２０１は、継続して基本機能使用予兆を監視し（Ｓ１０５）、制御部１２０は、基本機能使用予兆部１２０１で基本機能使用予兆が検知されたか否かを判定する（Ｓ１０６）。そして、基本機能使用予兆が検知されている場合には、実行リソース割り当て制御部１２０２は、追加ソフトウェア実行環境部１２０３〜１２０５のリソースに上限を設定し続け、基本機能使用予兆が検知されなくなると、実行リソース割り当て制御部１２０２は、追加ソフトウェア実行環境部１２０３〜１２０５のリソース上限を解除する（Ｓ１０７）。すなわち、追加ソフトウェアアプリケーションａ、ｂ、ｃの実行に必要な分だけ割り当てる。
【００７６】
図５は、実施形態の動的リソース割り当てを模式的に示す。基本機能実行部１２００、追加ソフトウェア実行環境部１２０３〜１２０５に割り当てられるリソースの割合を、全体を１００％とした比率で示す。例えば、図３における共有空間２４１における全メモリ容量を１００％とした場合の各メモリ空間の容量の比率である。
【００７７】
図５（ａ）は、デフォルトの比率であり、基本機能使用予兆検知部１２０１で予兆検知されていない場合の比率である。基本機能実行部１２０１の比率は全体を１００％とした場合に例えば４０％、追加ソフトウェア実行環境部１２０３〜１２０５それぞれの割り当ては例えば２０％ずつで合計６０％とされる。２０％は、追加ソフトウェアアプリケーションａ、ｂ、ｃを実行するのに十分なリソースとする。利用者は、端末装置１０を操作して追加ソフトウェアアプリケーションａの実行指示を入力すると、制御部１２０は、これに応じて追加ソフトウェアアプリケーションａを割り当てられたリソースを用いて実行する。
【００７８】
図５（ｂ）は、基本機能使用予兆検知部１２０１で予兆検出された場合の比率である。基本機能実行部１２０１の比率は、全体を１００％とした場合に４０％から６０％まで増大し、追加ソフトウェア実行環境部１２０３〜１２０５それぞれの割り当てはそれぞれ２０％から６％まで減少される。６０％は、基本機能を実行するのに十分なリソースとする。
【００７９】
図５（ｃ）は、図５（ｂ）のように割り当てられた後に、基本機能使用予兆検知部１２０１で再び予兆検知されなくなった場合の比率である。基本機能実行部１２０１の比率は、６０％から４０％に減少し、追加ソフトウェア実行環境部１２０３〜１２０５それぞれの割り当ては例えば６％から２０％ずつに増大される。
【００８０】
図５（ｂ）において、追加ソフトウェア実行環境部１２０３〜１２０５にそれぞれ割り当てられるリソースの上限を６％とした場合に、基本機能使用予兆検知部１２０１で予兆検出されない場合には追加ソフトウェア実行環境部１２０３〜１２０５のリソース上限を設定せず、基本機能使用予兆検知部１２０１で予兆検出された場合には追加ソフトウェア実行環境部１２０３〜１２０５のリソース上限を設定すると言い得る。
【００８１】
図５（ｂ）において、追加ソフトウェアアプリケーションａ、ｂ、ｃ間に優先順位を設定し、優先順位に従ってリソース割り当てを異なるものとしてもよい。例えば、優先順位が
追加ソフトアプリケーションａ＞追加ソフトウェアアプリケーションｂ＞追加ソフトウェアアプリケーションｃ
である場合、
追加ソフトウェアアプリケーションａ実行環境部：７％
追加ソフトウェアアプリケーションｂ実行環境部：６％
追加ソフトウェアアプリケーションｃ実行環境部：５％
とする等である。これは、追加ソフトウェアアプリケーション毎に異なる上限値を設定すると言える。
【００８２】
さらに、図５（ｂ）において、基本機能毎にリソース割り当てを異なるものとしてもよい。具体的には、基本機能使用予知検知部１２０１で基本機能毎に使用予兆を検知し、使用予兆を検知した基本機能に関してそのリソース割り当てを増大させる。
【００８３】
例えば、図６に示すように、プリントジョブを受け付けたことにより基本機能使用予兆を検知した場合、基本機能のうちのプリントが使用される可能性があることを意味するから、プリントのリソース割り当てを他の基本機能に比べて増大させる。すなわち、図６（ａ）は基本機能使用予兆検知部１２０１で予兆検知されない場合であり、プリント、コピー、ＦＡＸのリソース割り当ては等分であるが、プリント機能の使用予兆が検知された場合、図６（ｂ）に示すようにプリントのリソース割り当てを増大させる。
【００８４】
実施形態において、基本機能が使用された場合においてそのリソース不足が明らかになった時点でリソースを確保すべくリソース割り当てを変更するのではなく、基本機能使用予兆検知部１２０１で基本機能が使用される蓋然性がある場合に、実際に基本機能の使用に先立って予め基本機能のリソースが増大変更される点に留意すべきである。
【００８５】
２．２  基本機能使用予兆検知
図７は、図４におけるＳ１０２の処理、及びＳ１０５の処理の詳細フローチャートを示す。
【００８６】
基本機能使用予兆検知部１２０１は、まず装置と利用者との相対的位置関係に応じて基本機能使用の予兆を検知する。すなわち、まずカメラや人感センサ等により画像処理装置１２に接近する人が存在するか否かを判定する（Ｓ２０１）。例えば、カメラにより人の動きを検知し、人の動きベクトルの向きが画像処理装置１２の方を向いている場合に接近していると判定し得る。画像処理装置１２に接近する人が存在する場合、予兆検知フラグをオンとする（Ｓ２０７）。
【００８７】
Ｓ２０１でＮＯの場合、次に、カメラや人感センサ等により画像処理装置１２の前に人が存在するか否かを判定する（Ｓ２０２）。画像処理装置１２の前に人が存在する場合、予兆検知フラグをオンとする（Ｓ２０７）。
【００８８】
基本機能使用予兆検知部１２０１は、次に、利用者の操作に応じて基本機能使用の予兆を検知する。すなわち、Ｓ２０２でＮＯの場合、次に、圧力センサや光センサ等により画像処理装置１２の原稿トレイに原稿がセットされたか否かを判定する（Ｓ２０３）。原稿がセットされた場合、予兆検知フラグをオンとする（Ｓ２０７）。
【００８９】
Ｓ２０３でＮＯの場合、次に、端末１０からジョブを受け付けたか否かを判定する（Ｓ２０４）。ジョブを受け付けた場合、予兆検知フラグをオンとする（Ｓ２０７）。ジョブの受け付けには、端末装置１０からのプリントジョブの受け付けの他、操作部１２５を操作することによるジョブの受け付けも含まれる。
【００９０】
Ｓ２０４でＮＯの場合、次に、ジョブ実行中であるか否かを判定する（Ｓ２０５）。ジョブ実行中である場合、予兆検知フラグをオンとする（Ｓ２０７）。なお、ここでのジョブは、基本機能に関するジョブを意味する。ジョブ実行中は、正確には基本機能を使用中であって使用予兆ではないが、基本機能使用中にリソース割り当てがデフォルト値に戻るのは不都合であるのでフラグをオンのまま維持するものである。
【００９１】
Ｓ２０５でＮＯの場合、次に、基本機能使用後の一定時間内であるか否かを判定する（Ｓ２０６）。基本機能使用後の一定時間内である場合、予兆検知フラグをオンとする（Ｓ２０７）。これは、基本機能使用後の一定時間内は、引き続いて基本機能が使用される蓋然性があることを考慮したものである。一定時間は任意であるが、例えば１０分等と設定される。
【００９２】
他方、Ｓ２０１〜Ｓ２０６の全てでＮＯの場合、予兆検知フラグをオフとする（Ｓ２０８）。従って、例えば基本機能使用後一定時間が経過した場合、他の検知要素が存在しなければ予兆検知フラグはオンからオフに変化する。
【００９３】
具体的に説明すると、以下の通りである。
【００９４】
利用者が、端末１０を操作してプリントジョブを画像処理装置１２に指示すると、Ｓ２０４でＹＥＳと判定され、予兆検知フラグはオンとされて基本機能実行部１２００のリソース割り当てが増大する。あるいは、追加ソフトウェア実行環境部１２０３〜１２０５のリソース上限が設定される。プリンジョブ実行中は、リソース割り当てはそのまま維持される。プリントジョブ実行後も一定時間内はリソース割り当てはそのまま維持される。従って、一定時間内に利用者が端末１０を操作してプリントジョブを再び画像処理装置１２に指示すると、Ｓ２０４でＹＥＳと判定されるものの、Ｓ２０６で既にＹＥＳと判定されてフラグはオンに設定されているため、フラグはそのままオンに維持される。
【００９５】
また、利用者が画像処理装置１２の方に向かうと、Ｓ２０１でＹＥＳと判定され、予兆検知フラグはオンとされて基本機能実行部１２００のリソース割り当てが増大する。あるいは、追加ソフトウェア実行環境部１２０３〜１２０５のリソース上限が設定される。当該利用者が画像処理装置１２の方に向かうものの画像処理装置１２を操作せずにそのまま通過して画像処理装置１２から離れた場合、Ｓ２０１〜Ｓ２０６でＮＯと判定され、一旦オンに設定されたフラグはオフに設定される。すなわち、基本機能実行部１２００のリソース割り当てが減少する。あるいは、追加ソフトウェア実行環境部１２０３〜１２０５のリソース上限が解除される。
【００９６】
また、利用者が画像処理装置１２の前に立って原稿をセットし、操作部１２５のコピーボタンを操作した場合、Ｓ２０２でＹＥＳと判定され、予兆検知フラグはオンとされて基本機能実行部１２００のリソース割り当てが増大する。あるいは、追加ソフトウェア実行環境部１２０３〜１２０５のリソース上限が設定される。
【００９７】
＜実施形態２＞
図８は、実施形態２のシステム構成図である。端末１０、及び画像処理装置１２に加え、管理サーバ１６が通信回線１４に接続される。
【００９８】
管理サーバ１６は、利用者の過去の画像処理装置１２の利用状況や利用者のスケジュールを記憶するデータベースを備える。
【００９９】
基本機能使用予兆検知部１２０１は、図７に示す処理フローチャートに加え、あるいは図７に示す処理フローチャートに代えて、管理サーバ１６にアクセスし、利用者の過去の利用状況やスケジュールを用いて基本機能使用予兆を検知する。
【０１００】
図９は、実施形態２における基本機能使用予兆監視の処理フローチャートであり、図７に対応するものである。
【０１０１】
基本機能使用予兆検知部１２０１は、管理サーバ１６にアクセスし、利用者の過去の使用状況から基本機能を使用する可能性があるか否かを判定する（Ｓ３０１）。例えば、利用者Ａ、Ｂの週間使用状況が以下の通りであるとする。
利用者Ａ
月：９：００  コピー使用
１０：００  スキャン使用
１１：３０  プリント使用
火  なし
水  なし
木  １５：００  プリント使用
１７：３０  プリント使用
金  なし
利用者Ｂ
月  ９：１０  コピー使用
９：２０  コピー使用
１５：３０  ＦＡＸ使用
火  ９：００  プリント使用
水  ９：００  プリント使用
木  なし
金  なし
基本機能使用予兆検知部１２０１は、月曜日の９：００、９：１０及び９：２０に利用者Ａ及び利用者Ｂがコピーを使用していることから、月曜日の９時〜９時３０分において基本機能が使用される可能性があるとして、月曜日の９時あるいはそれ以前（例えば１０分前）に予兆検知フラグをオンとする等である。
【０１０２】
Ｓ３０１でＮＯの場合、基本機能使用予兆検知部１２０１は、次に、管理サーバ１６にアクセスし、利用者のスケジュールから基本機能を使用する可能性があるか否かを判定する（Ｓ３０２）。例えば、利用者Ａ、Ｂの週間スケジュールが以下の通りであるとする。
利用者Ａ
月：９：００〜１０：００  会議
火  なし
水  なし
木  出張
金  なし
利用者Ｂ
月  なし
火  １５：００〜１６：００  会議
水  なし
木  なし
金  出張
基本機能使用予兆検知部１２０１は、月曜日の９：００〜１０：００及び火曜日の１５：００〜１６：００に会議があることから、これらの日時においてコピーやプリント等の基本機能が使用される可能性があるとして、月曜日の９時あるいはそれ以前（例えば１０分前）、及び火曜日の１５：００あるいはそれ以前（例えば１０分前）に予兆検知フラグをオンとする等である。
【０１０３】
図７と図９の処理は組合せ可能であり、まず図９の処理を実行し、Ｓ３０２でＮＯと判定された場合に図７のＳ２０１以降の処理を実行してもよい。あるいは、まず図７の処理を実行し、Ｓ２０６でＮＯと判定された場合に図９のＳ３０１以降の処理を実行してもよい。
【０１０４】
以上、本発明の実施形態について説明したが、本発明はこれらに限定されるものではなく、種々の変形が可能である。以下、変形例について説明する。
【０１０５】
＜変形例１＞
実施形態において、図４及び図５に示されるように、基本機能使用予兆検知部１２０１で予兆検知された場合に、基本機能実行部１２００のリソース割り当て及び追加ソフトウェア実行環境１２０３〜１２０５のリソース割り当てを変更しているが、基本機能使用予兆検知部１２０１において予兆検知を段階的あるいは連続的に実行し、これに応じて基本機能実行部１２００のリソース割り当て及び追加ソフトウェア実行環境１２０３〜１２０５のリソース割り当てを段階的あるいは連続的に変更してもよい。
【０１０６】
例えば、図７の処理フローチャートを例にとると以下の通りである。まず、基本機能使用予兆検知部１２０１がＳ２０１で画像処理装置１２に接近する人を検知すると、フラグＦ１をセットする。そして、フラグＦ１がセットされたことに応じ、基本機能実行部１２００のリソースをデフォルトの４０％から４５％に増大させる。
【０１０７】
次に、基本機能使用予兆検知部１２０１がＳ２０２で画像処理装置１２の前の人を検知すると、フラグＦ２をセットする。そして、フラグＦ２がセットされたことに応じ、基本機能実行部１２００のリソースを５０％に増大させる。
【０１０８】
また、基本機能使用予兆検知部１２０１がＳ２０３で原稿がセットされたことを検知すると、フラグＦ３をセットする。そして、フラグＦ３がセットされたことに応じ、基本機能実行部１２００のリソースを５５％に増大させる。
【０１０９】
さらに、基本機能使用予兆検知部１２０１がＳ２０４でジョブを受け付けると、フラグＦ４をセットする。そして、フラグＦ４がセットされたことに応じ、基本機能実行部１２００のリソースを６０％に増大させる。  
【０１１０】
この場合のフラグＦ１〜Ｆ４は、画像処理装置１２の基本機能が使用される可能性の程度を評価する指標として機能しており、基本機能の使用可能性の程度に応じて基本機能実行部１２００のリソース割り当て及び追加ソフトウェア実行環境１２０３〜１２０５のリソース割り当てを段階的に変更することになる。
【０１１１】
＜変形例２＞
実施形態では、情報処理装置として画像処理装置（あるいは複合機）を例示したが、これに限らずプリンタ単体にも適用可能であり、さらには追加ソフトウェアアプリケーションを後からインストール可能であり、基本機能のソフトウェアアプリケーションと追加ソフトウェアアプリケーションのリソース割り当てを変更し得る任意の装置に適用可能である。
【０１１２】
図１０は、ＡＩスピーカの構成を示す。ＡＩスピーカ（あるいはスマートスピーカ、インテリジェントスピーカ）は、人工知能が搭載されたスピーカであり、インターネットに常時接続され、人が話しかけることでＡＩの音声アシスタントと対話でき、話しかけるだけでスマートフォンやＰＣ、家電などの各種デバイスを操作でき、音楽再生やニュースチェック、ピザ注文等を実行できる。また、プラグインにより機能拡張することができ、ホテル予約や配車依頼等のプラグインが提供されている。
【０１１３】
ＡＩスピーカでは、利用者の音声入力をトリガとして動作するため、音声認識機能が優先的に動作可能な状態となっている。
【０１１４】
しかし、利用者による音声指示がない間は、計算機資源が遊んでいる状態であり、その間にバックグラウンドで他のソフトウェアアプリケーションを実行させることが可能である。この場合、利用者による音声指示を受け取り、指示に基づく動作を行うことが基本機能であり、基本機能使用予兆が検知されたときに、バックグラウンド動作に対するリソース割り当てを制限し、基本機能により多くのリソースを割り当てる。
【０１１５】
図１０において、ＡＩスピーカ５０は、機能ブロックとして、マイク５００、音声認識部５０１、スピーカ５０２，実行制御部５０３、音楽再生部５０４、ニュースチェック部５０５、家電操作部５０６を備え、これらが基本機能実行部として機能する。これに加え、基本機能使用予兆検知部５０７、実行リソース割り当て制御部５０８、及び追加ソフトウェア実行環境部５０９を備える。
【０１１６】
基本機能使用予兆検知部５０７は、カメラや人感センサ等により、ＡＩスピーカ５０の近傍に人がいるか否かを検知する。近傍に人が存在する場合、音声指示による基本機能が使用される可能性あるとして予兆検知フラグをセットする。実行リソース割り当て制御部５０８は、予兆検知フラグがセットされた場合に、基本機能実行部のリソース割り当てを増大し、バックグラウンドで動作する追加ソフトウェア実行環境部５０９のリソース割り当てを減少あるいは制限する。
【０１１７】
音声指示の内容に応じて実行する基本機能の内容が決定されるから、音声指示の内容に応じてリソース割り当てを動的に変更してもよい。
【０１１８】
＜変形例３＞
実施形態では、基本機能使用予兆検知部１２０１で予兆を検知すると、予兆検知フラグをオンに設定し、実行リソース割り当て制御部１２０２が予兆検知フラグに応じてリソース割り当てを変更しているが、単に、基本機能使用予兆検知部１２０１で利用者の接近等を検知した場合に当該検知信号を実行リソース割り当て制御部１２０２に供給し、実行リソース割り当て制御部１２０２が検知信号に応じてリソース割り当てを変更してもよい。この場合の検知信号は、予兆検知フラグと技術的に等価である。
【０１１９】
＜変形例４＞
実施形態において、基本機能使用予兆検知部１２０１で予兆を検知した場合に追加ソフトウェアアプリケーション実行環境部１２０３〜１２０５のリソース割り当てに上限を設定しているが、追加ソフトウェアアプリケーションの実行状況に応じて上限を変化させてもよい。すなわち、基本機能使用予兆検知部１２０１で予兆を検知した場合に追加ソフトウェアアプリケーションが実行中であるときには、実行中でないときに比べて上限を緩和する等である。  
【符号の説明】
【０１２０】
１０  端末装置、１２  画像処理装置、１４  通信回線、１６  管理サーバ、２０  ＣＰＵ、２４  システムメモリ、５０  ＡＩスピーカ。１２０  制御部。
【図１】
2019057219.tif 000003
【図２】
2019057219.tif 000004
【図３】
2019057219.tif 000005
【図４】
2019057219.tif 000006
【図５】
2019057219.tif 000007
【図６】
2019057219.tif 000008
【図７】
2019057219.tif 000009
【図８】
2019057219.tif 000010
【図９】
2019057219.tif 000011
【図１０】
2019057219.tif 000012