JP5322595B2 - コンピュータ、制御方法、及びプログラム - Google Patents

コンピュータ、制御方法、及びプログラム Download PDF

Info

Publication number
JP5322595B2
JP5322595B2 JP2008289887A JP2008289887A JP5322595B2 JP 5322595 B2 JP5322595 B2 JP 5322595B2 JP 2008289887 A JP2008289887 A JP 2008289887A JP 2008289887 A JP2008289887 A JP 2008289887A JP 5322595 B2 JP5322595 B2 JP 5322595B2
Authority
JP
Japan
Prior art keywords
application
memory usage
computer
maximum
minimum
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.)
Expired - Fee Related
Application number
JP2008289887A
Other languages
English (en)
Other versions
JP2010117838A (ja
JP2010117838A5 (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2008289887A priority Critical patent/JP5322595B2/ja
Priority to US12/605,239 priority patent/US8527984B2/en
Publication of JP2010117838A publication Critical patent/JP2010117838A/ja
Publication of JP2010117838A5 publication Critical patent/JP2010117838A5/ja
Application granted granted Critical
Publication of JP5322595B2 publication Critical patent/JP5322595B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、アプリケーションを管理するためのアプリケーションプラットフォーム、アプリケーションプラットフォームの制御方法、およびプログラムに関する。
従来から、アプリケーションをインストール又は起動したり、アンインストールすることが可能な機器(例えば、複合機)が提案されている。機器ベンダーや提携するサードパーティのベンダーは、様々なアプリケーションを販売している。ユーザは、この中から所望のアプリケーションを購入しインストール又は起動することで、より個々のニーズにマッチした形態で複合機を運用することが可能となっている。
ところで、一般に、機器の設計にあたってはコストを最低限に押さえているため、メモリなどのシステム資源(リソース)が豊富に用意されている訳ではない。このため、アプリケーションをインストール又は起動する際には、当該アプリケーションが正しく動作するために必要なシステム資源を確保できるかどうかをチェックし、機器の障害や誤動作を防止する技術が提案されている(特許文献1)。
特開2004−5419号公報
上述の従来技術では、アプリケーションを、機器でインストール又は起動する際にアプリケーションが動作するために必要なメモリの容量を解析し、この容量のメモリをその機器が提供できない場合にはインストール又は起動が行われない。ここで、アプリケーションが動作するために必要なメモリの容量とは、一般に、そのアプリケーションが消費するリソース(例えば、メモリ)のリソース使用量の最大量(最大メモリ使用量)である。すなわち、最大メモリ使用量とは、アプリケーションが使用するメモリの最大量であっても良い。
ここで、各アプリケーションの最大メモリ使用量を合計していくと、膨大な量になってしまい、すぐにその機器内のリソース(例えば、メモリ容量)を超えてしまう。その結果、機器でインストール又は起動できるアプリケーションの数は、少ない数に限定されてしまう。
本発明の目的は、上記の問題を解決することである。
上記課題を解決するために、本発明に係るコンピュータは、アプリケーションをインストールすることが可能なコンピュータであって、アプリケーションが消費する最大メモリ使用量と最低限メモリ使用量とをアプリケーション毎に管理する管理手段と、GUIを表示するアクティブ状態のアプリケーションを切り替える指示を受けつけたことに応じて、インストールされている複数のアプリケーションの中で最大メモリ使用量と最低限メモリ使用量との差が最も大きいアプリケーションの最大メモリ使用量と、その他のアプリケーションのメモリ使用量との総和が前記コンピュータのメモリの容量を超えるか否かを判定する判定手段と、前記判定手段により超えると判定された場合は、切り替えによりアクティブ状態となるアプリケーションを最大メモリ使用量が消費できる状態へ遷移させ、GUIを表示しない非アクティブ状態となるそれ以外のアプリケーションを最低限メモリ使用量が消費できる状態へと遷移させる制御手段と、を有することを特徴とする。
本発明によれば、効率的に機器のシステム資源を使用することができる。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
<実施形態1>
図1は、本発明に係るアプリケーションプラットフォームがインストールされる機器の一例である画像形成装置の概略を示すブロック図である。
(画像形成装置1の説明)
画像形成装置1は、印刷装置11と、画像処理装置12とを有する。
画像処理装置12は、CPU121と、直接記憶部122(例えば、RAM)と、間接記憶部123(例えば、HDD)と、ユーザインターフェース124と、外部インターフェース125とを有する。
直接記憶部122は、CPU121と直接データをやり取りする記憶部であり、間接記憶部123は、直接記憶部122を介してCPU121とデータをやり取りする記憶部である。直接記憶部122は、種々のアプリケーション及びプラットフォームプログラムを記憶する。また、直接記憶部122は、プラットフォーム部20がアプリケーションを実行した際などに得られる情報を一時的に記憶する。
ユーザインターフェース124は、タッチパネルやキーボード、マウス、ディスプレイ等を有し、ユーザからの指示の受付け、データ(GUIデータ)の表示をすることができる。
外部インターフェース125は、外部装置からのデータの受信や外部装置へのデータの送信が可能となっている。例えば、外部装置には、外付けHDDや外付けUSBメモリ等の外付け記憶装置や、ネットワークを介して接続された別体のホストコンピュータや画像形成装置等の別体装置が含まれる。
なお、本実施形態では、印刷装置11や画像処理装置12が実行する画像形成処理や印刷処理をジョブと呼称する。
(プラットフォーム部20の説明)
CPU121は、間接記憶部123に記憶されたプラットフォームプログラムを直接記憶部122に移動する(記憶させる)ことができる。移動が完了すると、CPU121がプラットフォームプログラムを実行することができる状態になる。本実施形態では、このように「CPU121がプラットフォームプログラムを実行することができる状態になること」を、プラットフォーム部20が起動すると称する。起動した後のプラットフォーム部20のことを本実施形態において、アプリケーションプラットフォームと称することもある。
プラットフォーム部20は、画像形成装置の各部の状態や、印刷装置11や画像処理装置12が実行するジョブの状態を検知し、これにより、後述のアプリケーションを実行する。
なお、本実施形態で、プラットフォーム部20は、CPU121を有しても良い。また、プラットフォーム部20は、直接記憶部122のうちのプラットフォームプログラムを記憶している領域を有しても良い。また、プラットフォーム部20は、CPU121が上記プラットフォームプログラムを処理した際に得られる情報(計算結果等)を記憶する(直接記憶部122及び間接記憶部123の)領域を有しても良い。
(アプリケーションプログラムの説明)
プラットフォーム部20は、外部インターフェース125を介して第1のアプリケーションプログラムを受信し、(プラットフォーム部20の内部にある)間接記憶部123に記憶することができる。そして、後述する通り、プラットフォーム部20は、間接記憶部123に記憶した後のアプリケーションプログラムを特定する情報を管理情報に追加する。本実施形態ではこのこと(アプリケーションプログラムの記憶、特定する情報の管理情報への追加)を、プラットフォーム部20に第1のアプリケーションプログラムをインストールすると称する。なお、本実施形態においては、インストールされた後のアプリケーションプログラムをアプリケーションと称する。
プラットフォーム部20は、間接記憶部123に記憶された第1のアプリケーションを直接記憶部122に移動する(記憶させる)ことができる。移動が完了すると、プラットフォーム部20が第1のアプリケーションを実行することができる状態になる。本実施形態ではこのことを、プラットフォーム部20が第1のアプリケーションを起動すると称する。
逆に、プラットフォーム部20は、直接記憶部122に記憶された第1のアプリケーションを直接記憶部122から削除することができる。本実施形態ではこのことを、プラットフォーム部20が第1のアプリケーションを停止すると称する。
逆に、プラットフォーム部20は、間接記憶部123に記憶された第1のアプリケーションを間接記憶部123から削除し、さらに、上記管理情報から第1のアプリケーションを特定する情報を削除することができる。本実施形態ではこのことを、プラットフォーム部20が第1のアプリケーションをアンインストールすると呼称する。
尚、プラットフォーム部20が第1のアプリケーションをアンインストールする際に、第1のアプリケーションが起動している場合には、これを停止した後にアンインストールを行う。
また、プラットフォーム部20が、第1のアプリケーションに実装された処理ステップを一つずつ行うことを、プラットフォーム部20が第1のアプリケーションを実行する、と言う。
また、以上の説明は、第1のアプリケーションプログラムを例にして説明を行ったが、他のアプリケーションプログラム(例、第2のアプリケーションプログラム)であっても同様であることは当業者には明白であろう。
(ユーザインターフェースの説明)
図2は、ユーザインターフェース124の表示例を示す図である。
プラットフォーム部20は、複数のアプリケーションを起動し、実行する。そしてこの結果、GUIデータを生じる。ユーザインターフェース124は、一時にたったひとつのアプリケーションのGUIデータを表示する。ここで、「一時にたったひとつの」は、アプリケーションの修飾語であって、GUIデータへの修飾語ではない。一般に、本実施形態で対象としている画像形成装置のディスプレイは、大型化の傾向があるものの、コストを低く押さえるためにPCなどに比較して小さなサイズである。一時にたったひとつのアプリケーションのGUIデータだけを表示することで、当該アプリケーションを利用するユーザに、必要な情報をより多く同時に表示することができる。
ユーザがユーザインターフェース124を介してタブ201および、タブ202、タブ203を指示すると、ユーザインターフェース124は、プラットフォーム部20にこれを通知する。プラットフォーム部20は、GUIデータを表示するアプリケーションを切り替える。そして、ユーザインターフェース124に、切り替え後のアプリケーションのデフォルトGUIデータを表示するよう通知する。例えば、図2では、コピーアプリケーションのGUIデータが表示されている。この状態で、ユーザインターフェース124を介してタブ202がユーザにより指示されると、送信/FAXアプリケーションのGUIデータが表示されることになる。
なお、GUIデータを表示するようにプラットフォーム部20がユーザインターフェース124に対して表示するように通知する場合には、以下のような処理行われても良い。すなわち、事前に、プラットフォーム部20は起動中のアプリケーションを実行して、そのアプリケーションが有するGUIデータが取り出されても良い。本実施形態では、このGUIデータの取出し元と成ったアプリケーションのことを、GUIデータを表示するアプリケーションと称する。
領域204は、プラットフォーム部20がアプリケーションを実行した結果生ずるGUIデータを表示する領域である。
本実施形態では、ユーザインターフェース124がGUIデータを表示しているアプリケーションを“アクティブなアプリケーション”と呼称する。逆に、ユーザインターフェース124がGUIデータを表示していないアプリケーションを“非アクティブなアプリケーション”と呼称する。
(アプリケーションの管理情報の説明)
図3は、アプリケーションの管理情報を示す図である。
アプリケーション管理データ300は、プラットフォーム部20が記憶し管理する。
図3において、データ項目301は、アプリケーションの名称を示すデータ項目である。また、データ項目302は、アプリケーションのIDを示すデータ項目であり、アプリケーション管理データ300において一意である。また、データ項目303は、アプリケーションの状態を示すデータ項目である。データ項目303は、値として、“起動”、“停止”のいずれかをとり得る。プラットフォーム部20がアプリケーションを起動している場合は、データ項目303は“起動”である。プラットフォーム部20がアプリケーションを停止している場合は、データ項目303は“停止”である。
図3において、データ項目304は、アプリケーションの最大メモリ使用量(そのアプリケーションが消費するリソース(例えば、メモリ)のリソース使用量の最大量)を示す項目である。最大メモリ使用量は、プラットフォーム部20が起動中のアクティブなアプリケーションを実行する際に使用する容量(直接記憶部122中の容量)のうちの最大値である。
図3において、データ項目305は、アプリケーションの最低限メモリ使用量を示す項目である。最低限メモリ使用量とは、プラットフォーム部20が起動中の非アクティブなアプリケーションを実行する際に使用する容量(直接記憶部122に占める容量)のうちの最値である。すなわち、最低限メモリ使用量とは、アプリケーションがユーザにより操作されていない状態において必要とする最低限のメモリ使用量であっても良い。
図3のアプリケーション管理データ300のひとつの行をレコードと呼称する。レコードは、データ項目301およびデータ項目302、データ項目303、データ項目304、データ項目305から成る。レコードはひとつのアプリケーションの管理情報を表す。
プラットフォーム部20は、アプリケーションのインストールの中で、管理情報(アプリケーション管理データ300)にレコードを追加する。このレコードには、データ項目301〜305が含まれている。そして、そのデータ項目301がアプリケーションを特定する情報である。そのため、上述した通り、この段階(インストール中)において、プラットフォーム部20は、アプリケーションプログラムを特定する情報を管理情報に追加することになる。追加直後のレコードは、データ項目303は“停止”である。なお、このインストール中に、プラットフォーム部20は、新しいアプリケーションのIDを生成し、追加したレコードのデータ項目302に入力する。このIDについては、アプリケーション管理データ300の他のレコードのデータ項目302と重複しないように、プラットフォーム部20が生成している。
プラットフォーム部20は、外部インターフェース125を介して、アプリケーションプログラムと共に、当該アプリケーションの名称および最大メモリ使用量、最低限メモリ使用量を受信する。そして、受信した名称をデータ項目301に、最大メモリ使用量をデータ項目304に、最低限メモリ使用量をデータ項目305にそれぞれ入力する。これらの情報を入力することも、本実施形態では、インストールに含まれる。
プラットフォーム部20は、アプリケーションをアンインストールした際に、アプリケーション管理データ300の該当レコードを削除する。
プラットフォーム部20は、アプリケーションを起動ないし停止した場合に、データ項目303を“起動”ないし“停止”に更新する。
(最大メモリ使用量と最低限メモリ使用量の説明)
以下で、アプリケーションで宣言される最大メモリ使用量と最低限メモリ使用量とについて説明する。
ユーザがユーザインターフェース124においてアプリケーションの実行指示を行うと、プラットフォーム部20がアプリケーションを実行する。これにより多くのGUIデータを生じ、直接記憶部122を大量に消費する。このような場合における直接記憶部122の消費量が、最大の値となる量が最大メモリ使用量である。最大メモリ使用量は、アプリケーション自体を記録する領域とGUIデータが表示されるための領域、アプリケーションの実行領域(アプリケーションの実行により様々、発生する一時データを記録する領域)より成る。
前述のとおり、アクティブなアプリケーションの実行によって生じるGUIデータは、ユーザインターフェース124における表示領域の大部分を使って表示する。このため、非アクティブなアプリケーションのGUIデータは、ユーザインターフェース124に表示されない。よって、プラットフォーム部20がユーザからの実行指示に応じて非アクティブなアプリケーションを実行することはなく、従って、プラットフォーム部20は、アプリケーションの実行領域を直接記憶部122内に確保する必要がない。また、プラットフォーム部20は、GUIデータが表示されるための領域を、直接記憶部122内に確保する必要がない。そのため、アプリケーションが非アクティブである場合には、そのアプリケーションのために確保すべき直接記憶部122内の領域の量が少ない。最低限メモリ使用量は、アプリ−ケーションが非アクティブである場合の直接記憶部122の消費量(即ち、非アクティブのアプリケーションのために確保されるべき領域のサイズ)であって最の値となる量である。最低限メモリ使用量は、アプリケーション自体を記録する領域より成る。
従って、最大メモリ使用量−最低限メモリ使用量は、理論上、直接記憶部122内に確保されるべき上記アプリケーションの実行領域とアプリケーションのGUIデータ表示領域の合計とに一致する。ただし、本実施形態では、こうした理論上の計算により二つの使用量を決定する場合ではなくて、実験により決定する場合を例に、両者の決定方法を以下に説明する。なお、当業者であれば、こうした理論上の計算により二つの使用量を決定することも可能であろう。一般に、最大メモリ使用量は、最低限メモリ使用量よりも多くなる。
最大メモリ使用量と最低限メモリ使用量は、アプリケーションの開発の段階で実験により決定する。
その開発の段階においては、アプリケーションをアクティブにし、直接記憶部122にダミーのデータを記録する。そして、プラットフォーム部20によりアプリケーションを実行する。画像形成装置1が正しく動作可能な範囲で徐々にダミーデータの容量を増していき、ダミーデータの最大値を取得する。プラットフォーム部20で利用可能な直接記憶部122の容量とダミーデータの最大値の差分を最大メモリ使用量とする。
また、アプリケーションを非アクティブにし、同様の作業を行う。この場合のダミーデータの最大値と、プラットフォーム部20で利用可能な直接記憶部122の差分を最低限メモリ使用量とする。
尚、印刷装置11や画像処理装置12がジョブを実行すると、画像データなどの一時データが生成される。この一時データの記憶に要する直接記憶部122の容量は、各アプリケーションの最大メモリ使用量や最低限メモリ使用量には含まない。すなわち、各アプリケーションに共通の領域を直接記憶部122に確保するものとする。
(インストール時の処理の説明)
図4は、本実施形態における、プラットフォーム部20がアプリケーションプログラムをインストールする際の処理手順を示すフローチャートである。
外部インターフェース125は、アプリケーションプログラムと当該アプリケーションの名称、最大メモリ使用量、最低限メモリ使用量を受信して取得し、プラットフォーム部20に通知する。これにより、プラットフォーム部20は以下の処理を実行する。
プラットフォーム部20は、アプリケーション管理データ300に登録されている全てのアプリケーションの最大メモリ使用量の総和と、インストール対象のアプリケーションの最大メモリ使用量と、の総和を計算する(S401)。通常は、アプリケーション管理データ300に登録されている全てのアプリケーションの数は複数である。また、上記のインストール対象のアプリケーションとは、インストール対象のアプリケーションのインストールにより生じるアプリケーションである。
プラットフォーム部20は、S401で計算された総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を越えるか否かを判定する(S402)。S401で計算された総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えると判定される場合には、S403に進む。一方、S401で計算された総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えないと判定される場合にはS405に進む。尚、プラットフォーム部20は、この判定結果を直接記憶部122に記憶しておく。ところで、プラットフォーム部20で利用可能な直接記憶部122の容量とは、直接記憶部122の全体の容量から、以下の(A)〜(C)を差し引いた容量である。
(A)プラットフォームプログラムを記憶している領域。
(B)CPU121が上記プラットフォームプログラムを処理した際に得られる情報(計算結果等)を記憶する(直接記憶部122及び間接記憶部123のうちの)領域。
(C)印刷装置11、画像形成装置12が動作する際に最大で使用する直接記憶部122の容量。
プラットフォーム部20は、アプリケーション管理データ300に登録済みのアプリケーションとインストール対象のアプリケーションのそれぞれについて、次の値を計算する(S403)。すなわち、プラットフォーム部20は、あるアプリケーションの最大メモリ使用量と、それ以外のアプリケーションの最低限メモリ使用量との総和を計算する。
プラットフォーム部20は、S403で算出された総和のうちで最も大きな値が、プラットフォーム部20で利用可能な直接記憶部122の容量(メモリ総量)を越えるか否かを判定する(S404)。
ここで、最大メモリ使用量と、最低限メモリ使用量との差が最も大きいアプリケーションを一つ選択し、選択したアプリケーションの最大メモリ使用量と、残りのアプリケーションの最低限メモリ使用量との総和を、S403で計算される総和としても良い。
例えば、以下のようなアプリケーション1〜3が存在するとする。この場合に、アプリケーション1では、最大メモリ使用量が10で、最低限メモリ使用量が0であるとする。また、アプリケーション2では、最大メモリ使用量が10で、最低限メモリ使用量が1であるとする。また、アプリケーション3では、最大メモリ使用量が10で、最低限メモリ使用量が9であるとする。
このとき、最大メモリ使用量と、最低限メモリ使用量との差が、10−0=10で、最大メモリ使用量と、最低限メモリ使用量との差が、最も大きいアプリケーションとして、アプリケーション1が選択される。そして、選択されたアプリケーション1の最大メモリ使用量(10)と、残りアプリケーション2、3の最低限メモリ使用量(1及び9)を全て足し合わせて、S403で計算される総和は、10+1+9=20となる。
S404で、S403で算出された総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えると判定される場合には、外部インターフェース125が受信したアプリケーションはインストールせずに処理を終了する。
S404で、S403で算出された総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えないと判定される場合にはS405に進む。
プラットフォーム部20は、外部インターフェース125を介して受信したアプリケーションプログラムをインストールする(S405)。プラットフォーム部20は、前述のとおり、アプリケーションプログラムのインストール時にアプリケーション管理データ300にレコードを追加する。追加したレコードのデータ項目301およびデータ項目304、データ項目305には、アプリケーションの名称、最大メモリ使用量、最低限メモリ使用量が含まれる。
S402で、S401で計算された総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を越えないと判定された場合、直接記憶部122には余裕がある。
直接記憶部122に余裕がある場合、新しくインストールされたアプリケーションを含めて、全てのアプリケーションが、それぞれの最大メモリ使用量分ずつ直接記憶部122を使用することができる。
直接記憶部122に余裕がない場合(S402で超えると判定)、従来は新規のアプリケーションのインストールを抑制していた。しかし、本実施形態では、ただひとつだけアクティブなアプリケーションのみ、直接記憶部122を最大メモリ使用量の分、使用可能に制御する。更に、他のアプリケーションは、直接記憶部122を最低限メモリ使用量の分だけ使用可能に制御する。S404では、このように制御することで、新規のアプリケーションをインストールすることができるか否かを判定する処理である。
(アプリケーションプラットフォームの制御の説明)
図5は、本実施形態において、アクティブなアプリケーションを切り替える際の、プラットフォーム部20の(アプリケーションプラットフォーム)処理手順を示すフローチャートである。
ユーザにより、タブ201あるいはタブ202、タブ203が指示されると、ユーザインターフェース124はプラットフォーム部20に対して、これを通知する。プラットフォーム部20はこの通知を受けると、以下の処理を行う。
プラットフォーム部20は、現在アクティブなアプリケーションを非アクティブにする(S501)。そして、プラットフォーム部20は、アクティブであったアプリケーションのGUIデータの表示の停止を、ユーザインターフェース124に通知する。
プラットフォーム部20は、S403において直接記憶部122に記憶した総和がプラットフォーム部20で利用可能な直接記憶部122の容量を越えるか否かの判定結果を取得する(S502)。
プラットフォーム部20は、この判定結果を確認し(S503)、S403において直接記憶部122に記憶した総和がプラットフォーム部20で利用可能な直接記憶部122の容量を超えると判定される場合にはS504へ進む。一方、S403において直接記憶部122に記憶した総和がプラットフォーム部20で利用可能な直接記憶部122の容量を超えないと判定される場合にはS506へ進む。
プラットフォーム部20は、S501で非アクティブにされたバックグラウンドのアプリケーションを、最低限メモリ使用量分だけ直接記憶部122を消費する状態(最低限メモリ使用量消費状態)に遷移させる(S504)。アプリケーションが、最低限メモリ使用量消費状態の際は、プラットフォーム部20は、画像形成装置1の各部の状態やジョブの状態が変化しても、当該アプリケーションを実行しない。更に、最低限メモリ使用量消費状態に遷移させたアプリケーションのGUIデータおよび一時データを記録している実行領域を削除する。
プラットフォーム部20は、ユーザインターフェース124が通知したタブ(タブ201、タブ202、タブ203のいずれか)に関連付けられたフォアグラウンドのアプリケーションを、最大メモリ使用量消費可能状態へ遷移させる(S505)。ここで、最大メモリ使用量消費可能状態とは、最大メモリ使用量分の直接記憶部122を消費可能な状態である。アプリケーションが最大メモリ使用量消費可能状態の際は、プラットフォーム部20は、画像形成装置1の各部やジョブの状態が変化した場合には、これに応じて、当該アプリケーションを実行する。
プラットフォーム部20は、ユーザインターフェース124が通知したタブ(タブ201、タブ202、タブ203のいずれか)に関連付けられたアプリケーションをアクティブにする(S506)。そして、当該アクティブにしたアプリケーションのGUIデータの表示の開始を、ユーザインターフェース124に通知する。
これにより、当該アプリケーションの最低限メモリ使用量を、より小さな容量とすることができる。そして、プラットフォーム部20で利用可能な直接記憶部122の領域をより多く残すことができ、より多くのアプリケーションをインストールすることが可能となる。
先に、S404を説明した。これは、直接記憶部122に余裕がない場合に、アクティブなアプリケーションだけが直接記憶部122を最大メモリ使用量分使用可能とすることで、新規にアプリケーションをインストールすることができるかを判定するものであった。S505およびS506が、この当該制御を実現している。
尚、ジョブを発行した場合、プラットフォーム部20がアプリケーションを実行して当該ジョブを監視・制御する必要がある。(例えば、ジョブが正常に進行しているか否かを監視したり、エラー終了した場合のGUIデータを生成する。)このような状態の場合には、上記説明した処理(アプリケーションの切替)をプラットフォーム部20は実施しないように制御することが望ましい。この場合、ユーザインターフェース124は、タブ201あるいはタブ202、タブ203を網掛けに表示(反転して指示できなよう表示)する。
このように、本実施形態によれば、非アクティブなアプリケーションをメモリ使用量の少ない状態に制御する。アプリケーションのインストール時には、最大で使用するメモリ量(最大メモリ使用量)に加えて、前記メモリ使用量の少ない状態のメモリ量(最低限メモリ使用量)を加味する。従来、全てのアプリケーションの最大メモリ使用量の総和(積算値)だけを参照してインストールを制限していたが、本実施形態によれば、より多くのアプリケーションをインストールし運用することができる。
尚、本実施形態では、ジョブの実行に伴い生ずる一時データ記憶に要する直接記憶部122の容量は、アプリケーションの最大メモリ使用量や最低限メモリ使用量には含まないものとして説明した。しかし、当該一時データの記憶に要する容量を、アプリケーションのメモリ使用量として計上する、すなわち最大メモリ使用量や最低限メモリ使用量に含めるようにしてもよい。
ユーザインターフェース124を介しユーザからジョブの開始指示を受信した場合には、プラットフォーム部20はアプリケーションを実行して、印刷装置11や画像処理装置12にジョブを発行する。この場合、ジョブの実行に伴い生ずる一時データの容量は、当該アプリケーションの最大メモリ使用量に含めることができる。
また、ユーザ操作に関係なく、プラットフォーム部20がアプリケーションを自動的あるいは定期的に実行する場合がある。例えば、外部インターフェース125を介して、定期的に別体の機器に情報を送信したり、あるいは別体の機器より文書を受信してこれを出力したりする。この場合、ジョブの実行に伴い生ずる一時データの容量は、当該アプリケーションの最低限メモリ使用量に含めることができる。
本実施形態を、上記のアプリケーションプラットフォームに限らず、アプリケーションプラットフォームを制御するアプリケーションとして実装しても良い。
また、本実施形態では、直接記憶部122に余裕がない場合には、直接記憶部122を最大メモリ使用量の分使用できるアプリケーションを、ただひとつにするよう制御する例を説明した。
上記の例は、あくまでも一例であり、直接記憶部122を最大メモリ使用量の分使用できるアプリケーションの数をk(複数)個とするよう制御しても良い。このような場合には、本実施形態において、以下のように処理が行われても良い。
すなわち、本実施形態において、k個のアクティブなアプリケーションが、直接記憶部122を最大メモリ使用量の分、使用可能に制御されても良い。
また、S403において、プラットフォーム部20が、総和を計算する際に、k個のアプリケーションの最大メモリ使用量と、それ以外のアプリケーションの最低限メモリ使用量との総和が計算されても良い。
また、S403において、プラットフォーム部20が、総和を計算する際に、以下のようにして、総和を計算しても良い。すなわち、まず、S403において、プラットフォーム部20は、アプリケーションの最大メモリ使用量と最低限メモリ使用量との差が大きいものから順にk個のアプリケーションが選択される。そして、S403において、プラットフォーム部20が、そのk個のアプリケーションの最大メモリ使用量と、それ以外のアプリケーションの最低限メモリ使用量との総和が計算されても良い。
例えば、以下のようなアプリケーション1〜3が存在するとする。この場合に、アプリケーション1では、最大メモリ使用量が10で、最低限メモリ使用量が0であるとする。また、アプリケーション2では、最大メモリ使用量が10で、最低限メモリ使用量が1であるとする。また、アプリケーション3では、最大メモリ使用量が10で、最低限メモリ使用量が9であるとする。
このとき、アプリケーション1の最大メモリ使用量と、最低限メモリ使用量との差は、10−0=10である。また、アプリケーション2の最大メモリ使用量と、最低限メモリ使用量との差は、10−1=9である。また、アプリケーション3の最大メモリ使用量と、最低限メモリ使用量との差は、10−9=1である。
このとき、アプリケーションの最大メモリ使用量と最低限メモリ使用量との差が大きいものから順にk=2個のアプリケーション1とアプリケーション2が選択される。そして、S403において、そのk=2個のアプリケーション1とアプリケーション2の最大メモリ使用量とそれ以外のアプリケーション3の最低限メモリ使用量との総和(10+10+9=29)が計算される。
上記の例は、あくまでも一例であり、直接記憶部122を最大メモリ使用量の分使用できるアプリケーションの数k(複数)は、変動する値であっても良い。このような場合には、本実施形態において、以下のように処理が行われてkの値が確定されても良い。
まず、k=N(Nは、アプリケーションの総数)−1とされる。そして、最大メモリ使用量と最低限メモリ使用量との差が最も大きいものから順にk個のアプリケーションが選択される。そして、選択されたk個のアプリケーションの最大メモリ使用量と、残りのアプリケーションの最低限メモリ使用量との和が計算されて総和とされる。この総和が、容量を超えていた場合には、k=N−2とされる。以上の処理が、計算される総和が、容量未満となるまで繰り返され、kが確定される。
例えば、以下のようなアプリケーション1〜3が存在するとする。この場合に、アプリケーション1では、最大メモリ使用量が10で、最低限メモリ使用量が0であるとする。また、アプリケーション2では、最大メモリ使用量が10で、最低限メモリ使用量が1であるとする。また、アプリケーション3では、最大メモリ使用量が10で、最低限メモリ使用量が9であるとする。そして、N(アプリケーションの総数)=3である。
このとき、アプリケーション1の最大メモリ使用量と、最低限メモリ使用量との差は、10−0=10である。また、アプリケーション2の最大メモリ使用量と、最低限メモリ使用量との差は、10−1=9である。また、アプリケーション3の最大メモリ使用量と、最低限メモリ使用量との差は、10−9=1である。
このとき、まず、アプリケーションの最大メモリ使用量と最低限メモリ使用量との差が大きいものから順にk=N−1=3−1=2個のアプリケーション1とアプリケーション2が選択される。そして、S403において、そのk=2個のアプリケーション1とアプリケーション2の最大メモリ使用量とそれ以外のアプリケーション3の最低限メモリ使用量との総和(10+10+9=29)が計算される。この総和(=29)が、容量を超えている場合には、k=N−2=3−2=1個の最大メモリ使用量と最低限メモリ使用量との差が最も大きいアプリケーション1が選択される。そして、S403において、そのk=1個のアプリケーション1の最大メモリ使用量と、それ以外のアプリケーション2とアプリケーション3の最低限メモリ使用量との総和(10+1+9=20)が計算される。この総和(=20)が、容量を超えない(容量未満である)場合には、k=1と定められる。
<実施形態2>
実施形態1では、アプリケーションのインストール時に、インストール対象のアプリケーションの最大メモリ使用量の総和が、プラットフォーム部20で利用可能なメモリを超えると判定される場合に、以下の処理が行われる。すなわち、最低限メモリ使用量を考慮してインストール可否が判定される。
本実施形態では、アプリケーションのインストール時ではなく、アプリケーションの起動時に、起動対象のアプリケーションの最低限メモリ使用量を考慮し、起動可否を判定する例を説明する。
図6は、本実施形態において、プラットフォーム部20がアプリケーションをインストールする際の処理手順を示したフローチャートである。
図6のS601は、図4に示されているS405の処理と同様である。
図7は、本実施形態において、プラットフォーム部20がアプリケーションを起動する際の処理手順を示したフローチャートである。
ユーザインターフェース124は、アプリケーションの起動指示を受信すると、プラットフォーム部20に通知する。これにより、プラットフォーム部20は、以下の処理を実行する。
まず、プラットフォーム部20は、アプリケーション管理データ300のデータ項目303が“起動”であるアプリケーションと、起動させようとしているアプリケーション(起動対象のアプリケーション)の最大メモリ使用量の総和を計算する(S701)。
次に、プラットフォーム部20は、S701で計算された最大メモリ使用量の総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を越えるか否かを判定する(S702)。
S702において、S701で計算された最大メモリ使用量の総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えると判定される場合には、S703に処理が進む。
一方、S702において、S701で計算された最大メモリ使用量の総和が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えないと判定される場合には、S705に処理が進む。尚、プラットフォーム部20は、S702の判定結果を直接記憶部122に記憶しておく。
プラットフォーム部20は、アプリケーション管理データ300のデータ項目303が“起動”であるアプリケーションと、起動させようとしているアプリケーションのそれぞれについて、次の値を計算する(S703)。すなわち、プラットフォーム部20は、あるアプリケーションの最大メモリ使用量とそれ以外のアプリケーションの最低限メモリ使用量の総和を計算する。ここで、S703で計算される総和は、図4のS403で計算される総和と同様に計算されても良い。
プラットフォーム部20は、S703で算出された総和のうちで最も大きな値が、プラットフォーム部20で利用可能な直接記憶部122の容量(メモリ総量)を越えるか否かを判定する(S704)。
S704において、S703で算出された総和のうちで最も大きな値が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えると判定される場合には、当該アプリケーション起動させずに処理を終了する。
一方、S704において、S703で算出された総和のうちで最も大きな値が、プラットフォーム部20で利用可能な直接記憶部122の容量を超えないと判定される場合にはS705に処理が進む。
次に、プラットフォーム部20は、当該アプリケーションを起動する(S705)。
このように、本実施形態によれば、メモリ容量に起因するアプリケーション導入の制限をアプリケーションの起動時に実施する。
プラットフォーム部20がインストールしたアプリケーションは、間接記憶部123に記憶される。間接記憶部123は、HDD等により実現でき、低コストであって、直接記憶部122と比較してはるかに大容量にすることができる。このため、直接記憶部122の容量による制限を、アプリケーションのインストール時にではなく、アプリケーションの起動時に実施することができる。
機器を運用する際、外部インターフェース125を介した別体の機器との通信を常設しない場合もある。例えば、初期設置時に、事前にアプリケーションのインストールまでを行っておき、後にメモリの増設を実施した後で当該アプリケーションを起動することができる。いちいち通信手段を設置する手間が省けるため、運用上の利便性を向上させることができる。
上記の図4および図7に示されている処理によれば、インストール又は起動対象のアプリケーションを、アプリケーションのアプリケーションプラットフォームでインストール又は起動するか否かを決定することができる。また、上記の図4および図7に示されている処理によれば、インストール又は起動対象のアプリケーションを決定するときに、プラットフォーム部20は、以下の処理を行うことができる。すなわち、プラットフォーム部20は、既にインストール又は起動されている複数のアプリケーションの夫々の最大メモリ使用量と最低限メモリ使用量を参照することができる。さらに、プラットフォーム部20は、インストール又は起動対象のアプリケーションの最大メモリ使用量と最低限メモリ使用量とを参照することができる。ここで、一般に、インストール又は起動対象のアプリケーションの最大メモリ使用量は、インストール又は起動対象のアプリケーションの最低限メモリ使用量より多い。
また、上記の図4および図7に示されている処理によれば、インストール又は起動対象のアプリケーションを決定するときに、プラットフォーム部20は、以下の処理を行うことができる。すなわち、プラットフォーム部20は、既にインストール又は起動されているN−1個のアプリケーションの夫々の最大メモリ使用量と最低限メモリ使用量とを参照することができる。さらに、このとき、プラットフォーム部20は、1個のインストール又は起動対象のアプリケーションの最大メモリ使用量と最低限メモリ使用量とを参照することができる。このとき、プラットフォーム部20は、以下の処理を実行することができる。すなわち、合計でN(=(N−1)+1)個のアプリケーションのうち、k個のアプリケーションにおける最大メモリ使用量の総和と、N−k個のアプリケーションにおける最低限メモリ使用量の総和との和が、閾値を超えるかを判定することができる。ここで、閾値とは、例えば、N個のアプリケーションがプラットフォーム部20で利用可能なリソース量である。
また、本発明に係るプラットフォーム部20で、インストール又は起動できるアプリケーションでは、最大メモリ使用量と、最低限メモリ使用量とを宣言することができる。
また、本発明に係るプラットフォーム部20で、インストール又は起動できるアプリケーションの最大メモリ使用量は、インストール又は起動できるアプリケーションの最低限メモリ使用量より多くても良い。また、本発明に係るプラットフォーム部20で、インストール又は起動できるアプリケーションの最大メモリ使用量と、最低限メモリ使用量とが対象としているリソースは同じでも良い。
本発明に係るプラットフォーム部20で、インストール又は起動できるアプリケーションの最大メモリ使用量は、アプリケーションが最大メモリ使用量消費可能状態の際に使用するリソースの量であっても良い。
また、本発明に係るプラットフォーム部20で、インストール又は起動できるアプリケーションの最低限メモリ使用量は、アプリケーションが最低限メモリ使用量消費状態の際に使用するリソースの量であっても良い。
<実施形態3>
前述の実施形態1では、図5のS504において、最低限メモリ使用量消費状態に遷移するアプリケーションのGUIデータが直接記憶部122から削除される。これにより、直接記憶部122の空き容量をより多くすることができる。しかし、当該アプリケーションを再度、最大メモリ使用量消費可能状態(アクティブな状態)にする場合、ユーザインターフェース124には当該アプリケーションの初期状態の画面が表示される。
本実施形態では、最低限メモリ使用量消費状態に遷移する際に削除されるGUIデータを保存しておき、最大メモリ使用量消費可能状態に復帰する場合に、ユーザインターフェース124における画面表示が復元される。
図8は、本実施形態における、アクティブなアプリケーションを切り替える際の、プラットフォーム部20の処理手順を示すフローチャートである。
S801とS501、S802とS502、S803とS503、S805とS504、S806とS505、S808とS506はそれぞれ同様の処理である。ただし、S805では、最低限メモリ使用量消費状態へ遷移させるアプリケーションのGUIデータが、直接記憶部122から削除される。
プラットフォーム部20は、最大メモリ使用量消費可能状態から最低限メモリ使用量消費状態へ遷移させるアプリケーションのGUIデータを、直接記憶部122から取得し間接記憶部123に保存する(S804)。このとき、間接記憶部123における当該GUIデータを保存された場所(GUIデータの保存場所)が、直接記憶部122に記憶される。ここで、GUIデータとは、GUIが表示する内容と、GUIの設定の内容とを含むデータである。
プラットフォーム部20は、最低限メモリ使用量消費状態から最大メモリ使用量消費可能状態へ遷移させるアプリケーションについて、以下の処理を実行する。すなわち、プラットフォーム部20は、直接記憶部122に記憶されているGUIデータの保存場所に基づいて、間接記憶部123より、GUIデータを取得する(S807)。そして、このGUIデータが直接記憶部122に記録され、GUIデータが復元される。
このように、本実施形態によれば、アプリケーションを最低限メモリ使用量消費状態へ遷移させる際に、当該アプリケーションのGUIデータが削除されても、再度、最大メモリ使用量消費可能状態に遷移した場合に、元の状態に復元することができる。これにより、ユーザ利便性を損うことなく、メモリを効率的に利用することができる。
尚、複合機の様に、認証管理を成すことが可能な機器においては、ユーザのログアウトが生じた場合、間接記憶部123に記憶した各アプリケーションのGUIデータを削除することもできる。これにより、ユーザがユーザインターフェース124を操作した結果生じる画面(GUIデータ)を、他のユーザに見られてしまうことを防止する。
<実施形態4>
前述の実施形態1では、印刷装置11や画像処理装置12がジョブを実行することにより生ずる一時データを記憶するための容量は、最大メモリ使用量や最低限メモリ使用量に含まれない。
本実施形態では、ジョブの実行に伴い生ずる一時データが、アプリケーションの最大メモリ使用量や最低限メモリ使用量に含められる。
ユーザインターフェース124を介しユーザからジョブの開始指示を受信した場合には、プラットフォーム部20は、アプリケーションを実行して、印刷装置11や画像処理装置12にジョブを発行する。この場合、ジョブの実行に伴い生ずる一時データの容量は、当該アプリケーションの最大メモリ使用量に含まれる。
また、ユーザ操作に関係なく、プラットフォーム部20がアプリケーションを自動的あるいは定期的に実行する場合がある。例えば、外部インターフェース125を介して、定期的に別体の機器に情報を送信したり、あるいは別体の機器より文書を受信してこれを出力したりする。この場合、ジョブの実行に伴い生ずる一時データの容量は、当該アプリケーションの最低限メモリ使用量に含まれる。
なお、上述した実施形態において、最大メモリ使用量や最低限メモリ使用量などのリソース使用量を区別するために、最大メモリ使用量や最低限メモリ使用量を「第1のリソース使用量」や「第2のリソース使用量」と呼んでも良い。
また、上述した実施形態において、第1のリソース使用量は、アプリケーションが第1の状態の際に使用するリソースの量であっても良いし、第2のリソース使用量は、アプリケーションが第2の状態の際に使用するリソースの量であっても良い。
また、上述した実施形態において、複数の遷移を区別するために、「第1の遷移」や「第2の遷移」と呼んでも良い。
また、上述した実施形態において、「N個」、「N−1個」、「k個」等の記載において、Nやkは、任意の整数を意味する。
<上記以外の実施形態>
本発明は、さらに、複数の機器(例えばコンピュータ、インターフェース機器、リーダ、プリンタなど)から構成されるシステムに適用することも、一つの機器からなる装置(複合機、プリンタ、ファクシミリ装置など)に適用することも可能である。
また本発明の目的は、上述した実施形態で示したフローチャートの手順を実現するプログラムコードを記憶した記憶媒体から、システムあるいは装置のコンピュータ(またはCPUやMPU)が、そのプログラムコードを読出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになる。そのため、このプログラムコード及びプログラムコードを記憶/記録したコンピュータ読み取り可能な記憶媒体も本発明の一つを構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
また、前述した実施形態の機能は、コンピュータが、読み出したプログラムを実行することによって実現される。また、このプログラムの実行とは、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行う場合も含まれる。
さらに、前述した実施形態の機能は、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットによっても実現することもできる。この場合、まず、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行う。こうした機能拡張ボードや機能拡張ユニットによる処理によっても前述した実施形態の機能が実現される。
画像形成装置を示す図である。 ユーザインターフェースの表示例を示す図である。 アプリケーションの管理情報を示す図である。 処理手順を示すフローチャートである。 処理手順を示すフローチャートである。 処理手順を示すフローチャートである。 処理手順を示すフローチャートである。 処理手順を示すフローチャートである。
符号の説明
1 画像形成装置
11 印刷装置
12 画像処理装置
20 プラットフォーム部
121 CPU
123 間接記憶部
124 ユーザインターフェース
125 外部インターフェース

Claims (8)

  1. アプリケーションをインストールすることが可能なコンピュータであって、
    アプリケーションが消費する最大メモリ使用量と最低限メモリ使用量とをアプリケーション毎に管理する管理手段と、
    GUIを表示するアクティブ状態のアプリケーションを切り替える指示を受けつけたことに応じて、インストールされている複数のアプリケーションの中で最大メモリ使用量と最低限メモリ使用量との差が最も大きいアプリケーションの最大メモリ使用量と、その他のアプリケーションの最低限メモリ使用量との総和が前記コンピュータのメモリの容量を超えるか否かを判定する判定手段と、
    前記判定手段により超えると判定された場合は、切り替えによりアクティブ状態となるアプリケーションを最大メモリ使用量が消費できる状態へ遷移させ、GUIを表示しない非アクティブ状態となるそれ以外のアプリケーションを最低限メモリ使用量が消費できる状態へと遷移させる制御手段と、
    を有することを特徴とするコンピュータ。
  2. 印刷装置をさらに備えることを特徴とする請求項1の記載のコンピュータ。
  3. 前記制御手段は、前記指示を受け付けたことに応じて、切り替え前にアクティブ状態のアプリケーションのGUIデータを前記コンピュータのメモリとは別のメモリに記憶させ、前記コンピュータのメモリに前記GUIデータの保存場所を記憶させ、
    切り替えにより最低限メモリ使用量を消費する状態へと遷移したアプリケーションを最大メモリ使用量を消費する状態へと再び遷移させる場合、前記コンピュータのメモリに記憶させた前記GUIデータの保存場所を基に前記別のメモリからGUIデータを取得し画面を復元することを特徴とする請求項1または2に記載のコンピュータ。
  4. 前記制御手段は、前記別のメモリにGUIデータが記憶されている際にユーザーが前記コンピュータからログアウトした場合、前記別のメモリに記憶されたGUIデータを削除することを特徴とする請求項3に記載のコンピュータ。
  5. 前記GUIデータは、表示内容と、設定内容とを含むデータであることを特徴とする請求項3または4に記載のコンピュータ。
  6. アプリケーションをインストールするインストールすることが可能なコンピュータにおける制御方法であって、
    アプリケーションが消費する最大メモリ使用量と最低限メモリ使用量とをアプリケーション毎に抽出する抽出ステップと、
    GUIを表示するアクティブ状態のアプリケーションを切り替える指示を受けつけたことに応じて、前記抽出ステップにおいて抽出されたインストールされている複数のアプリケーションの中で最大メモリ使用量と最低限メモリ使用量との差が最も大きいアプリケーションの最大メモリ使用量と、その他のアプリケーションのメモリ使用量との総和が前記コンピュータのメモリの容量を超えるか否かを判定する判定ステップと、
    前記判定ステップにより超えると判定された場合は、切り替えによりアクティブ状態となるアプリケーションを最大メモリ使用量が消費できる状態へ遷移させ、GUIを表示しない非アクティブ状態となるそれ以外のアプリケーションを最低限メモリ使用量が消費できる状態へと遷移させる制御ステップと、
    を有することを特徴とする制御方法。
  7. 前記コンピュータが印刷装置をさらに備えることを特徴とする請求項6の記載の制御方法。
  8. コンピュータを、請求項1から5のいずれかに記載のコンピュータとして機能させるためのプログラム。
JP2008289887A 2008-11-12 2008-11-12 コンピュータ、制御方法、及びプログラム Expired - Fee Related JP5322595B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008289887A JP5322595B2 (ja) 2008-11-12 2008-11-12 コンピュータ、制御方法、及びプログラム
US12/605,239 US8527984B2 (en) 2008-11-12 2009-10-23 Application platform and application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008289887A JP5322595B2 (ja) 2008-11-12 2008-11-12 コンピュータ、制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2010117838A JP2010117838A (ja) 2010-05-27
JP2010117838A5 JP2010117838A5 (ja) 2012-01-05
JP5322595B2 true JP5322595B2 (ja) 2013-10-23

Family

ID=42166351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008289887A Expired - Fee Related JP5322595B2 (ja) 2008-11-12 2008-11-12 コンピュータ、制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US8527984B2 (ja)
JP (1) JP5322595B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9003394B2 (en) * 2007-07-10 2015-04-07 Ricoh Company, Ltd. Program determining apparatus and program determining method
JP5599055B2 (ja) * 2010-09-22 2014-10-01 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
JP2012074871A (ja) * 2010-09-28 2012-04-12 Oki Networks Co Ltd パケットキャプチャシステム、通信機器及びパケットキャプチャ方法
US20130263161A1 (en) * 2010-12-20 2013-10-03 Hewlett-Packard Development Company L.P. Method of provisioning additional storage to computer applications
JP5522075B2 (ja) * 2011-02-15 2014-06-18 コニカミノルタ株式会社 画像形成装置、画像形成システム、画像形成装置の制御方法、及び画像形成装置の制御プログラム
JP6028428B2 (ja) * 2012-07-10 2016-11-16 富士ゼロックス株式会社 サービス提供装置、サービス提供システム及びプログラム
JP2015197845A (ja) * 2014-04-02 2015-11-09 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
JP6415130B2 (ja) * 2014-06-25 2018-10-31 キヤノン株式会社 画像形成装置、画像形成装置の制御方法及びプログラムを記憶した記憶媒体
JP7135654B2 (ja) * 2018-09-21 2022-09-13 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
KR20230080535A (ko) * 2021-11-30 2023-06-07 삼성전자주식회사 메모리 회수 방법 및 장치

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5948065A (en) * 1997-03-28 1999-09-07 International Business Machines Corporation System for managing processor resources in a multisystem environment in order to provide smooth real-time data streams while enabling other types of applications to be processed concurrently
JP2000305756A (ja) * 1999-04-20 2000-11-02 Canon Inc データ処理装置およびデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2001337852A (ja) * 2000-05-24 2001-12-07 Sony Corp 情報処理装置、情報処理方法
JP4568963B2 (ja) * 2000-06-08 2010-10-27 ソニー株式会社 情報処理装置、情報通信システム
JP4506064B2 (ja) * 2001-09-26 2010-07-21 ブラザー工業株式会社 表示装置、表示方法およびコンピュータプログラム
JP2004005419A (ja) * 2002-03-25 2004-01-08 Canon Inc インストール処理装置、処理方法及び記憶媒体ならびにプログラム
US7143413B2 (en) * 2002-05-15 2006-11-28 Hewlett-Packard Development Company, L.P. Method and system for allocating system resources among applications using weights
WO2004027613A2 (en) * 2002-09-20 2004-04-01 Koninklijke Philips Electronics N.V. Method and system for allocating shared resources between applications
US7243145B1 (en) * 2002-09-30 2007-07-10 Electronic Data Systems Corporation Generation of computer resource utilization data per computer application
JP3835410B2 (ja) * 2003-02-13 2006-10-18 日本電気株式会社 計算機システム及びメモリ割り当て量保証値動的変更方法並びにプログラム
JP2005086426A (ja) * 2003-09-08 2005-03-31 Mitsubishi Electric Corp 携帯情報端末、並びにソフトウェア入れ替えシステム及び方法
US7702779B1 (en) * 2004-06-30 2010-04-20 Symantec Operating Corporation System and method for metering of application services in utility computing environments
JP2006107197A (ja) * 2004-10-06 2006-04-20 Nec Corp メモリ制御方法およびプログラムならびに端末装置
JP2006285871A (ja) * 2005-04-04 2006-10-19 Canon Inc 情報処理装置、制御方法、プログラム、及び記憶媒体
JP4377369B2 (ja) * 2005-11-09 2009-12-02 株式会社日立製作所 リソース割当調停装置およびリソース割当調停方法
JP4709066B2 (ja) * 2006-05-25 2011-06-22 日本電信電話株式会社 ゲートウェイ管理方法
JP5079345B2 (ja) * 2007-01-29 2012-11-21 京セラ株式会社 電子機器及び電子機器における制御方法
US8843934B2 (en) * 2008-10-27 2014-09-23 Hitachi, Ltd. Installing and executing new software module without exceeding system resource amount

Also Published As

Publication number Publication date
US20100122247A1 (en) 2010-05-13
JP2010117838A (ja) 2010-05-27
US8527984B2 (en) 2013-09-03

Similar Documents

Publication Publication Date Title
JP5322595B2 (ja) コンピュータ、制御方法、及びプログラム
KR101292429B1 (ko) 오프 상태로부터의 운영 체제의 고속 부팅
CN101833460B (zh) 用于配置多个软件简档的***和方法
US20140149644A1 (en) Electronic apparatus, method of updating firmware, and computer-readable recording medium
US9563444B2 (en) Image forming apparatus having hibernation function according to device connection states, control method therefor, and storage medium
JP5948855B2 (ja) 機器、プログラム管理方法、プログラム管理プログラム、及び記録媒体
JP2012059024A (ja) 情報処理装置、起動制御方法、起動制御プログラム及び記録媒体
US9086938B2 (en) Information processing apparatus, control method thereof, and storage medium
CN104199692A (zh) 一种获取应用程序的启动时间的方法、装置及终端
JP5397162B2 (ja) プリンタードライバー、及び、posプリンターの制御方法
KR20090092570A (ko) 가상화 기술을 이용한 데이터 입출력 방법 및 장치
EP2581830A1 (en) Multi-core processor system, method of power control, and power control program
US20180146110A1 (en) Information processing apparatus, control method, and storage medium
JP5381059B2 (ja) 機器、ログ記録制御方法、及びプログラム
US9588755B2 (en) Information processing apparatus capable of controlling installation of application, method of controlling the same, and storage medium
CN104754161B (zh) 打印装置以及打印装置的控制方法
US20220374256A1 (en) Information processing system, information processing apparatus, method of controlling the same, and storage medium
JP2007206819A (ja) 情報処理装置、情報処理装置の制御方法および制御プログラム
JP2011197827A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US8332562B2 (en) System to reduce the time and complexity of self configuring systems
JP2020184241A (ja) 情報処理装置、情報処理装置の制御方法、及び印刷拡張アプリケーション
JP6381218B2 (ja) ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム
JP6953828B2 (ja) 情報処理装置及びプログラム
US11977801B2 (en) Image processing apparatus, control method, and storage medium
US8913257B2 (en) Image forming apparatus, method and program of managing the image forming apparatus by reserving area for identified counter

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20101106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111110

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130409

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: 20130618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130716

R151 Written notification of patent or utility model registration

Ref document number: 5322595

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees