(58)【調査した分野】(Int.Cl.,DB名)
サーバ画面の更新に応じて画面更新情報を逐次送信するサーバ装置からネットワークを介して当該画面更新情報を逐次受信する受信手段と、当該画面更新情報に基づく転送画面を順次表示する表示手段とを有する画面表示装置であって、
サーバ画面更新間隔を逐次検出する検出手段と、
前記画面更新情報に基づき転送画面情報を生成する転送画面生成手段と、
前記各サーバ画面更新間隔が一定であるか判定する判定手段と、
前記各サーバ画面更新間隔が一定であると判定されると、転送画面更新間隔を一定間隔に調整する調整手段と、
前記調整された転送画面更新間隔で前記転送画面を表示させる表示制御手段と、
を備え、
前記調整手段は、
前記各サーバ画面更新間隔の代表値を示す代表時間間隔を算出する算出手段と、
前記代表時間間隔毎に一定の調整時間の計時を開始するタイマ手段と、
を含み、
前記表示制御手段は、
前記調整時間が経過したタイミングで前記転送画面を前記表示手段に表示させること、
を特徴とする画面表示装置。
【発明を実施するための形態】
【0018】
以下、本発明に係る画像表示システムの実施形態について図面を参照しつつ詳細に説明する。
【0019】
(全体構成)
図1は、第1の実施形態に係る画面表示システムの構成を示すブロック図である。画像表示システムは、アプリケーションサーバ200と画面表示装置100とをネットワークNを介して接続して構成されている。
【0020】
アプリケーションサーバ200は、画面表示装置100にサーバ画面を転送し、転送画面による遠隔GUI操作環境を提供する。サーバ画面は、アプリケーションサーバ200で表示される画面である。転送画面は、ネットワークを介して画面表示装置100へ送信されたサーバ画面である。
【0021】
画面表示装置100は、転送画面を表示し、マウスやキーボードやタッチパネル等の入力手段を用いて行われた転送画面上での入力操作をアプリケーションサーバ200へ送信する。アプリケーションサーバ200は、受信した入力操作に応じた処理を行う。
【0022】
アプリケーションサーバ200と画面表示装置100は、所謂コンピュータである。すなわち、アプリケーションサーバ200と画面表示装置100は、それぞれCPU200a、100a、RAM200b、100b、HDD200c、100c、通信IF200d、100d、及び表示部200e、100eを有する。
【0023】
表示部200e、100eは、液晶ディスプレイやCRTディスプレイ等の画面情報を視覚化して表示するモニタである。通信IF200d、100dは、パケットデータを送受信するLANアダプタやモデムである。
【0024】
アプリケーションサーバ200のHDD200cには、オペレーションシステム、各種のアプリケーションソフト、及び画面転送プログラムが記憶されている。画面表示装置100のHDD100cには、オペレーションシステム及び転送画面表示プログラムが記憶されている。
【0025】
ネットワークNは、IEEE802.3等の有線通信プロトコルや、IEEE802.11で規定される無線通信プロトコルや、その他のプロトコルに準拠したネットワークであり、インターネット網、LAN、又は専用回線等の通信回線網である。
【0026】
(アプリケーションサーバの構成)
このアプリケーションサーバ200は、
図2に示すように、アプリケーション210と画面転送プログラムにより機能する画面管理部220とを備える。
【0027】
画面管理部220は、Xサーバ機能を果たし、アプリケーション210の要求に従ってサーバ画面を更新し、更新画面情報D1を生成して画面表示装置100へ送信する。また、画面管理部200は、画面表示装置100で行われた入力操作をアプリケーション210へ引き渡す。
【0028】
サーバ画面の更新処理では、サーバ画面情報を生成してRAM200bに確保されるフレームバッファに書き込む。サーバ画面情報は、サーバ画面のフレームビットマップである。フレームバッファ内のサーバ画面情報は、所定フレームレートで表示部200eに出力されて、スクリーンに描画される。
【0029】
更新画面情報D1は、更新されたサーバ画面を示す情報である。RFBプロトコル等に従って作成される場合、更新画面情報D1は、更新前後におけるサーバ画面の差分情報である。この更新画面情報D1は、例えば、変化のあった画像領域の指定情報と、その画像領域に描画する画像情報とから構成される。更新画面情報D1に含まれる画像情報は、必要に応じてJPEGやglib等で圧縮される。尚、更新画面情報D1は、差分情報の他、サーバ画面全体を示すフレームビットマップやその圧縮データ等のサーバ画面情報であってもよい。
【0030】
送信処理では、プッシュ型又はプル型の画面転送プロトコルに従って、更新画面情報D1を画面表示装置100に送信する。
【0031】
プッシュ型の画面転送プロトコルは、画面受信側からの画面取得要求を必要とせずに、画面送信側から画面受信側に画面情報を送信するものである。この場合、画面管理部220は、画面送信機能を含み、サーバ画面の更新がある度に更新画面情報D1を生成し、生成の度に更新画面情報D1を画面表示装置100へ送信する。
【0032】
プル型の画面転送プロトコルでは、画面受信側がという画面取得要求(Framebuffer Update Request)を画面送信側へ送信すると、画面送信側が画面受信側に応答(Framebuffer Update)を送信する。応答には、サーバ画面が更新されていれば、更新画面情報D1が含まれる。例えば、プル型の画面転送方法としては、VNC(Virtual Network Computing)が挙げられ、画面管理部220は、画面送信機能を含む。
【0033】
(画面表示装置の構成)
図3は、画面表示装置100の構成を示すブロック図である。
図3に示すように、画面表示装置100は、画面表示プログラムにより、受信部11と、生成部12と、保持部13と、検出部14と、判定部15と、調整部16と、表示制御部19とを備える。
【0034】
受信部11は、通信IF100dを含み構成され、ネットワークNを介して更新画面情報D1を受信する。通信プロトコルがプル型の場合、受信部11は、通信プロトコルに従ってコネクションを接続した後、このコネクションにて画面送信要求をアプリケーションサーバ1に送出し、更新画面情報D1が存在すれば、それを受信する。
【0035】
生成部12は、CPU100a及びRAM100bを含み構成され、受信部11が受信した更新画面情報D1を受け取り、表示部100eに表示する転送画面情報を生成する。保持部13は、RAM100b内に確保されたフレームバッファである。生成部12は、更新画面情報D1に含まれている画像情報が圧縮されていれば、それを展開し、指定情報で特定された画像領域にその画像情報を書き込む。
【0036】
また、生成部12は、更新画面情報D1を用いて転送画面情報を生成する度に、転送画面情報を生成した時刻情報を蓄積しておく。
【0037】
検出部14は、CPU100aを含み構成され、更新画面情報D1を受信すると、その度にサーバ画面更新間隔を検出する。また、判定部15は、CPU100aを含み構成され、サーバ画面更新間隔が一定であるか判定する。サーバ画面更新間隔は、サーバ画面が更新される時間間隔である。
【0038】
具体的には、検出部14は、サーバ画面更新間隔と概略一致する転送画面情報の生成間隔をサーバ画面更新間隔と見なして、この生成間隔を検出する。検出部14は、生成部12が蓄積している最新N個の時刻情報を用いて、N−1個のサーバ画面更新間隔を算出する。
【0039】
判定部15は、N−1個のサーバ画面更新間隔のばらつきを算出し、ばらつきが一定範囲内に収まれば、サーバ画面更新間隔が一定であると判定する。例えば、N−1個のサーバ画面更新間隔の平均値を算出し、各時間間隔が平均値に対して±10%以内であれば、一定であると判定する。判定結果は、例えばRAM100bに書き込んでおく。
【0040】
なお、この検出部14の検出と判定部15の判定は、これに限らず、各種の方法が適用可能である。例えば、更新画面情報D1に生成時刻や送信時刻を示すタイムスタンプが付加されていれば、そのタイムスタンプを用いて時間間隔を算出してもよい。判定においては、分散や標準偏差を算出し、この値が一定範囲内に収まっていれば、サーバ画面更新間隔は一定であると判定するようにしても良い。
【0041】
調整部16は、CPU100aを含み構成され、判定部15の判定結果に応じて表示制御部19による転送画面更新のタイミングを調整する。表示制御部19は、CPU100aを含み構成され、調整部16によるタイミング調整に従い、保持部13が保持する転送画面情報を表示部100eに出力し、表示部100eに転送画面を表示させる。
【0042】
具体的には、調整部16は、サーバ画面更新間隔が一定であると判定されると、表示制御部19を制御下におき、転送画面の更新を一定間隔となるように調整する。この調整部16は、算出部17とタイマ部18とを備える。算出部17は、サーバ画面更新間隔の代表値を示す代表時間間隔τを算出する。タイマ部18は、代表時間間隔τ毎に一定の調整時間T1の計時を開始する。
【0043】
代表時間間隔τは、サーバ画面更新間隔の中央値、最頻値、平均値、又はこれらを四捨五入等によって端数処理した値等の何れでも良い。調整時間T1は、代表時間間隔τと同値、若しくは通信トラフィックを起因とした遅延時間のゆらぎを加味して、代表時間間隔τよりも長い。この調整時間T1は、予めHDD100cに記憶されていてもよいし、各種の方法で算出しても良い。例えば、調整時間T1を、代表時間間隔τに予め記憶されている一定値を加算して生成しても良いし、検出部14が算出した各サーバ画面更新間隔と平均値との差の最大値を加算して生成しても良い。
【0044】
調整部16は、表示制御部19に対して更新タイミング調整の開始を通知し、調整時間T1がタイムアウトする度に表示制御部19に対して保持部13へのアクセスを指示する。
【0045】
表示制御部19は、更新タイミング調整の開始が通知されると、それ以降は、保持部13へのアクセス指示に従って、保持部13にアクセスし、転送画面情報の変化を検出すれば、その変化後の転送画面情報に従って表示部100eのスクリーンに転送画面を描画する。
【0046】
一方、判定部15の判定結果においてサーバ画面更新間隔が一定ではないとの判定に変化した場合には、調整部16は、表示制御部19に対して更新タイミング調整の終了を通知する。調整部16によるタイミング調整が終了した場合、又はタイミング調整が行われていない場合は、表示制御部19は、定期的に保持部13にアクセスし、転送画面情報の変化を検出すれば、その変化後の転送画面情報に従って表示部100eのスクリーンに転送画面を描画する。
【0047】
(画面表示装置の動作)
図4は、この画面表示装置100の動作を示すフローチャートである。まず、受信部11が更新画面情報D1を受信すると(ステップS01)、生成部12は、更新画面情報D1から転送画面情報を生成し(ステップS02)、生成した時刻情報を記録する(ステップS03)。
【0048】
転送画面情報が生成されると、検出部14は、蓄積されている最新N個の時刻情報からN−1個のサーバ画面更新間隔を算出する(ステップS04)。各サーバ画面更新間隔が算出されると、判定部15は、サーバ画面更新間隔のばらつきを算出する(ステップS05)。そして、判定部15は、各ばらつきが一定範囲内に収まるか判定する(ステップS06)。
【0049】
各ばらつきが一定範囲内に収まっている場合(ステップS06,Yes)、調整部16は、各サーバ画面更新間隔の代表時間間隔τを算出する(ステップS07)。そして、調整部16は、代表時間間隔τ毎に一定の調整時間T1の計時を開始する(ステップS08)。
【0050】
調整時間T1がタイムアウトすると(ステップS09,Yes)、表示制御部19は、タイムアウトにより調整部16から送出されたアクセス指示に従い、保持部13にアクセスして、転送画面情報が変化していれば(ステップS10,Yes)、その転送画面情報を表示部100eに出力して、表示部100eに変化後の最新の転送画面を表示させる(ステップS11)。
【0051】
一方、判定部15の判定結果において、ばらつきが一定範囲内に収まっていない場合は(ステップS06,No)、表示制御部19は、定期的に保持部13にアクセスして、転送画面に変化があれば(ステップS10,Yes)、その転送画面情報を表示部100eに出力して、表示部100eに変化後の最新の転送画面を表示させる(ステップS11)。
【0052】
(作用)
このような画面表示装置100の転送画面の表示タイミングを
図5に示す。
図5は、更新画面情報の受信タイミングと転送画面の表示タイミングとの関係を示すタイミングチャートであり、定期的に変化するサーバ画面の更新画面情報D1を受信した場合を示す。代表時間間隔τと調整時間T1は同程度としている。
【0053】
図5に示すように、アプリケーションサーバ200では、サーバ画面が画面Aから画面Iまで定期的に順番に出現し、定期的に更新画面情報D1をネットワークN上に送出している。しかしながら、ネットワークNにおいては、刻々と変化するネットワークトラフィックによって遅延やゆらぎが発生しており、画面Aから画面Iまでの各更新画面情報D1の通信速度が一定していない。そのため、画面表示装置100には、画面Aから画面Iまでの各更新画面情報D1がバラバラの時間間隔で到着している。
【0054】
この場合、画面表示装置100では、全ての転送画面A〜Iの表示タイミングが到着時ではなく、調整時間T1のタイムアウト時にずらされる。そのため、各更新画面情報D1の到着がそれぞれ遅延しても、その遅延幅が調整時間T1以内であれば、一定間隔で訪れる表示タイミングに間に合うため、画面表示装置100における転送画面AからIまでの表示は代表時間間隔τ、すなわち一定間隔となる。
【0055】
例えば、最初の画面Aを反映した更新画面情報D1は、遅延することなく画面表示装置100に到着しているが、この更新画面情報D1に対応する転送画面Aは、調整時間T1だけずらされて表示される。
【0056】
次の画面Bを反映した更新画面情報D1は、本来であれば、画面Aを反映した更新画面情報D1からサーバ画面更新間隔の経過と同時に到着するはずであるが、ネットワークNの状況により、若干の遅延が生じている。しかし、2回目の代表時間間隔τの経過と同時に計時が開始された調整時間T1以内であるため、この調整時間T1のタイムアウト時まで表示タイミングが更にずらされてから表示される。そのため、転送画面Aと転送画面Bの表示間隔は、調整時間T1と同値である代表時間間隔τとなる。
【0057】
同様にして、転送画面Cは、3回目の調整時間T1のタイムアウト時に表示され、転送画面Dは、4回目の調整時間T1のタイムアウト時に表示される。このようにして、画面A〜Iの更新画面情報D1はバラバラの時間間隔で到着するが、そのばらつきは調整時間T1により吸収されることとなり、転送画面A〜Iは調整時間T1毎に順番に表示され、表示間隔は代表時間間隔τ、すなわち一定となる。
【0058】
次に、画面表示装置100の転送画面の表示タイミングについて他の例を
図6に示す。
図6に示すタイミングチャートにおいては、定期的に変化するサーバ画面の更新画面情報D1を受信した場合を示すが、調整時間T1は、代表時間間隔τよりも長めに設定されており、前の調整時間T1の計時中に代表時間間隔τは経過し、次の調整時間T1の計時も開始される。
【0059】
調整時間T1を代表時間間隔τよりも長めに設定すると、同じ調整時間T1以内に前後2つの更新画面情報D1が到着し、それらに対応する各転送画面情報が同じ調整時間T1以内に生成されることがある。例えば、
図6に示すように、第1の調整時間T1の期間に画面Aと画面Bの2つの転送画面が生成され、保持部13にそれぞれ記憶される。
【0060】
この場合、一の調整時間T1のタイムアウト時に表示させる転送画面は一枚とし、最初に受信又は生成された未表示の転送画面をその調整時間T1のタイムアウト時に表示させ、次の調整時間T1のタイムアウト時に2番目の転送画面を表示させる。例えば、第1の調整時間T1の期間内においては、画面Aの更新画面情報D1が先に受信され、先に生成されているため、第1の調整時間T1のタイムアウト時には、転送画面Aを表示させる。そして、第2の調整時間T1のタイムアウト時に転送画面Bを表示させる。
【0061】
具体的には、表示制御部19は、生成部12から転送画面情報の書き込み先と生成時刻情報を受け取り、調整時間T1がタイムアウトする度に、未表示であって生成時刻情報が古い転送画面情報を読み出して、表示部100eに出力する。
【0062】
このように調整時間T1を長めに設定すると、ネットワークトラフィックによる受信遅延のばらつき幅が大きくても、その揺らぎを吸収し易くなり、代表時間間隔τ、すなわち一定の時間間隔で表示可能となる。
【0063】
以上のように、第1の実施形態に係る画面表示装置100では、受信部11と生成部12と検出部14と判定部15と調整部16と表示制御部19と表示部100eとを備えるようにした。
【0064】
受信部11は、サーバ画面の更新に応じて画面更新情報を逐次送信するアプリケーションサーバ200からネットワークを介して当該画面更新情報を逐次受信する。表示部100eは、当該画面更新情報に基づく転送画面を順次表示する。
【0065】
そして、検出部14は、サーバ画面更新間隔を逐次検出する。生成部14は、画面更新情報に基づき転送画面情報を生成する。判定部15は、各サーバ画面更新間隔が一定であるか判定する。調整部15は、各サーバ画面更新間隔が一定であると判定されると、転送画面更新間隔を一定間隔に調整する。表示制御部19は、調整された転送画面更新間隔で前記転送画面を表示部100eに表示させる。
【0066】
この判定部15は、例えば、各サーバ画面更新間隔が一定範囲内に収まれば、サーバ画面更新間隔が一定であると判定するようにすればよい。
【0067】
また、この調整部16は、例えば、各サーバ画面更新間隔の代表値を示す代表時間間隔τを算出する算出部17と、代表時間間隔τ毎に一定の調整時間T1の計時を開始するタイマ部16とを備えるようにし、表示制御部19は、調整時間T1が経過したタイミングで転送画面を表示部100eに表示させるようにすればよい。
【0068】
これにより、ネットワークNが不安定でも、各更新画面情報D1の伝送時間の乱れを吸収することができ、サーバ画面の更新間隔が一定であれば、画面表示装置100においても、その変化の定期性を再現することができる。また、この定期的な変化を構成する各画面を保持しておく必要はないため、画面表示装置100のメモリ領域を圧迫するおそれもない。
【0069】
また、本実施形態に係る画面表示装置100では、生成部12による転送画面情報の生成間隔を検出することにより、サーバ画面更新間隔を検出するようにした。これにより、各更新画面情報D1がどの程度遅延しているのかを簡便に把握することができ、伝送時間の乱れをより確実に吸収することができる。
【0070】
また、調整時間T1は、代表時間間隔τ以上に確保されればよい。代表時間間隔τと調整時間T1との関係は、サーバ画面の更新周期の再現と伝送時間の乱れの吸収性とに影響を与える。そのため、調整時間T1は、サーバ画面の更新周期をどの程度再現する必要があるか等を考慮して適切に設定されればよい。
【0071】
(第2の実施形態)
次に、第2の実施形態に係る画面表示装置100について説明する。第1の実施形態では、検出部14において、更新画面情報D1の生成時刻や送信時刻を示すタイムスタンプを用いてサーバ画面更新間隔を検出しても良いとした。但し、この場合、ネットワークNに遅延が発生している場合には、検出したサーバ画面更新間隔よりも転送画面情報の生成時間間隔が長くなってしまうことがある。そうすると、画面表示装置100側において表示しようとする転送画面情報が足りなくなってしまうことがある。
【0072】
その一例を
図7に示す。
図7に示すように、サーバ画面の更新間隔が例えば1秒であった場合、更新画面情報D1に付加されたタイムスタンプをもとにサーバ画面更新間隔を検出すると、代表時間間隔τは1秒となり、例えば調整時間T1は1.5秒になる。それに対して、ネットワークの遅延により、転送画面情報の生成間隔は、代表時間間隔τよりも長い1.2秒となってしまう場合がある。
【0073】
そのため、第7番目の調整時間T1のタイムアウト時には、第7番目の画面Gを示す転送画面情報が未受信又は未生成であり、保持部13に保持されていない。この場合、第7番目の調整時間T1のタイムアウト時には、転送画面を更新することができず、転送画面Gの表示は、第8番目の調整時間T1のタイムアウト時となってしまう。従って、転送画面Fと転送画面Gとの更新間隔は、大きく乱れてしまう結果となる。
【0074】
また、ネットワークNに瞬間的に大きな遅延が突発的に発生してしまった場合には、その遅延幅を調整時間T1が吸収しきれず、その突発的な遅延時にネットワークN内を伝送されていた更新画面情報D1に元にした転送画面情報の生成が調整時間T1のタイムアウトに間に合わなくなることもあり、この場合も更新間隔が大きく乱れてしまう。
【0075】
そこで、第2の実施形態に係る画面表示装置100では、新たな表示タイミングまでに新たな転送画面情報が存在しない場合には、次に新たな転送画面情報を生成した際に、この新たな転送画面情報と直前の転送画面情報とから補間画面情報を直ちに生成して、表示部100eに表示させるようにしたものである。
【0076】
(構成)
図8は、この第2の実施形態に係る画面表示装置100の構成を示すブロック図である。尚、第1の実施形態と同一の構成については同一符号を付して詳細な説明を省略する。
【0077】
図8に示すように、調整部16は、新たに生成した転送画面情報とその直前の転送画面情報とから補間画面を生成する補間画面生成部20を備えている。また、画面表示装置100は、直前の転送画面情報の保持時間T2を制御する保持制御部21と、保持時間T2を計時する保持時間計時部22とを備えている。
【0078】
補間画面は、前後の転送画面の中間的な画面である。例えば、前の転送画面に赤色の画像が含まれ、新たな転送画面ではその画像が白色の場合、補間画面生成部20は、その画像をピンク色とした補間画面を生成する。また、補間画面の表示タイミングに応じて、転送画面の合成割合を変更するようにしても良い。例えば、補間画面の表示タイミングが、次の調整時間T1のタイムアウトよりも前の転送画面の表示タイミングに近い場合は、前の転送画面の透明度を低めに設定して合成する。あるいは、画像の上半分が白色、下半分が赤色とした補間画面を生成してもよい。
【0079】
保持制御部21は、保持部13から前の転送画面情報を削除する。削除のタイミングは、保持時間計時部22による保持時間T2のタイムアウト時である。保持時間計時部22は、代表時間間隔τの経過毎に保持時間T2の計時を開始する。補間画面の生成のために、保持時間T2は、調整時間T1よりも長く設定され、例えば調整時間T1の2倍程度である。
【0080】
(動作)
図9は、この第2の実施形態に係る画面表示装置100の動作を示すフローチャートである。尚、第1の実施形態におけるステップS09までは同じ動作であるため、ステップS09までの動作の説明を省略する。
【0081】
まず、ステップS09において、調整時間T1がタイムアウトし、その時点で新たな転送画面情報が保持部13に存在する場合には(ステップS21,Yes)、その新たな転送画面情報を表示部100eに出力して、表示部100eに最新の転送画面を表示させる(ステップS22)。
【0082】
一方、新たな転送画面情報が保持部13に存在しない場合(ステップS21,No)、新たな転送画面情報が生成されて保持部13に記憶されると(ステップS23,Yes)、補間画面生成部20は、補間画面情報を生成する(ステップS24)。
【0083】
ステップS23からS24において、補間画像生成部20は、新たな転送画面情報が生成されるまで待機する。生成部12は、新たな転送画面情報を生成すると、補間画面生成部20に通知する。補間画面生成部20は、待機中に生成部12から通知を受けると、保持部13から新たな転送画面情報と直前の転送画面情報を読み出し、補間画面情報を生成する。生成した補間画面情報は、保持部13に記憶される。
【0084】
補間画面情報が生成されると、表示制御部19は、直ちに保持部13から読み出して、表示部100eに出力し、スクリーンに表示させる(ステップS25)。このステップS25において、補間画面生成部20は、補間画面情報を生成すると、補間画面情報の記憶先を表示制御部19に通知する。表示制御部19は、通知を受けると、通知された記憶先から補間画面情報を読み出して表示させる。
【0085】
そして、次の調整時間T1がタイムアウトすると(ステップS26,Yes)、新たな転送画面情報を表示部100eに表示させる(ステップS27)。このステップS27においては、調整部16が調整時間T1のタイムアウトを契機に表示制御部19にアクセス指示を行う。表示制御部19は、アクセス指示に従い、保持部13にアクセスして、新たな転送画面情報を保持部13から表示部100eに出力し、表示部100eに表示させる。
【0086】
(作用効果)
このような画面表示装置100の転送画面の表示タイミングを
図10に示す。
図10に示すように、第1番目から5番目までの調整時間T1のタイムアウト時には、それぞれ転送画面A〜Eまでの転送画面情報が生成されているため、各タイムアウトを契機に順番に転送画面A〜Eが表示される。
【0087】
しかしながら、第6番目の調整時間T1のタイムアウト時までに、転送画面Fの更新画面情報D1が未着、又は転送画面Fの転送画面情報の未生成の状態にある。
【0088】
この状態は、転送画面Fの転送画面情報が生成されると、直ちに、その前の転送画面Eの転送画面情報と合わせて補間画面E/Fの画面情報を生成する。そして、補間画面E/Fの画面情報が生成されると、直ちに当該画面情報を表示部100eに表示させる。
【0089】
尚、この補間画面E/Fの画面情報を生成する段階では、第6番目の調整時間T1と同時に計時が開始された待機時間T2はタイムアウトしていない。そのため、転送画面Eの転送画面情報は保持部13に保持されている。
【0090】
そして、第7番目の調整時間T1がタイムアウトすると、転送画面Fの転送画面情報を表示部100eに出力し、転送画面Fを表示させる。尚、待機時間T2がタイムアウトすると、転送画面Eの転送画面情報は保持部13から削除する。
【0091】
以上のように、第2の実施形態に係る画面表示装置100では、調整部16は、前後の転送画面情報を元に補間画面情報を生成する補間画面生成部20を含み、新たな表示タイミングまでに新たな転送画面情報が存在しない場合には、新たな転送画面情報が生成された段階で、当該新たな転送画面情報を元に前記補間画面情報を生成し、当該補間画面情報に基づく前記転送画面を直ちに表示させるようにした。また、当該新たな転送画面情報は、次の表示タイミングで表示させるようにすればよい。
【0092】
補間画面情報を生成するための参照元である前の転送画面情報については、転送画面情報を保持する保持時間を代表時間間隔τ毎に計時する保持時間計時部22と、この保持時間の計時中は前の転送画面情報を保持する保持部13とを更に備えるようにし、補間画面生成部20は、保持部13で保持されている前の転送画面情報を元に前記補間画面情報を生成するようにすればよい。
【0093】
補間画面情報の元となる前の転送画面情報は、直前又は直前から遡った複数の転送画面情報であるようにしてもよい。
【0094】
これにより、ネットワークNに遅延が発生しており、且つ更新画面情報D1の生成時刻や送信時刻を用いてサーバ画面更新間隔を検出している場合、また、ネットワークNに瞬間的に大きな遅延が突発的に発生してしまった場合には、転送画面の更新間隔が乱れてしまう場合が発生し得る。しかし、その乱れは補間画像によって穴埋めされるため、画面表示装置100の利用者は画面変化の定期性を十分に認識することができる。
【0095】
尚、補間画面情報は、最新の転送画面情報と、その前の複数の転送画面情報とから生成するようにしてもよい。また、転送画面情報は、待機時間T2のタイムアウトを契機とした保持部13からの削除の他、それよりも新しい転送画面情報が所定数生成されたことを契機として保持部13から削除するようにしてもよい。この場合、所定数は、補間画面情報を生成するために必要な転送画面情報の数と一致させる。
【0096】
(第3の実施形態)
次に、第3の実施形態に係る画面表示装置100について説明する。第1及び第2の実施形態では、一定のサーバ画面更新間隔が検出されると、代表時間間隔τを算出して、その後、第1番目の調整時間T1の計時を開始するようにした。この場合、転送画面更新間隔の調整開始以降における最初の転送画面は、代表時間間隔τの算出時間と第1番目の調整時間T1の合計時間分だけ、その表示が遅れることになる。すなわち、調整開始以降における最初の転送画面は、代表時間間隔τの算出時間分だけ、他の転送画面の更新間隔より余計に更新間隔が開いている。
【0097】
その一例を
図11に示す。
図11に示すように、転送画面A〜Cの転送画面情報は、生成間隔が一定範囲内に収まるため、画面表示装置100は、サーバ画面更新間隔が一定であると検出する。そのため、転送画面Cの転送画面情報が生成された後、更新間隔の調整が始まり、次に生成された転送画面Dは、代表時間間隔τの算出時間だけ余計に更新間隔が延びて表示部100eに表示されてしまう。すなわち、転送画面CとDとの間の更新間隔に乱れが生じている。
【0098】
そこで、第3の実施形態に係る画面表示装置100では、サーバ画面更新間隔が一定間隔であると判定された後に生成された最初の転送画面情報に基づく転送画面と、その次の転送画面情報を用いた補間画面とを、直ちに表示させるようにしたものである。
【0099】
(動作)
この第3の実施形態に係る画面表示装置100の調整開始前後の動作について
図12に基づき説明する。
図12は、第3の実施形態に係る画面表示装置100の動作を示すフローチャートである。尚、第3の実施形態に係る画面表示装置100は、第2の実施形態に係る画面表示装置100と同一の構成につき、その詳細な説明を省略する。また、第1の実施形態のステップS01〜S06までは、共通の処理であるため、その説明を省略する。
【0100】
図12に示すように、算出した各サーバ画面更新間隔各ばらつきが一定範囲内に収まっている場合(ステップS06,Yes)、調整部16は、各サーバ画面更新間隔の代表時間間隔τを算出を開始する(ステップS31)。
【0101】
そして、この代表時間間隔τの算出の間に次の画面更新情報D1を受信し、次の転送画面情報が生成されると(ステップS32)、当該転送画面情報を直ちに表示部100eに表示させる(ステップS33)。具体的には、調整部16は、表示制御部19に直ちにアクセス指示を行う。表示制御部19は、アクセス指示に従い、保持部13にアクセスして、当該次の転送画面情報を表示部100eに出力する。
【0102】
代表時間間隔τの算出が終了すると(ステップS34)、調整部16は、最初の調整時間T1の計時を開始する(ステップS35)。この調整時間T1の計時中に、更に次の転送画面情報が生成されると(ステップS36)、補間画面生成部20は、ステップS32で生成した次の転送画面情報と更に次の転送画面情報とから補間画面情報を生成し(ステップS37)、表示制御部19は、この補間画面情報を表示部100eに直ちに表示させる(ステップS38)。
【0103】
そして、最初の調整時間T1がタイムアウトすると(ステップS39,Yes)、表示制御部19は、ステップS35で生成された更に次の転送画面情報を表示部100eに表示させる(ステップS40)。
【0104】
(作用効果)
このような画面表示装置100の転送画面の表示タイミングを
図13に示す。
図13に示すように、転送画面A〜Cまでの転送画面情報の生成タイミングは、一定間隔の範囲内であるため、転送画面の更新タイミングの調整のために、代表時間間隔τの算出を開始する。
【0105】
その間に、転送画面Dの転送画面情報が生成されると、画面表示装置100は、この転送画面Dを表示部100eに直ちに表示させる。このとき、転送画面Dの転送画面情報は、保持しておく。
【0106】
次に、最初の調整時間T1の計時開始後、5番目の更新を示す転送画面Eの転送画面情報が生成されると、保持しておいた転送画面Dと転送画面Eの転送画面情報を合わせて補間画面D/Eの補間画面情報を生成し、直ちに表示部100eに表示させる。
【0107】
そして、最初の調整時間T1がタイムアウトすると、転送画面Eを表示部100eに表示させる。
【0108】
以上のように、第3の実施形態に係る画面表示装置100では、調整部16は、サーバ画面の更新が一定間隔で行われていると判定された後に生成された最初の転送画面情報に基づく転送画面を直ちに表示させ、サーバ画面の更新が一定間隔で行われていると判定された後に生成された最初と2番目の転送画面情報を元に補間画面情報を生成して、当該補間画面情報に基づく前記転送画面を直ちに表示させ、一定時間間隔の経過に伴って前記2番目の転送画面情報に基づく前記転送画面を表示させるようにした。
【0109】
これにより、転送画面更新間隔の調整開始以降における最初の転送画面の更新間隔が遅延してしまうことはなく、画面表示装置100の利用者は画面変化の定期性を十分に認識することができる。
【0110】
(第4の実施形態)
次に、第4の実施形態に係る中継装置300について説明する。第1乃至第3の実施形態では、画面転送システムをアプリケーションサーバ200と画面表示装置100とから構成するようにしたが、
図14に示すように、このアプリケーションサーバ200と画面表示装置100との間に中継装置300を介在させ、中継装置300によって転送画面の更新間隔を調整するようにしてもよい。
【0111】
この中継装置300も所謂コンピュータであり、CPU300a、RAM300b、HDD300c、及び通信IF300dを備えており、HDD300cには、オペレーションシステムと中継プログラムとが記憶されている。
【0112】
この中継装置300は、例えば、通信速度が不安定なWanと比較的良質なLanとの間に設置され、アプリケーション200からの画面更新情報D1をWanを介して受け取る。そして、中継装置300は、サーバ画面更新間隔が一定間隔である場合には、転送画面更新間隔が一定間隔となるように、調整時間T1毎に転送画面情報をLan内の画面表示装置100へ送信する。
【0113】
この中継装置300は、
図15に示すように、第1乃至3の実施形態に係る画面表示装置100から表示制御部19と表示部100eを省き、代わりに表示制御部19の表示機能が画面表示装置100への転送画面情報の送信機能に置き換わった送信部31を備える。
【0114】
すなわち、この中継装置300は、受信部11、生成部12、保持部13、検出部14、判定部15、調整部16、及び送信部31、又はこれらに加えて保持制御部21と保持時間計時部22を有し、調整部16は、補間画面生成部20を有する。
【0115】
送信部31は、定期的に、又は調整部16によるアクセス指示に応じて、保持部13から転送画面情報を読み出し、画面表示装置100へ送信する。画面表示装置100には、中継装置300から送信された転送画面情報を保持する保持部13と、定期的に保持部13へアクセスして転送画面情報を表示部100eに出力する表示制御部16とを備える。
【0116】
以上のように、第4の実施形態に係る中継装置300においては、受信部11は、サーバ画面の更新に応じて画面更新情報を逐次送信するアプリケーションサーバ200からネットワークを介して当該画面更新情報を逐次受信する。表示部100eは、当該画面更新情報に基づく転送画面を順次表示する。
【0117】
そして、検出部14は、サーバ画面更新間隔を逐次検出する。生成部14は、画面更新情報に基づき転送画面情報を生成する。判定部15は、各サーバ画面更新間隔が一定であるか判定する。調整部16は、各サーバ画面更新間隔が一定であると判定されると、転送画面更新間隔を一定間隔に調整する。送信部31は、調整された転送画面更新間隔で前記転送画面情報を前記表示装置に送信する。
【0118】
これにより、ネットワークNが不安定でも、各更新画面情報D1の伝送時間の乱れを吸収することができ、サーバ画面の更新間隔が一定であれば、画面表示装置100においても、その変化の定期性を再現することができる。また、この定期的な変化を構成する各画面を保持しておく必要はないため、画面表示装置100のメモリ領域を圧迫するおそれもない。更に、画面表示装置100に転送画面更新間隔の調整処理をさせる必要はなく、画面表示装置100のリソースを節約することもできる。
【0119】
尚、中継装置300では、転送画面情報を生成せずに、更新画面情報D1をそのまま画面表示装置100へ転送するようにしてもよい。この場合、判定部15は、更新画面情報D1に付加されている生成時刻や送信時刻の情報に基づきサーバ画面更新間隔を検出する。また、転送画面情報は、画面表示装置100側で生成される。
【0120】
(他の実施形態)
以上のように、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することを意図していない。これら新規な実施形態は、そのほかの様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。