JP4973390B2 - Server device and server processing program - Google Patents
Server device and server processing program Download PDFInfo
- Publication number
- JP4973390B2 JP4973390B2 JP2007222592A JP2007222592A JP4973390B2 JP 4973390 B2 JP4973390 B2 JP 4973390B2 JP 2007222592 A JP2007222592 A JP 2007222592A JP 2007222592 A JP2007222592 A JP 2007222592A JP 4973390 B2 JP4973390 B2 JP 4973390B2
- Authority
- JP
- Japan
- Prior art keywords
- client device
- drawing data
- time
- server
- defining
- 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.)
- Active
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Description
本発明は、例えばSBC(Server Based Computing)システムにおいて、サーバ装置にて生成される画面描画データをクライアント装置へ送信転送して表示させるためのサーバ装置およびサーバ処理プログラムに関する。 The present invention relates to a server apparatus and a server processing program for transmitting and transferring screen drawing data generated by a server apparatus to a client apparatus for display in, for example, an SBC (Server Based Computing) system.
従来のサーバ・クライアント・システムにおいて、例えばクライアント装置からのリモート操作によりサーバ装置側で所望のアプリケーションプログラムを起動実行させるSBC(Server Based Computing)システムがある。 In a conventional server-client system, for example, there is an SBC (Server Based Computing) system in which a desired application program is activated and executed on the server device side by remote operation from the client device.
このSBCシステムでは、クライアント装置の操作入力に応じてサーバ装置のアプリケーションプログラムにより生成される表示用の描画データが、該サーバ装置からその描画更新の都度クライアント装置へと送信転送されて表示される(例えば、特許文献1参照。)。
In this SBC system, display drawing data generated by an application program of a server device in response to an operation input of the client device is transmitted and transferred from the server device to the client device and displayed every time the drawing is updated ( For example, see
一般に、コンピュータ・システムのアプリケーションプログラムによって生成される表示画面の描画データは、例えば最も画面外側のウインドウを構成する枠、そのウインドウ内周辺のメニューバーやタスクバー、さらに内側のウインドウ枠、その中の操作ボタンなど、様々な部品要素(ウィジェット)を画面内の下位側部品から上位側部品へと順次上書きして行くことで生成される。 In general, display screen drawing data generated by an application program of a computer system includes, for example, a frame constituting a window on the outermost screen, a menu bar and a task bar in the periphery of the window, an inner window frame, and operations in the window. It is generated by sequentially overwriting various component elements (widgets) such as buttons from the lower component to the upper component in the screen.
そして、SBCシステムのサーバ装置は、その描画データが更新される都度、つまり現在ある画面描画データに対し何らかのウィジェットが上書きされマージ(合成)処理される都度、当該上書きされたウィジェットが画面内位置情報と共にクライアント装置へと送信転送されて表示更新されるものである。
このため、特に、サーバ装置のアプリケーションプログラムに従い実行される画面描画データの生成処理に要する時間が、当該画面を構成するウィジェット数が多いことや複雑であることなどにより長かったり、あるいはクライアント装置との通信速度(帯域幅)が低速であったりした場合には、クライアント装置からの要求に対してサーバ装置により生成される描画データが当該クライアント装置に送信転送されて1画面として完成表示されるまでに時間が掛かり、応答性の悪い問題となる。 For this reason, in particular, the time required to generate the screen drawing data executed in accordance with the application program of the server device is long due to the large number of widgets constituting the screen or the complexity of the screen. When the communication speed (bandwidth) is low, the drawing data generated by the server device in response to a request from the client device is transmitted and transferred to the client device until it is completed and displayed as one screen. It takes time and becomes a problem of poor responsiveness.
しかも、描画データを構成するウィジェット毎に送信転送されることで、その都度データ転送のための時間を要し、且つ段階的な表示状態となり、より応答性の悪い結果を招いてしまう。 Moreover, by transmitting and transferring for each widget constituting the drawing data, it takes time for data transfer each time, and the display state is changed step by step, resulting in a poorer response result.
本発明は、このような課題に鑑みなされたもので、アプリケーションプログラムに従い生成される描画データを、適切なタイミングで効率よく送信することが可能になるサーバ装置およびサーバ処理プログラムを提供することを目的とする。 The present invention has been made in view of such a problem, and an object of the present invention is to provide a server device and a server processing program capable of efficiently transmitting drawing data generated according to an application program at an appropriate timing. And
請求項1に記載のサーバ装置は、内蔵されたアプリケーションプログラムに従い描画データを生成し、クライアント装置へ送信転送して表示させるサーバ装置であって、前記アプリケーションプログラムに従い生成される描画データを上書きにより描画して記憶する描画データ記憶手段と、前記クライアント装置との通信速度を取得する通信速度取得手段と、この通信速度取得手段により取得されたクライアント装置との通信速度に応じた描画回数を定義する描画回数定義手段と、内蔵される複数のアプリケーションプログラムにそれぞれ対応した描画データの当該プログラム開始時点からの描画時間を定義する描画時間定義手段と、前記描画時間定義手段により定義された描画時間と前記描画回数定義手段により定義された描画回数とに基づき設定されたタイミングで前記描画データ記憶手段により記憶された描画データを読み出し前記クライアント装置へ送信転送するデータ送信手段と、を備えたことを特徴としている。
The server device according to
本発明によれば、アプリケーションプログラムに従い生成される描画データを、適切なタイミングで効率よく送信することが可能になるサーバ装置およびサーバ処理プログラムを提供できる。 According to the present invention, it is possible to provide a server device and a server processing program capable of efficiently transmitting drawing data generated according to an application program at an appropriate timing.
以下図面により本発明の実施の形態について説明する。 Embodiments of the present invention will be described below with reference to the drawings.
(第1実施形態)
図1は、本発明のサーバ装置の実施形態に係るSBC(Server Based Computing)・システムの構成を示すブロック図である。
(First embodiment)
FIG. 1 is a block diagram showing a configuration of an SBC (Server Based Computing) system according to an embodiment of a server apparatus of the present invention.
このSBCシステムは、LAN(Local Area Network)やWAN(Wide Area Network)からなるネットワークN上に接続されたサーバ装置10および複数のクライアント装置(Thin client)20,…を備える。
This SBC system includes a
サーバ装置10は、文書作成処理プログラム,表計算処理プログラム,プレゼン資料作成プログラム,メール処理プログラム,インターネット接続処理プログラム、Web表示プログラムなど、複数のアプリケーションプログラムを有し、当該サーバ装置10に接続されたクライアント装置20,…からの操作入力(入力イベント)信号に応じて起動しその処理を実行する。
The
このサーバ装置10において、クライアント装置20,…からの操作入力信号に応じたアプリケーションプログラムの実行に伴い、端末用のフレームバッファ14a上に生成された表示出力用の描画データは、圧縮処理された後アクセス元のクライアント装置20,…へ送信(転送)される。
In this
そして、クライアント装置20,…では、前記サーバ装置10から転送された描画データがその圧縮を解凍されてフレームバッファ25に展開され、表示部に表示される。
In the
つまり、このSBCシステムにおける各クライアント装置(Thin client)20,…は、何れもキーボード及びマウスなどのユーザ操作に応じた入力機能とLCD表示部及びプリンタなどへの出力機能を主要な機能として有し、少なくとも前記サーバ装置10が有している各種のアプリケーション機能やデータファイルの管理機能を一切持っていない。
That is, each client device (Thin client) 20 in the SBC system has an input function corresponding to a user operation such as a keyboard and a mouse and an output function to an LCD display unit and a printer as main functions. The
そして、クライアント装置20,…からの操作入力(入力イベント)信号に応じてサーバ装置10にて起動実行される各種の処理に伴い生成されたデータファイルは、基本的には、当該サーバ装置10内あるいは該サーバ装置10にて接続管理される磁気ディスクなどの記憶装置にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
And the data file produced | generated with the various processes started and performed in the
図2は、前記SBCシステムにおけるサーバ装置10の回路構成を示すブロック図である。
FIG. 2 is a block diagram showing a circuit configuration of the
サーバ装置10は、コンピュータとしてのCPU11を備え、このCPU11には、バス12を介してROM13、RAM14、フレームバッファRAM15、表示装置16が接続される。
The
また、CPU11には、バス12を介してキーボード,マウスなどのキー入力装置17、外部記憶装置18a、補助記憶装置18b、クライアント装置20,…との通信I/F(インターフェイス)19が接続される。
Further, a communication interface (I / F) 19 with a key input device 17 such as a keyboard and a mouse, an
CPU11は、ROM13に予め記憶されているシステムプログラムや種々のアプリケーションプログラムに従ってRAM14を作業用メモリとし回路各部の動作を制御するもので、キー入力装置17からのキー入力信号や通信I/F19を介して受信されるクライアント装置20からのユーザ操作(入力イベント)に応じた処理指令信号などに応じて前記種々のプログラムが起動・実行される。
The
このサーバ装置10において、クライアント装置20からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザIDに対応付けられて外部記憶装置18aに記憶され、また表示用の描画データは、RAM14内の端末用フレームバッファ14aを使用して生成されると共に、圧縮処理された後、通信I/F19からクライアント装置20へ転送されて表示出力される。
In this
なお、当該サーバ装置10自身の表示装置16にて表示させるための描画データは、フレームバッファRAM15上に生成される。
Note that drawing data to be displayed on the
図3は、前記SBCシステムにおけるクライアント装置20の回路構成を示すブロック図である。
FIG. 3 is a block diagram showing a circuit configuration of the
クライアント装置20は、コンピュータとしてのCPU21を備え、このCPU21には、バス22を介してROM23、RAM24、フレームバッファRAM25が接続される。そして、このフレームバッファRAM25に書き込まれた描画データが表示装置26に出力されて表示される。
The
また、CPU21には、バス22を介してキーボード,マウス,マイク,光センサなどのキー入力装置27、外部記憶装置28a、補助記憶装置28b、前記サーバ装置10との通信I/F(インターフェイス)29が接続される。
The
CPU21は、ROM23に予め記憶されているシステムプログラムに従ってRAM24を作業用メモリとし回路各部の動作を制御するもので、キー入力装置27からのキー入力信号や通信I/F29を介して受信されるサーバ装置10からのアプリケーション応答信号,転送描画データなどに応じて前記システムプログラムが起動され実行される。
The
このクライアント装置20において、前記サーバ装置10におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、外部記憶装置28aに読み込ませて記憶させ、また生成転送された表示用の描画データは、その圧縮が解凍されてフレームバッファRAM25に書き込まれ表示装置26で表示出力される。
In the
図4は、前記サーバ装置10により生成されクライアント装置20へ転送されて表示される1画面描画データの構成を示す図である。
FIG. 4 is a diagram showing a configuration of one-screen drawing data generated by the
ここで、前記サーバ装置10における転送用描画データの生成機能について、その概要を説明する。
Here, an outline of the transfer drawing data generation function in the
クライアント装置20からのイベント入力に応じて起動されるアプリケーションプログラムに従い、例えば図4(D)に示すようなウインドウ画面G4になる転送用の描画データを生成する場合、最初に、図4(A)に示すように、当該ウインドウの最も外側を構成する矩形枠のウィジェットWg1からなる最下位(第1)のウインドウ画面G1が端末用フレームバッファ14aに描画される。
When generating drawing data for transfer that becomes a window screen G4 as shown in FIG. 4D, for example, in accordance with an application program activated in response to an event input from the
次に、図4(B)に示すように、ウインドウの最上部で題目を構成するバー形状のウィジェットWg2が前記最下位のウインドウ画面G1に上書きされてマージされ第2のウインドウ画面G2が生成される。 Next, as shown in FIG. 4B, the bar-shaped widget Wg2 constituting the title at the top of the window is overwritten on the lowest window screen G1 and merged to generate a second window screen G2. The
続いて、図4(C)に示すように、ウインドウの中央で情報表示範囲を構成する矩形枠状のウィジェットWg3が前記第2のウインドウ画面G2に上書きされてマージされ第3のウインドウ画面G3が生成される。 Subsequently, as shown in FIG. 4C, a rectangular frame-like widget Wg3 that forms an information display range at the center of the window is overwritten on the second window screen G2 and merged to form a third window screen G3. Generated.
そして、図4(D)に示すように、前記第3のウインドウ画面G3における矩形枠状のウィジェットWg3の中でさらに分割された情報表示範囲を構成する小型矩形枠状のウィジェットWg4が上書きされてマージされ最上位(第4)のウインドウ画面G4が生成される。 Then, as shown in FIG. 4D, the small rectangular frame-shaped widget Wg4 constituting the information display range further divided in the rectangular frame-shaped widget Wg3 in the third window screen G3 is overwritten. The uppermost (fourth) window screen G4 is generated by merging.
この第1実施形態のSBCシステムによるサーバ装置10では、例えば前記最上位のウインドウ画面G4を描画生成してクライアント装置20へ送信転送し表示させるのに、当該最上位のウインドウ画面G4を段階的に構成する各ウィジェットWg1〜Wg4がその描画の都度、送信転送されて表示されるのではなく、実行されるアプリケーションプログラムの画面描画処理に要する時間特性(図6参照)やクライアント装置20との通信速度(帯域幅)(図7参照)に応じて設定されるタイミングで、その各タイミング期間において上書き・マージ(合成)された描画データが送信転送される。これにより、画面描画処理に要する時間特性やクライアント装置20との通信速度が低速傾向にある場合には、描画データを送信転送するタイミングを少なくしてクライアント装置20における表示応答時間がより遅くなるのを防止しつつ最上位のウインドウ画面G4が一気に完成表示されるようにし、また、画面描画処理に要する時間特性やクライアント装置20との通信速度が高速傾向にある場合には、描画データを送信転送するタイミングを多くして最上位のウインドウ画面G4を構成する各ウィジェットWg1〜Wg4の描画データが高速に且つ段階的に表示され完成されるようにする。
In the
図5は、前記サーバ装置10により画面描画データを生成して送信転送するためのプログラム機能の構成を示すブロック図である。
FIG. 5 is a block diagram showing a configuration of a program function for generating screen drawing data by the
クライアント装置20からのイベント入力に応じて起動されたアプリケーションプログラムP1に従い画面描画データが生成される際には、最下位のウインドウ画面G1に相当する描画処理がウインドウシステムプログラムP2により検出される。そして、これ以降前記起動されたアプリケーションプログラムP1に従い生成される描画データは、仮想ディスプレイドライバプログラムP3により端末用フレームバッファ14aに書き込まれ、描画マージ制御部P31によりマージ(合成)処理された後、データ変換部P32、画面情報送出部P33によってデータ圧縮されて転送用の描画データに変換され、クライアント装置20へ送信転送される。
When the screen drawing data is generated according to the application program P1 activated in response to the event input from the
この際、描画マージ制御部P31では、前述したように、実行されるアプリケーションプログラムP1の画面描画処理に要する時間特性(図6参照)やクライアント装置20との通信速度(帯域幅)(図7参照)に応じて設定されるタイミングで、その各タイミング期間内でマージ(合成)されて更新された描画データがデータ変換部P32、画面情報送出部P33へ送出され、クライアント装置20へ送信転送される。
At this time, in the drawing merge control unit P31, as described above, the time characteristics required for the screen drawing process of the application program P1 to be executed (see FIG. 6) and the communication speed (bandwidth) with the client device 20 (see FIG. 7). ), The drawing data that has been merged (synthesized) and updated within each timing period is sent to the data conversion unit P32 and the screen information sending unit P33, and is transmitted and transferred to the
図6は、前記サーバ装置10のRAM14に記憶される描画時間テーブル14bの一例を示す図である。
FIG. 6 is a diagram showing an example of the drawing time table 14b stored in the
この描画時間テーブル14bには、本サーバ装置10に備えられる各種のアプリケーションプログラムによって画面描画データを生成するのに要する平均的描画時間(T)(描画特性情報)が定義され記憶されるもので、例えばWebブラウザによりそのWeb閲覧画面を描画生成するのに要する時間Tは1000msであり、またテキストエディタによりテキスト編集画面を描画生成するのに要する時間は100msである。
In this drawing time table 14b, an average drawing time (T) (drawing characteristic information) required for generating screen drawing data by various application programs provided in the
図7は、前記サーバ装置10のRAM14に記憶される帯域幅テーブル14cの一例を示す図である。
FIG. 7 is a diagram showing an example of the bandwidth table 14 c stored in the
この帯域幅テーブル14cには、本サーバ装置10とクライアント装置20との通信速度が低速/中速/高速の何れに該当するかを判別するための3段階の帯域幅(128kbit/s未満/128kbit/s〜1Mbit/s/1Mbit/s超)と、当該各帯域(通信速度)におけるアプリケーション処理での描画更新の回数Mとが対応付けられて定義され記憶されるもので、例えばアクセス中にあるクライアント装置20との通信速度が低速に含まれる場合には、そのときの実行アプリケーションにより生成される描画データは、当該アプリ終了に伴う1回の転送用描画データへの変換処理によって一括してクライアント装置20へ送信され、また中速に含まれる場合には、当該アプリ終了までに5回の転送用描画データへの変換処理によって分けて送信される。
This bandwidth table 14c includes three levels of bandwidth (less than 128 kbit / s / 128 kbit) for determining whether the communication speed between the
次に、前記構成のSBCシステムにおけるサーバ装置10の描画データ出力機能について説明する。
Next, the drawing data output function of the
図8は、前記サーバ装置10による第1実施形態の描画データマージ出力処理を示すフローチャートである。
FIG. 8 is a flowchart showing the drawing data merge output process of the first embodiment by the
図9は、前記サーバ装置10の第1実施形態の描画データマージ出力処理に伴うマージタイマ設定処理を示すフローチャートである。
FIG. 9 is a flowchart showing a merge timer setting process accompanying the drawing data merge output process of the
サーバ装置10において、クライアント装置20から受信される入力イベントに応じたアプリケーションプログラムP1が起動されると、CPU11の基準クロックをカウントして計時するマージタイマがリセットされる(ステップS1)。
In the
そして、前記アプリケーションプログラムP1に従った描画処理の開始がウインドウシステムプログラムP2により検出判断されると(ステップS2(Yes))、当該アプリケーションプログラムP1に従い生成される描画データは端末用フレームバッファ14aに描画され(ステップS3)、図9におけるマージタイマ設定処理に移行されて前記端末用フレームバッファ14aにて描画マージされた描画データのクライアント装置20への送信転送を行うタイミングが設定される(ステップSA)。
When the window system program P2 detects and starts the drawing process according to the application program P1 (step S2 (Yes)), the drawing data generated according to the application program P1 is drawn in the
マージタイマ設定処理が起動されると、RAM14に記憶されている描画時間テーブル14b(図6参照)から現在実行中のアプリケーションプログラムP1に対応した描画特性情報(描画時間(T))が取得されると共に(ステップA1)、現在アクセス中のクライアント装置20との実際の送受信スピードが検出されてその通信処理に対応する帯域幅が取得され(ステップA2)、当該実際の帯域幅に基づき前記RAM14に記憶されている帯域幅テーブル14c(図7参照)からその通信速度(高速/中速/低速)が判定される(ステップA3)。
When the merge timer setting process is activated, the drawing characteristic information (drawing time (T)) corresponding to the currently executing application program P1 is acquired from the drawing time table 14b (see FIG. 6) stored in the
ここで、前記クライアント装置20との実際の送受信スピードに対応する帯域幅が例えば128(kbit/s)未満であることにより低速であると判断された場合には(ステップA4(Yes))、前記ステップA1にて取得された現在実行中のアプリケーションプログラムP1による描画特性情報(T)に基づきその描画処理時間Tあたりに1回(M)の描画データの出力処理を行うタイミング(T/M)が前記マージタイマにセットされる(ステップA5)。
If it is determined that the bandwidth corresponding to the actual transmission / reception speed with the
また、前記クライアント装置20との実際の送受信スピードに対応する帯域幅が例えば128(kbit/s)〜1(Mbit/s)であることにより中速であると判断された場合には(ステップA4(No)→A6(Yes))、前記ステップA1にて取得された現在実行中のアプリケーションプログラムP1による描画特性情報(T)に基づきその描画処理時間Tあたりに5回(M)の描画データの出力処理を行うタイミング(T/M)が前記マージタイマにセットされる(ステップA7)。
When the bandwidth corresponding to the actual transmission / reception speed with the
さらに、前記クライアント装置20との実際の送受信スピードに対応する帯域幅が例えば1(Mbit/s)を超えることにより高速であると判断された場合には(ステップA6(No))、前記ステップA1にて取得された現在実行中のアプリケーションプログラムP1による描画特性情報(T)に基づきその描画処理時間Tあたりに50回(M)の描画データの出力処理を行うタイミング(T/M)が前記マージタイマに設定される(ステップA8)。
Furthermore, when it is determined that the bandwidth corresponding to the actual transmission / reception speed with the
そして、前記アプリケーションプログラムP1の開始に合わせてスタートされるマージタイマの計時時間が前記ステップSAにて設定されたタイミング(T/M)を経過しないと判断される状態では(ステップS4(No))、当該アプリに従った画面描画データの次の描画処理がある毎に(ステップS5(Yes))、前記端末用フレームバッファ14aに描画されている画面描画データに今回の描画データが上書きされてマージ(合成)される(ステップS6)。
In a state where it is determined that the timing (T / M) set in step SA has not elapsed (T4 (No)), the time measured by the merge timer started in accordance with the start of the application program P1. Each time there is a next drawing process of the screen drawing data according to the application (step S5 (Yes)), the screen drawing data drawn in the
この後、前記アプリケーションプログラムP1の開始に合わせてスタートされるマージタイマの計時時間が前記ステップSAにて設定されたタイミング(T/M)を経過したと判断された場合には(ステップS4(Yes))、前記端末用フレームバッファ14aに描画されている画面描画データが読み出され、通信I/F19を介してクライアント装置20へ送信転送される(ステップS7)。
Thereafter, when it is determined that the time measured by the merge timer started in accordance with the start of the application program P1 has passed the timing (T / M) set in step SA (step S4 (Yes)). The screen drawing data drawn in the
すなわち、クライアント装置20との実際の送受信スピードに対応する帯域幅が例えば低速(128kbit/s未満)な状態で、今回開始されたアプリケーションプログラムP1がWebブラウザプログラム(描画時間T=1000ms)である場合には、当該描画時間T=1000msが経過するまでは端末用フレームバッファ14aの画面描画データが送信転送されることはなく、その間に描画データ(例えばウィジェット単位)の更新処理がある毎に元の画面描画データに対するマージ処理が繰り返し行われる。そして、今回のWebブラウザプログラムの描画時間T(=1000ms)が経過した際に前記端末用フレームバッファ14aにてマージ処理されていた画面描画データがクライアント装置20へ送信転送されて表示される。
That is, when the bandwidth corresponding to the actual transmission / reception speed with the
図10は、前記サーバ装置10の描画データマージ出力処理においてクライアント装置20との通信速度が低速である場合の描画データの出力タイミングを示すタイミングチャートである。
FIG. 10 is a timing chart showing the output timing of drawing data when the communication speed with the
このように、クライアント装置20との通信速度が遅い場合には、例えばウィジェット単位で更新される描画データをその都度送信転送することはせずに、実行中のアプリケーションプログラムに従った最終的な画面描画データのみを送信転送して表示させるので、クライアント装置20における表示応答時間がより遅くなるのを防止しつつ最上位のウインドウ画面G4を一気に完成表示させることができる。
As described above, when the communication speed with the
また逆に、クライアント装置20との実際の送受信スピードに対応する帯域幅が例えば高速(1Mbit/s超え)な状態で、今回開始されたアプリケーションプログラムP1がWebブラウザプログラム(描画時間T=1000ms)である場合には、当該描画時間T=1000msが経過するまでに端末用フレームバッファ14aにて更新マージ処理される描画データが50回読み出されてクライアント装置20へ送信転送され表示される。
Conversely, the application program P1 started this time is a Web browser program (drawing time T = 1000 ms) in a state where the bandwidth corresponding to the actual transmission / reception speed with the
このように、クライアント装置20との通信速度が速い場合には、端末用フレームバッファ14aにて更新マージ処理される描画データを50回に分けて送信させるので、最上位のウインドウ画面G4を構成する各ウィジェットWg1〜Wg4の描画データを高速に且つ段階的に表示させて当該最上位のウインドウ画面G4を完成させることができる。
As described above, when the communication speed with the
なお、前記ステップS7おいて、端末用フレームバッファ14aに描画されている画面描画データが読み出されてクライアント装置20へ送信転送された後に、同一のアプリケーションプログラムに従った画面描画データの描画処理が継続される場合、前記マージタイマには、前回のマージタイマ設定処理(ステップSA:図9参照)にて設定された同じタイミング(T/M)がセットされ(ステップS1,S2(No)→S8)、前記同様の描画データマージ出力処理が繰り返される(ステップS4〜S7)。
In step S7, after the screen drawing data drawn in the
したがって、前記構成のSBCシステムにおけるサーバ装置10の第1実施形態の描画データ出力機能によれば、クライアント装置20からのイベント入力に応じて起動されたアプリケーションプログラムによる画面描画データの描画時間Tを、クライアント装置20との通信速度が低速(128kbit/s未満)の場合には1回、中速(128kbit/s〜1Mbit/s)の場合には5回、高速(1Mbit/s超え)の場合には50回として定義される描画回数Mにより除算してその描画タイミングを設定し、この設定された描画タイミングに応じて前記画面描画データの更新処理された描画データをクライアント装置20へ送信転送して表示させるので、クライアント装置20との通信速度が遅い場合には、当該クライアント装置20における表示応答時間がより遅くなるのを防止しつつ最上位のウインドウ画面G4を一気に完成表示させることができ、また、クライアント装置20との通信速度が速い場合には、最上位のウインドウ画面G4を構成する各ウィジェットWg1〜Wg4の描画データを高速に且つ段階的に表示させて当該最上位のウインドウ画面G4を完成させることができる。
Therefore, according to the drawing data output function of the first embodiment of the
なお、前記第1実施形態では、サーバ装置10にて起動されたアプリケーションプログラムによる画面描画時間Tを、クライアント装置20との通信速度に応じて定義される描画回数Mにより除算したタイミングで、当該アプリケーションプログラムに従い生成更新される描画データをクライアント装置20へ送信転送する構成としたが、当該アプリケーションプログラムによる画面描画時間Tやクライアント装置20との通信速度に応じて定義される描画回数Mに関係することなく、次の第2実施形態で説明するように、実行されたアプリケーションプログラムによって最上位のウィジェット(Wg4)が描画されてそのウインドウ画面(G4)が完成する毎に、当該完成された画面描画データを送信転送する構成としてもよい。
In the first embodiment, the application is started at a timing obtained by dividing the screen drawing time T by the application program started by the
(第2実施形態)
図11は、前記サーバ装置10による第2実施形態の描画データマージ出力処理を示すフローチャートである。
(Second Embodiment)
FIG. 11 is a flowchart showing the drawing data merge output process of the second embodiment by the
この第2実施形態の描画データマージ出力処理を実施するサーバ装置10では、前記第1実施形態の描画データマージ出力処理を実施したサーバ装置10にてRAM14内に備えた描画時間テーブル14b(図6参照)および帯域幅テーブル14c(図7参照)を省略することができる。
In the
サーバ装置10において、クライアント装置20から受信される入力イベントに応じたアプリケーションプログラムP1が起動され、当該アプリケーションプログラムP1に従った描画処理の開始がウインドウシステムプログラムP2により検出判断されると(ステップQ1(Yes))、先ず、ウインドウの最も外側を構成する矩形枠のウィジェットWg1からなる最下位のウインドウ画面G1(図4(A)参照)が端末用フレームバッファ14aに描画されると共にクライアント装置20へ送信転送されて表示される(ステップQ2)。
In the
すると、前記アプリケーションプログラムP1に従い例えばウィジェット単位で生成更新される描画データが前記最下位のウインドウ画面G1が描画された端末用フレームバッファ14aに対してその都度上書きによりマージ(合成)されて描画更新される(ステップQ3)。
Then, the drawing data generated and updated in units of widgets, for example, in accordance with the application program P1 is merged (synthesized) by overwriting each time the
そして、今回描画更新されたウィジェットが最上位のウインドウ(G4)を完成させるための最上位のウィジェット(Wg4)であるか否か判断される(ステップQ4)。 Then, it is determined whether or not the widget that has been updated this time is the uppermost widget (Wg4) for completing the uppermost window (G4) (step Q4).
ここで、前記端末用フレームバッファ14aに対して今回描画更新されたウィジェットが最上位のウィジェットではないと判断された場合には(ステップQ4(No))、さらに前記実行中のアプリケーションプログラムP1に従い生成される描画データが前記端末用フレームバッファ14aに上書きによりマージ(合成)されて更新描画される(ステップQ3)。
Here, if it is determined that the widget that has been rendered and updated in the
この後、前記ステップQ4において、前記端末用フレームバッファ14aに対して今回描画更新されたウィジェットが最上位のウィジェットであると判断された場合には(ステップQ4(Yes))、当該端末用フレームバッファ14aにて今回の最上位のウィジェットまで描画更新されてマージ(合成)された描画データが読み出され、通信I/F19を介してクライアント装置20へ送信転送される(ステップQ5)。
Thereafter, when it is determined in step Q4 that the widget that has been drawn and updated this time with respect to the
したがって、前記構成のSBCシステムにおけるサーバ装置10の第2実施形態の描画データ出力機能によれば、クライアント装置20からのイベント入力に応じて実行されるアプリケーションプログラムに従い、端末用フレームバッファ14aに対してウィジェット単位で順次上書きによりマージ(合成)されて更新される描画データは、その最上位のウィジェットが描画されて1画面の描画データが完成された際に、当該端末用フレームバッファ14aから読み出されてクライアント装置20へ送信転送され表示されるので、前記第1実施形態のサーバ装置10において必要とした描画時間テーブル14bおよび帯域幅テーブル14cを省略することができる。しかも、特にクライアント装置20との通信速度が低速である場合でも、ウインドウ画面を構成する各ウィジェットがそれ毎に送信転送されて応答性悪く表示されてしまうことなく、最上位のウインドウ画面を一気に完成表示させることができる。
Therefore, according to the drawing data output function of the second embodiment of the
なお、前記各実施形態において記載したSBCシステムのサーバ装置10によるに各処理の手法、すなわち、図8のフローチャートに示すサーバ装置10の第1実施形態の描画データマージ出力処理、図9のフローチャートに示す前記第1実施形態の描画データマージ出力処理に伴うマージタイマ設定処理、図11のフローチャートに示すサーバ装置10の第2実施形態の描画データマージ出力処理等の各手法は、何れもコンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記録媒体18aに格納して配布することができる。そして、サーバ装置10のコンピュータ(CPU11)は、この外部記録媒体18aに記憶されたプログラムを記憶装置(フラッシュROM13やRAM14)に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記各実施形態において説明した描画データのマージ出力機能を実現し、前述した手法による同様の処理を実行することができる。
It should be noted that the processing method by the
また、前記各手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク(N)上を伝送させることができ、この通信ネットワーク(N)に接続されたコンピュータ装置(プログラムサーバ)から前記のプログラムデータを取り込んで記憶装置(フラッシュROM13やRAM14)に記憶させ、前述した描画データのマージ出力機能を実現することもできる。
Further, program data for realizing each of the above methods can be transmitted on the communication network (N) in the form of a program code, and from a computer device (program server) connected to the communication network (N). The program data can be fetched and stored in a storage device (
また、前記各実施形態では、SBCシステムのサーバ装置10による描画データマージ出力機能について説明したが、通常のサーバ・クライアント・システムのサーバ装置によってクライアント装置のための描画データを描画生成し送信転送して表示させる場合でも、前記同様の描画データマージ出力機能を適用することができる。
In each of the above embodiments, the drawing data merge output function by the
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。 Note that the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention at the stage of implementation. Further, each of the embodiments includes inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements. For example, even if some constituent elements are deleted from all the constituent elements shown in each embodiment or some constituent elements are combined in different forms, the problems described in the column of the problem to be solved by the invention If the effects described in the column “Effects of the Invention” can be obtained, a configuration in which these constituent requirements are deleted or combined can be extracted as an invention.
10 …サーバ装置
20 …端末装置
11、21…CPU
12、22…バス
13、23…ROM
14、24…RAM
14a…端末用フレームバッファ
14b…描画時間テーブル
14c…帯域幅テーブル
15、25…フレームバッファRAM
16、26…表示装置
17、27…キー入力装置
18a、28a…外部記憶装置
18b、28b…補助記憶装置
19、29…通信I/F
N …通信ネットワーク
Wg1…最下位のウィジェット(部品要素)
G1…最下位のウインドウ画面
Wg4…最上位のウィジェット(部品要素)
G4…最上位のウインドウ画面
DESCRIPTION OF
12, 22 ...
14, 24 ... RAM
14a ... Frame buffer for terminal 14b ... Drawing time table 14c ... Bandwidth table 15, 25 ... Frame buffer RAM
16, 26 ... Display device 17, 27 ...
N ... Communication network Wg1 ... Lowest widget (component element)
G1 ... lowest window screen Wg4 ... highest widget (component element)
G4 ... top-level window screen
Claims (4)
前記アプリケーションプログラムに従い生成される描画データを上書きにより描画して記憶する描画データ記憶手段と、
前記クライアント装置との通信速度を取得する通信速度取得手段と、
この通信速度取得手段により取得されたクライアント装置との通信速度に応じた描画回数を定義する描画回数定義手段と、
内蔵される複数のアプリケーションプログラムにそれぞれ対応した描画データの当該プログラム開始時点からの描画時間を定義する描画時間定義手段と、
前記描画時間定義手段により定義された描画時間と前記描画回数定義手段により定義された描画回数とに基づき設定されたタイミングで前記描画データ記憶手段により記憶された描画データを読み出し前記クライアント装置へ送信転送するデータ送信手段と、
を備えたことを特徴とするサーバ装置。 A server device that generates drawing data according to a built-in application program, transmits the data to a client device, and displays the data.
Drawing data storage means for drawing and storing drawing data generated according to the application program by overwriting;
A communication speed acquisition means for acquiring a communication speed with the client device;
A drawing number defining means for defining the number of drawing times according to the communication speed with the client device acquired by the communication speed acquiring means;
A drawing time defining means for defining a drawing time from the start time of the drawing data corresponding to each of a plurality of built-in application programs;
The drawing data stored in the drawing data storage unit is read and transmitted to the client device at a timing set based on the drawing time defined by the drawing time defining unit and the number of drawing defined by the drawing number defining unit. Data transmission means for
A server device comprising:
ことを特徴とする請求項1に記載のサーバ装置。 The data transmission means divides the drawing data stored in the drawing data storage means at a timing set by dividing the drawing time defined by the drawing time defining means by the number of drawing times defined by the drawing number defining means. Read and transfer to client device,
The server apparatus according to claim 1 .
前記コンピュータを、
前記アプリケーションプログラムに従い生成される描画データを上書きにより描画してメモリに記憶する描画データ記憶手段、
前記クライアント装置との通信速度を取得する通信速度取得手段、
この通信速度取得手段により取得されたクライアント装置との通信速度に応じた描画回数を定義する描画回数定義手段、
内蔵される複数のアプリケーションプログラムにそれぞれ対応した描画データの当該プログラム開始時点からの描画時間を定義する描画時間定義手段、
前記描画時間定義手段により定義された描画時間と前記描画回数定義手段により定義された描画回数とに基づき設定されたタイミングで前記描画データ記憶手段により記憶された描画データを読み出し前記クライアント装置へ送信転送するデータ送信手段、
として機能させるようにしたコンピュータ読み込み可能なサーバ処理プログラム。 A server processing program for controlling a computer of a server device that generates drawing data according to a built-in application program, transmits the data to a client device, and displays the data.
The computer,
Drawing data storage means for drawing the drawing data generated according to the application program by overwriting and storing it in a memory;
A communication speed acquisition means for acquiring a communication speed with the client device;
A drawing number defining means for defining the number of times of drawing according to the communication speed with the client device acquired by the communication speed acquiring means;
A drawing time defining means for defining a drawing time from the start time of the drawing data corresponding to each of a plurality of built-in application programs;
The drawing data stored in the drawing data storage unit is read at a timing set based on the drawing time defined by the drawing time defining unit and the number of drawing defined by the drawing number defining unit, and transmitted to the client device. Data transmission means,
A computer-readable server processing program designed to function as a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007222592A JP4973390B2 (en) | 2007-08-29 | 2007-08-29 | Server device and server processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007222592A JP4973390B2 (en) | 2007-08-29 | 2007-08-29 | Server device and server processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009054096A JP2009054096A (en) | 2009-03-12 |
JP4973390B2 true JP4973390B2 (en) | 2012-07-11 |
Family
ID=40505096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007222592A Active JP4973390B2 (en) | 2007-08-29 | 2007-08-29 | Server device and server processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4973390B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104145253B (en) * | 2012-03-02 | 2017-03-15 | 富士通株式会社 | Image sending method and device |
JP5301742B1 (en) * | 2013-01-30 | 2013-09-25 | Sky株式会社 | Communication terminal control system |
JP5307304B1 (en) * | 2013-04-17 | 2013-10-02 | Sky株式会社 | Communication terminal control system |
JP6050724B2 (en) * | 2013-06-11 | 2016-12-21 | Sky株式会社 | Communication terminal control system |
JP2015097063A (en) * | 2013-11-15 | 2015-05-21 | 富士通株式会社 | Information processing device, screen control program, and screen control method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001159944A (en) * | 1999-12-02 | 2001-06-12 | Mitsubishi Electric Corp | Remote display controller, remote control terminal and remote control system |
JP2005284694A (en) * | 2004-03-30 | 2005-10-13 | Fujitsu Ltd | Three-dimensional model data providing program, three-dimensional model data providing server, and three-dimensional model data transfer method |
US20050268215A1 (en) * | 2004-06-01 | 2005-12-01 | Microsoft Corporation | Method and apparatus for viewing and interacting with a spreadsheet from within a web browser |
-
2007
- 2007-08-29 JP JP2007222592A patent/JP4973390B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009054096A (en) | 2009-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4725587B2 (en) | Server apparatus and server control program | |
JP4973390B2 (en) | Server device and server processing program | |
CN101211260B (en) | GUI generation apparatus and method for generating gui | |
JP4605268B2 (en) | Server apparatus and server control program for server-based computing system | |
JP5017687B2 (en) | Client device and program | |
JP4675944B2 (en) | Image processing apparatus, image processing method, and image processing program | |
JP5251500B2 (en) | Client device and program | |
CN113676677B (en) | Dynamic picture synthesis method and device, electronic equipment and readable storage medium | |
JP5262426B2 (en) | Display processing apparatus and program | |
JP4803218B2 (en) | Information output device and information output processing program | |
JP5637406B2 (en) | Data transmitting apparatus and program | |
JP2005176018A (en) | Controller, control program, storing medium and control method | |
JP5172081B2 (en) | Video output device and video signal generation device | |
KR102189292B1 (en) | Method for displaying chart and apparatus using the same | |
EP3783505A1 (en) | Webpage frame acquisition method, server and storage medium | |
JP2008098741A (en) | Telop generation apparatus and telop composition method | |
JP2009223830A (en) | Server device for server base computing system, and server control program | |
JP5347271B2 (en) | Terminal device and program | |
JP6146440B2 (en) | Display terminal device and program | |
JP2011192286A (en) | Display control device and program | |
JP5737314B2 (en) | Information display device and program | |
JP2009070412A (en) | Screen display program, computer-readable storage medium storing screen display program, screen display device, movie terminal device, and screen display method | |
JP2006268646A (en) | Terminal equipment for browser display control and browser display program | |
JP5402415B2 (en) | Image transmitting apparatus and program | |
JP5177034B2 (en) | Client device, server-based computing system, and client control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100705 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120217 |
|
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: 20120313 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120326 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150420 Year of fee payment: 3 |