(57)【特許請求の範囲】
【請求項１】
処理を実行する処理手段と、
割り当てられた記憶領域を作業領域として用いて制御プログラムを実行し、当該制御プログラムの機能により前記処理手段を制御して前記処理を実行させる制御手段であって、実行中の前記制御プログラムを停止させる処理及び前記作業領域を解放する処理を前記制御プログラムの終了処理として行う制御手段と、
前記処理手段が実行する処理の中止が要求されると、前記制御手段が応答し前記終了処理を実行可能な状態であれば、前記制御手段に前記終了処理を実行させてから前記作業領域のデータを消去し、前記制御手段が応答しない状態であれば、前記制御手段に前記終了処理を実行させることなく前記作業領域のデータを消去する消去手段と
を備える情報処理装置。
【請求項２】
前記制御手段は、前記終了処理として、前記作業領域のデータを記憶手段に書き込む処理を行う
請求項１に記載の情報処理装置。
【請求項３】
前記中止の要求は、表示した操作画像への操作を受け付ける表示装置から行われ、
前記操作画像を前記表示装置に提供する提供手段であって、前記制御手段が応答しない状態である場合に、前記中止を要求する操作を受け付けるための前記操作画像を前記表示装置に提供する提供手段を備える
請求項１又は２に記載の情報処理装置。
【請求項４】
前記制御手段は、前記表示装置から処理を要求する旨を表す処理要求データが送信されてきたときに当該処理を実行させ、
前記提供手段は、自装置が前記表示装置と通信したときに前記制御手段が応答しない状態であれば、前記中止を要求する操作を受け付けるための前記操作画像を当該表示装置に提供する
請求項３に記載の情報処理装置。
【請求項５】
前記表示装置は、前記処理の状況を表示し、
前記制御手段は、前記表示装置からＨＴＴＰ（Hypertext Transfer Protocol）リクエストにより前記処理が要求されると当該処理を実行させ、
前記処理の状況を前記表示装置に通知する通知手段であって、当該処理を要求したＨＴＴＰリクエストに対するＨＴＴＰレスポンスとは別の通信により当該処理の状況を通知する通知手段を備える
請求項３または４に記載の情報処理装置。
【請求項６】
請求項１乃至５のいずれか１項に記載の情報処理装置と、
操作画像を表示して当該操作画像への操作を受け付け、受け付けた操作に対応する要求を前記情報処理装置に対して行う表示装置と
を備える情報処理システム。
【請求項７】
コンピュータを、
処理を実行する処理手段と、
割り当てられた記憶領域を作業領域として用いて制御プログラムを実行し、当該制御プログラムの機能により前記処理手段を制御して前記処理を実行させる制御手段であって、実行中の前記制御プログラムを停止させる処理及び前記作業領域を解放する処理を前記制御プログラムの終了処理として行う制御手段と、
前記処理手段が実行する処理の中止が要求されると、前記制御手段が応答し前記終了処理を実行可能な状態であれば、前記制御手段に前記終了処理を実行させてから前記作業領域のデータを消去し、前記制御手段が応答しない状態であれば、前記制御手段に前記終了処理を実行させることなく前記作業領域のデータを消去する消去手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、タスクレベルが最も高い時間監視処理を定周期で実行させ、監視時点で未だ実行中の処理があった場合にその処理を強制終了させる技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−４８８４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、制御プログラムの機能により実行される処理を途中で中止した場合に、その制御プログラムがより安定した状態で次回も実行されるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
本発明の請求項１に係る情報処理装置は、処理を実行する処理手段と、割り当てられた記憶領域を作業領域として用いて制御プログラムを実行し、当該制御プログラムの機能により前記処理手段を制御して前記処理を実行させる制御手段であって、実行中の前記制御プログラムを停止させる処理及び前記作業領域を解放する処理を前記制御プログラムの終了処理として行う制御手段と、前記処理手段が実行する処理の中止が要求されると、前記制御手段が応答し前記終了処理を実行可能な状態であれば、前記制御手段に前記終了処理を実行させてから前記作業領域のデータを消去し、前記制御手段が応答しない状態であれば、前記制御手段に前記終了処理を実行させることなく前記作業領域のデータを消去する消去手段とを備えることを特徴とする。
【０００６】
本発明の請求項２に係る情報処理装置は、請求項１に記載の構成において、前記制御手段は、前記終了処理として、前記作業領域のデータを記憶手段に書き込む処理を行うことを特徴とする。
本発明の請求項３に係る情報処理装置は、請求項１または２に記載の構成において、前記中止の要求は、表示した操作画像への操作を受け付ける表示装置から行われ、前記操作画像を前記表示装置に提供する提供手段であって、前記制御手段が応答しない状態である場合に、前記中止を要求する操作を受け付けるための前記操作画像を前記表示装置に提供する提供手段を備えることを特徴とする。
【０００７】
本発明の請求項４に係る情報処理装置は、請求項３に記載の構成において、前記制御手段は、前記表示装置から処理を要求する旨を表す処理要求データが送信されてきたときに当該処理を実行させ、前記提供手段は、自装置が前記表示装置と通信したときに前記制御手段が応答しない状態であれば、前記中止を要求する操作を受け付けるための前記操作画像を当該表示装置に提供することを特徴とする。
【０００８】
本発明の請求項５に係る情報処理装置は、請求項３または４に記載の構成において、前記表示装置は、前記処理の結果を表示し、前記制御手段は、前記表示装置からＨＴＴＰ（Hypertext Transfer Protocol）リクエストにより前記処理が要求されると当該処理を実行させ、前記処理の結果を前記表示装置に通知する通知手段であって、当該処理を要求したＨＴＴＰリクエストに対するＨＴＴＰレスポンスとは別の通信により当該処理の結果を通知する通知手段を備えることを特徴とする。
【０００９】
本発明の請求項６に係る情報処理システムは、請求項１乃至５のいずれか１項に記載の情報処理装置と、操作画像を表示して当該操作画像への操作を受け付け、受け付けた操作に対応する要求を前記情報処理装置に対して行う表示装置とを備えることを特徴とする。
【００１０】
本発明の請求項７に係るプログラムは、コンピュータを、処理を実行する処理手段と、割り当てられた記憶領域を作業領域として用いて制御プログラムを実行し、当該制御プログラムの機能により前記処理手段を制御して前記処理を実行させる制御手段であって、実行中の前記制御プログラムを停止させる処理及び前記作業領域を解放する処理を前記制御プログラムの終了処理として行う制御手段と、前記処理手段が実行する処理の中止が要求されると、前記制御手段が応答し前記終了処理を実行可能な状態であれば、前記制御手段に前記終了処理を実行させてから前記作業領域のデータを消去し、前記制御手段が応答しない状態であれば、前記制御手段に前記終了処理を実行させることなく前記作業領域のデータを消去する消去手段として機能させることを特徴とする。
【発明の効果】
【００１１】
請求項１、２、６、７に係る発明によれば、制御プログラムの機能により実行される処理を途中で中止した場合に、一律の手順で処理を中止させるときに比べて、その制御プログラムをより安定した状態で次回も実行させることができる。
請求項３に係る発明によれば、処理を中止すべきタイミングをユーザに通知することができる。
請求項４に係る発明によれば、通信の有無に関係なく操作画像を提供する場合に比べて、処理を中止すべきタイミングがより確実にユーザに伝わるようになる。ができる。
請求項５に係る発明によれば、ＨＴＴＰレスポンス待ちで操作が受け付けられない期間を短くする通知を行いつつ、割り当てられた記憶領域にデータが残り続けることを抑制することができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態の情報処理システムの全体構成の一例を示すブロック図
【図２】ユーザ装置のハードウェア構成の一例を示すブロック図
【図３】操作装置のハードウェア構成の一例を示すブロック図
【図４】情報処理装置のハードウェア構成の一例を示すブロック図
【図５】情報処理システムの機能構成の一例を示すブロック図
【図６】表示された操作画像の一例を示す図
【図７】表示された状況情報の例を示す図
【図８】ＲＡＭ及びＨＤＤに記憶されるデータの遷移の一例を示す図
【図９】情報処理システムの構成を表す階層構造の一例を示す図
【図１０】機能部に含まれるモジュール群の一例を示す図
【図１１】情報処理システムの構成を表す階層構造の一例を示す図
【図１２】実行処理における各装置の動作の一例を示すシーケンス図
【図１３】実行処理における各装置の動作の別の一例を示すシーケンス図
【図１４】第１の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図
【図１５】第２の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図
【図１６】第３の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図
【図１７】第４の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図
【図１８】変形例の情報処理装置のハードウェア構成の一例を示す図
【図１９】変形例の情報処理装置のハードウェア構成の一例を示す図
【図２０】変形例の情報処理装置の機能構成の一例を示す図
【発明を実施するための形態】
【００１３】
［１］実施形態
まず、図１から図１１までを参照して、実施形態の情報処理システムの全体構成、ハードウェア構成及び機能構成について説明する。
［１−１］全体構成
図１は、情報処理システムの全体構成の一例を示すブロック図である。図１では、通信回線２と、通信機器３と、情報処理装置１０と、複数のユーザ装置２０とを備える情報処理システム１が示されている。情報処理システム１は、本実施形態では、コピーやスキャン、ＦＡＸ（ファクシミリ）、プリント（画像データの媒体への出力）などの機能をユーザに提供するシステムである。
【００１４】
通信回線２は、例えばインターネットや移動体通信網、電話回線などのうちの少なくとも１つ以上を含む通信のためのシステムである。通信回線２は、自システムに接続された装置同士の通信を仲介する。通信回線２には、情報処理装置１０及び通信機器３が接続されている。通信機器３は、ルータやハブ、アクセスポイントなど、通信を仲介する機能を有する通信装置である。通信機器３は、本実施形態では、アクセスポイントであり、無線ＬＡＮの規格に準拠して無線通信を行う。
【００１５】
通信機器３は、ユーザ装置２０と無線通信を行う一方、通信回線２を介して情報処理装置１０と通信する。つまり、情報処理装置１０は、通信回線２という通信システムと、通信機器３という外部の通信装置とを介してユーザ装置２０と通信する。なお、通信機器３は、ユーザ装置２０が接続する通信装置の一例であり、ユーザ装置２０は、他の通信装置を介して情報処理装置１０と通信してもよい。ただし、ここでいう「他の通信装置」には、情報処理装置１０及び操作装置３０は含まれない。以下では、「他の通信装置」といった場合、情報処理装置１０、ユーザ装置２０及び操作装置３０のいずれでもない通信装置を指すものとする。
【００１６】
情報処理装置１０は、媒体に画像を形成する画像形成処理や、媒体に形成された画像を読み取る画像読取処理などの処理を行う装置である。これらの処理は、前述したコピーやスキャン、ＦＡＸ、プリントなどの機能がユーザに提供される際に行われる。情報処理装置１０は、自装置の操作に用いられる操作装置３０を有する。操作装置３０は、情報処理装置１０を操作するための装置である。操作装置３０は、情報処理装置１０の筐体に固定されており、情報処理装置１０が設置されている場所に来たユーザによって用いられる。操作装置３０は、例えば液晶ディスプレイ等を有し、情報処理装置１０を操作するための画像データ（以下「操作画像データ」という）を表示する。操作画像データについて、図６を参照して説明する。
【００１７】
図６は、表示された操作画像データの一例を示す図である。図６の例では、コピー機能を利用するための操作画像データ群Ａ１が表示されている。操作画像データ群Ａ１には、コピーを開始させるための操作画像データＡ１１などが含まれている。ユーザは、この操作画像データＡ１１をタップする（軽く叩く）ことで、操作画像データＡ１１に対応する操作、すなわちコピーを開始させる操作を行う。
【００１８】
操作装置３０は、表示した操作画像データに対する操作が行われると、その操作を受け付け、情報処理装置１０に対して、受け付けた操作に対応する要求を行う。操作装置３０は、操作画像データＡ１１が操作された場合であれば、操作画像データＡ１１に対応する処理として、コピー機能を提供するための処理（具体的には画像読取処理及び画像形成処理を含む一連の処理。以下「コピー処理」という）の要求を情報処理装置１０に対して行う。
【００１９】
ユーザ装置２０は、情報処理装置１０から提供された操作画像データを表示し、表示した操作画像データに対して操作が行われると、その操作を受け付け、受け付けた操作に対応した処理の要求を情報処理装置１０に対して行うという点で、操作装置３０と共通している。ユーザ装置２０は、例えばタブレット端末やパーソナルコンピュータなどであり、ユーザによって持ち運ばれて利用されるものでもよいし、机に設置されて利用されるものでもよい。また、情報処理装置１０の操作に限らず、他の用途（会社の業務など）にも用いられてもよい。
【００２０】
情報処理装置１０は、操作装置３０やユーザ装置２０からの要求に基づいて処理を実行すると、実行している処理の状況を表す情報（以下「状況情報」という）をこれらの装置に送信することで、これらの装置に対して処理の状況を通知する。
図７は、表示された状況情報の例を示す図である。情報処理装置１０は、例えばコピー処理を実行した場合であれば、図７（ａ）に示すように、コピーが完了した枚数（部数及びページ数）を表す枚数情報Ｃ１１や「コピーしています。」という文字列、「白黒」、「Ａ４」、「１００％」及び「ソート」というコピーのパラメータなどを含む状況情報Ｃ１を送信する。
【００２１】
また、情報処理装置１０は、コピー処理が進んで要求された枚数のコピーが完了すると、図７（ｂ）に示すように、要求された枚数の分のコピーが完了したことを表す枚数情報Ｃ２１や「コピーが完了しました。」という文字列などを含む状況情報Ｃ２を送信する。なお、枚数情報Ｃ１１及びＣ２１は、コピーを要求された枚数を分母とし、そのうちコピーが完了した枚数を分子とする分数で表されている。このように、状況情報には、処理の進捗を表す情報や処理の結果を表す情報、処理に用いられるパラメータの情報などが含まれる。操作装置３０及びユーザ装置２０は、いずれも、提供された操作画像を図６に示すように表示し、通知された状況を図７に示すように表示する表示装置でもある。以下では、操作装置３０及びユーザ装置２０を区別しない場合には表示装置４という。
【００２２】
［１−２］ハードウェア構成
図２は、ユーザ装置２０のハードウェア構成の一例を示すブロック図である。ユーザ装置２０は、制御部２１と、記憶部２２と、通信部２３と、表示部２４と、操作部２５とを備えるコンピュータである。制御部２１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）及びリアルタイムクロックを備え、ＣＰＵが、ＲＡＭをワークエリアとして用いてＲＯＭや記憶部２２に記憶されたプログラムを実行することによって各部の動作を制御する。リアルタイムクロックは、現在の日時を算出してＣＰＵに通知する。
【００２３】
記憶部２２は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などの不揮発の（すなわち電力が供給されなくても書き込まれたデータを記憶し続ける）記憶手段を備え、制御部２１が制御に用いるデータやプログラム、画像データなどを記憶する。通信部２３は、無線ＬＡＮ（Local Area Network）の規格に準拠して無線通信を行う通信回路及びアンテナを備える通信手段であり、例えば図１に示す通信機器３と無線通信を行う。つまり、通信部２３は、上述した他の通信装置（情報処理装置１０、ユーザ装置２０及び操作装置３０のいずれでもない通信装置。通信機器３はその一例）と通信する手段である。表示部２４は、液晶ディスプレイ等を有し、制御部２１により制御されて表示面に画像を表示する。
【００２４】
操作部２５は、例えば自装置がタブレット端末である場合には、表示面に重ねて設けられたタッチセンサ（タッチスクリーンやタッチパネルともいう）や筐体に設けられたボタン等を備え、上述したタップ等のユーザの操作を受け付けてその操作の内容を示す操作データを制御部２１に供給する。なお、自装置がパーソナルコンピュータである場合には、操作部２５はキーボードやマウスを備えていてもよい。制御部２１は、供給された操作データに応じた制御を行う。
【００２５】
図３は、操作装置３０のハードウェア構成の一例を示すブロック図である。操作装置３０は、制御部３１と、記憶部３２と、通信部３３と、表示部３４と、操作部３５とを備えるコンピュータである。以下、図２に示すブロックと共通のハードウェアを表すブロック（通信部３３以外の各部）には、共通の名称を付して説明を省く。通信部３３は、有線ＬＡＮの規格に準拠して通信を行う通信回路と、通信用のケーブル（具体的にはＬＡＮケーブル）が有するコネクタを差し込むポートとを備える。通信部３３は、前述した他の通信装置を介さず情報処理装置１０と通信する手段である。
【００２６】
図４は、情報処理装置１０のハードウェア構成の一例を示すブロック図である。情報処理装置１０は、制御部１１と、記憶部１２と、画像読取部１３と、画像形成部１４と、第１通信部１５と、第２通信部１６と、接続部１７とを備えるコンピュータである。以下、図２及び図３に示すブロックと共通のハードウェアを表すブロック（制御部１１及び記憶部１２）には、共通の名称を付して説明を省く。また、情報処理装置１０は、ＵＩ（User Interface）部として機能する前述した操作装置３０を備えている。制御部１１は、本実施形態では、操作装置３０以外の各部を制御する。
【００２７】
画像読取部１３は、例えばＣＣＤ（Charge Coupled Devices）方式を用いて、原稿に描かれた画像を読み取る画像読取処理を行う。画像読取部１３は、用紙等の媒体に形成されたコンテンツの画像を光学的に読み取って、読み取った画像を表す画像データを制御部１１に供給する。画像形成部１４は、例えば電子写真方式を用いて、媒体に画像を形成する画像形成処理を行う。画像形成部１４は、制御部１１から供給される画像データが示す画像を用紙等の媒体に形成する。なお、画像の読み取り及び画像の形成に用いられる前述した方式は、それぞれ一例であり、他の方式であってもよい。
【００２８】
第１通信部１５は、通信用のケーブルやデータバスを介して操作装置３０の通信部３３と接続され、前述した外部装置を介さずに操作装置３０と通信する。つまり、通信部３３も、前述した外部装置を介さずに情報処理装置１０と通信する。
【００２９】
第２通信部１６は、通信用のインターフェースとして有線ＬＡＮまたは無線ＬＡＮの規格に準拠して通信を行う通信回路と、通信用のケーブル（ＬＡＮケーブル）が有するコネクタを差し込むポートや無線ＬＡＮの規格に準拠した無線の送受信装置を備え、このインターフェースを介して接続される装置と通信する通信処理を行う。第２通信部１６は、図１に示す通信回線２に接続されて、外部装置（情報処理装置１０にとっての外部装置であり、例えば通信機器３）を介して例えばユーザ装置２０と通信する。接続部１７は、ＳＤメモリーカード等の記憶媒体を接続するスロット等を有し、それらの記憶媒体と接続する。制御部１１は、接続部１７を介して、それらの記憶媒体に記憶されているデータの読み出しや記憶媒体へのデータの書き込みを行う。操作装置３０は、図５の説明で述べた構成を備え、第１通信部１５と通信する。操作装置３０は、この通信を行うことで、例えば制御部１１から送信されてくるデータが示す画像を表示したり、情報処理装置１０を操作するためのデータを制御部１１に送信したりするユーザインターフェース部（ＵＩ部）として機能する。
【００３０】
［１−３］機能構成
情報処理装置１０、ユーザ装置２０及び操作装置３０の各制御部が各記憶部に記憶されているプログラムを実行して各部を制御することで、以下に述べる機能が実現される。
図５は、情報処理システム１の機能構成の一例を示すブロック図である。情報処理装置１０は、仲介手段１０１と、提供手段１０２と、処理手段１０３と、通知手段１０４と、制御手段１０５と、消去手段１０６とを備える。ユーザ装置２０は操作手段２００を備え、操作装置３０は操作手段３００を備える。
【００３１】
［１−３−１］仲介手段
情報処理装置１０の仲介手段１０１は、自装置（情報処理装置１０）と表示装置４との通信を仲介する手段である。より詳細には、仲介手段１０１は、上述した他の通信装置（例えば通信機器３）を介して自装置に接続される表示装置４（本実施形態ではユーザ装置２０）との通信を仲介する。また、仲介手段１０１は、他の通信装置を介さず自装置に接続される表示装置４（本実施形態では操作装置３０）との通信を仲介する。仲介手段１０１が用いる通信の手順（いわゆる通信プロトコル）について以下に説明する。
【００３２】
仲介手段１０１は、表示装置４（ユーザ装置２０及び操作装置３０）と自装置との間で各種の通信プロトコル（規格）に準拠した通信を仲介することが可能に構成されている。仲介手段１０１は、例えば表示装置４から送信されてくるユーザインターフェースを構成するための操作画像データを取得する要求であるＨＴＴＰ（Hypertext Transfer Protocol）リクエストを受け取って後述する提供手段１０２に供給したり、その応答で後述する提供手段１０２から供給される層が画像データを記述したＨＴＭＬファイルを含むＨＴＴＰレスポンスを受け取って表示装置４に向けて送信したりする。
【００３３】
また、仲介手段１０１は、表示装置４から送信されてくる処理要求をＨＴＴＰリクエストとして受け取り、後述する制御手段１０５へ渡し、処理手段１０３で処理された結果に基づき生成される通知情報や自装置１０で発生したイベントに基づき生成される通知情報を、通知手段１０４から受け取り、一例としてＨＴＴＰレスポンスとして表示装置に渡す制御を仲介する。また、仲介手段１０１は、ＷｅｂＳｏｃｋｅｔの規格にも準拠した通信制御を行うことも可能である。仲介手段１０１は、例えば、ＴＣＰ（Transmission Control Protocol）のハンドシェイク手続きで表示装置４が一度接続されたあとは、ＨＴＴＰリクエスト及びＨＴＴＰレスポンスを示す通知データの通信だけでなく、例えば提供手段１０２から任意のタイミングで行われる表示装置４への通知データの送信を仲介する。これにより、情報処理システム１においては、表示装置４が発信するＨＴＴＰリクエストによるいわゆるプル型の通信だけでなく、情報処理装置１０から発信するプッシュ型の通知処理の通信も行われるようになっている。
【００３４】
仲介手段１０１は、以下に述べる提供手段１０２、通知手段１０４、制御手段１０５、表示手段２０１及び３０１（以下、それぞれを区別しない場合は「表示手段４０１」という）、要求手段２０２及び３０２（以下、それぞれを区別しない場合は「要求手段４０２」という）の通信を仲介する。詳細には、仲介手段１０１は、情報処理装置１０の提供手段１０２及び通知手段１０４が表示装置４の表示手段４０１と行う通信をそれぞれ仲介し、表示装置４の要求手段４０２が情報処理装置１０の制御手段１０５と行う通信をそれぞれ仲介する。
【００３５】
［１−３−２］提供手段
情報処理装置１０の提供手段１０２は、上述した操作画像データを、仲介手段１０１を介して表示装置４に提供する手段である。提供手段１０２は、ユーザ装置２０には、仲介手段１０１及び上述した他の通信装置を介した通信により操作画像データを提供する。また、提供手段１０２は、操作装置３０には、仲介手段１０１を介す一方他の通信装置を介さない通信により操作画像を提供する。
【００３６】
提供手段１０２は、操作画像（具体的には操作画像データ）を記憶しており、操作画像データを要求するデータを含むＨＴＴＰリクエストが仲介手段１０１を介して送信されてくると、この要求に対応する操作画像データを含むＨＴＴＰレスポンスを要求元に対して仲介手段１０１を介して送信する。この操作画像データは、例えばＨＴＭＬ形式で記述された情報である。
【００３７】
提供手段１０２は、ユーザ装置２０から操作画像を要求するデータが送信されてきた場合には、それに応答してユーザ装置２０に操作画像データとしてのＨＴＭＬ形式のデータを送信する。また、提供手段１０２は、操作装置３０から操作画像データの要求データが送信されてきた場合には、それに応答して操作装置３０に操作画像データとしてのＨＴＭＬ形式のデータを送信する。このように操作画像データの要求元（ユーザ装置２０及び操作装置３０）に操作画像データを送信することで、提供手段１０２は、それらの要求元に操作画像データとしてのＨＴＭＬ形式のデータをそれぞれ提供する。
【００３８】
［１−３−３］処理手段
情報処理装置１０の処理手段１０３は、処理を実行する手段である。処理手段１０３は、上述したコピー処理の他、スキャン処理、ＦＡＸ処理、プリント処理（それぞれスキャン機能、ＦＡＸ機能、プリント機能を提供するための処理）などを実行する。コピー処理には、図４に示す画像読取部１３による画像読取処理及び画像形成部１４による画像形成処理が含まれる。スキャン処理には画像読取処理が含まれ、ＦＡＸ処理には第２通信部１６によるＦＡＸ通信処理が含まれる。また、プリント処理には、第１通信部１５による通信処理及び画像形成処理が含まれる。スキャン処理及びＦＡＸ処理には、他にも、データの取得及び出力の方法に応じて、第２通信部１６を用いたデータ通信処理やデータを記憶部１２に書き込む書込処理、記憶されたデータを記憶部１２から読み出す読出処理などが含まれる。
【００３９】
処理手段１０３が処理を実行すると、様々な状況が発生する。例えばコピー処理であれば、原稿からの画像の読み取り、媒体の搬送の開始、感光体へのトナー像の形成、媒体への画像の形成などである。また、カラー設定や拡大率、ソートの有無などのコピーのパラメータも、コピー処理における状況に含まれる。処理手段１０３は、本実施形態では、処理を実行すると、それらの処理の状況のうち、通知の対象となる状況を表す状況情報を生成し、通知手段１０４に供給する。
【００４０】
通知の対象となる状況とは、例えば、図７に示したコピーの完了枚数や、用紙のサイズなどのパラメータなどである。情報処理装置１０の記憶部１２には通知の対象となる状況を示す一覧が記憶されており、処理手段１０３は、記憶部１２を参照し、処理の状況を表す状況情報のうち、その一覧に含まれる状況を表すものを通知手段１０４に供給する。なお、処理手段１０３は一覧に含まれるか否かに関係なく状況情報を通知手段１０４に供給し、供給された状況情報が一覧に含まれる状況を表すものであるか否かを通知手段１０４が判断してもよい。
【００４１】
［１−３−４］通知手段
情報処理装置１０の通知手段１０４は、処理手段１０３が実行する処理の状況を、仲介手段１０１を介した通信により表示装置４に通知する手段である。通知手段１０４は、本実施形態では、第１から第４までの４つの通知方法を用いて通知を行う。第１及び第２の通知方法では、通知手段１０４は、表示装置４からの要求に対する応答で処理の状況を通知する。具体的には、通知手段１０４は、表示装置４からＨＴＴＰリクエストが仲介手段１０１を介して送信されてきた場合に、そのＨＴＴＰリクエストに対するＨＴＴＰレスポンスに処理手段１０３から供給された状況情報を記述し、仲介手段１０１を介してそのＨＴＴＰレスポンスを表示装置４に送信することで、処理の状況を通知する。
【００４２】
通知手段１０４は、第１の通知方法では、表示装置４からＨＴＴＰリクエストによる処理の要求（以下「処理要求」という）があった場合に、まず、処理手段１０３により実行されるその処理が完了するまで待つ。つまり、ここで要求されている「処理」は、処理手段１０３が行う処理である。そして、通知手段１０４は、処理を要求したＨＴＴＰリクエストに対するＨＴＴＰレスポンスにその処理が完了したときの状況、すなわち処理の結果を記述して送信することで、記述した処理の結果を表示装置４に通知する。
【００４３】
通知手段１０４は、第２の通知方法では、表示装置４からＨＴＴＰリクエストによる処理要求があった場合に、要求された処理の完了を待たずに、そのＨＴＴＰリクエストに対するＨＴＴＰレスポンスにより、まずは処理要求が受け付けられた旨を通知する。それ以降、通知手段１０４は、表示装置４からその処理の状況の通知を求める要求（以下「通知要求」という）を記述したＨＴＴＰリクエストが送信されてきたときに、そのＨＴＴＰリクエストに対するＨＴＴＰレスポンスに状況情報を記述して送信することで、処理の状況を通知する。
【００４４】
表示装置４は、このＨＴＴＰリクエストによる通知要求を一定周期で繰り返し行い（いわゆるポーリングを行い）、通知手段１０４は、ポーリングによる通知要求を受ける度にその応答で処理の状況を通知する。本実施形態では、表示装置４は、処理の完了や処理の途中で障害が発生しして処理を中止した等の結果が通知されるまでポーリングを行い、通知手段１０４は、処理の結果を通知するまで処理の状況を繰り返し通知する。
【００４５】
まとめると、通知手段１０４は、第１の通知方法を用いた場合には、処理を要求したＨＴＴＰリクエストに対するＨＴＴＰレスポンスにより、要求された処理の結果を要求元の表示装置４に通知する。また、通知手段１０４は、第２の通知方法を用いた場合には、処理を要求したＨＴＴＰリクエストに対するＨＴＴＰレスポンスとは別の通信、すなわち、通知を要求するＨＴＴＰリクエストに対するＨＴＴＰレスポンスにより、処理の結果及びそれ以外の処理の状況を要求元の表示装置４に通知する。このように、通知手段１０４は、第１及び第２の通知方法を用いた場合には、表示装置４からの要求（処理要求または通知要求）があったときにその要求に対する応答で通知（いわゆるプル型の通知）を行う。
【００４６】
通知手段１０４は、第３及び第４の通知方法を用いた場合は、ＨＴＴＰレスポンスとは異なる規格の通信により処理の状況を通知する。具体的には、通知手段１０４は、ＷｅｂＳｏｃｋｅｔの規格に基づく通信により処理の状況を通知する。第３及び第４の通知方法は、仲介手段１０１が、ＴＣＰのハンドシェイク手続きを行って自装置（情報処理装置１０）とその表示装置４と接続させた状態で行われる。この状態で、通知手段１０４は、例えば処理手段１０３から状況情報が供給されると、ＷｅｂＳｏｃｋｅｔの規格に準拠するプロトコルを用いて状況情報として記述された通知データを生成する。通知手段１０４は、この通知データを、仲介手段１０１を介して表示装置４に送信することで、処理の状況を通知する。
【００４７】
通知手段１０４は、第３の通知方法では、表示装置４からＨＴＴＰリクエストによる処理要求があったときに、第２の通知方法のように、要求された処理の完了を待たずにまずは処理要求が受け付けられた旨をそのＨＴＴＰリクエストに対するＨＴＴＰレスポンスにより通知する。それ以降、通知手段１０４は、処理手段１０３から状況情報が供給されたときに、ＨＴＴＰリクエストによる通知要求を受け取っていなくても、供給された状況情報を記述した通知データを表示装置４に送信して、処理の結果及びそれ以外の処理の状況を要求元の表示装置４に通知する。
【００４８】
つまり、通知手段１０４は、第３の通知方法を用いた場合には、処理を要求したＨＴＴＰリクエストに対するＨＴＴＰレスポンスとは別の通信（本実施形態ではＷｅｂＳｏｃｋｅｔの規格に準拠した通信）により、その処理の結果及びそれ以外の処理の状況を通知する。
【００４９】
通知手段１０４は、第４の通知方法では、表示装置４からのＨＴＴＰリクエストによる処理要求の有無に関係なく、処理手段１０３から状況情報を供給されたときに、供給された状況情報を記述した通知データを表示装置４に送信して、その状況情報が表す状況を要求元の表示装置４に通知する。通知手段１０４は、第４の通知方法を用いた場合には、例えば「トナー切れ」や「用紙切れ」、「画像形成部の故障」など、予め定められた状況を通知する。なお、通知手段１０４は、各表示装置４について個別に定められた処理の状況を通知してもよい。
【００５０】
このように、通知手段１０４は、第３及び第４の通知方法を用いた場合、表示装置４からのＨＴＴＰリクエストに含まれる要求（処理要求及び通知要求）の有無に関係なく、能動的な通知（いわゆるプッシュ型の通知）を行う。
第１、第２及び第３の通知方法は、いずれも、要求された処理の状況（処理の結果も含む）を通知するための方法である。本実施形態では、表示装置４が処理を要求するときにその処理の結果等を通知する方法を指定する。通知手段１０４は、表示装置４によって指定された通知方法を用いて処理の結果等を通知する。
【００５１】
［１−３−５］操作手段
ユーザ装置２０の操作手段２００及び操作装置３０の操作手段３００（これらを区別しない場合は「操作手段４００」という）は、情報処理装置１０を操作するための手段である。操作手段４００は、例えば表示装置４がブラウザのプログラムを実行することで実現される。操作手段２００は、表示手段２０１と、要求手段２０２とを有し、操作手段３００は、表示手段３０１と、要求手段３０２とを有する。それぞれユーザ装置２０及び操作装置３０を区別しない場合には、「表示手段４０１」及び「要求手段４０２」という。
【００５２】
［１−３−５−１］表示手段
表示手段４０１（ユーザ装置２０の表示手段２０１及び操作装置３０の表示手段３０１）は、情報処理装置１０から送信されてきた情報や画像を表示する手段である。表示手段４０１は、例えば、情報処理装置１０の通知手段１０４から送信されてきた通知データに記述された状況情報（処理の結果やそれ以外の処理の状況などを表す情報）を表示する。表示手段４０１は、例えば前述した図７に示す状況情報Ｃ１やＣ２を表示する。
【００５３】
また、表示手段４０１は、例えば情報処理装置１０のＵＲＬ（Uniform Resource Locator）にアクセスする操作をユーザが行った場合に、前述した操作画像データの要求データをこのＵＲＬ、すなわち情報処理装置１０に送信する。情報処理装置１０の提供手段１０２がその応答で操作画像データを送信してくると、表示手段４０１は、受信した操作画像データに含まれる操作画像を表示する。具体的には、表示手段４０１は、操作画像データに含まれるＨＴＭＬ形式で記述された操作画像の配置や大きさなどのパラメータに基づいて、操作画像データを表示する。こうして表示された操作画像が例えば図６に示す操作画像データ群Ａ１である。
【００５４】
操作画像データ群Ａ１には、上述した操作画像データＡ１１（コピーを開始させるという要求に対応した操作画像）の他に、コピー処理で用いられるパラメータを選択するための操作画像データが含まれている。例えば、図６に示す「倍率選択」、「用紙選択」及び「カラーモード選択」という文字列の下には、コピーする画像の倍率、コピーした画像を形成する用紙及びコピーした画像のカラーモードというパラメータを選択するための操作画像がそれぞれ表示されている。ユーザがこれらの操作画像を操作することでパラメータが選択される。
【００５５】
表示手段４０１は、選択されているパラメータを表す操作画像を他とは異なる態様で（この例では線を太くする態様。ハイライトなどの態様でもよい）で表示することで、選択されているパラメータがユーザに分かるようにしている。表示手段４０１は、表示した操作画像に関するデータを要求手段に供給する。操作画像に関するデータとは、操作画像が操作されたか否かを判断するために用いられるデータであり、例えば操作画像が表示されている領域を示すデータである。また、表示手段４０１は、選択されたパラメータを表すデータを要求手段に供給する。
【００５６】
また、操作画像データ群Ａ１には、「処理状況」という文字列を含む操作画像データＡ１２が含まれている。操作画像データＡ１２が操作されると、図７に示すコピー処理の状況が表示され、「処理の中止」という文字列を含む操作画像データＡ１３が表示される。操作画像データＡ１３は、実行されている処理の中止を要求するための操作画像である。表示手段４０１は、操作画像データＡ１３についても、前述した操作画像に関するデータを要求手段に供給する。
【００５７】
［１−３−５−２］要求手段
要求手段４０２（ユーザ装置２０の要求手段２０２及び操作装置３０の要求手段３０２）は、表示手段４０１により表示された操作画像に対する操作がユーザにより行われると、そのユーザの操作に応じた要求を、ＨＴＴＰリクエストにより情報処理装置１０に対して行う手段である。要求手段４０２は、例えば、操作画像への操作に対応する処理を情報処理装置１０に要求する（つまり上述した処理要求を行う）。ここでいう処理は、処理手段１０３が実行する処理である。また、要求手段４０２は、操作画像への操作に応じて、先に要求した処理の状況及び結果の通知を情報処理装置１０に要求する（つまり上述した通知要求を行う）。
【００５８】
要求手段４０２は、例えばユーザが操作部のタッチセンサをタップした場合に、表示手段４０１から供給されたデータに基づき、操作画像が表示されている領域（例えばボタン画像の表示領域内）にタップされた位置が含まれているか否かを判断する。要求手段４０２は、含まれていると判断した場合に、その領域に表示されている操作画像への操作を受け付ける。要求手段４０２は、上述した要求内容決定画像（図６の例であれば操作画像データＡ１１）への操作を受け付けた場合に、表示手段４０１から供給されたデータが示すパラメータを用いて、その要求内容決定画像が示す処理を情報処理装置１０に対して要求する。図６に示す状態で操作画像データＡ１１に対する操作が行われた場合であれば、要求手段４０２は、１１０％の倍率でＡ４普通紙に白黒でコピーするための処理を情報処理装置１０に要求する。
【００５９】
具体的には、要求手段４０２は、操作された要求内容決定画像に対応する処理（この例ではコピー処理）を、表示手段４０１から供給されたデータが示すパラメータを用いて行うという指示を記述した指示データを生成し、この指示データを含むＨＴＴＰリクエストを生成する。要求手段４０２は、生成した指示データを情報処理装置１０に送信することで、情報処理装置１０に対してＨＴＴＰリクエストにより処理を要求する。このように要求手段４０２が送信する処理を要求する旨を表すデータのことを以下では「処理要求データ」という。なお、コピー処理が要求される場合には、指示データを含む処理要求データが生成されるが、要求される処理によっては、処理要求データに指示データが含まれない場合もある。例えば情報処理装置１０の電源を落とす処理が要求される場合には処理要求データに指示データが含まれない。
【００６０】
要求手段４０２がＨＴＴＰリクエストを送信すると、その応答でＨＴＴＰレスポンスが送信されてくる。要求手段４０２は、これらＨＴＴＰリクエストの送信とＨＴＴＰレスポンスの受信とを含む一連の処理を実行し、それらの処理の実行中はユーザの操作を受け付けない。例えば図６に示す操作画像データ群Ａ１が表示されている場合であれば、それらの操作画像をユーザがタップしても、上述したタップした位置などの判断が行われない。つまり、要求手段４０２は、自手段が送信したＨＴＴＰリクエストに対するＨＴＴＰレスポンスを受け取るまでは、ユーザによる操作を受け付けない状態となる。要求手段４０２は、ＨＴＴＰレスポンスを受け取ったあとは、再びユーザの操作を受け付ける状態になる。この状態においても、ユーザによる処理の中止の指示の操作は受け付けるようにしてもよい。
【００６１】
要求手段４０２は、処理要求を行う場合に、その処理の状況を通知する方法を指定し、指定した方法で通知することを要求する。具体的には、要求手段４０２は、上述した第１、第２、第３の通知方法のうちのいずれかを用いるように指定する。要求手段４０２は、例えば、指定する通知方法を処理要求データに記述して送信する。この場合、情報処理装置１０の通知手段１０４が、処理要求データに記述された通知方法を用いて処理の状況を通知する。なお、要求手段４０２は、処理要求データとは別のＸＭＬデータに指定する通知方法を記述してＨＴＴＰリクエストとして表示装置４に送信してもよい。この場合、通知手段１０４は、例えば、このＨＴＴＰリクエストに対するＨＴＴＰレスポンスで、通知方法の指定を受け付けた旨を通知し、それ以降の通知を指定された通知方法で行う。
【００６２】
また、要求手段４０２は、図７に示す操作画像データＡ１３が操作された場合には、上記のとおり要求した処理が実行中であっても、その処理の中止を要求する。ユーザは、例えば、要求した処理が不要になった場合や処理の異常を表す通知がされた場合などに操作画像データＡ１３を操作する。要求手段４０２は、操作画像データＡ１３への操作を受け付け、処理の中止を要求する旨を記述した処理要求データを含むＨＴＴＰリクエストを情報処理装置１０に対して送信する。
【００６３】
［１−３−６］制御手段
情報処理装置１０の制御手段１０５は、処理手段１０３を制御して処理を実行させる手段である。制御手段１０５が制御を行う場合、例えば情報処理装置１０のオペレーションシステムによって記憶領域が割り当てられる。この記憶領域は、処理手段１０３が処理を実行するための作業を行うために割り当てられるものであり、「作業領域」と呼ばれている（ワークエリアともいう）。以下では、「作業領域」と言った場合、制御手段１０５に対して割り当てられた記憶領域をいうものとする。
【００６４】
制御手段１０５は、作業領域を用いて、実行させる処理に応じた制御プログラムを実行する。制御プログラムは、処理手段１０３を制御するための機能を実現するためのプログラムであり、情報処理装置１０の記憶部１２やＲＯＭなどに記憶されている。なお、制御プログラムは１つのプログラムに限らず、複数のプログラム群であってもよい。制御手段１０５は、作業領域に、制御プログラムそのものやパラメータ、画像データなどのデータを記憶させて制御プログラムを実行する。制御手段１０５は、実行した制御プログラムの機能により処理手段１０３を制御する。
【００６５】
制御手段１０５は、例えば上述した操作画像データ（例えば図６に示す操作画像データＡ１１など）を表示する表示装置４からその操作画像への操作に対応する処理を要求された場合に上記の制御を行う。具体的には、制御手段１０５は、表示装置４からの処理要求データが仲介手段１０１を介して送信されてきた場合に、処理手段１０３を制御して、その処理要求データにより要求された処理を実行させる。つまり、制御手段１０５は、表示装置４から処理要求データを含むＨＴＴＰリクエストにより処理が要求されると、処理手段１０３を制御して要求された処理を実行させる。表示装置４からＨＴＴＰリクエストとして送信されてきた処理要求データは、仲介手段１０１によって仲介されて制御手段１０５に供給される。
【００６６】
制御手段１０５は、例えば、処理要求データに含まれている指示データを解析し、解析した指示の内容のとおりに処理が実行されるように、処理手段１０３を制御する。具体的には、制御手段１０５は、指示された処理（例えばコピー処理）を指示されたパラメータで実行させる。これにより、処理手段１０３は、例えばユーザの操作によって定められた画質及び読取方法で媒体から画像を読み取り、読み取った画像を、ユーザの操作によって定められた出力形式、倍率、用紙及びカラーモードで形成する。
【００６７】
制御手段１０５は、制御プログラムを実行すると、１または２以上の処理を並行して実行する。この処理の単位を「タスク」といい、１以上のタスクを含む一連の処理を「トランザクション」という。例えば画像読取部１３を制御する処理や画像形成部１４を制御する処理がタスクとして実行され、コピー処理というトランザクションが実行される。制御手段１０５は、トランザクション及び各タスクを識別する情報として、トランザクションＩＤ及びタスク番号を発行し、これらを互いに対応付けて記憶部１２に記憶させておく。
【００６８】
また、制御手段１０５は、要求元の表示装置４の通信の宛先と、処理要求データに記述されている通知方法（第１から第３の通知方法のうちのいずれか）とを、トランザクションＩＤに対応付けて記憶部１２に記憶させる。制御手段１０５は、処理を実行させる際に、発行したトランザクションＩＤを処理手段１０３に供給し、処理手段１０３は、通知手段１０４に対して、上述した状況情報とともにトランザクションＩＤを供給する。通知手段１０４は、処理手段１０３から供給されたトランザクションＩＤに対応付けられた通信の宛先に対して、ともに供給された状況情報を記述した通知データを送信する。このとき、通知手段１０４が、そのトランザクションＩＤに対応付けられた通知方法で通知データを送信することで、指定された通知方法での通知が行われる。
【００６９】
［１−３−７］消去手段
情報処理装置１０の消去手段１０６は、制御手段１０５に割り当てられた記憶領域（上述した作業領域）に記憶されたデータを消去する手段である。消去手段１０６には、要求手段４０２から送信されてきた処理の中止を要求する旨を記述した処理要求データを含むＨＴＴＰリクエストが仲介手段１０１を介して供給される。本実施形態では、消去手段１０６は、このＨＴＴＰリクエストにより表示装置４から処理の中止が要求されたときにデータの消去を行う。
【００７０】
消去手段１０６は、制御手段１０５が応答する状態（以下「応答状態」という）であるか応答しない状態（以下「非応答状態」という）であるかによって異なる手順でデータの消去を行う。応答状態とは、制御手段１０５が要求された処理を実行させているときに、他の処理が要求されれば、その要求に応答して他の処理も並行して実行させることが可能な状態であることをいう。
【００７１】
また、非応答状態とは、他の処理が要求されても制御手段１０５がそれを実行できない状態（いわゆるハングした状態）であることをいう。なお、他の処理が要求されてからその実行が開始されるまでに要する時間が基準時間（例えば５分や１０分など）を超える場合には、非応答状態であるものとしてもよい。要求された処理が正常に実行されているときには応答状態になりやすく、何らかの異常が発生しているときには非応答状態になりやすい。
【００７２】
制御手段１０５は、要求された処理の実行を開始すると、その処理のトランザクションＩＤを消去手段１０６に供給する。消去手段１０６は、供給されたトランザクションＩＤを用いて、それにより識別される処理を実行する制御手段１０５の状態を判断する。情報処理装置１０においては、制御手段１０５が実行する各タスクの状態が例えばオペレーションシステムのタスク管理機能によって「応答なし」であるかが監視され、上述したタスクＩＤに対応付けて管理されている。消去手段１０６は、トランザクションＩＤに対応付けて記憶されているタスクＩＤの状態をオペレーションシステムから取得し、「実行中」や「実行待ち」、「停止中」といった「応答なし」が含まれていなければ応答状態と判断し、「応答なし」が含まれていれば非応答状態と判断する。
【００７３】
消去手段１０６は、制御手段１０５が応答する状態（つまり応答状態）であれば、制御手段１０５に制御プログラムを終了させてから作業領域のデータを消去する。制御手段１０５は、実行している制御プログラムを終了させる場合、その制御プログラムについて定められた手順で終了のための処理（以下「終了処理」という）を実行する。制御手段１０５は、この終了処理において、例えば、実行中の制御プログラムを停止する処理と、作業領域に記憶されている更新されたデータをＨＤＤ等の不揮発な記憶手段に書き込む（これを「データを保存する」という）処理と、作業領域を解放する処理とを行う。
【００７４】
消去手段１０６は、応答状態である制御手段１０５に対して前述した終了処理を行うように指示する。制御手段１０５は、応答状態であるため、この指示を受け付けて終了処理を実行する。制御手段１０５は、終了処理を完了するとその旨を消去手段１０６に伝える。消去手段１０６は、制御手段１０５から終了処理が完了した旨が伝えられると、制御手段１０５に割り当てられていた記憶領域に記憶されているデータを消去する。
【００７５】
一方、非応答状態では、制御手段１０５が他の処理を実行できないため、制御プログラムの終了処理も実行できない。そのため、消去手段１０６は、制御手段１０５が応答しない状態（つまり非応答状態）であれば、制御手段１０５に制御プログラムを終了させることなく、作業領域のデータを消去する。この場合、更新されたデータが作業領域に記憶されていてもＨＤＤ等に保存されることなく消去されるが、例えば排他制御された２つのタスクが互いに相手の結果を待つ状態（いわゆるデッドロック）が生じていると、作業領域に記憶されたそれらのタスクで用いられるデータも消去されるので、その状態が解消され、制御プログラムが新たに実行可能となる。
【００７６】
また、消去手段１０６は、作業領域Ｗ１の割り当てを解放するように例えばオペレーションシステムに対して指示する。この指示は、例えばオペレーションシステムにおいて用意されたコマンドを発行することによって行われる。オペレーションシステムは、この指示を受けると、例えば作業領域Ｗ１を割り当てるために記憶していたパラメータ（例えば作業領域Ｗ１の先頭及び最後尾のアドレス）を削除または初期化して、作業領域Ｗ１を解放する。
【００７７】
また、上述したタスクの中には、まだ実行されていないが、実行待ちの状態（いわゆるキューに格納された状態）にされているものがある。このキューが作業領域に記憶されている場合には、消去手段１０６はそれを消去する。また、キューが作業領域外に記憶されている場合には、消去手段１０６は、トランザクションＩＤに対応付けられているタスクＩＤを用いて、制御手段１０５が実行することになっていたタスクを特定してキューから消去する。これにより、キューに残ったタスクが実行されてＣＰＵ等のハードウェア資源に負荷がかかることが避けられる。
【００７８】
消去手段１０６によるデータの消去の具体例について図８を参照して説明する。
図８は、ＲＡＭ及びＨＤＤに記憶されるデータの遷移の一例を示す図である。図８（ａ）に示す状態では、ＨＤＤに「ＰＧＭ１」及び「ＰＧＭ２」という制御プログラムに含まれるプログラムと、「Ｄ１」及び「Ｄ２」というデータとが記憶され、ＲＡＭにはデータが記憶されていない。この状態で、制御手段１０５の作業領域Ｗ１（図中の点線で囲まれた領域）が割り当てられる。
【００７９】
制御手段１０５は、図８（ｂ）に示すように、ＨＤＤに記憶されているプログラム及びデータを作業領域Ｗ１にコピーし、記憶させたプログラム「ＰＧＭ１」及び「ＰＧＭ２」を実行することで、上述したタスクを実行する。図８（ｃ）では、「ＰＧＭ１」及び「ＰＧＭ２」を囲う矩形の線を太くすることで、これらのプログラムに対応するタスクが実行されていることを表している。この例では、各タスクが実行されることで、「Ｄ２」というデータが図８（ｃ）に示すように「Ｄ２ａ」に更新される。表示装置４から処理の中止が要求されると、消去手段１０６は、作業領域Ｗ１に記憶されているデータを消去する。
【００８０】
消去手段１０６は、制御手段１０５が応答状態であれば、終了処理を行うように制御手段１０５に対して指示する。この指示により、制御手段１０５は、図８（ｄ）に示すように、実行されていたタスクを停止し、更新されたデータをＨＤＤにコピーする。それから消去手段１０６は、ＲＡＭに記憶されているプログラム及びデータを図８（ｅ）に示すように消去する。この場合、更新されたデータ「Ｄ２ａ」がＨＤＤに保存される。
【００８１】
消去手段１０６は、制御手段１０５が非応答状態であれば、図８（ｆ）に示すようにタスクが実行されている状態からＲＡＭに記憶されているプログラム及びデータを図８（ｇ）に示すように消去し、作業領域Ｗ１を解放させる。この場合、更新されたデータ「Ｄ２ａ」はＨＤＤに保存されないが、実行されていた「ＰＧＭ１」及び「ＰＧＭ２」に対応するタスクは強制的に終了することになる。
【００８２】
例えば制御手段１０５の状態に関係なく終了処理をさせてからデータを消去しようとすると、非応答状態の場合、制御手段１０５が他の処理を実行できないため、終了処理が実行されず、当然完了もしない。そのため、データの消去が始まらず、作業領域にデータが残ってしまう。すると、前述したデッドロックが生じていてもそれが解消されず、新たな制御プログラムの実行が阻害される。本実施形態では、消去手段１０６が非応答状態のときは終了処理をさせることなくデータを消去するので、消去されなかったデータによって制御プログラムの実行が阻害されることがない。
【００８３】
反対に、制御手段１０５の状態に関係なく終了処理をさせることなくデータを消去すると、応答状態の場合であっても、更新されたデータが保存されない。例えば更新されたデータが既に他の処理で使用されていると、再度制御プログラムを実行したときに、データの不整合が生じることがある。本実施形態でも、非応答状態になってしまうと更新されたデータが保存されないが、応答状態の場合には、更新データが保存されるのでそういった不整合が生じない。このように、本実施形態によれば、制御プログラムの機能により実行される処理を途中で中止した場合に、一律の手順で処理を中止させるときに比べて、その制御プログラムがより安定した状態で次回も実行されることになる。
【００８４】
［１−４］階層構造
情報処理システム１の構成について、その構成を階層構造で表した図９及び図１０を参照して説明する。
図９は、情報処理システム１の構成を表す階層構造の一例を示す図である。情報処理システム１は、プレゼンテーション層４０と、インターフェース５０と、ファンクション層６０と、ミドルウェア層７０と、ハードウェア層８０とを備える。プレゼンテーション層４０は、ユーザによる操作を受け付ける機能（いわゆるユーザインターフェース）を実現する層であり、図５に示す操作手段４００として機能する。
【００８５】
プレゼンテーション層４０は、ＵＩ制御部４１と、デバイス制御部４２と、通信部４３とを備える。ＵＩ制御部４１は、ユーザインターフェースを制御する部分であり、上述した操作画像や状況情報を表示したり、ユーザの操作を受け付けたりする。ＵＩ制御部４１は図５に示す表示手段４０１によって実現される。デバイス制御部４２は、ユーザの操作に基づいて情報処理装置１０に対して上記のとおり処理を要求し、後述するファンクション層６０を制御する。デバイス制御部４２は、要求手段４０２によって実現される。通信部４３は、ＵＩ制御部４１及びデバイス制御部４２が情報処理装置１０と行う通信を制御する。
【００８６】
インターフェース５０は、プレゼンテーション層４０とファンクション層６０との接続を仲介する機能を実現する層である。プレゼンテーション層４０とインターフェース５０との接続は、図１に示す通信機器３等の通信機能を有する装置を介する場合（ユーザ装置２０との接続）と、そういった外部装置を介さない場合（操作装置３０との接続）とがある。ファンクション層６０は、コピー機能やスキャン機能など、目的とする用途に沿ってデータを加工する機能を実現する層である。ミドルウェア層７０は、ファンクション層６０とハードウェア層８０との中間で汎用的な処理を実行する層である。ハードウェア層８０は、画像読み取りや画像形成などの処理を物理的に実現する層である。
【００８７】
ファンクション層６０は、受付・応答部６１と、イベント通知部６２と、操作画像管理部６３と、操作画像ＤＢ（Data Base：データベース）６４と、コピー機能やスキャン機能などを提供する機能部６５とを備える。受付・応答部６１は、プレゼンテーション層４０からインターフェース５０を介して送信されてくる処理要求データが示す処理の要求を受け付け、機能部６５に処理を依頼する。このとき、受付・応答部６１は、上述したトランザクションＩＤの発行も行う。また、受付・応答部６１は、受け付けた要求に対する応答を示す応答データを、インターフェース５０を介してプレゼンテーション層４０に送信する。応答データは、要求を受け付けた旨を示すだけの場合もあれば、状況情報を示す場合もある。つまり、受付・応答部６１は、処理の状況の通知を行うこともあり、その通知は、上述した第１及び第２の通知方法によるプル型の通知となる。
【００８８】
イベント通知部６２には、機能部６５を介して状況情報が供給される。イベント通知部６２は、供給された状況情報を記述した通知データを生成し、この通知データをＷｅｂＳｏｃｋｅｔのプロトコルを用いてインターフェース５０を介してプレゼンテーション層４０に送信する。つまり、イベント通知部６２が行う通知は、上述した第３及び第４の通知方法によるプッシュ型の通知である。操作画像管理部６３は、プレゼンテーション層４０に送信する操作画像データの管理を行う。操作画像ＤＢ６４は、操作画像データを格納するデータベースである。機能部６５は、情報処理装置１０がユーザに提供する機能を実現するためのモジュール群である。
【００８９】
図１０は、機能部６５に含まれるモジュール群の一例を示す図である。機能部６５には、コピー機能、スキャン機能、ＦＡＸ機能、プリント機能、宛先表管理機能（宛先情報を管理する機能）、デバイス管理機能（画像読取部１３の原稿セット状態や画像形成部１４の媒体、消耗品の状態などを管理する機能）、認証機能、親展ボックス機能（情報処理装置１０に記憶されている電子文書を管理する機能）、プレビュー機能、ダウンロード機能（プログラムの更新を制御する機能）、保守機能（リモートからの要求に従いハードウェアをメンテナンスする機能）、診断機能（ハードウェアを診断する機能）をそれぞれ実現するためのモジュールが含まれている。
【００９０】
図９に示すインターフェース５０は、図５に示す仲介手段１０１として機能する。操作画像管理部６３及び操作画像ＤＢ６４が協働することで提供手段１０２として機能し、ミドルウェア層７０及びハードウェア層８０が協働することで処理手段１０３として機能する。また、受付・応答部６１及びイベント通知部６２が協働することで通知手段１０４として機能し、受付・応答部６１及び機能部６５が協働することで制御手段１０５として機能する。
【００９１】
図１１は、情報処理システム１の構成を表す階層構造の一例を示す図である。図１０に示したモジュール群は、それぞれ、要求部６５１及び管理部６５２と、画像形成制御部６５３、画像読取制御部６５４及び通信制御部６５５のうち各モジュールにおいて利用される制御部（以下「利用制御部」という）とを有する。例えば、コピー機能を実現する場合には、画像形成制御部６５３及び画像読取制御部６５４が利用制御部となり、プリント機能を実現する場合には、画像形成制御部６５３が利用制御部となる。以下では、プリント機能を実現するモジュールが実行される場合を例に挙げて、各モジュールの役割について説明する。
【００９２】
画像のプリントを要求する操作がユーザによって行われると、プレゼンテーション層４０からジョブの起動を要求する要求データがインターフェース５０を介してファンクション層６０に送信される。受付・応答部６１はこの要求データを受信して、受信した要求データを解析し、要求の内容に応じたモジュールの要求部６５１（この例ではプリント機能の要求部６５１）に要求データを供給する。要求部６５１は、供給された要求データを解析し、ミドルウェア層７０に対してジョブの生成を要求する。ミドルウェア層７０は、要求されたジョブを生成する処理を行い、その処理結果を要求部６５１に通知する。要求部６５１は、通知された処理結果を受付・応答部６１及びインターフェース５０を介してプレゼンテーション層４０に通知する。
【００９３】
プレゼンテーション層４０は、通知された処理結果を表示する。また、ミドルウェア層７０は、生成したジョブを前述した利用制御部（プリント機能の場合は画像形成制御部６５３）に供給する。利用制御部は、供給されたジョブをユーザに提示する形式で表したユーザジョブを生成し、ユーザジョブの内容を示すデータを、ミドルウェア層７０を介して管理部６５２に供給する。管理部６５２は、供給されたデータが示すユーザジョブの内容を示す通知データを生成する。このユーザジョブの内容は、上述した状況情報にあたるものであり、管理部６５２が生成する通知データは、上述した状況情報データである。管理部６５２は、生成した状況情報データを、イベント通知部６２及びインターフェース５０を介してプレゼンテーション層４０に送信する。こうしてジョブに関するプッシュ型の通知が行われる。
【００９４】
ジョブの一時停止、中止、継続及び優先順位変更等の処理を要求する操作がユーザによって行われると、プレゼンテーション層４０からそれらの処理を要求する要求データがインターフェース５０を介してファンクション層６０に送信される。受付・応答部６１はこの要求データを受信して、受信した要求データを解析し、要求の内容に応じたモジュールの管理部６５２（この例ではプリント機能の管理部６５２）に要求データを供給する。管理部６５２は、供給された要求データを解析し、要求された処理を行うようにミドルウェア層７０に要求する。ミドルウェア層７０は、要求された処理を行い、その処理結果を管理部６５２に通知する。管理部６５２は、通知された処理結果を受付・応答部６１及びインターフェース５０を介してプレゼンテーション層４０に通知する。プレゼンテーション層４０は、通知された処理結果を表示する。
【００９５】
［１−５］動作
［１−５−１］ユーザの操作に基づく動作
情報処理システム１は、以上の構成に基づき、ユーザの操作に応じて画像形成等の処理を実行するための実行処理を行う。実行処理において情報処理システム１が備える各装置が行う動作について、図１２及び図１３を参照して説明する。
図１２は、実行処理における各装置の動作の一例を示すシーケンス図である。図１２の例では、ユーザがユーザ装置２０を操作する場合について説明する。実行処理は、例えば、ユーザがユーザ装置２０に対して、ブラウザを起動して情報処理装置１０のＵＲＬにアクセスする操作を行うことを契機に開始される。
【００９６】
まず、ユーザ装置２０が、操作画像データを要求する要求データを通信機器３を介して情報処理装置１０に送信する（ステップＳ１１）。情報処理装置１０は、要求データを受信すると、その要求データが要求する操作画像を含む操作画像データを生成して（ステップＳ１２）、ユーザ装置２０に通信機器３を介して送信する（ステップＳ１３）。ユーザ装置２０は、受信した操作画像データに含まれる操作画像を表示する（ステップＳ１４）。ステップＳ１１及びＳ１４は表示手段３０１が行う動作であり、ステップＳ１２及びＳ１３は提供手段１０２が行う動作である。
【００９７】
次に、表示された操作画像データに対してユーザが操作を行うと、ユーザ装置２０は、そのユーザ操作を受け付ける（ステップＳ２１）。ステップＳ２１で指示内容決定画像（例えば図６に示す操作画像データＡ１１）へのユーザ操作を受け付けると、ユーザ装置２０は、操作画像への操作により定められた処理の要求を示す処理要求データを生成し（ステップＳ２２）、情報処理装置１０に通信機器３を介して送信する（ステップＳ２３）。情報処理装置１０は、処理要求データを受信すると、その処理要求データが示す要求に応じて処理を実行する（ステップＳ２４）。ステップＳ２１、ステップＳ２２及びＳ２３は要求手段３０２が行う動作である。ステップＳ２４は処理手段１０３及び制御手段１０５が協働して行う動作である。
【００９８】
情報処理装置１０は、例えば処理の状況が更新される度に、上述した状況情報データを生成して（ステップＳ３１）、ユーザ装置２０に通信機器３を介して送信する（ステップＳ３２）。ユーザ装置２０は、状況情報データが送信されてくると、その状況情報データが示す状況情報を表示する（ステップＳ３３）。ステップＳ３１及びＳ３２は通知手段１０４が行う動作であり、ステップＳ３３は表示手段３０１が行う動作である。また、ステップＳ１１、Ｓ１３、Ｓ２３及びＳ３２における通信は、いずれも仲介手段１０１及び通信機器３を介して行われる。
【００９９】
図１３は、実行処理における各装置の動作の別の一例を示すシーケンス図である。図１３では、ユーザが操作装置３０を操作する場合を示している。この場合も、図１２に示した各ステップの動作が行われ、ユーザ装置２０が行っていた動作は操作装置３０が行う。また、ステップＳ１１、Ｓ１３、Ｓ２３及びＳ３２における通信は、いずれも仲介手段１０１を介す一方、通信機器３を介さずに行われる。
【０１００】
［１−５−２］４つの通知方法での動作
以下、情報処理装置１０の通知手段１０４が上述した第１から第４までの４つの通知方法で状況を通知する際に各装置が行う動作について、図１４から図１７までを参照して説明する。図１４から図１６までにおいては、表示装置４のデバイス制御部４２と、情報処理装置１０の受付・応答部６１、イベント通知部６２、ミドルウェア層７０及びハードウェア層８０とが動作の主体としてそれぞれ示す。図１７においては、それらの動作の主体のうち、受付・応答部６１をインターフェース５０に代えて示す。
【０１０１】
図１４は、第１の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図である。図１４に示す動作は、例えば、ユーザがコピーを行う前に、コピーのためのパラメータ（倍率や用紙のサイズ、カラーモードなど）を変更する操作を行うことを契機に開始される。まず、表示装置４のデバイス制御部４２が、パラメータを変更する操作を受け付けると（ステップＳ１１１）、パラメータの変更の要求を記述した処理要求データを情報処理装置１０に対してＨＴＴＰリクエストに含めて送信する（ステップＳ１１２）。ステップＳ１１１は図１２及び図１３に示すステップＳ２１（ユーザ操作の受け付け）に対応し、ステップＳ１１２はステップＳ２２及びＳ２３（処理要求データの生成及び送信）に対応する。
【０１０２】
情報処理装置１０の受付・応答部６１は、その処理要求データを受信すると、そこに記述された要求の内容を解釈し（ステップＳ１１３）、解釈した内容での処理の実行を情報処理装置１０のミドルウェア層７０に指示する（ステップＳ１１４）。ミドルウェア層７０は、ハードウェア層８０と協働して、指示された処理、すなわちパラメータの変更を実行する（ステップＳ１１５）。ステップＳ１１３からＳ１１５までは図１２及び図１３に示すステップＳ２４（処理の実行）に対応する。
【０１０３】
ミドルウェア層７０及びハードウェア層８０は、処理の結果を表す情報を状況情報として受付・応答部６１に供給する（ステップＳ１１６）。受付・応答部６１は、供給された状況情報（この例ではパラメータの変更結果）を記述した通知データを生成し（ステップＳ１１７）、処理の要求元である表示装置４にＨＴＴＰレスポンスに含めて送信する（ステップＳ１１８）。表示装置４のデバイス制御部４２は、送信されてきた通知データに記述された状況情報を自装置の表示部に表示させる（ステップＳ１１９）。ステップＳ１１６及びＳ１１７は図１２及び図１３に示すステップＳ３１（通知データの生成）に対応する。ステップＳ１１８はステップＳ３２（通知データの送信）に対応し、ステップＳ１１９はステップＳ３３（状況情報の表示）に対応する。
【０１０４】
図１５は、第２の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図である。図１５に示す動作は、例えば、ユーザが情報処理装置１０の画像読取部１３に原稿をセットし、表示装置４に対してコピーを開始させる操作を行うことを契機に開始される。まず、表示装置４のデバイス制御部４２は、コピーを開始させる操作を受け付けると（ステップＳ１２１)、受け付けた操作に応じた指示データを作成する（ステップＳ１２２）。デバイス制御部４２は、作成した指示データを記述した処理要求データを、図９に示す通信部４３を介して情報処理装置１０に送信する（ステップＳ１２３）。情報処理装置１０の受付・応答部６１は、図９に示すインターフェース５０を介して処理要求データを受け取ると、記述された指示データに基づく指示の内容を解釈し（ステップＳ１２４）、その処理に対応するトランザクションＩＤを発行する（ステップＳ１２５）。
【０１０５】
受付・応答部６１が、解釈した処理の内容に基づいて処理の指示を表す情報（この例ではコピージョブ。以下「処理指示情報」という）を生成してトランザクションＩＤとともにミドルウェア層７０に供給すると（ステップＳ１２６）、ミドルウェア層７０及びハードウェア層８０が協働して、供給された処理指示情報に基づく処理（コピー処理）を実行する（ステップＳ１２７）。受付・応答部６１は、処理指示情報を供給したあと、コピー処理の要求を受け付けたことを表す情報（例えば「コピーを受け付けました。」という文字列）と発行したトランザクションＩＤとを記述した通知データをＨＴＴＰレスポンスに含めて表示装置４に送信する（ステップＳ１３１）。なお、ステップＳ１３１の動作は、ステップＳ１２６の動作と並行してまたはそれよりも前に行われてもよい。表示装置４のデバイス制御部４２は、ＨＴＴＰレスポンスを参照し、要求が受け付けられた旨を表す情報を自装置の表示部に表示させるとともに（ステップＳ１３２）、トランザクションＩＤを自装置の記憶部に記憶させる（ステップＳ１３３）。
【０１０６】
表示装置４のデバイス制御部４２は、コピー処理の要求に対する応答を受け取ったあと、そのコピー処理の状況の通知を求める通知要求と、ステップＳ１３３において記憶させたトランザクションＩＤとを記述したデータをＨＴＴＰリクエストに含めて送信する（ステップＳ１４１）。情報処理装置１０の受付・応答部６１は、そのトランザクションＩＤに対応付けられたコピー処理の状況情報がまだ供給されていなければ、その旨を記述した通知データを生成してＨＴＴＰレスポンスに含めて表示装置４に送信する（ステップＳ１４２）。ステップＳ１４１及びＳ１４２の動作は繰り返し行われる。
【０１０７】
情報処理装置１０のミドルウェア層７０は、コピー（読み取った原稿を示す画像）を媒体に出力すると、それを検知して（ステップＳ１５１）、コピーが媒体に出力されたという状況を示す状況情報を、ステップＳ１２６に供給されたトランザクションＩＤに対応付けて受付・応答部６１に供給する（ステップＳ１５２）。受付・応答部６１は、供給された状況情報及びトランザクションＩＤを記憶部１２に記憶させておく（ステップＳ１５３）。受付・応答部６１は、ステップＳ１５３以降に通知要求及びトランザクションＩＤが記述されたＨＴＴＰリクエストを受信すると（ステップＳ１４１）、ＨＴＴＰリクエストに含まれるトランザクションＩＤに対応付けられた状況情報を記憶部１２から読み出し、その状況情報を記述した通知データを生成してＨＴＴＰレスポンスを発行する（ステップＳ１５４）。
【０１０８】
受付・応答部６１が生成したＨＴＴＰレスポンスを表示装置４に送信すると（ステップＳ１５５）、表示装置４のデバイス制御部４２は、ステップＳ１３２のように、ＨＴＴＰレスポンスに記述された状況情報を自装置の表示部に表示させる（ステップＳ１５６）。以上のとおり表示装置４が要求した処理に関する情報がトランザクションＩＤによって対応付けられることで、処理の状況がその処理の要求元である表示装置４に対して通知される。以降、コピー処理が完了したときに処理の結果が通知されるまで、ステップＳ１５１からＳ１５６までの動作が繰り返し行われる。
【０１０９】
図１６は、第３の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図である。図１６に示す動作は、図１５のように、コピーを開始させる操作をユーザが行うことを契機に開始される。まず、表示装置４のデバイス制御部４２が、コピーを開始させる操作を受け付けると（ステップＳ１２１)、イベント通知部６２によるプッシュ型の通知、すなわち第３の通知方法を指定する旨を記述した通知要求データを情報処理装置１０に送信する（ステップＳ１６１）。情報処理装置１０の受付・応答部６１は、その通知要求データを受信すると、そこに第３の通知方法を指定する旨が記述されていることをミドルウェア層７０に伝達する（ステップＳ１６２）。
【０１１０】
ミドルウェア層７０は、伝達された指定を受け付け、表示装置４に対して今後第３の通知方法での通知を行うための設定を行う（ステップＳ１６３）。ミドルウェア層７０は、例えば第３の通知方法を行うか否かを表すフラグをＯＮにする。このように、図１６の例では、処理要求データとは別の通知要求データにより通知方法を指定している。なお、表示装置４のデバイス制御部４２は、指定する通知方法を処理要求データに記述してもよい。その場合、受付・応答部６１がステップＳ１２６において指示情報及びトランザクションＩＤをミドルウェア層７０に供給する際に第３の通知方法が指定された旨を伝達することで、第３の通知方法の設定が行われる。
【０１１１】
次に、図１５に示すステップＳ１２２からＳ１２７までの動作と、ステップＳ１３１からＳ１３３までの動作が行われる。続いて、情報処理装置１０のミドルウェア層７０及びハードウェア層８０は、ステップＳ１５１（コピー出力の検知）の動作を行うと、前述したフラグがＯＮになっているため、コピーが媒体に出力されたという状況を示す状況情報とトランザクションＩＤとを受付・応答部６１ではなく、イベント通知部６２に供給する（ステップＳ１７２）。イベント通知部６２は、供給された状況情報（コピー枚数等）とトランザクションＩＤとを記述した通知データを生成して（ステップＳ１７３）、表示装置４に送信する（ステップＳ１７４）。表示装置４のデバイス制御部４２は、通知データに記述された内容（例えば図７（ａ）に示す状況情報Ｃ１）を自装置の表示部に表示させる（ステップＳ１７５）。以降、コピー処理が完了したときに処理の結果が通知されるまで、ステップＳ１５１及びステップＳ１７２からＳ１７５までの動作が繰り返し行われる。
【０１１２】
図１７は、第４の通知方法が用いられる場合の各装置の動作の一例を示すシーケンス図である。図１７に示す動作は、表示装置４においてブラウザが起動され、情報処理装置１０にアクセスする操作（ＵＲＬの入力やブックマークの選択など）が行われることを契機に開始される。まず、表示装置４のデバイス制御部４２が、そのアクセスのための操作を受け付けて（ステップＳ１９１）、通信部４３と協働して、情報処理装置１０のインターフェース５０とＷｅｂＳｏｃｋｅｔの規格に準拠した接続を行う（ステップＳ１９２）。
【０１１３】
それ以降に、情報処理装置１０において予め定められた状況（トナー切れや用紙切れ、画像形成部の故障など）が発生すると、情報処理装置１０のミドルウェア層７０及びハードウェア層８０が協働して、その定められた状況を検知し（ステップＳ２０１）、検知した状況を表す状況情報をイベント通知部６２に供給する（ステップＳ２０２）。イベント通知部６２は、供給された状況情報を記述した通知データを生成し（ステップＳ２０３）、その通知データを、ＷｅｂＳｏｃｋｅｔの接続をしている表示装置４にインターフェース５０を介して送信する（ステップＳ２０４）。表示装置４のデバイス制御部４２は、ステップＳ２０４で受信した通知データに記述された状況情報を自装置の表示部に表示させる（ステップＳ２０５）。
【０１１４】
なお、上述したように、表示装置４毎に異なる状況が通知されてもよい。その場合には、ステップＳ１９２のあとに、デバイス制御部４２が、自装置に通知すべき状況を記述した通知要求データを情報処理装置１０に通信部４３を介して送信する。インターフェース５０を介してそれを受け取ったイベント通知部６２は、その通知すべき状況を、表示装置４の宛先に対応付けて記憶しておく。イベント通知部６２は、ステップＳ２０２で供給された状況情報が、記憶しておいた通知すべき状況を表している場合に、その状況の通知を行う。
【０１１５】
［２］変形例
上述した実施形態は、本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、上述した実施形態及び以下に示す各変形例は、必要に応じて組み合わせて実施してもよい。
【０１１６】
［２−１］通信の規格
実施形態では、ユーザ装置２０は、無線ＬＡＮの規格に準拠する無線通信を行う通信部を備えていたが、これに限らず、例えば操作装置３０の通信部３３のように有線ＬＡＮの規格に準拠する通信を行う通信部を備えていてもよい。この場合、ユーザ装置２０は、有線ＬＡＮのルータやハブなどに通信用のケーブルを介して接続される。この場合のユーザ装置２０の通信部も、上述した他の通信装置（情報処理装置１０とは異なる通信装置。例えばルータやハブなど）と通信する通信手段として機能する。また、無線通信を行う通信部として、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＮＦＣ（Near field communication）などの規格に準拠する無線通信を行う通信部を備えるようにしてもよい。
【０１１７】
また、実施形態では、情報処理装置１０の第１通信部１５と操作装置３０の通信部３３が有線ＬＡＮの規格に準拠して通信を行ったが、これに限らず、例えば、ＵＳＢ（Universal Serial Bus）やＨＤＭＩ(登録商標)（High-Definition Multimedia Interface）などの規格に準拠する通信を行ってもよいし、他にも、無線ＬＡＮやＢｌｕｅｔｏｏｔｈ、ＮＦＣなどの規格に準拠する無線通信を行ってもよい。いずれの場合も、操作装置３０の通信部３３は、ルータやハブなどの他の通信装置を介さずに情報処理装置１０の第１通信部１５と通信する。
【０１１８】
［２−２］操作装置の構成
操作装置３０は、実施形態では図２に示すように制御部３１及び記憶部３２を備えていたが、これらを備えていなくてもよい。
図１８は、本変形例の情報処理装置のハードウェア構成の一例を示す図である。図１８の例では、図４に示す各部のうち、表示部以外の各部を備える情報処理装置１０ａと、操作装置３０ａとが示されている。本変形例でも、操作装置３０ａは情報処理装置１０ａの筐体に固定されている。操作装置３０ａは、図３に示す通信部３３と、ＵＩ部３６とを備える。
【０１１９】
通信部３３及びＵＩ部３６は、情報処理装置１０ａ内のバスに接続され、制御部１１によって制御されるようになっている。また、通信部３３は、第１通信部１５とも接続されている。ＵＩ部３６は、表示面と表示面に重ねられたタッチセンサとを備え、ユーザからの操作を受け付けるとともに画像を表示する。ＵＩ部３６は、受け付けたユーザの操作に応じた操作データを制御部１１に供給し、制御部１１は、この操作データに応じた処理を行う。
【０１２０】
本変形例では、制御部１１がブラウザのプログラムを実行することで図５に示す操作手段３００の機能を実現する。例えば表示手段３０１は、第１通信部１５を介して送信されてきた操作画像データを通信部３３を介して受信し、ＵＩ部３６に表示する。また、要求手段３０２は、ＵＩ部３６がタップされることで操作画像への操作を受け付ける。また、要求手段３０２は、そうして受け付けた操作により定められた指示を示す指示データを、通信部３３及び第１通信部１５を介して送信する。このように、本変形例においても、情報処理装置と表示装置４との通信が、他の通信装置を介す場合も介さない場合も共通の仲介手段を介して行われることになる。
【０１２１】
［２−３］操作装置の設置
操作装置３０は、実施形態や上記変形例では情報処理装置の筐体に固定されていたが、固定されていなくてもよい。
図１９は、本変形例の情報処理装置のハードウェア構成の一例を示す図である。図１９の例では、図４に示す各部のうち、表示部以外の各部を備える情報処理装置１０ｂと、操作装置３０ｂとが示されている。操作装置３０ｂは、図３に示す各部を備え、図５に示す操作手段２００として機能する装置である。
【０１２２】
操作装置３０ｂは、通信用のケーブルまたはデータバスケーブルを介して第１通信部１５に接続されており、情報処理装置１０ｂの筐体上またはその周囲の机等に設置された状態でユーザにより使用される。この操作装置３０ｂは、実施形態の操作装置３０のように、他の通信装置（例えば図１に示す通信機器３）を介さずに情報処理装置１０と通信を行う。なお、操作装置３０ｂは、通信用のケーブルまたはデータバスケーブルを取り外して、別の場所に持って行き別の用途に用いてもよい。なお、図１９の例では、操作装置３０ｂに代えて、操作手段として機能する他の装置（例えば図１等に示したユーザ装置２０）が接続されてもよい。また、操作装置３０ｂを、通信機器３に接続させて、通信機器３及び通信回線２を介して情報処理装置１０ｂと通信させてもよい。
【０１２３】
［２−４］処理手段
処理手段１０３が行う処理は、実施形態で述べたものに限らず、どういった処理であってもよい。例えば、処理手段１０３は、情報処理装置が工場の機械とそれを制御する装置とを有するものである場合に、その機械で材料を搬送したり加工したりする処理を行う。この場合も、ユーザ装置２０及び操作装置３０のどちらからでも共通の仲介手段を介した通信が行われることによって情報処理装置が操作されるようになる。
【０１２４】
［２−５］要求手段
要求手段４０２は、実施形態では、タッチセンサで操作を受け付けたが、これに限らず、自装置がタブレット端末であれば筐体に設けられたボタンで操作を受け付けてもよいし、自装置がパーソナルコンピュータであればキーボードやマウスなどで操作を受け付けてもよい。
【０１２５】
［２−６］仲介手段
仲介手段１０１は、実施形態では、ＳＯＡＰの規格に準拠していたが、これに限らず、例えばＲＥＳＴ（Representational State Transfer）やＳＧＭＬ（Standard Generalized Markup Language）などの規格に準拠して通信を仲介してもよい。要するに、仲介手段１０１は、ウェブで用いられる規格に準拠して通信を仲介するものであればよい。これにより、ブラウザを実行可能な大半の装置が操作用装置として利用可能となる。
【０１２６】
［２−７］処理の中止
実施形態では図７に示す操作画像データＡ１３が操作されることで処理が中止されたが、これに限らず、何らかの条件が満たされた場合に処理が中止されてもよい。例えば、処理が開始されてから長時間（５分や１０分など）が経過した場合や、情報処理装置１０がバッテリーなどの予備電源を持っていて主電源が切れた場合など、強制的に処理を中止させた方がよい状況が生じた場合に満たされる条件が用いられるとよい。この場合、消去手段１０６が、これらの条件が満たされた場合に、実施形態のように作業領域のデータを消去する。
【０１２７】
［２−８］提供手段
図７に示す操作画像データＡ１３、すなわち処理の中止を要求するための操作画像が、必要なときにだけ表示されてもよい。この場合、提供手段１０２が、制御手段１０５が非応答状態である場合に、中止を要求する操作を受け付けるための操作画像（操作画像データＡ１３がその一例）を表示装置４に提供する。提供手段１０２は、例えば、決められた時間の間隔（１０秒毎や３０秒毎など）で、消去手段１０６のように制御手段１０５の状態を監視する。
【０１２８】
提供手段１０２は、制御手段１０５から応答を示すデータが供給されなくなると、非応答状態であると判断し、例えばＷｅｂＳｏｃｋｅｔの規格に準拠したＸＭＬデータを表示装置４に送信することで操作画像データＡ１３を提供する。こうしてそれまで表示されていなかった操作画像データＡ１３、すなわち処理を中止させるための操作画像が表示されることで、処理を中止すべきタイミングがユーザに通知されることになる。
【０１２９】
提供手段１０２は、制御手段１０５の監視を、上記とは異なるタイミングで行ってもよい。提供手段１０２は、例えば、自装置が表示装置４と通信したときに制御手段１０５が応答しない状態であれば、操作画像データＡ１３を表示装置４に提供する。ここでいう通信は、例えば、処理要求や通知要求を表すＨＴＴＰリクエストや操作画像データ要求データの表示装置４による送信である。他にも、情報処理装置１０からの通知データの送信が用いられてもよい。
【０１３０】
情報処理装置１０と表示装置４が通信するときには、通信しないときに比べて、ユーザが表示装置４を使用している可能性が高い。そのため、上記のように通信があったときに操作画像データＡ１３が提供されるようにすることで、通信の有無に関係なく操作画像データを提供する場合に比べて、処理を中止すべきタイミングがより確実にユーザに伝わるようになる。特に、表示装置４から発信される通信を用いると、ユーザが表示装置４を使用している可能性がより高くなり、通信の発信元に関係なく操作画像データを提供する場合に比べて、前述したタイミングがさらに確実にユーザに伝わるようになる。
【０１３１】
ところで、上述した第３の通知方法での通知が行われると、第１の通知方法での通知が行われた場合のように処理が完了するまでＨＴＴＰレスポンスを待つということがないので、その場合に比べてＨＴＴＰレスポンス待ちで操作が受け付けられない期間が短くなる。しかし、制御手段１０５が非応答状態になると、通知の対象となる状況が発生しなくなって通知が行われなくなるおそれがある。そうなると、異常が生じていることにユーザが気付かずに作業領域のデータが放置され、情報処理装置１０の記憶領域が有効に使われなくなることが起こり得る。
【０１３２】
本変形例では、第３の通知方法で通知が行われるときに制御手段１０５が非応答状態になっても、上記のとおり操作画像データＡ１３を提供することで処理を中止すべきタイミングがユーザに通知される。これにより、第３の通知方法が用いられる場合において、操作画像データＡ１３の提供が本変形例のように行われない場合に比べて、作業領域にデータが残り続けることが抑制される。
【０１３３】
［２−９］制御手段の監視
消去手段１０６は、実施形態では、オペレーションシステムのタスク管理機能からタスクの状態を取得したが、これに限らず、自手段がタスクの状態を監視する機能を有していていもよい。また、情報処理システムが別に監視手段を有していてもよい。
図２０は、本変形例の情報処理装置１０ｃの機能構成の一例を示す図である。情報処理装置１０ｃは、図５に示す各手段に加え、監視手段１０７を備える。監視手段１０７には、制御手段１０５からトランザクションＩＤが供給される。
【０１３４】
監視手段１０７は、供給されたトランザクションＩＤに対応付けて記憶されているタスクＩＤにより識別されるタスクの状態を監視する。消去手段１０６は、処理の状態を判断する際に、その処理を識別するトランザクションＩＤを監視手段１０７に供給する。監視手段１０７がそのトランザクションＩＤに対応付けられたタスクＩＤのタスクの状態を消去手段１０６に伝えることで、消去手段１０６は処理の状態を判断する。
【０１３５】
［２−１０］発明のカテゴリ
本発明は、情報処理装置、表示装置、通信機器及びこれらの装置を備える情報処理システムの他にも、これらの装置が実施する処理を実現するための情報処理方法としても捉えられるものである。また、本発明は、情報処理装置及び表示装置というコンピュータを、上述した各手段として機能させるためのプログラムとしても捉えられるものである。このプログラムは、それを記憶させた光ディスク等の記録媒体の形態で提供されたり、インターネット等の通信回線を介して、コンピュータにダウンロードさせ、それをインストールして利用可能にするなどの形態でも提供されたりする。
【符号の説明】
【０１３６】
１…情報処理システム、２…通信回線、３…通信機器、１０…情報処理装置、２０…ユーザ装置、３０…操作装置、１１、２１、３１…制御部、１２、２２、３２…記憶部、１３…画像読取部、１４…画像形成部、１５…第１通信部、１６…第２通信部、１７…接続部、２３、３３…通信部、２４、３４…表示部、２５、３５…操作部、１０１…仲介手段、１０２…提供手段、１０３…処理手段、１０４…通知手段、１０５…制御手段、１０６…消去手段、１０７…監視手段、２００、３００…操作手段、２０１、３０１…表示手段、２０２、３０２…要求手段
【図１】
0006424538.tif 000002
【図２】
0006424538.tif 000003
【図３】
0006424538.tif 000004
【図４】
0006424538.tif 000005
【図５】
0006424538.tif 000006
【図６】
0006424538.tif 000007
【図７】
0006424538.tif 000008
【図８】
0006424538.tif 000009
【図９】
0006424538.tif 000010
【図１０】
0006424538.tif 000011
【図１１】
0006424538.tif 000012
【図１２】
0006424538.tif 000013
【図１３】
0006424538.tif 000014
【図１４】
0006424538.tif 000015
【図１５】
0006424538.tif 000016
【図１６】
0006424538.tif 000017
【図１７】
0006424538.tif 000018
【図１８】
0006424538.tif 000019
【図１９】
0006424538.tif 000020
【図２０】
0006424538.tif 000021