JP5641018B2 - Data processing apparatus and program - Google Patents
Data processing apparatus and program Download PDFInfo
- Publication number
- JP5641018B2 JP5641018B2 JP2012144864A JP2012144864A JP5641018B2 JP 5641018 B2 JP5641018 B2 JP 5641018B2 JP 2012144864 A JP2012144864 A JP 2012144864A JP 2012144864 A JP2012144864 A JP 2012144864A JP 5641018 B2 JP5641018 B2 JP 5641018B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- cache
- data processing
- environment
- client device
- 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
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Description
本発明は、キャッシュデータを記憶するデータ処理装置およびプログラムに関する。 The present invention relates to data processing apparatus and a program for storing key Yasshudeta.
サーバベースコンピューティングシステムにおいては、サーバ装置はクライアント装置用のアプリケーションプログラムを実行して表示データを作成し、これをクライアント装置に送る。クライアント装置では、使用者のキーやマウス装置等の操作情報を、ネットワークを介してサーバ装置へ送り、前記サーバ装置側で作成されたクライアント装置用の表示データを受け取って表示する。クライアント装置は、ネットワーク機器、表示装置、マウス装置やキーボード等の入力装置を備えているだけでよく、データをクライアント装置内に持たないためハードディスク等の記憶装置が不要であり、アプリケーションプログラムの実行を行なわないためクライアント装置に必要となる処理の負荷は軽い。 In a server-based computing system, a server device executes an application program for a client device to create display data and sends it to the client device. In the client device, operation information such as a user's key and mouse device is sent to the server device via the network, and the display data for the client device created on the server device side is received and displayed. The client device only needs to include an input device such as a network device, a display device, a mouse device, and a keyboard. Since no data is stored in the client device, a storage device such as a hard disk is not required, and an application program is executed. Since this is not performed, the processing load required for the client device is light.
しかし、クライアント装置は、サーバ装置から送信される画面の表示データを待つため、頻繁に表示される画面データがクライアント装置のメモリ上のキャッシュに無い場合、画面の表示に通常より長い時間がかかっていた。そこで、クライアント装置またはサーバ装置から頻繁に使用される画面をクライアント装置のキャッシュに事前に登録し、登録した画面はクライアント装置のキャッシュから削除されないようにキャッシュを管理することで、頻繁に使用される画面はクライアント装置のキャッシュから読み込むようにし、ネットワークのトラフィックを軽減して画面の表示の高速化を図っていた(例えば、特許文献1参照)。 However, since the client device waits for the display data of the screen transmitted from the server device, if the frequently displayed screen data is not in the cache in the memory of the client device, it takes longer time than usual to display the screen. It was. Therefore, frequently used screens from the client device or server device are registered in advance in the cache of the client device, and the registered screens are frequently used by managing the cache so that they are not deleted from the cache of the client device. The screen is read from the cache of the client device to reduce the network traffic and speed up the display of the screen (for example, see Patent Document 1).
特許文献1の方法では、サーバ装置側でキャッシュ指定を行う画面データを画面単位で前もって選択してから登録しておく必要がある。そして、クライアント装置におけるキャッシュデータの削除処理を、サーバ装置側で設定した削除する、しないのフラグに従って行っていた。その結果、削除出来ないキャッシュデータが多い場合には、新たなキャッシュデータを登録しづらくなり、削除できるキャッシュデータが多い場合には、メモリ確保のためのキャッシュ削除後に、使用できるキャッシュデータが少なくなってしまうので、キャッシュの利用効率が悪いといった問題があった。
In the method of
特に、Webページを閲覧するためのアプリケーションプログラムの実行においては、様々なURL(Uniform Resource Locator)を参照して様々な画面データを表示するので、このような頻繁に変化する画面データを限られたメモリ容量内で効率よく自動的にキャッシュし、効率よくキャッシュデータを利用して表示を高速化することが求められていた。 In particular, when executing an application program for browsing a Web page, various screen data are displayed with reference to various URLs (Uniform Resource Locators), and thus such frequently changing screen data is limited. There has been a demand for efficient and automatic caching within the memory capacity and speeding up the display using the cache data efficiently.
また、クライアント装置には携帯型のものがあり、使用者がクライアント装置を持って様々な場所に移動して、例えば午前中は本社でA業務とB業務、午後は支社に移動してC業務というように様々な業務に使用することがあるが、このような利用形態においてもキャッシュデータがヒットする確率を上げることが求められていた。 In addition, there are portable types of client devices, and the user moves to various places with the client device, for example, in the morning, head office A and B operations, and in the afternoon to branch offices C business However, there are cases where it is used for various business operations, and it has been demanded to increase the probability of cache data hitting even in such a usage form.
本発明の目的は、キャッシュデータを効率的に使用してクライアント装置でのデータ処理を高速化することである。 An object of the present invention is to speed up data processing in a client device by using cache data efficiently.
請求項1記載の発明は、サーバ装置から各種データを受信してデータ処理するクライアントとしてのデータ処理装置であって、任意の使用環境において当該データ処理装置でデータ処理を行う際に、当該データ処理装置における複数の使用環境別のデータを記憶する前記サーバ装置から、当該データ処理装置の現在の使用環境に対応するデータが送信されてきた場合には、そのデータを受信する受信手段と、前記受信手段で受信したデータを当該使用環境に対応するキャッシュデータとしてキャッシュ記憶手段に記憶すると共に、その受信したデータに基づいてデータ処理を行うべく制御するデータ制御手段と、任意の使用環境においてデータ処理を行う際は、当該使用環境に対応するデータが前記キャッシュ記憶手段にキャッシュデータとして予め記憶されていれば、前記サーバ装置から新たにデータを受信することなく、その予め記憶されたキャッシュデータを読み出してデータ処理を行う処理制御手段と、を具備したことを特徴とする。
The invention of
請求項7記載の発明は、クライアント装置に対して各種データを送信するサーバ装置としてのデータ処理装置であって、前記クライアント装置で使用される各種使用環境別のデータをキャッシュデータとして記憶するキャッシュ記憶手段と、前記クライアント装置からアクセスがあった際は、そのクライアント装置の現在の使用環境を取得する取得手段と、 前記取得手段で取得した現在の使用環境に対応するデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていれば、そのデータを前記クライアント装置へ送信することをせず、一方、前記取得手段で取得した現在の使用環境に対応するデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていなければ、前記クライアント装置の現在の使用環境に対応するデータを前記クライアント装置に送信する送信手段と、を具備したことを特徴とする。 The invention according to claim 7 is a data processing device as a server device that transmits various data to the client device , and stores cache data as data for each use environment used in the client device. means and, when there is an access from the client apparatus, the current obtaining means the use environment to retrieve, cache data of the data corresponding to the current use environment acquired by the acquisition unit is the cache memory of the client device If the data is stored in the means , the data is not transmitted to the client device, while the cache data of the data corresponding to the current use environment acquired by the acquisition means is stored in the cache storage means. Otherwise, data corresponding to the current usage environment of the client device is stored . Transmitting means for transmitting to the client device.
本発明によれば、データ処理装置での処理の高速化が可能となると共に、キャッシュデータを効率的に使用することが可能となる。 According to the present invention, it is possible to speed up the processing in the data processing apparatus, and it is possible to efficiently use the cache data .
以下図面により本発明の実施の形態について説明する。まず、本実施形態における構成について説明する。 Embodiments of the present invention will be described below with reference to the drawings. First, the configuration in the present embodiment will be described.
図1は、本発明の実施形態に係るサーバベースコンピューティングシステムの全体構成を示すブロック図である。 FIG. 1 is a block diagram showing the overall configuration of a server-based computing system according to an embodiment of the present invention.
このサーバベースコンピューティングシステムは、LAN(Local Area Network)やWAN(Wide Area Network)からなるネットワーク3上に接続されたサーバ装置1および複数のクライアント装置2を備える。クライアント装置2はシンクライアント(thin client)とも呼ばれる。
This server-based computing system includes a
サーバ装置1は、文書作成処理プログラム,表計算処理プログラム,プレゼン資料作成プログラム,メール処理プログラム,インターネット接続処理プログラム、Webブラウザなど、複数のアプリケーションプログラムを有し、当該サーバ装置1に接続されたクライアント装置2からの操作入力(入力イベント)信号に応じて起動しその処理を実行する。
The
このサーバ装置1において、クライアント装置2からの操作入力信号に応じたアプリケーションプログラムの実行に伴い、クライアント装置2用のフレームバッファ14aのアクセス元のクライアント装置2用の領域上に生成された表示出力用の画面データは、圧縮処理された後アクセス元のクライアント装置2へ送信(転送)される。
In this
そして、クライアント装置2では、前記サーバ装置1から転送された描画データがその圧縮を解凍されてフレームバッファ25に展開され、表示部に表示される。つまり、このサーバベースコンピューティングシステムにおける各クライアント装置2は、何れもキーボード及びマウスなどのユーザ操作に応じた入力機能とLCD表示部及びプリンタなどへの出力機能を主要な機能として有し、少なくとも前記サーバ装置1が有している各種のアプリケーション機能やデータファイルの管理機能を一切持っていない。
In the
図2は、本実施形態に係るサーバ装置1の主要部構成を示すブロック図である。サーバ装置1は、コンピュータとしてのCPU11を備え、このCPU11には、バス12を介してROM13、RAM14、フレームバッファRAM15、表示装置16が接続される。
FIG. 2 is a block diagram illustrating a configuration of main parts of the
また、CPU11には、バス12を介してキーボード,マウスなどの入力装置17、ハードディスクなどの外部記憶装置18、クライアント装置2,…との通信I/F(インターフェイス)19が接続される。
Further, an
CPU11は、ROM13に予め記憶されているシステムプログラムや種々のアプリケーションプログラムに従ってRAM14を作業用メモリとし回路各部の動作を制御するもので、入力装置17からのキー入力信号や通信I/F19を介して受信されるクライアント装置2からのユーザ操作(入力イベント)に応じた処理指令信号などに応じて前記種々のプログラムが起動・実行される。
The
このサーバ装置1において、クライアント装置2からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザIDに対応付けられて外部記憶装置18に記憶され、また表示用の画面データは、RAM14内の端末用フレームバッファ14aを使用してクライアント装置2別に生成されると共に、圧縮処理された後、通信I/F19からアクセス元のクライアント装置2へ転送されて表示出力される。
In this
なお、当該サーバ装置1自身の表示装置16にて表示させるための描画データは、フレームバッファRAM15上に生成される。
Note that drawing data to be displayed on the
クライアント装置2における画面構成部品データの表示を高速化するために、RAM14内に画面キャッシュ14bと画面キャッシュ優先度テーブル14cとを収納する。
In order to speed up the display of the screen component data in the
図3は、本実施形態に係るクライアント装置2の主要部構成を示すブロック図である。クライアント装置2は、コンピュータとしてのCPU21を備え、このCPU21には、バス22を介してROM23、RAM24、フレームバッファRAM25が接続される。そして、このフレームバッファRAM25に書き込まれた画面データが表示装置26に出力されて表示される。
FIG. 3 is a block diagram illustrating a configuration of main parts of the
また、CPU21には、バス22を介してキーボード,マウス,マイク,光センサなどの入力装置27、ハードディスクなどの外部記憶装置28、前記サーバ装置1との通信I/F(インターフェイス)29が接続される。さらに、RFID読取装置30を備え、クライアント装置2が使用される場所における場所情報を、クライアント装置2を使用する場所にRFID(Radio Frequency Identification)のタグをおいておき、そのタグをクライアント装置2のRFID読取装置30が認識して取得することにより場所の特定を行う。
Further, an
CPU21は、ROM23に予め記憶されているシステムプログラムに従ってRAM24を作業用メモリとし回路各部の動作を制御するもので、入力装置27からのキー入力信号や通信I/F29を介して受信されるサーバ装置1からのアプリケーション応答信号,転送描画データなどに応じて前記システムプログラムが起動され実行される。
The
このクライアント装置2において、前記サーバ装置1におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、外部記憶装置28に読み込ませて記憶させ、また生成転送された表示用の画面データは、その圧縮が解凍された後に、フレームバッファRAM25に書き込まれ表示装置26に表示出力される。
In the
通常の場合、1画面に表示する画面データは、複数の画面構成部品データから構成されており、それぞれの画面構成部品データ毎に表示する。 Normally, the screen data displayed on one screen is composed of a plurality of screen component data, and is displayed for each screen component data.
クライアント装置2における画面構成部品データの表示を高速化するために、RAM24内に画面キャッシュ24bと画面キャッシュ優先度テーブル24cとを収納する。クライアント装置2の画面キャッシュ24bは、サーバ装置1の画面キャッシュ14bと同期を取るように管理される。クライアント装置2の画面キャッシュ24bの大きさは、クライアント装置2の利用状況に合わせて予め設定しておく。
In order to speed up the display of the screen component data in the
次に、本実施形態において使用するデータについて説明する。 Next, data used in the present embodiment will be described.
図4は、サーバ装置1のRAM14、及びクライアント装置2のRAM24に記憶される時間帯テーブルの一例を示す図である。任意に設定した時間範囲毎に時間帯名が付されている。
FIG. 4 is a diagram illustrating an example of a time zone table stored in the
図5は、サーバ装置1のRAM14、及びクライアント装置2のRAM24に記憶される画面構成部品データの画面キャッシュ14b、24bの一例を示す図である。画面構成部品データ毎に画面構成部品データ(キャッシュデータ)を識別するための識別子を付し、識別子とキャッシュデータとは、ポインタによりリンクされている。サーバ装置1の画面キャッシュ14bは、クライアント用フレームバッファRAM14aと同様にクライアント装置2別に管理される。
FIG. 5 is a diagram illustrating an example of
画面構成部品データの識別子は、例えばMD5(Message Digest 5)のようなハッシュ関数を用いて、画面構成部品データを元に固定長の「ハッシュ値」を発生させてその画面構成部品データに固有の識別子とする。 The identifier of the screen component data, for example, uses a hash function such as MD5 (Message Digest 5), generates a fixed-length “hash value” based on the screen component data, and is unique to the screen component data. It is an identifier.
まず、サーバ装置1が画面構成部品データを作成して画面キャッシュ14bに登録し、クライアント装置2へ送信する。クライアント装置2が受信した画面構成部品データを画面キャッシュ24bに登録する。登録した画面構成部品データの削除は、クライアント装置2の管理により削除する画面構成部品データを決定し、削除した画面構成部品データの識別子をサーバ装置1へ通知することにより、サーバ装置1側とクライアント装置2側の画面キャッシュの同期を取る。
First, the
図6は、サーバ装置1のRAM14に記憶される画面キャッシュ優先度テーブル14cの一例を示す図である。
FIG. 6 is a diagram illustrating an example of the screen cache priority table 14 c stored in the
時間帯と場所別に画面構成部品データの識別子であるハッシュ値が登録され、識別子毎に使用頻度と優先順位が記録される。(A)は時間帯が「TimeG1」、場所名が「100」に属する識別子、(B)は時間帯が「TimeG1」、場所名が「200」に属する識別子、(C)は時間帯が「TimeG2」、場所名が「100」に属する識別子、(D)は時間帯が「TimeG3」、場所名が「400」に属する識別子、(E)は時間帯が「TimeG4」、場所名が「100」に属する識別子、を示す。 A hash value, which is an identifier of the screen component data, is registered for each time zone and place, and the usage frequency and priority are recorded for each identifier. (A) is an identifier belonging to the time zone “TimeG1” and the place name is “100”, (B) is an identifier belonging to the time zone “TimeG1” and the place name is “200”, and (C) is an identifier belonging to the time zone “ (TimeG2), identifier whose location name belongs to “100”, (D) is an identifier belonging to time zone “TimeG3” and location name is “400”, (E) is time zone “TimeG4”, and location name is “100” ”Indicates an identifier belonging to“ ”.
図7は、クライアント装置2のRAM24に記憶される画面キャッシュ優先度テーブル24cの一例を示す図である。画面構成部品データの識別子であるハッシュ値が登録され、識別子毎に優先順位が記録される。
FIG. 7 is a diagram illustrating an example of the screen cache priority table 24 c stored in the
次に、本実施形態におけるサーバ装置1の動作について説明する。
Next, the operation of the
図9は、サーバ装置1において実行される画面データ送信制御処理の詳細を示すフローチャートである。サーバ装置1が、画面キャッシュ14bと画面キャッシュ優先度テーブル14cとを使用して、作成した画面構成部品データをクライアント装置2へ送信するまでの手順を示している。
FIG. 9 is a flowchart showing details of the screen data transmission control process executed in the
まず、ステップS01では、サービス要求をしてきたクライアント装置2がRFID読取装置30により取得した場所情報を、クライアント装置2より受信しておく。次に、作成した画面構成部品データの内、クライアント装置2へ送信すべき画面構成部品データがあるかどうかを判別する。送信すべき画面構成部品データが無くなると(ステップS02:No)、画面データ送信制御処理を終了する。
First, in step S01, the location information acquired by the
クライアント装置2へ送信すべき画面構成部品データがある場合(ステップS02:Yes)は、ステップS03で、送信すべき画面構成部品データが既に画面キャッシュ14bに存在するかどうかを確認する。
If there is screen component data to be transmitted to the client device 2 (step S02: Yes), it is confirmed in step S03 whether the screen component data to be transmitted already exists in the
確認の結果、送信すべき画面構成部品データが画面構成部品データの画面キャッシュ14bに存在しない場合(ステップS03:No)には、送信すべき画面構成部品データに識別子を付加して画面構成部品データの画面キャッシュ14bに登録し(ステップS04)、送信すべき画面構成部品データが画面構成部品データの画面キャッシュ14bに存在する場合(ステップS03:Yes)には、次のステップに進む。
As a result of the confirmation, if the screen component data to be transmitted does not exist in the
ステップS05では、現在の時刻と図4の時間帯テーブルにより時間帯名を決定し、ステップS01で取得した場所情報によりクライアント装置2の場所を決定する。
In step S05, the time zone name is determined based on the current time and the time zone table shown in FIG. 4, and the location of the
ステップS06では、図6の画面キャッシュ優先度テーブル14cにおける使用頻度を更新する。決定した場所と時間帯に該当し、送信すべき画面構成部品データの識別子が一致するデータの使用頻度の値に1を加算する。 In step S06, the usage frequency in the screen cache priority table 14c of FIG. 6 is updated. 1 is added to the value of the use frequency of data corresponding to the determined place and time zone and having the same identifier of the screen component data to be transmitted.
次に、後述の優先順位計算処理サブルーチンにより図6の画面キャッシュ優先度テーブル14cにおける優先順位を更新する(ステップS07)。そして、後述の画面データ送信処理サブルーチンにより画面構成部品データ、識別子、優先順位または、識別子、優先順位をクライアント装置2へ送信し(ステップS08)、ステップS02へ戻って、ステップS02以降の処理を繰り返す.
Next, the priority order in the screen cache priority table 14c of FIG. 6 is updated by a priority order calculation processing subroutine described later (step S07). Then, the screen component data, identifier, priority or identifier and priority are transmitted to the
図10は、サーバ装置1において実行されるサブルーチン「優先順位計算処理」の詳細を示すフローチャートである。
FIG. 10 is a flowchart showing details of the subroutine “priority calculation processing” executed in the
画面キャッシュ優先度テーブル14cの例として、図6の(A)を参照する。すなわち、クライアント装置2の場所が「100」で時間帯名が「TimeG1」であり、識別子の値が「ハッシュ値1」、「ハッシュ値2」、「ハッシュ値3」、「ハッシュ値4」の順に並んだデータが優先順位計算処理の対象となるものとする。
As an example of the screen cache priority table 14c, reference is made to FIG. That is, the location of the
まず、ステップS21では、場所が「100」で時間帯名が「TimeG1」のデータを抽出する。その結果、識別子の値が「ハッシュ値1」、「ハッシュ値2」、「ハッシュ値3」、「ハッシュ値4」の順に並んだデータが抽出される。
First, in step S21, data having a place “100” and a time zone name “TimeG1” is extracted. As a result, data in which the identifier values are arranged in the order of “
次に、抽出したデータの使用頻度の値を比較して、使用頻度の高い順にデータを並び替える(ステップS22)。使用頻度の高い順に並んだデータに、1から昇順に優先順位を付加する(ステップS23)。その結果、識別子の値が「ハッシュ値3」、「ハッシュ値1」、「ハッシュ値2」、「ハッシュ値4」の順に並ぶので、画面キャッシュ優先度テーブル14cを更新する(ステップS24)。
Next, the use frequency values of the extracted data are compared, and the data is rearranged in descending order of use frequency (step S22). Priorities are added in ascending order from 1 to data arranged in descending order of use frequency (step S23). As a result, the identifier values are arranged in the order of “
図11は、サーバ装置1において実行されるサブルーチン「画面データ送信処理」の詳細を示すフローチャートである。まず、ステップS31で、送信しようとする画面構成部品データが画面キャッシュ14bに存在するかどうかを確認する。画面構成部品データが画面キャッシュ14bに存在する場合(ステップS31:Yes)には、識別子と優先順位だけをクライアント装置2へ送信する(ステップS32)。
FIG. 11 is a flowchart showing details of a subroutine “screen data transmission process” executed in the
そして、画面構成部品データが画面キャッシュ14bに存在しない場合には(ステップS31:No)、画面構成部品データを圧縮して送信用の画面構成部品データに変換し(ステップS33)、送信用の画面構成部品データに識別子と優先度とを付加してクライアント装置2へ送信するする(ステップS34)。
If the screen component data does not exist in the
サーバ装置1における画面キャッシュ14bは、クライアント装置2の画面キャッシュ24bと同様に登録するだけだと容量が不足してくるので、クライアント装置2の画面キャッシュ24bと同期を取りながら不要なデータを削除する必要がある。
Since the
図12は、サーバ装置1において実行されるキャッシュ削除処理の詳細を示すフローチャートである。サーバ装置1は、クライアント装置2から削除するキャッシュデータの識別子を受信したら(ステップS41)、該当する識別子のキャッシュデータを検索して(ステップS42)、画面キャッシュ14bから該当する識別子のキャッシュデータを削除する(ステップS43)。
FIG. 12 is a flowchart showing details of the cache deletion process executed in the
これにより、クライアント装置2の画面キャッシュ24bのキャッシュデータを削除するタイミングにあわせて、サーバ装置1の画面キャッシュ14bが、クライアント装置2の画面キャッシュ24bと同一内容に保たれる。画面キャッシュ優先度テーブル14cの優先順位の決定方法として、当日分だけでなく前々日分と前日分とを反映させることもできる。
Thereby, the
画面キャッシュ優先度テーブル準備処理は、最初の時間帯になる前にサーバ装置1が行う。これにより、前々日分と前日分のデータの使用頻度が当日の開始前に反映されるようになる。なお、前々日分と前日分に限らず、過去3日分、あるいは過去1週間分または過去1カ月分のデータを反映するようにしてもよい。
The
図13は、サーバ装置1において実行される画面キャッシュ優先度テーブル準備処理の詳細を示すフローチャートである。
FIG. 13 is a flowchart showing details of the screen cache priority table preparation process executed in the
図8にこの処理で使用する、サーバ装置1の画面キャッシュ優先度テーブル準備処理における、画面キャッシュ優先度テーブル14cの内容の一例を示す。すなわち、クライアント装置2の場所が「100」で時間帯名が「TimeG1」であり、識別子の値が「ハッシュ値1」、「ハッシュ値2」、「ハッシュ値3」、「ハッシュ値4」の順に並んだデータが優先順位計算処理の対象となるものとする。
FIG. 8 shows an example of the contents of the screen cache priority table 14c in the screen cache priority table preparation process of the
まず、画面キャッシュ優先度テーブル14cの前日分のデータである図8の(A)と前々日分のデータである図8の(B)とをワークメモリに読み込む(ステップS51)。次に、前日分のデータと前々日分のデータの使用頻度を加算する。その結果、図8の(C)のデータになる(ステップS53)。 First, (A) in FIG. 8 which is data for the previous day of the screen cache priority table 14c and (B) in FIG. 8 which is data for the day before are read into the work memory (step S51). Next, the usage frequency of the data for the previous day and the data for the previous day is added. As a result, the data shown in FIG. 8C is obtained (step S53).
ここで、使用頻度の多い順にデータを並び替え、並び替えた順序に従って優先順位を1から昇順に付加する。その結果、図8の(D)のデータになる(ステップS55)。ステップS52に戻り、ステップS53〜S55までの処理を残りの場所・時間帯がなくなるまで繰り返す。 Here, the data is rearranged in the order of use frequency, and the priority is added in ascending order from 1 according to the rearranged order. As a result, the data shown in FIG. 8D is obtained (step S55). Returning to step S52, the processes from step S53 to S55 are repeated until there is no remaining place / time zone.
次に、本実施形態におけるクライアント装置2の動作について説明する。
Next, the operation of the
図14は、クライアント装置2において実行される画面表示処理の詳細を示すフローチャートである。クライアント装置2が、サーバ装置1から画面構成部品データ、識別子、優先順位を受信して、画面キャッシュ24bと画面キャッシュ優先度テーブル24cとを使用して、画面構成部品データを表示するまでの手順を示している。
FIG. 14 is a flowchart showing details of screen display processing executed in the
まず、ステップC01では、サーバ装置1からの画面データの送信を待ち、送信された画面構成部品データ、識別子、優先順位を受信する。受信したデータが識別子と優先順位だけだった場合(ステップC02:Yes)は、該当する識別子のキャッシュデータを画面キャッシュ24bから抽出して(ステップC03)、画面キャッシュ優先度テーブル24cの使用頻度の値に1を加算して更新し(ステップC04)、抽出したキャッシュデータをフレームバッファRAM25に書き出して表示装置26に表示する(ステップC05)。
First, in step C01, transmission of screen data from the
ステップC02で、受信したデータが識別子と優先順位だけではない場合(ステップC12:No)は、新たに登録すべき画面構成部品データを受信しているので、画面キャッシュ24bに書き出すための空き領域があるかを確認する(ステップC06)。
In step C02, when the received data is not only the identifier and the priority order (step C12: No), the screen component data to be newly registered is received, so there is a free area to be written to the
ステップC06で、空き領域が無い場合(ステップC06:No)は、領域を確保する必要があるので、後述の削除データ決定処理サブルーチンにより削除するキャッシュデータを決定し(ステップC07)、削除を決定された優先度の低いキャッシュデータを識別子をキーとして画面キャッシュ24bから削除する(ステップC08)。
If there is no free area in step C06 (step C06: No), it is necessary to secure the area, so the cache data to be deleted is determined by the deletion data determination processing subroutine described later (step C07), and the deletion is determined. The cache data with the lower priority is deleted from the
そして、サーバ装置1の画面キャッシュ14bと同期を取るために、削除したキャッシュデータの識別子をサーバ装置1へ送信する(ステップC09)。
Then, in order to synchronize with the
次に、受信した画面構成部品データを解凍して識別子と共に画面キャッシュ24bに登録し(ステップC10)、識別子と優先順位を画面キャッシュ優先度テーブル24dに記録(ステップC11)した後、受信した画面構成部品データを表示装置26に表示する(ステップC12)。
Next, the received screen component data is decompressed and registered in the
ステップC06で、空き領域が有る場合(ステップC06:Yes)は、領域を確保する必要がないので、ステップC10以降の処理を行う。 If there is an empty area in step C06 (step C06: Yes), it is not necessary to secure the area, and the processing after step C10 is performed.
図15は、クライアント装置2において実行されるサブルーチン「削除データ決定処理」の詳細を示すフローチャートである。
FIG. 15 is a flowchart showing details of a subroutine “deleted data determination process” executed in the
まず、ステップC21で、書き出そうとする画面構成部品データの容量を元に、必要な領域の容量を設定する。次に、これから削除する画面構成部品データを優先度の低い順に決定するために、最初の削除する候補として優先順位を最下位に設定する(ステップC22)。 First, in step C21, the capacity of a necessary area is set based on the capacity of screen component data to be written. Next, in order to determine the screen component data to be deleted from the lowest priority, the priority order is set to the lowest as the first candidate to be deleted (step C22).
設定された優先順位の描画データを削除予定のリストに登録する(ステップC23)。次に、削除予定の描画データの容量を加算してゆき、削除予定の容量の合計を求める(ステップC24)。そして、必要な領域の容量と削除予定の容量とを比較して領域が確保できたかどうかを確認する(ステップC25)。 The drawing data having the set priority order is registered in the list to be deleted (step C23). Next, the capacity of the drawing data to be deleted is added to obtain the total capacity to be deleted (step C24). Then, the capacity of the necessary area is compared with the capacity to be deleted, and it is confirmed whether or not the area has been secured (step C25).
ステップC25で、領域が確保できた場合(ステップC25:Yes)は、処理を終了するが、まだ領域が確保できない場合(ステップC25:No)は、削除する候補の優先度を一つ上げてステップC23以降の処理を繰り返す。 In step C25, if the area can be secured (step C25: Yes), the process ends. If the area cannot be secured yet (step C25: No), the priority of the candidate to be deleted is increased by one. The processes after C23 are repeated.
クライアント装置2が携帯型の場合、時間によって場所が変わる可能性がある。そのため、所定の時間毎にクライアント装置2の場所と現在の時間帯とを確認する必要がある。
When the
図16は、クライアント装置2において実行される場所時間帯変化対応処理の詳細を示すフローチャートである。クライアント装置2は、処理を開始する時と場所が変化した時に、場所情報をRAM24に記憶しておく。そして時間帯の変化を、現時刻と図4の時間帯テーブルとを照合することにより所定の時間毎に監視しておく。
FIG. 16 is a flowchart showing details of the location time zone change handling process executed in the
まず、ステップC31で、RFID読取装置30で読み取った場所情報と記憶しておいた場所情報とを比較して、場所情報の変化を確認する。次に、現時刻と図4の時間帯テーブルとを照合することにより、時間帯の変化を確認する(ステップC32)。
First, in step C31, the location information read by the
そして、場所情報または時間帯が変化した場合は(ステップC33:Yes)、画面キャッシュ優先度テーブル24cの優先順位の値を最下位(最も大きな値)に設定する(ステップC34)。 If the location information or time zone has changed (step C33: Yes), the priority value in the screen cache priority table 24c is set to the lowest (largest value) (step C34).
以上説明したように、サーバ装置1は、画面キャッシュ14bと画面キャッシュ優先度テーブル14cを制御し、クライアント装置2は、画面キャッシュ24bと画面キャッシュ優先度テーブル24cを制御して、サーバ装置1とクライアント装置2とが連携することにより、クライアント装置2を使用する場所や時間帯が変化しても、クライアント装置2での表示の高速化が可能になると共に、キャッシュメモリを効率的に使用することが可能になる。
As described above, the
前記実施形態において記載したサーバ装置1、クライアント装置2の処理、すなわち図9乃至16のフローチャートに示す各処理は、何れもコンピュータが読み取り可能なプログラムとして、外部記憶装置18、外部記憶装置28に記憶されている。なお、これらのプログラムは、半導体メモリ(ROM、RAM等)、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)の記録媒体に記憶してもよく、更に、プログラムの一部若しくは全部をサーバ装置1やクライアント装置2に備えられた記録媒体に記憶し、ネットワーク3を介して受信して読み取る構成にしてもよい。
The processes of the
なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または形状を取ることができる。 The present invention is not limited to the embodiment described above, and can take various configurations or shapes without departing from the gist of the present invention.
1 …サーバ装置
2 …クライアント装置
3 …通信ネットワーク
11、21…CPU
12、22…バス
13、23…ROM
14、24…RAM
14a…クライアント用フレームバッファ
14b、24b…画面キャッシュ
14c、24c…画面キャッシュ優先度テーブル
15、25…フレームバッファRAM
16、26…表示装置
17、27…入力装置
18、28…外部記憶装置
19、29…通信I/F
30…RFID読取装置
DESCRIPTION OF
12, 22 ...
14, 24 ... RAM
14a ...
16, 26 ...
30 ... RFID reader
Claims (12)
任意の使用環境において当該データ処理装置でデータ処理を行う際に、当該データ処理装置における複数の使用環境別のデータを記憶する前記サーバ装置から、当該データ処理装置の現在の使用環境に対応するデータが送信されてきた場合には、そのデータを受信する受信手段と、
前記受信手段で受信したデータを当該使用環境に対応するキャッシュデータとしてキャッシュ記憶手段に記憶すると共に、その受信したデータに基づいてデータ処理を行うべく制御するデータ制御手段と、
任意の使用環境においてデータ処理を行う際は、当該使用環境に対応するデータが前記キャッシュ記憶手段にキャッシュデータとして予め記憶されていれば、前記サーバ装置から新たにデータを受信することなく、その予め記憶されたキャッシュデータを読み出してデータ処理を行う処理制御手段と、
を具備したことを特徴とするデータ装置。 A data processing device as a client that receives various data from a server device and processes the data,
When data processed by the data processing device in any environment of use, from the server apparatus for storing a plurality of usage environment by the data in the data processing device, corresponding to the current usage environment of the data processing device when the data has been transmitted, the receiving means for receiving the data,
Data control means for storing the data received by the receiving means in the cache storage means as cache data corresponding to the use environment, and controlling to perform data processing based on the received data ;
When performing the data processing in any environment of use, if the data corresponding to the use environment is previously stored as cache data in the cache memory means, receiving new data from the server apparatus And processing control means for reading the cache data stored in advance and performing data processing;
A data device comprising:
ことを特徴とする請求項1に記載のデータ処理装置。 The reception means, when the server device has transmitted current use environment acquires the data that has been extracted based on the current use environment with the acquisition of the data processing apparatus, the data Receive as data corresponding to the current usage environment in the data processing device,
The data processing apparatus according to claim 1.
ことを特徴とする請求項1又は2に記載のデータ処理装置。 The processing control means controls the new data processing and the newly processed data if the cache data corresponding to the data processed by the data processing is not stored in the cache storage means in advance during the data processing. The updated data is stored in the cache storage means as new cache data,
The data processing apparatus according to claim 1 or 2, characterized by the above.
前記キャッシュ記憶手段の記憶を更新する際に、前記優先順位情報に基づいて削除すべきキャッシュデータを決定して削除して更新する更新制御手段と、
を更に具備したことを特徴とする請求項1〜3の何れかに記載のデータ処理装置。 It said receiving means, when receiving a plurality of data in the current use environment of the data processing device also receives the priority information in accordance with the use frequency of each data on the use environment,
Update control means for determining, deleting and updating cache data to be deleted based on the priority information when updating the storage of the cache storage means;
The data processing apparatus according to claim 1, further comprising:
前記受信手段は、前記サーバ装置において、当該データ処理装置の現在の使用場所、あるいは使用時間帯に適するように抽出されたデータを受信する、
ことを特徴とする請求項1〜4の何れかに記載のデータ処理装置。 The use environment is an environment of a use place where the data processing device is used, or an environment of a use time zone,
The receiving means, in the server apparatus, receiving a current location of use data that or extracted to suit the use time period, of the data processing device,
The data processing device according to claim 1, wherein the data processing device is a data processing device.
前記受信手段は、前記サーバ装置から現在の使用環境における画面データを前記データとして受信し、
前記処理制御手段は、前記使用環境に対応する画面データが前記キャッシュ記憶手段にキャッシュデータとして予め記憶されていれば、その予め記憶されたキャッシュデータとしての画面データを読み出して前記表示画面に表示するよう制御する、
ようにしたことを特徴とする請求項1〜5の何れかに記載のデータ処理装置。 The data processing device receives screen data generated by application processing in the server device and performs display processing on a display screen,
The receiving means receives the screen data in the current use environment as the data from the server apparatus,
Said processing control hand stage, if the screen data corresponding to the use for the environment achieve previously stored as cache data in the cache storage means, on the display screen by reading the screen data as the previously stored cache data Control to display,
The data processing apparatus according to claim 1, wherein the data processing apparatus is configured as described above.
前記クライアント装置で使用される各種使用環境別のデータをキャッシュデータとして記憶するキャッシュ記憶手段と、
前記クライアント装置からアクセスがあった際は、そのクライアント装置の現在の使用環境を取得する取得手段と、
前記取得手段で取得した現在の使用環境に対応するデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていれば、そのデータを前記クライアント装置へ送信することをせず、一方、前記取得手段で取得した現在の使用環境に対応するデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていなければ、前記クライアント装置の現在の使用環境に対応するデータを前記クライアント装置に送信する送信手段と、
を具備したことを特徴とするデータ処理装置。 A data processing device as a server device that transmits various data to a client device,
A cache storage means for storing various use environments specific data used by the client device as cache data,
When there is an access from the client device, acquisition means for acquiring the current usage environment of the client device;
If the cache data of the data corresponding to the current use environment acquired by the acquisition means if stored in the cache memory means, without transmitting the data to the client device, whereas, acquired by the acquisition unit Transmission means for transmitting data corresponding to the current usage environment of the client device to the client device if cache data of the data corresponding to the current usage environment is not stored in the cache storage means ;
A data processing apparatus comprising:
前記送信手段は、前記取得手段で取得された現在の使用環境に対応する複数のデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていなければ、その複数のデータを前記クライアント装置に送信する、
ことを特徴とする請求項7に記載のデータ処理装置。 The cache storage means manages and stores a plurality of cache data used in the past in each usage environment for each usage environment,
The transmission unit, if the cache data of the plurality of data corresponding to the current use environment acquired by the acquisition means is stored in said cache memory means, and transmits the plurality of data to the client device,
The data processing apparatus according to claim 7.
前記送信手段は、前記取得手段で取得された現在の使用環境に対応する複数のデータのキャッシュデータの優先度情報を送信する、
ことを特徴とする請求項7に記載のデータ処理装置。 The cache storage means stores priority information of a plurality of cache data in each use environment for each use environment,
The transmission unit transmits priority information of cache data of a plurality of data corresponding to the current use environment acquired by the acquisition unit;
The data processing apparatus according to claim 7.
前記抽出手段は、前記クライアント装置の現在の使用場所、あるいは使用時間帯に対応するデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていなければ、前記クライアント装置の現在の使用環境に対応するデータを前記クライアント装置に送信する
ことを特徴とする請求項7〜9の何れかに記載のデータ処理装置。 The use environment is an environment of a use place where the client device is used, or an environment of a use time zone,
If the cache data of the data corresponding to the current use location or use time zone of the client device is not stored in the cache storage unit, the extraction means stores the data corresponding to the current use environment of the client device. The data processing apparatus according to claim 7, wherein the data processing apparatus transmits the data to the client apparatus.
前記コンピュータを、
任意の使用環境において当該データ処理装置でデータ処理を行う際に、当該データ処理装置における複数の使用環境別のデータを記憶する前記サーバ装置から、当該データ処理装置の現在の使用環境に対応するデータが送信されてきた場合には、そのデータを受信する受信手段、
前記受信手段で受信したデータを当該使用環境に対応するキャッシュデータとしてキャッシュ記憶手段に記憶すると共に、その受信したデータに基づいてデータ処理を行うべく制御するデータ制御手段、
任意の使用環境においてデータ処理を行う際は、当該使用環境に対応するデータが前記キャッシュ記憶手段にキャッシュデータとして予め記憶されていれば、前記サーバ装置から新たにデータを受信することなく、その予め記憶されたキャッシュデータを読み出してデータ処理を行う処理制御手段、
として機能させるようにしたコンピュータ読み取り可能なプログラム。 A program for controlling a computer of a data processing device as a client that receives various data from a server device and processes the data,
The computer,
When data processed by the data processing device in any environment of use, from the server apparatus for storing a plurality of usage environment by the data in the data processing device, corresponding to the current usage environment of the data processing device when the data has been transmitted, the receiving means for receiving the data,
Data control means for storing the data received by the receiving means in the cache storage means as cache data corresponding to the use environment, and controlling to perform data processing based on the received data ;
When performing the data processing in any environment of use, if the data corresponding to the use environment is previously stored as cache data in the cache memory means, receiving new data from the server apparatus Without processing control means for reading the cache data stored in advance and performing data processing,
A computer-readable program designed to function as a computer.
前記コンピュータを、
前記クライアント装置で使用される各種使用環境別のデータをキャッシュデータとして記憶するキャッシュ記憶手段、
前記クライアント装置からアクセスがあった際は、そのクライアント装置の現在の使用環境を取得する取得手段、
前記取得手段で取得した現在の使用環境に対応するデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていれば、そのデータを前記クライアント装置へ送信することをせず、一方、前記取得手段で取得した現在の使用環境に対応するデータのキャッシュデータが前記キャッシュ記憶手段に記憶されていなければ、前記クライアント装置の現在の使用環境に対応するデータを前記クライアント装置に送信する送信手段、
として機能させるようにしたコンピュータ読み取り可能なプログラム。 A program for controlling a computer of a data processing device as a server device that transmits various data to a client device,
The computer,
Cache memory means for storing various use environments specific data used by the client device as cache data,
When there is an access from the client device, acquisition means for acquiring the current usage environment of the client device;
If the cache data of the data corresponding to the current use environment acquired by the acquisition means if stored in the cache memory means, without transmitting the data to the client device, whereas, acquired by the acquisition unit Transmitting means for transmitting data corresponding to the current usage environment of the client device to the client device if cache data of the data corresponding to the current usage environment is not stored in the cache storage means;
A computer-readable program designed to function as a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012144864A JP5641018B2 (en) | 2012-06-28 | 2012-06-28 | Data processing apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012144864A JP5641018B2 (en) | 2012-06-28 | 2012-06-28 | Data processing apparatus and program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008245093A Division JP5035194B2 (en) | 2008-09-25 | 2008-09-25 | Server device, client device, server-based computing system, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012230694A JP2012230694A (en) | 2012-11-22 |
JP5641018B2 true JP5641018B2 (en) | 2014-12-17 |
Family
ID=47432132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012144864A Active JP5641018B2 (en) | 2012-06-28 | 2012-06-28 | Data processing apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5641018B2 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002251373A (en) * | 2001-02-23 | 2002-09-06 | Hitachi Ltd | Network system and network terminal |
JP4745839B2 (en) * | 2005-01-28 | 2011-08-10 | 富士通株式会社 | Data transfer system, transmission program, reception program, and data transmission method |
-
2012
- 2012-06-28 JP JP2012144864A patent/JP5641018B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012230694A (en) | 2012-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11689515B2 (en) | Information processing device, information management method, and information processing system | |
US9864736B2 (en) | Information processing apparatus, control method, and recording medium | |
US20080072225A1 (en) | Information processing apparatus, information processing method, program, and recording medium | |
US20120254352A1 (en) | Application providing system and application providing method | |
JP5966270B2 (en) | System and device management program | |
JP6870466B2 (en) | Control programs, control methods, controls, and database servers | |
CN109472540B (en) | Service processing method and device | |
JP5035194B2 (en) | Server device, client device, server-based computing system, and program | |
US9607163B2 (en) | Information processing apparatus, control method, and storage medium storing program | |
JP2009110216A (en) | Server device, client device, server based computing system, and program | |
JP5641018B2 (en) | Data processing apparatus and program | |
JP2018180667A (en) | Printing management program, printing management method and printing management device | |
JP2014219708A (en) | Information processing device, information processing method, and program | |
US8190559B2 (en) | Document management apparatus, storage medium storing program for document management apparatus, and method for managing documents | |
US9667815B2 (en) | Information processing system, information processing device, and information processing method | |
JP6398368B2 (en) | Information processing apparatus, information processing system, and program | |
JP6349682B2 (en) | Information management program, apparatus, and method | |
JP2009199173A (en) | Server device, client device, server-based computing system and program | |
JP6583424B2 (en) | Information processing system, information processing method, and information processing program | |
US20120323966A1 (en) | Storage device, server device, storage system, database device, provision method of data, and program | |
JP6089825B2 (en) | Information processing system and data input method | |
JP2019200696A (en) | Document processing device, document processing method, and program | |
JP2013105244A (en) | Document management program, information processing device and document management method | |
US11212865B2 (en) | Terminal apparatus and terminal control method | |
JP2008262553A (en) | Image processing apparatus, image processing method, image processing program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140131 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140421 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140603 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140729 |
|
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: 20140930 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141013 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5641018 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |