JPH05233510A - Character data management method - Google Patents
Character data management methodInfo
- Publication number
- JPH05233510A JPH05233510A JP4037734A JP3773492A JPH05233510A JP H05233510 A JPH05233510 A JP H05233510A JP 4037734 A JP4037734 A JP 4037734A JP 3773492 A JP3773492 A JP 3773492A JP H05233510 A JPH05233510 A JP H05233510A
- Authority
- JP
- Japan
- Prior art keywords
- character
- data
- font
- cache
- processing
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 97
- 238000013523 data management Methods 0.000 title claims description 3
- 238000012545 processing Methods 0.000 claims abstract description 108
- 230000015654 memory Effects 0.000 claims abstract description 85
- 230000008569 process Effects 0.000 claims description 69
- 238000012546 transfer Methods 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 238000005034 decoration Methods 0.000 claims 1
- 238000007726 management method Methods 0.000 description 115
- 230000007246 mechanism Effects 0.000 description 46
- 238000012217 deletion Methods 0.000 description 12
- 230000037430 deletion Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 7
- 238000007796 conventional method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
Landscapes
- Digital Computer Display Output (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】
【目的】 ネットワーク上の、文字出力要求側装置と文
字のイメージデータ供給装置の双方にフォントキャッシ
ュメモリを配置することで、文字データ生成を高速に処
理する。
【構成】 アウトラインフォントの元データから、文字
のイメージデータを生成する処理を行なう専用装置(フ
ォントサーバ)をネットワークに接続し、ネットワーク
上の文字出力を行なう装置は、フォントサーバから文字
のイメージデータの供給を受ける。ここで、要求側コン
ピュータと、フォントサーバの両者にそれぞれフォント
キャッシュと呼ぶ、文字のイメージデータを保持するメ
モリ領域を設け、かつフォントサーバのキャッシュメモ
リの内容と、文字要求側コンピュータのキャッシュメモ
リの内容を不一致に保つ制御を行ない、一度イメージデ
ータに変換された文字データをできるだけ繰り返し利用
し、アウトライン元データからの生成処理の実行を減ら
すことを特徴としている。
(57) [Abstract] [Purpose] By allocating the font cache memory to both the character output request side device and the character image data supply device on the network, character data generation is processed at high speed. [Structure] A dedicated device (font server) that performs processing of generating character image data from outline font original data is connected to a network, and a device that outputs characters on the network is a device that outputs character image data from the font server. Receive supply. Here, both the requesting computer and the font server have a memory area called a font cache for holding character image data, and the contents of the font server's cache memory and the contents of the character requesting computer's cache memory. Is controlled so that the character data once converted into image data is used as repeatedly as possible to reduce the execution of generation processing from outline original data.
Description
【0001】[0001]
【産業上の利用分野】本発明は、複数台のパーソナルコ
ンピュータ、ワークステーションをネットワークにより
結合したシステムでの、アウトラインフォントの高速発
生方式に関わる。また、フォント形成に使用される画素
を、一時的に蓄えるメモリ構造(いわゆるフォントキャ
ッシュ)の管理方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a high-speed outline font generation system in a system in which a plurality of personal computers and workstations are connected via a network. Further, the present invention relates to a management system of a memory structure (so-called font cache) that temporarily stores pixels used for font formation.
【0002】[0002]
【従来の技術】従来の装置として、特開平2−5809
4で記載された装置がある。この装置構成においては、
フォントサーバと呼ぶ文字データ管理装置をネットワー
クに接続し、この同一のネットワーク上に、ワークステ
ーション、印刷装置などを接続する。ここで、ワークス
テーションあるいは印刷装置は、文字出力を伴うアプリ
ケーションプログラム(印刷装置の場合は印刷制御プロ
グラム)が動作するものであり、出力するための文字デ
ータをフォントサーバに要求するクライアントである。
また、フォント・キャシュと呼ぶ機構が使用されてい
る。フォント・キャシュは、文字の形状データが、アウ
トライン・フォント形式で記録されている場合等に、処
理の高速化を図るうえで効果的な機構である。アウトラ
イン・フォントは、文字形状の元データが、文字形状を
構成する輪郭を表す適当な曲線(例えばベジエ曲線、放
物線等)の係数項や、曲線種類の指定などの情報を含む
データ列として記述されている。従って表示、印刷等、
何らかの出力デバイスに文字として出力する場合は、元
データから大きさの指定に従い画素データの集合へ変換
しなければならない。しかしこの変換処理は、一般に処
理時間を多く消費する。文字形状の複雑な漢字の場合、
これは一層顕著である。そこで、一度画素に変換済みの
文字データに関しては、変換済みの画素データをメモリ
に一時蓄えておき、同一文字に対し出力要求が発生した
場合、元データからの画素への変換を行うことなく、こ
のメモリに既に記録されている画素データを使用する方
法が採られる。ここで、画素に変換された文字形状のデ
ータを蓄積するメモリが、フォントキャッシュと呼ばれ
る。特開平2−58094で記載された装置では、フォ
ントサーバとネットワークによって接続されたワークス
テーション、印刷装置などの文字出力を行う装置側(す
なわちクライアント側)に、フォント・キャッシュの機
構が実現されている。このような従来方式の利点は主と
して次の3つである。 (1)文字データをネットワーク上のすべての装置が共
有できるため、文字データ記憶のための補助記憶装置な
ど資源が有効に利用できる。2. Description of the Related Art As a conventional device, Japanese Patent Laid-Open No. 2-5809
There is a device described in 4. In this device configuration,
A character data management device called a font server is connected to a network, and a workstation, a printing device, etc. are connected to this same network. Here, the workstation or the printing device is a client in which an application program (print control program in the case of a printing device) accompanied by character output operates and requests the font server for the character data to be output.
Also, a mechanism called font cache is used. The font cache is an effective mechanism for speeding up the processing when the character shape data is recorded in the outline font format. In the outline font, the original data of the character shape is described as a data string that contains information such as the coefficient term of an appropriate curve (for example, Bezier curve, parabola, etc.) that represents the contour forming the character shape, and specification of the curve type ing. Therefore, display, printing, etc.
When outputting as a character to some output device, the original data must be converted into a set of pixel data according to the size specification. However, this conversion process generally consumes a lot of processing time. In the case of complicated Kanji characters,
This is even more pronounced. Therefore, for character data that has already been converted into pixels, the converted pixel data is temporarily stored in the memory, and when an output request for the same character occurs, without converting from the original data to pixels, The method of using the pixel data already recorded in this memory is adopted. Here, the memory that stores the character shape data converted into pixels is called a font cache. In the device described in Japanese Patent Laid-Open No. 2-58094, a font cache mechanism is realized on the device side (that is, the client side) that outputs characters such as a workstation and a printing device connected to a font server by a network. .. The advantages of such a conventional method are mainly the following three. (1) Since character data can be shared by all devices on the network, resources such as an auxiliary storage device for storing character data can be effectively used.
【0003】(2)文字データが集中的に管理できるた
め、文字データ変更、追加、削除などの操作が簡単で保
守性に優れる。(2) Since character data can be centrally managed, operations such as changing, adding and deleting character data are easy and maintainability is excellent.
【0004】(3)文字データが特殊な処理を必要とす
る場合でも、フォントサーバにおいてのみ処理を行うだ
けで良い。(3) Even if the character data requires special processing, only the font server needs to perform the processing.
【0005】これに対し、従来方法の問題点は以下の点
である。On the other hand, the problems of the conventional method are as follows.
【0006】(1)フォントサーバがクライアントマシ
ンに対する唯一の文字データ供給源であり、文字出力
は、局所的なフォント・キャッシュが有効に働かない場
合、フォントサーバの文字データ供給能力に律速され
る。(1) The font server is the only source of character data to the client machine, and character output is rate-limited by the font server's ability to supply character data when the local font cache does not work effectively.
【0007】もしクライアントマシンが、表示フォント
の文字種を切り替えたとすると、現在フォント・キャッ
シュにある文字データが再利用できない。従って、それ
以降の文字出力については、しばらくの間、文字毎にフ
ォントサーバへ要求が発生することになる。ここで、同
時に複数のクライアントマシンが表示文字種の変更を行
えば、フォントサーバへの要求が集中することになる。
前述した様にアウトラインフォント等では、文字発生は
プロセッサにとって大きな負荷である。複数の機器の要
求に応じることは、ネットワークに付随する処理プログ
ラムの負荷と併せ、処理速度の低下を引き起こす原因と
なる。If the client machine switches the character type of the display font, the character data currently in the font cache cannot be reused. Therefore, for the subsequent character output, a request is made to the font server for each character for a while. Here, if a plurality of client machines simultaneously change the display character type, requests to the font server will be concentrated.
As described above, in outline fonts and the like, character generation is a heavy load on the processor. Responding to requests from a plurality of devices causes a decrease in processing speed as well as a load on a processing program associated with the network.
【0008】フォントキャッシュの利用率を高め、クラ
イアントマシンでの局所的な応答を高めることは、キャ
ッシュ管理方法の改善によって実現できる。例えば、フ
ォントキャッシュ管理方法の効率向上を目的とし発明さ
れた従来技術に、特開昭64−88660”フォントキ
ャッシュ制御方式”がある。しかし、ネットワークでの
利用を前提とした、フォントサーバシステムの処理速度
を向上するためには、ボトルネックとなる部分の解決が
必要であり、クライアントマシンでの局所的な応答速度
が向上しても、文字出力の最終的な速度の向上に結びつ
かないという問題点が有った。The utilization rate of the font cache and the local response on the client machine can be improved by improving the cache management method. For example, as a conventional technique invented for the purpose of improving the efficiency of a font cache management method, there is JP-A-64-88660 "font cache control system". However, in order to improve the processing speed of the font server system for use on the network, it is necessary to solve the bottleneck part, and even if the local response speed on the client machine is improved. However, there was a problem that it did not lead to the final speedup of character output.
【0009】[0009]
【発明が解決しようとする課題】以上に述べた様に、ネ
ットワークでのフォントサーバの使用においては、フォ
ントサーバの処理速度を可能な限り効果的に利用する技
術を開発することが課題となる。これを解決する一つの
方法は、フォントサーバにもフォントキャッシュを実装
し、フォントサーバの処理速度を一層高める方法であ
る。しかし、この方法を用いる場合、ワークステーショ
ン、印刷装置等のクライアントになるマシンのローカル
なフォントキャシュの内容と、フォントサーバのフォン
トキャッシュの内容との関係をどのように維持するかが
問題となる。フォントサーバ上のフォントキャッシュは
いわばネットワーク上でのグローバルなキャッシュであ
り、クライアントマシン側のローカルなキャッシュに有
るのと同一の文字データを保持する必要は無い。むし
ろ、ローカルなキャシュとグローバルなキャッシュの内
容に同一のデータ存在するのは、有限のキャッシュメモ
リの利用率の点から考え不都合である。そこで、フォン
トサーバ側のフォントキャッシュと、各クライアントマ
シンのフォントキャッシュの内容を、いかにして不一致
に保つかという課題がある。As described above, in using a font server in a network, it is an object to develop a technique for effectively utilizing the processing speed of the font server as much as possible. One way to solve this is to implement a font cache in the font server as well to further increase the processing speed of the font server. However, when this method is used, how to maintain the relationship between the contents of the local font cache of the client machine such as the workstation and the printing device and the contents of the font cache of the font server becomes a problem. The font cache on the font server is, as it were, a global cache on the network, and it is not necessary to hold the same character data as in the local cache on the client machine side. Rather, it is inconvenient to have the same data in the contents of the local cache and the global cache in view of the limited utilization rate of the cache memory. Therefore, there is a problem of how to keep the contents of the font cache on the font server side and the contents of the font cache of each client machine inconsistent.
【0010】[0010]
【課題を解決するための手段】以上の課題を解決するた
め、本発明は、文字出力動作を行う複数台の装置と、文
字データ資源を持つ1台以上の装置が、ネットワークに
より接続されたシステムで使用され、文字出力動作を行
う装置については、出力すべき文字の文字種、文字修飾
指定、文字サイズ指定、文字コード指定によって記述さ
れる文字の形状を表すデータが、指定された特定のメモ
リ領域(以下ローカルフォントキャッシュと書く)に存
在することを検索する手段と、この検索により該当する
文字のデータが有った場合、文字出力要求を発生した処
理に文字データを渡す手段と、この検索により該当する
文字が無かった場合、ネットワーク上の予め定めた文字
データ資源を持つ装置(以下フォントサーバと書く)に
対し、文字の文字種、文字修飾指定、文字サイズ指定、
文字コード指定によって記述される文字の形状を表す画
素のデータを転送するよう促す要求メッセージを転送
し、応答として得られる文字のデータを受け取る手段を
持ち、応答として得られた文字のデータは、ローカルフ
ォントキャッシュに登録を試み、ローカルフォントキャ
ッシュに空き領域がない場合は、不要となった文字デー
タを取り出し、空き領域を作り登録し、一方、不要とし
て取り出した文字データは、フォントサーバに対し、同
装置上の予め指定した特定のメモリ領域(以下グローバ
ルフォントキャッシュと書く)に登録するよう促す要求
メッセージを付加し、転送する手段を持つ構成であり、
ネットワーク上のフォントサーバについては、ネットワ
ーク上の他の装置より、文字種、文字修飾指定、文字サ
イズ指定、文字コード指定によって記述される文字の、
文字取得要求を受信する手段と、この手段により受信さ
れた文字について、形状を表すデータが、指定された特
定のメモリ領域に存在することを検索する手段と、この
検索により該当する文字のデータが有った場合、このデ
ータを読み取り、文字出力要求を発生した情報機器に渡
す手段と、前記検索により該当する文字が無かった場
合、指定された文字の形状を表す画素データを、アウト
ラインフォントデータより演算処理により発生し、前記
の文字取得要求を発生した装置に、この画素データを、
送信する手段を持ち、また、ネットワーク上の他の装置
から文字データの登録を要求するメッセージを受信した
場合は、グローバルフォントキャッシュへ登録を試み、
空き領域が得られない場合、不要となった文字データを
削除し、空き領域を作り前記登録を行なう手段を持つ構
成からなることを特徴とする。In order to solve the above problems, the present invention provides a system in which a plurality of devices for performing character output operation and one or more devices having character data resources are connected by a network. For devices that perform character output operations, the data that represents the character type of the character to be output, the character modification specification, the character size specification, and the character shape described by the character code specification is the specified memory area. (Hereinafter referred to as "local font cache"), a means to search for the existence, and a means for passing the character data to the process that generated the character output request if there is data for the character by this search, and this search If there is no corresponding character, the character of the character is sent to the device (hereinafter referred to as font server) that has a predetermined character data resource on the network. , Character modification specified, the character size specified,
It has a means for transmitting a request message prompting to transfer the pixel data representing the shape of the character described by the character code specification, and receiving the character data obtained as a response. The character data obtained as a response is the local data. If you try to register in the font cache and there is no free space in the local font cache, take out the unnecessary character data, create a free space, and register it. A configuration is provided that has a means for adding a request message prompting registration to a specific memory area specified in advance on the device (hereinafter referred to as a global font cache), and transferring it.
Regarding the font server on the network, the characters described by the character type, character modification specification, character size specification, and character code specification from other devices on the network,
The means for receiving the character acquisition request, the means for searching for the data representing the shape of the character received by this means in the specified specific memory area, and the data for the corresponding character by this search If there is, the means for reading this data and passing it to the information device that issued the character output request, and if there is no corresponding character by the search, the pixel data representing the shape of the specified character is extracted from the outline font data. This pixel data is generated by the arithmetic processing and is sent to the device that generated the character acquisition request.
If you have a means to send, and if you receive a message requesting registration of character data from another device on the network, try to register in the global font cache,
When the empty area cannot be obtained, it is characterized in that it has means for deleting the unnecessary character data, creating an empty area, and performing the registration.
【0011】[0011]
【実施例】図1はこの発明の一実施例のブロック構成図
である。ネットワーク3は複数の装置間の双方向の高速
な通信を確立する機構である。ネットワーク3に接続さ
れる複数の装置は、それぞれ固有のネットワーク・アド
レスを持つ。装置間の通信は、送信側装置、受信側装置
それぞれのネットワーク・アドレスを含むデータ列の転
送により行われる。通常このデータ列はパケットと呼ば
れる。各装置は、パッケット内のデータ列中の、転送先
アドレスが自己のアドレスであった場合、パケットを取
得する。また、パケット内のデータ列から、パケットを
発信した装置のアドレスを取り出し、応答をそのアドレ
スの装置あてに返信する。これら機構の実現例として
は、IEEE標準802などが広く使用されている。FIG. 1 is a block diagram of an embodiment of the present invention. The network 3 is a mechanism for establishing bidirectional high-speed communication between a plurality of devices. Each of the plurality of devices connected to the network 3 has a unique network address. Communication between the devices is performed by transferring a data string including network addresses of the transmitting device and the receiving device. This data string is usually called a packet. Each device acquires a packet when the transfer destination address in the data string in the packet is its own address. Also, the address of the device that transmitted the packet is extracted from the data string in the packet, and a response is sent back to the device at that address. As a realization example of these mechanisms, IEEE standard 802 is widely used.
【0012】図1の構成では、ネットワーク3に、装置
1及び装置2が接続されている。言うまでもなく実際に
は更に多くの装置がネットワーク3に接続され使用され
る。ここで、装置1は、文字出力を要求するコンピュー
タであり、装置2はフォントサーバである。In the configuration of FIG. 1, the device 1 and the device 2 are connected to the network 3. Needless to say, more devices are actually connected to the network 3 and used. Here, the device 1 is a computer that requests character output, and the device 2 is a font server.
【0013】(a)文字出力要求側の動作の概要 まず、文字出力を要求するコンピュータ1について、そ
の動作の概要を説明する。(A) Outline of Operation on Character Output Requesting Side First, an outline of the operation of the computer 1 which requests character output will be described.
【0014】コンピュータ1では、アプリケーション1
1が使用されている。アプリケーション11が文字の表
示を行う場合、文字は、表示装置の解像度に合わせ生成
された画素の集合として表現される。文字形状を表す画
素の集合を以下、文字のイメージデータと書く。表示に
使用する文字のイメージデータは、コンピュータ1が用
意するアプリケーションインターフェースによって、ア
プリケーション11に供給される。フォント管理機構1
2はアプリケーションインターフェースの一部であり、
アプリケーション11から文字指定レコードを受け取
り、文字のイメージデータを11に返す動作を行う。こ
こで、文字指定レコードは以下の要素からなるデータ構
造である。In the computer 1, the application 1
1 is used. When the application 11 displays a character, the character is represented as a set of pixels generated according to the resolution of the display device. Hereinafter, a set of pixels representing a character shape will be referred to as character image data. Image data of characters used for display is supplied to the application 11 by an application interface prepared by the computer 1. Font management mechanism 1
2 is part of the application interface,
The operation of receiving the character designation record from the application 11 and returning the image data of the character to 11 is performed. Here, the character designation record has a data structure including the following elements.
【0015】 データ構造の名称: 文字指定レコード 要素1: 文字コード 2バイト 要素2: 書体指定 2バイト 要素3: 文字サイズ指定 2バイト 要素4: 文字修飾指定 6バイト 但し、書体は、ある文字について、複数の文字デザイン
が行われた場合、文字形状の差を特定する上で使用され
る呼称である。上記データ構造では、この呼称に数値を
割り当てて使用する。また、文字修飾指定は、文字書体
によらず、対象の文字の形状を、斜体文字、白抜き文字
などの操作対象とする指定であり、書体と同様に、上記
データ構造で使用する場合の内部表現は数値化されてい
る。Name of data structure: Character specification record Element 1: Character code 2 bytes Element 2: Font specification 2 bytes Element 3: Character size specification 2 bytes Element 4: Character modification specification 6 bytes However, for a certain character, When a plurality of character designs are made, it is a name used to specify the difference in character shape. In the above data structure, a numerical value is assigned to this name for use. In addition, the character modification designation is a designation that the shape of the target character is the operation target such as italicized characters and white characters, regardless of the character typeface. The expressions are digitized.
【0016】フォント管理機構12は、文字指定レコー
ドを受け取り、文字のイメージデータを11に返す動作
において、フォントキャッシュシステム13へアクセス
を行う。この動作の説明は後述する。The font management mechanism 12 receives the character designation record and accesses the font cache system 13 in the operation of returning the image data of the character to 11. This operation will be described later.
【0017】(b)文字イメージデータ供給側の動作の
概要 フォントサーバ2について、その動作の概要を図1の構
成図を用いて説明する。(B) Outline of Operation on Character Image Data Supply Side The outline of the operation of the font server 2 will be described with reference to the block diagram of FIG.
【0018】フォントサーバ2に対しネットワーク3に
接続された他の装置は、文字のイメージデータの転送を
要求するパケットを渡す。この要求を受信したフォント
サーバ2は、フォント管理機構16に要求を伝達する。
フォント管理機構16は、要求のデータ列から、文字指
定レコードを取り出し、後述の手段により指定に一致す
る文字のイメージデータがフォントキャシュシステム1
5に存在するか調べる。存在する場合、文字指定レコー
ドをキーに変換しキー指定によりイメージデータを取得
し、要求を発生した装置に転送する。データが存在しな
い場合、フォント発生機構17にフォント発生を要求す
る。これを受けたフォント発生機構17は、フォントデ
ータ読み出し機構18を使用し、補助記憶装置19か
ら、フォント元データを読み出す。読み出されたフォン
ト元データは、アウトラインフォントとしてフォントを
記述したものである。フォント発生機構17は、このデ
ータに基づき、文字毎にイメージデータを生成する。生
成されたイメージデータは、フォント管理機構16に送
られ、要求を発生した装置に転送される。The other device connected to the network 3 sends to the font server 2 a packet requesting the transfer of character image data. Upon receiving this request, the font server 2 transfers the request to the font management mechanism 16.
The font management mechanism 16 extracts a character designation record from the requested data string, and the image data of the character matching the designation is obtained by the means described later by the font cache system 1.
Check if it exists in 5. If it exists, the character designated record is converted into a key, the image data is obtained by the key designation, and the image data is transferred to the device which issued the request. If the data does not exist, the font generation mechanism 17 is requested to generate the font. Upon receiving this, the font generating mechanism 17 uses the font data reading mechanism 18 to read the font original data from the auxiliary storage device 19. The read font original data describes the font as an outline font. The font generation mechanism 17 generates image data for each character based on this data. The generated image data is sent to the font management mechanism 16 and transferred to the device that has made the request.
【0019】(c)フォント管理動作 以下に、ネットワーク上のフォントサーバと、要求発生
を行う装置の関連からみた、フォント管理動作の説明を
行う。(C) Font Management Operation The font management operation will be described below in terms of the relationship between the font server on the network and the device that issues the request.
【0020】フォント管理機構が使用するフォントキャ
ッシュメモリ管理方法として、いくつか公知の方法が存
在する。基本的にキャッシュメモリは、有限長のメモリ
割り当てであり、新たに文字のイメージデータを登録し
ようとし、メモリの空きスペースが確保できない場合
は、現在の登録を更新する。すなわち、キャッシュ領域
から、不要なデータ(ここではどれかの文字のイメージ
データ)を削除し、新規のデータを登録する。管理方法
として重要なのは、必要なデータを残し、不要なデータ
を削除することである。しかし、将来どのような文字デ
ータに対する要求が発生するかを予測する理想的な方法
が無いため、何らかの基準に従い不要なデータを決める
ことになる。この決定が適切であれば、要求文字のデー
タが、キャッシュ領域に存在する確率(ヒット率)が向
上し、処理速度の向上につながる。不要なデータを決め
る代表的な管理方法は以下の4つである。As a font cache memory management method used by the font management mechanism, there are some known methods. Basically, the cache memory is a finite length memory allocation, and when new image data of a character is to be registered and the free space of the memory cannot be secured, the current registration is updated. That is, unnecessary data (image data of any character here) is deleted from the cache area, and new data is registered. The important management method is to retain the necessary data and delete unnecessary data. However, since there is no ideal method for predicting what kind of character data will be requested in the future, unnecessary data will be determined according to some standard. If this determination is appropriate, the probability that the requested character data will exist in the cache area (hit rate) will improve, leading to an improvement in processing speed. There are the following four typical management methods for determining unnecessary data.
【0021】方法1:現在のデータ群の中で、最も初期
に登録されたデータが不要と判断される。いわゆるFirs
t In First Out(FIFO)の方法。Method 1: It is determined that the earliest registered data in the current data group is unnecessary. So-called Firs
t In First Out (FIFO) method.
【0022】方法2:現在のデータ群の中で、最も長い
期間使用されなかったデータが不要と判断される。いわ
ゆるLeast Recently Used(LRU)の方法。Method 2: In the current data group, the data that has not been used for the longest period is judged to be unnecessary. The so-called Least Recently Used (LRU) method.
【0023】方法3:現在のデータ群の中で、最も長い
期間使用されなかったデータはむしろ次に使用され、最
近使用されたデータが不要と判断される方法。Method 3: A method in which the data that has not been used for the longest period in the current data group is rather used next, and the recently used data is determined to be unnecessary.
【0024】方法4:現在のデータ群の中で、最も使用
頻度の低いデータが不要と判断される。いわゆるLeast
Frequently Used(LFU)の方法。Method 4: It is judged that the least frequently used data in the current data group is unnecessary. So-called Least
Frequently Used (LFU) method.
【0025】従来方法の内、例えば特開昭64−886
60”フォントキャッシュ制御方式”は方法1に対し方
法3の改善を行った方法を用いている。また特開平2−
202464”印刷装置”は方法1を用いている。Among the conventional methods, for example, Japanese Patent Laid-Open No. 64-886.
The 60 "font cache control method" uses a method obtained by improving the method 3 with respect to the method 1. In addition, JP-A-2-
202464 "Printer" uses Method 1.
【0026】これら管理方式は、単一のフォント管理機
構に対し、単一のフォントキャッシュメモリを使用する
構成に対し発明された方法である。(より正確に言え
ば、仮想記憶方式でのメモリページ割り当てに関し発明
された方法を、フォントキャッシュの管理に転用しただ
けである。)従って本実施例の様に、コンピュータ1の
フォントキャッシュシステム13と、フォントサーバ2
のフォントキャッシュシステム15が多重に存在する場
合、最適なアルゴリズムとは言えない。既に述べた様に
本発明においては、フォントサーバ側のフォントキャッ
シュと、各クライアントマシンのフォントキャッシュの
内容を、不一致に保つ操作を行なう。These management schemes are methods invented for configurations that use a single font cache memory for a single font management mechanism. (To be more precise, the method invented with regard to memory page allocation in the virtual memory system is simply diverted to the management of the font cache.) Therefore, as in this embodiment, the font cache system 13 of the computer 1 is used. , Font server 2
If there are multiple font cache systems 15 of, the algorithm cannot be said to be optimal. As described above, in the present invention, the contents of the font cache on the font server side and the contents of the font cache of each client machine are kept inconsistent.
【0027】また、本実施例は、キャッシュの局所的な
管理においてはLeast Recently Used(LRU)の方法を用い
る。In this embodiment, the Least Recently Used (LRU) method is used for local management of the cache.
【0028】(d)フォントキャッシュ管理方法 フォントキャシュ管理方法について説明する。(D) Font cache management method The font cache management method will be described.
【0029】(d1)フォントキャッシュシステム 図2はフォントキャッシュシステム13の構成図であ
る。フォントキャッシュシステム15の構成も図2と同
様である。但し既に述べた様に、フォントサーバ2にお
いては管理方法が異なるため、別の番号により区別し
た。(D1) Font Cache System FIG. 2 is a block diagram of the font cache system 13. The configuration of the font cache system 15 is similar to that shown in FIG. However, as described above, since the font server 2 has a different management method, it is distinguished by a different number.
【0030】フォントキャッシュシステム13の主たる
構成要素はキャッシュメモリ205及びキャッシュ割り
当て処理207である。キャッシュメモリ205は有限
長の連続なアドレス配置を持つメモリである。内部は1
28バイトの大きさの管理単位メモリ201の集合であ
る。管理単位メモリ201は、大きさ126バイトのデ
ータ部204と、大きさ2バイトの指標部203からな
る。指標部203の内容は、次に続くべき管理単位メモ
リへの指標である。管理単位メモリ201は大きさ固定
であるため、指標の値から、実アドレスの値は簡単な演
算により求めることができる。すなわち指標の値をixと
したとき、次に続くべき管理単位メモリ201の先頭番
地は、次式の値addrとして得られる。The main components of the font cache system 13 are a cache memory 205 and a cache allocation process 207. The cache memory 205 is a memory having a continuous address arrangement of finite length. Inside is 1
It is a set of management unit memories 201 having a size of 28 bytes. The management unit memory 201 includes a data part 204 having a size of 126 bytes and an index part 203 having a size of 2 bytes. The content of the index unit 203 is an index to the management unit memory that should be continued next. Since the size of the management unit memory 201 is fixed, the value of the real address can be obtained from the index value by a simple calculation. That is, when the index value is ix, the head address of the management unit memory 201 that should be continued next is obtained as the value addr of the following equation.
【0031】 addr = ix × 128 + メモリ205先頭番地 言うまでも無く、値128は管理単位メモリの大きさから
くるもので、この演算は実アドレスへの変換の一例に過
ぎない。管理単位メモリ210の指標部203は、いわ
ゆる連結ポインタの変形の一つである。Needless to say, the value 128 comes from the size of the management unit memory, and this operation is only an example of conversion into a real address. The index unit 203 of the management unit memory 210 is one of the variants of so-called concatenated pointers.
【0032】一方、実際の文字のイメージデータは、管
理単位メモリ201のデータ部204を副数個使用し格
納される。格納されるデータの内容は、最初の2バイト
が使用する管理単位メモリ201の個数であり、これに
続くデータがイメージデータである。また全てのイメー
ジデータはランレングス圧縮されたデータ列からなる。On the other hand, actual character image data is stored by using a sub-number of data units 204 of the management unit memory 201. The content of the stored data is the number of management unit memories 201 used by the first 2 bytes, and the data following this is image data. Further, all the image data consist of a run-length compressed data string.
【0033】周知の様に、メモリ管理手法としては、可
変長のデータ列を、連続したメモリ上に動的に配置する
方法が有る。この方法を使用すると、キャッシュへの登
録・削除を繰り返した後に、不要となったデータ列によ
る、複数個の、大きさの一定でない空き領域が生じる。
このような不要となった断片化したメモリ資源を再配置
し、大きな連続した空き領域を再度作り出すためには、
メモリのブロック移動を含む実行時間のかかる処理を行
う必要が有る。これに対し、本実施例の採用した、固定
長の管理単位メモリを複数利用する手段は、最終端の管
理単位メモリに未使用部分が生じ、メモリ利用率の点で
動的メモリ管理に劣るものである。しかし、管理が単純
であることから、容易にハードウェア化できる他、ソフ
トウェアで管理プログラムを実行しても高速処理ができ
る点で優れている。As is well known, as a memory management method, there is a method of dynamically arranging a variable length data string on a continuous memory. When this method is used, after repeated registration / deletion to / from the cache, a plurality of empty areas having irregular sizes due to unnecessary data strings occur.
In order to reallocate such unnecessary fragmented memory resources and recreate a large continuous free area,
It is necessary to perform processing that takes a long time to execute, including memory block movement. On the other hand, the means for using a plurality of fixed-length management unit memories adopted in the present embodiment is inferior to the dynamic memory management in terms of memory utilization rate because an unused portion occurs in the last-end management unit memory. Is. However, since the management is simple, it can be easily implemented as hardware, and even if the management program is executed by software, high speed processing is excellent.
【0034】次に、キャッシュ割り当て処理207につ
いて説明する。Next, the cache allocation processing 207 will be described.
【0035】キャッシュに登録された文字については、
そのイメージデータは、キャッシュメモリ205内のど
れかの管理単位メモリ201を先頭に複数個の管理単位
メモリ201に分割され格納される。このとき先頭とな
る管理単位メモリ201について、その指標がアドレス
テーブル208に格納され使用される。本実施例におい
てはアドレステーブル208は300個の要素からなる
配列である。また一つの要素はキーの値209および指
標の値210の二つのデータ型からなる。キャッシュメ
モリ205は約128kバイトの大きさを持ち、先に述
べた管理単位メモリ201の1024個の集合である。
この集合の予め指定された300個は、その指標がアド
レス管理テーブル208の各要素に格納されている。こ
こで、アドレス管理テーブル208に記録される300
個の管理単位メモリは、キャッシュメモリ205の先頭
から連続に300個指定しても構わない。アドレス管理
テーブルの内容は、固定されており、動作中に変更され
ない。Regarding the characters registered in the cache,
The image data is divided and stored in a plurality of management unit memories 201 starting from any management unit memory 201 in the cache memory 205. At this time, the index of the first management unit memory 201 is stored in the address table 208 and used. In this embodiment, the address table 208 is an array composed of 300 elements. Also, one element is made up of two data types, a key value 209 and an index value 210. The cache memory 205 has a size of about 128 kbytes and is a set of 1024 management unit memories 201 described above.
The index of 300 designated in advance in this set is stored in each element of the address management table 208. Here, 300 recorded in the address management table 208
300 management unit memories may be continuously specified from the beginning of the cache memory 205. The contents of the address management table are fixed and do not change during operation.
【0036】本実施例では、300文字までがフォント
キャッシュに登録可能であり、この場合、1文字あたり
のイメージデータは平均430バイトである。In this embodiment, up to 300 characters can be registered in the font cache, and in this case, the image data per character is 430 bytes on average.
【0037】キャッシュ割り当て処理207は、本実施
例において処理プログラムとして実現される。図7は、
キャッシュ割り当て処理207について、その構成を示
したものである。キャッシュ割り当て処理207は、次
の3つの動作をする。The cache allocation processing 207 is realized as a processing program in this embodiment. Figure 7
The configuration of the cache allocation processing 207 is shown. The cache allocation process 207 performs the following three operations.
【0038】(1) 外部よりキー212の値を受け取
り、イメージデータ206を返す動作(読み出し処理7
01)。(1) Operation of receiving the value of the key 212 from the outside and returning the image data 206 (reading process 7
01).
【0039】(2) 外部よりキー212の値及びイメー
ジデータ206を受け取り、フォントキャッシュへの登
録を行なう動作(書き込み処理702)。(2) An operation of receiving the value of the key 212 and the image data 206 from the outside and registering them in the font cache (writing process 702).
【0040】(3) 外部よりキー212の値を受け取
り、フォントキャッシュから登録を削除する動作(連結
解消処理703)。(3) An operation of receiving the value of the key 212 from the outside and deleting the registration from the font cache (connection cancellation processing 703).
【0041】いずれの場合も、キャッシュ割り当て処理
207は、キー212の値からアドレステーブル208
を参照し、テーブル内のキー値209に対応する目的の
指標の値210を取り出し、実アドレス演算部704に
て実アドレスに変換し、メモリを指し示すポインタ21
1を発生する。このポインタ211を使用し、後述する
方法で順次キャッシュメモリ205のアドレスバスの内
容を指定し、データバス706からイメージデータ20
6の取り出し、あるいは書き込みが行なわれる。各処理
の動作を、以下に説明する。In any case, the cache allocation processing 207 determines the address table 208 from the value of the key 212.
, A target index value 210 corresponding to the key value 209 in the table is extracted, converted into a real address by the real address calculation unit 704, and a pointer 21 pointing to the memory
1 is generated. The pointer 211 is used to sequentially specify the contents of the address bus of the cache memory 205 by a method described later, and the image data 20 is transferred from the data bus 706.
6 is taken out or written. The operation of each process will be described below.
【0042】(d1−1)データの読み出し データ読み出しに際し、キャッシュ割り当て処理207
は、受け取ったキーを引数として読み出し処理701を
呼び出す。読み出し処理701の流れ図を図10に示
す。読み出し処理701はキーを取り出し(S101)
アドレス演算部704の発生(S102)したポインタ
211に従い(S103)、キャッシュメモリ205内
の、文字のイメージデータ格納の先頭を見つけ(S10
4)、以下連結した管理単位メモリ201への指標に従
い文字のイメージデータ206を次々に読み出す(S1
05)。既に述べた様に、格納されるデータの内容は、
最初の2バイトが使用する管理単位メモリ201の個数
であるため、必要な個数の管理単位メモリ201を連結
することができる。また、一連の連結の最終に位置する
管理単位メモリ201の指標部203の内容は−1(1
6進数でFFFF)である。(D1-1) Reading of data Cache allocation processing 207 at the time of reading data
Calls the read processing 701 using the received key as an argument. A flow chart of the read process 701 is shown in FIG. The reading process 701 takes out the key (S101).
According to the pointer 211 generated by the address calculation unit 704 (S102) (S103), the head of the character image data storage in the cache memory 205 is found (S10).
4) The character image data 206 is successively read according to the index to the connected management unit memory 201 (S1).
05). As already mentioned, the contents of the stored data are
Since the first 2 bytes are the number of management unit memories 201 to be used, a required number of management unit memories 201 can be connected. Further, the content of the index portion 203 of the management unit memory 201 located at the end of the series of connections is -1 (1
Hexadecimal number FFFF).
【0043】(d1−2)フォントキャッシュからの登
録の削除 データの削除された管理単位メモリ201、あるいはデ
ータの空白な管理単位メモリ201は、指標部203の
値が0000であることによって他の管理単位メモリ201
から区別される。イメージデータの削除に際し、フォン
ト管理機構16は削除すべき文字データに対応するキー
212をフォントキャッシュシステム13に渡す。フォ
ントキャッシュシステム13側処理では、このキー21
2がキャッシュ割り当て処理207に伝達される。キャ
ッシュ割り当て処理207は、連結解消処理703を呼
び出す。連結解消処理703の流れ図を図11に示す。
連結解消処理703は、さらにアドレス演算部704の
呼び出しを行なう(S201)。アドレス演算部704
は、キー値209からアドレステーブル208を検索
し、削除対象となる文字データの記録されている最初の
管理単位メモリ201の指標の値210を取り出す。次
に、この指標の値を、演算により実アドレスに変換し、
メモリを指し示すポインタ211を発生する(S20
2)。以下、連結解消処理703は、このポインタが示
す管理単位メモリ201の指標部203から次の管理単
位メモリ201の先頭番地の実アドレスを計算し、後に
続く指標部203の内容を次々に0000で置き換える(S
204)。この操作を管理単位メモリ201の連結が続
く限り、指標部203の内容が(16進数で)FFFFであ
る管理単位メモリ201に至るまで繰り返す。このあ
と、連結の最終の管理単位メモリ201の指標部203
の内容を、(16進数で)FFFFから0000に書き換える
(S205)。(D1-2) Deletion of registration from font cache The management unit memory 201 from which data has been deleted or the management unit memory 201 with blank data has another value because the value of the index portion 203 is 0000. Unit memory 201
Distinguished from. When deleting the image data, the font management mechanism 16 passes the key 212 corresponding to the character data to be deleted to the font cache system 13. In the font cache system 13 side processing, this key 21
2 is transmitted to the cache allocation processing 207. The cache allocation processing 207 calls the connection cancellation processing 703. A flow chart of the connection cancellation processing 703 is shown in FIG.
The connection release processing 703 further calls the address calculation unit 704 (S201). Address calculation unit 704
Searches the address table 208 from the key value 209, and extracts the index value 210 of the first management unit memory 201 in which the character data to be deleted is recorded. Next, the value of this index is converted to a real address by calculation,
A pointer 211 pointing to the memory is generated (S20
2). Thereafter, the connection cancellation processing 703 calculates the real address of the head address of the next management unit memory 201 from the index unit 203 of the management unit memory 201 indicated by this pointer, and replaces the contents of the index unit 203 following it with 0000 one after another. (S
204). This operation is repeated as long as the management unit memory 201 continues to be connected until the content of the index portion 203 reaches the management unit memory 201 (hexadecimal number) FFFF. After this, the index unit 203 of the final management unit memory 201 for connection
Is rewritten from FFFF (in hexadecimal notation) to 0000 (S205).
【0044】(d1−3)フォントキャッシュへのデー
タの登録 フォントキャッシュへのデータの登録を行なう場合は、
キー212と、イメージデータ206が渡され、キャッ
シュ割り当て処理207によって呼び出された書き込み
処理702が実行される。書き込み処理702の流れ図
を図12に示す。書き込み処理702は、キー212か
らキーの値を取り出し(S301)、アドレステーブル
208のキーの値209を指定することで、指標の値2
10を読み取る。この指標の値210をアドレス演算部
704で(S302)、イメージデータ書き込みに使用
可能な最初の管理単位メモリ201の先頭アドレスへの
ポインタに変換する(S303)。次に、書き込み処理
702は、この管理単位メモリ201にイメージデータ
の全データサイズを”管理単位メモリのサイズ−2”で
割った整数値(2バイト)の内容を書き込む(S30
4)。これはデータ格納に必要な管理単位メモリ201
の総数に一致する。次に、この2バイトのデータに連続
して、データ部204の大きさに至るまでのイメージデ
ータを書き込む(S305)。もし更に、イメージデー
タの残りバイト数があれば、書き込み処理はこのデータ
をまずあふれ領域213に書き込み(S306)、キャ
ッシュメモリ205内部で、未使用の管理単位メモリ2
01を捜す(S307)。もし未使用の管理単位メモリ
201が発見できれば、あふれ領域213から、126
バイト(これは、管理単位メモリ201のデータ部20
4のサイズである)のデータが取り出され書き込まれる
(S305)。さらに、先にアクセスした管理単位メモ
リ201の指標部203に、現在の管理単位メモリ20
1への指標を書き込み、新たな結合を生成する(S30
8)。これを、あふれ領域213の内容が空になるか、
未使用の管理単位メモリ201が無くなるまで繰り返
す。あふれ領域213の残りデータが無くなった場合、
書き込み処理は正常終了する。この場合、最後に使用し
た管理単位メモリ201の指標部203の内容を、結合
終了を示す値FFFFに書き換え、結合の終端を生成する
(S309)。(D1-3) Registering data in the font cache When registering data in the font cache,
The key 212 and the image data 206 are passed, and the writing process 702 called by the cache allocation process 207 is executed. A flow chart of the write process 702 is shown in FIG. In the writing process 702, the value of the index is set to 2 by extracting the key value from the key 212 (S301) and designating the key value 209 of the address table 208.
Read 10. The address calculation unit 704 converts the index value 210 (S302) into a pointer to the start address of the first management unit memory 201 that can be used for writing image data (S303). Next, the write processing 702 writes the content of an integer value (2 bytes) obtained by dividing the total data size of the image data by "management unit memory size-2" in this management unit memory 201 (S30).
4). This is the management unit memory 201 required for data storage.
Match the total number of. Next, image data up to the size of the data section 204 is written in succession to the 2-byte data (S305). Further, if there is the number of remaining bytes of the image data, the writing process first writes this data in the overflow area 213 (S306), and the unused management unit memory 2 in the cache memory 205.
Search for 01 (S307). If an unused management unit memory 201 can be found, 126 can be retrieved from the overflow area 213.
Byte (this is the data unit 20 of the management unit memory 201)
Data of size 4) is extracted and written (S305). Furthermore, the index unit 203 of the previously accessed management unit memory 201 is set to the current management unit memory 20.
The index to 1 is written and a new bond is generated (S30).
8). If the contents of the overflow area 213 becomes empty,
Repeat until the unused management unit memory 201 is exhausted. When there is no remaining data in the overflow area 213,
The writing process ends normally. In this case, the contents of the index portion 203 of the last-used management unit memory 201 are rewritten to the value FFFF indicating the end of the connection to generate the end of the connection (S309).
【0045】一方、未使用の管理単位メモリ201が必
要な数だけ検出できず、あふれ領域213にイメージデ
ータが残っている場合は、書き込み処理702は、呼び
出し側であるキャッシュ割り当て処理207に対し、書
き込みエラーを返し(S310)処理を中止する。この
場合、不要な文字のデータをフォントキャッシュメモリ
205から取り除き、空き領域を広げ、再度書き込み処
理702を呼び出す必要があるが、この処理は、フォン
ト管理機構12において判断、実行される。処理の従属
関係は、フォント管理機構12の登録処理602が、キ
ャッシュ割り当て処理207を呼び出し、更にキャッシ
ュ割り当て処理207が、書き込み処理702を呼び出
す関係である。On the other hand, when the required number of unused management unit memories 201 cannot be detected and the image data remains in the overflow area 213, the writing process 702 instructs the calling cache allocation process 207 to A write error is returned (S310) and the process is stopped. In this case, it is necessary to remove unnecessary character data from the font cache memory 205, expand the free area, and call the write processing 702 again. This processing is determined and executed by the font management mechanism 12. The processing subordination relationship is a relationship in which the registration processing 602 of the font management mechanism 12 calls the cache allocation processing 207, and the cache allocation processing 207 further calls the writing processing 702.
【0046】あふれ領域213は、1文字のデータには
充分大きな容量を持つ連続したアドレスのメモリ領域で
あるが、もしあふれ領域213に入りきらない大きさの
文字のイメージデータが渡された場合は、書き込み処理
702はあふれ領域エラーを返し(S311)処理を中
止する。この場合、この文字のイメージデータはフォン
トキャッシュに登録されない。なぜなら、特に大きなイ
メージデータを持つ文字は、発生頻度が極めて低いた
め、キャッシュに登録しても、システムの処理速度改善
に寄与しないためである。The overflow area 213 is a memory area of consecutive addresses having a sufficiently large capacity for one character data. However, if image data of a character of a size that does not fit in the overflow area 213 is passed, The writing process 702 returns an overflow area error (S311) and stops the process. In this case, the image data of this character is not registered in the font cache. This is because the characters having particularly large image data have an extremely low occurrence frequency, and even if they are registered in the cache, they do not contribute to the improvement of the processing speed of the system.
【0047】(d2)フォントサーバ側のフォント管理
機構 図8はフォントサーバ側のフォント管理機構16の構成
図である。(D2) Font management mechanism on the font server side FIG. 8 is a block diagram of the font management mechanism 16 on the font server side.
【0048】フォント管理機構16は、要求側コンピュ
ータ1から、ネットワークドライバ14を介し、文字取
り出し要求22、文字登録要求21のどちらかを受け取
る。既に述べた様に、ネットワークでのデータの送信、
受信はネットワークの仕様に従ったパケットで行なわれ
る。フォントサーバ2側は、受け取ったパケットのデー
タ列から、送信側コンピュータのネットワーク・アドレ
スを取り出し、要求を発生したコンピュータ1を特定す
ることができる。The font management mechanism 16 receives either the character fetch request 22 or the character registration request 21 from the requesting computer 1 via the network driver 14. As already mentioned, sending data over the network,
Reception is performed in packets according to network specifications. The font server 2 side can extract the network address of the sending computer from the data string of the received packet and specify the computer 1 that issued the request.
【0049】フォントサーバ2側は、文字取り出し要求
22と文字指定レコード20を受け取った場合、文字指
定レコード20の内容に従い、文字のイメージデータ2
06を発生し、要求を発生したコンピュータ1に渡す。When the font server 2 side receives the character fetch request 22 and the character designation record 20, the character image data 2 is read according to the contents of the character designation record 20.
06 is generated, and the request is given to the computer 1.
【0050】文字登録要求21、文字指定レコード2
0、文字のイメージデータ206を受け取った場合は、
文字指定レコード20の内容をフォント管理テーブル8
05に書き込み、文字のイメージデータ206をフォン
トキャッシュシステム15に登録する。Character registration request 21, character designation record 2
If you receive 0, character image data 206,
The contents of the character designation record 20 are stored in the font management table 8
05, and the character image data 206 is registered in the font cache system 15.
【0051】以下、それぞれの動作を説明する。また、
フォント管理テーブル805の一つの要素の構成を図9
に示す。フォント管理テーブルのキー808の内容は、
初期状態において、フォントキャッシュシステム15の
アドレステーブル208のキーの内容209と一致する
様に設定され、その後変更されない。Each operation will be described below. Also,
The configuration of one element of the font management table 805 is shown in FIG.
Shown in. The contents of the key 808 of the font management table are
In the initial state, it is set so as to match the key content 209 of the address table 208 of the font cache system 15, and is not changed thereafter.
【0052】(d2−1)文字取り出し要求22を受信
した場合の動作 文字取り出し要求22を受け取ったフォント管理機構1
6は、読み出し処理801を起動する。読み出し処理8
01の流れ図を図13に示す。読み出し処理801は、
テーブル検索処理804を呼び出し(S401)、文字
指定レコード20の内容と同一の要素が、フォント管理
テーブル805に登録されているか検索する。(D2-1) Operation when character fetch request 22 is received Font management mechanism 1 that receives character fetch request 22
6 starts the reading process 801. Read process 8
A flow chart of 01 is shown in FIG. The read processing 801 is
The table search process 804 is called (S401), and it is searched whether the same element as the content of the character designation record 20 is registered in the font management table 805.
【0053】まず同一の要素が検出された場合について
書く。First, the case where the same element is detected will be described.
【0054】この場合は、アクセスカウンタ809を+
1する(S402)。アクセスカウンタ809は48ビ
ット長のカウンタで、システム立ち上げ時にクリアさ
れ、以降クリアされず、フォント管理テーブル805
で、検索対象が検出された場合と、フォント管理テーブ
ル805に新たに登録された要素が有った場合、+1さ
れる。本実施例の使用状態では、オーバーフローは発生
しない。アクセスカウンタ809の値は、検出された要
素に対応した登録フラグ806に記録される(S40
3)。アクセスカウンタ809の値は、登録、読み出し
が行なわれた回数をカウントするため、この数が大きい
程、最近アクセスされた要素であると判断できる。続い
て、検出された要素に対応したキー808が、読み出さ
れる。読み出し処理801は、このキー212をフォン
トキャッシュシステム15に渡し、読み出し処理を指示
し(S404)、処理結果として文字のイメージデータ
206を得る。フォント管理機構16は、このイメージ
データ206を、ネットワークドライバ14を介して、
要求側コンピュータ1に転送し(S405)、処理を終
了する。In this case, the access counter 809 is set to +
1 (S402). The access counter 809 is a 48-bit long counter that is cleared when the system is started up and is not cleared thereafter.
Then, when the search target is detected and when there is a newly registered element in the font management table 805, the value is incremented by one. In the use state of this embodiment, no overflow occurs. The value of the access counter 809 is recorded in the registration flag 806 corresponding to the detected element (S40).
3). Since the value of the access counter 809 counts the number of times registration and reading are performed, the larger this number, the more recently accessed element can be determined. Then, the key 808 corresponding to the detected element is read. The reading process 801 passes the key 212 to the font cache system 15 to instruct the reading process (S404), and obtains the character image data 206 as a processing result. The font management mechanism 16 transfers the image data 206 to the image data 206 via the network driver 14.
The process is transferred to the requesting computer 1 (S405), and the process is terminated.
【0055】一方、文字指定レコード20で指定された
文字が、フォント管理テーブル805に登録されていな
かった場合の動作について書く。On the other hand, the operation when the character designated by the character designation record 20 is not registered in the font management table 805 will be described.
【0056】この場合、読み出し処理801は、文字指
定レコード20を、フォント発生機構17に渡し(S4
06)、処理結果としてイメージデータ206を取得す
る。以下の処理は、前述同様であり、フォント管理機構
16は、このイメージデータ206を、ネットワークド
ライバ14を介して、要求側コンピュータ1に転送し
(S405)、処理を終了する。In this case, the read processing 801 passes the character designation record 20 to the font generation mechanism 17 (S4
06), the image data 206 is acquired as the processing result. The subsequent processing is the same as that described above. The font management mechanism 16 transfers this image data 206 to the requesting computer 1 via the network driver 14 (S405), and ends the processing.
【0057】(d2−2)文字登録要求21を受信した
場合の動作 文字登録要求21を受信した場合、フォント管理機構1
6は、登録処理802を起動する。登録処理802の流
れ図を図14に示す。登録処理802は、テーブル検索
処理804を呼び出す(S501)。文字指定レコード
に関し検索し、既に同じデータが登録されていれば、処
理はただちに終了する。次に、フォント管理テーブル8
05の登録フラグ806を検索し(S502)、値の最
も小さい要素を取り出す。登録フラグには、登録時ある
いは読み出し時のアクセスカウンタ809が書き込まれ
ているため、この値が小さいとしたら、その登録フラグ
を持つ文字データは、最近使用されていないものと判断
できる。本実施例は、削除する文字の決定に際し、この
登録フラグ806の値の最も小さいものを選ぶ。この判
断方法は前述のLeast Recently Used(LRU)の方法であ
る。読み出した登録フラグ806の値が0であれば、そ
の要素は、今までフォント登録の対象とならなかった
か、あるいは削除されたばかりの要素であると判断す
る。そこで、登録フラグ806の内容を16進数のFFFF
FFFFFFFFに書き換える。これは現在使用中であることを
示す一時的フラグである。続いて、この要素に対応する
キー808の内容を取り出し、キー212とイメージデ
ータ206をフォントキャッシュシステム15に転送
し、書き込み処理を指示する(S503)。処理結果の
戻り値として、フォントキャッシュシステム15から、
あふれ領域エラーが戻された場合は、何も行なわず、登
録処理を終了する。なぜなら(d1−3)で述べた様
に、登録に値しないデータであると判断されるからであ
る。またこの場合、登録処理終了時には、登録フラグ8
06の値を、処理前の値に復元する。(D2-2) Operation when the character registration request 21 is received When the character registration request 21 is received, the font management mechanism 1
6 activates the registration process 802. A flow chart of the registration process 802 is shown in FIG. The registration process 802 calls the table search process 804 (S501). When the character designated record is searched and the same data is already registered, the process ends immediately. Next, font management table 8
The registration flag 806 of 05 is searched (S502), and the element having the smallest value is extracted. Since the access flag 809 at the time of registration or at the time of reading is written in the registration flag, if this value is small, it can be determined that the character data having the registration flag has not been used recently. In this embodiment, when determining the character to be deleted, the character having the smallest value of the registration flag 806 is selected. This determination method is the above-mentioned Least Recently Used (LRU) method. If the value of the read registration flag 806 is 0, it is determined that the element has not been the object of font registration until now, or has just been deleted. Therefore, the contents of the registration flag 806 are set to hexadecimal FFFF.
Rewrite as FFFFFFFF. This is a temporary flag indicating that it is currently in use. Then, the content of the key 808 corresponding to this element is taken out, the key 212 and the image data 206 are transferred to the font cache system 15, and a writing process is instructed (S503). As a return value of the processing result, from the font cache system 15,
If an overflow area error is returned, nothing is done and the registration process ends. This is because, as described in (d1-3), it is determined that the data is not worth registering. Further, in this case, at the end of the registration process, the registration flag 8
The value of 06 is restored to the value before processing.
【0058】処理結果の戻り値として、フォントキャッ
シュシステム15から、書き込みエラーが戻された場合
は、登録処理802は削除処理803を呼び出す(S5
04)。削除処理803は、テーブル検索処理804を
使用し、フォント管理テーブル805の登録フラグ80
6を検索し、値が0以外で最も小さい要素を取り出す。
次にこの要素に対応したキー808の内容を取り出し、
キー212に代入しフォントキャッシュシステム15に
キャッシュからの削除を指示する。削除処理803はこ
の操作で処理を終了し、制御を登録処理802に戻す。
この処理の結果、フォントキャッシュシステム15には
空き領域が生じるため、登録処理802は再び、キー2
12とイメージデータ206をフォントキャッシュシス
テム15に転送し、書き込み処理を指示する。更に、処
理結果の戻り値として、フォントキャッシュシステム1
5から、書き込みエラーが戻された場合は、同様の処理
を繰り返す。あふれ領域エラーが発生しない程度の大き
さのイメージデータであれば、少なくとも何回かの処理
の繰り返しによって、登録が完了する。書き込みが、エ
ラー無く終了した場合は、登録処理終了時にアクセスカ
ウンタ809の内容に+1を行ない(S505)、この
値を登録フラグ806に書き込む(S506)。When a writing error is returned from the font cache system 15 as the return value of the processing result, the registration processing 802 calls the deletion processing 803 (S5).
04). The deletion process 803 uses the table search process 804, and the registration flag 80 of the font management table 805 is used.
6 is retrieved, and the smallest element having a value other than 0 is extracted.
Next, take out the contents of the key 808 corresponding to this element,
The key 212 is substituted and the font cache system 15 is instructed to delete from the cache. The deletion process 803 ends this process, and returns control to the registration process 802.
As a result of this processing, an empty area is generated in the font cache system 15, so that the registration processing 802 again uses the key 2
12 and the image data 206 are transferred to the font cache system 15, and a writing process is instructed. Furthermore, as a return value of the processing result, the font cache system 1
When the write error is returned from 5, the same processing is repeated. If the image data has a size that does not cause an overflow area error, the registration is completed by repeating the processing at least several times. When the writing ends without any error, the contents of the access counter 809 are incremented by 1 at the end of the registration processing (S505), and this value is written in the registration flag 806 (S506).
【0059】フォント管理テーブル805の登録フラグ
806を検索し(S502)、フラグの値の最も小さい
要素を取り出す処理で、フラグの値が0以外であった場
合は、連結解消処理703を呼び出し(S507)、フ
ォントキャッシュシステム15から、文字データを削除
し、書き込み処理をS502から継続する。登録が完了
した場合は、フォント管理機構16は正常終了の処理結
果を戻し、フォントサーバ2は、ネットワークドライバ
14を介し、要求側コンピュータに処理終了のメッセー
ジを返送する。In the process of retrieving the registration flag 806 of the font management table 805 (S502) and extracting the element having the smallest flag value, if the flag value is other than 0, the connection elimination process 703 is called (S507). ), The character data is deleted from the font cache system 15, and the writing process is continued from S502. When the registration is completed, the font management mechanism 16 returns a processing result of normal termination, and the font server 2 returns a processing termination message to the requesting computer via the network driver 14.
【0060】 (d3)文字要求側コンピュータのフォント管理機構 図6は文字要求側コンピュータ(クライアント)のフォ
ント管理機構12の構成図である。(D3) Font Management Mechanism of Character Requesting Computer FIG. 6 is a block diagram of the font management mechanism 12 of the character requesting computer (client).
【0061】アプリケーション11は、文字指定レコー
ド20をフォント管理機構12に渡し、処理結果として
文字のイメージデータ206を受け取る。一方、フォン
ト管理機構12は、フォントキャッシュシステム13に
登録された文字であれば、イメージデータ206をフォ
ントキャッシュシステム13から取り出し、それ以外
は、ネットワークドライバ14を使用して、ネットワー
ク上のフォントサーバからイメージデータ206を取得
する。以下、動作の詳細を説明する。The application 11 passes the character designation record 20 to the font management mechanism 12 and receives character image data 206 as a processing result. On the other hand, the font management mechanism 12 fetches the image data 206 from the font cache system 13 if it is a character registered in the font cache system 13, and otherwise uses the network driver 14 from the font server on the network. The image data 206 is acquired. The details of the operation will be described below.
【0062】フォント管理機構12の主たる構成要素
は、読み出し処理601、登録処理602、削除処理6
03、フォント管理テーブル605である。各処理の動
作は次の通りである。また、フォント管理テーブル60
5の一つの要素の構成を図9に示す。The main components of the font management mechanism 12 are read processing 601, registration processing 602, and deletion processing 6.
03 and a font management table 605. The operation of each process is as follows. Also, the font management table 60
The configuration of one element of No. 5 is shown in FIG.
【0063】(d3−1)削除処理 削除処理603は、登録処理602により呼び出され使
用される。この処理の流れ図を図5に示す。文字出力要
求側のコンピュータ1(すなわちクライアント)のフォ
ント管理機構12において、削除処理603は、フォン
トサーバ2側のフォント管理機構16の削除処理803
と大きく異なる。削除処理603は、テーブル検索処理
604を使用し、フォント管理テーブル605の登録フ
ラグ606を検索し(S601)、値が0以外で最も小
さい要素を取り出す(S602)。次にこの要素に対応
したキー608の内容と、文字指定レコード607の内
容を読み出す(S603)。続いて、まずキー608の
内容をキー212に代入しフォントキャッシュシステム
13にキャッシュからの読み出しを指示し(S60
4)、処理結果としてイメージデータ206を取得する
(S605)。さらに、削除処理603は、文字指定レ
コード607から読み出した内容を、文字指定レコード
20に代入し、フォントキャッシュシステム13から読
み出されたイメージデータ206と合わせ、文字登録要
求21を生成し、ネットワークドライバ14を介し、フ
ォントサーバ2へ送信する(S606)。この後、キー
212を指定し、フォントキャッシュシステム13に削
除を指示する(S607)。(D3-1) Delete Process The delete process 603 is called and used by the registration process 602. A flow chart of this processing is shown in FIG. In the font management mechanism 12 of the computer 1 (that is, the client) on the character output request side, the deletion processing 603 is performed by the deletion processing 803 of the font management mechanism 16 on the font server 2 side.
Is very different from. The deletion process 603 uses the table search process 604 to search the registration flag 606 of the font management table 605 (S601), and takes out the smallest element whose value is other than 0 (S602). Next, the contents of the key 608 corresponding to this element and the contents of the character designation record 607 are read (S603). Subsequently, first, the contents of the key 608 are substituted into the key 212, and the font cache system 13 is instructed to read from the cache (S60
4) The image data 206 is acquired as the processing result (S605). Further, the deletion processing 603 substitutes the content read from the character designation record 607 into the character designation record 20, combines it with the image data 206 read from the font cache system 13, and generates a character registration request 21. It is transmitted to the font server 2 via S14 (S606). After that, the key 212 is designated, and the font cache system 13 is instructed to delete (S607).
【0064】(d3−2)登録処理 登録処理602は、読み出し処理601からイメージデ
ータ206と、文字指定レコード20を引数として呼び
出され使用される。この処理の流れ図を図4に示す。登
録処理602は、テーブル検索処理604を呼び出し
(S701)、フォント管理テーブル605の登録フラ
グ606を検索し、値の最も小さい要素を取り出す(S
702)。このとき、登録フラグ606の値が0であれ
ば、その要素は、今までフォント登録の対象とならなか
ったか、あるいは削除されたばかりの要素であると判断
する。そこで、登録フラグ606の内容を16進数のFF
FFFFFFFFFFに書き換える。これは現在使用中であること
を示す一時的フラグである。続いて、この要素に対応す
るキー608の内容を取り出し、キー212とイメージ
データ206をフォントキャッシュシステム13に転送
し、書き込み処理を指示する(S703)。処理結果の
戻り値として、フォントキャッシュシステム13から、
あふれ領域エラーが戻された場合は、何も行なわず、登
録処理を終了する。この場合、登録処理終了時には、登
録フラグ606の値を、処理前の値に復元する。(D3-2) Registration Process The registration process 602 is called from the reading process 601 and used with the image data 206 and the character designation record 20 as arguments. A flow chart of this processing is shown in FIG. The registration processing 602 calls the table search processing 604 (S701), searches the registration flag 606 of the font management table 605, and extracts the element having the smallest value (S).
702). At this time, if the value of the registration flag 606 is 0, it is determined that the element has not been the object of font registration until now, or has just been deleted. Therefore, the contents of the registration flag 606 are set to hexadecimal FF.
Rewrite as FFFFFFFFFF. This is a temporary flag indicating that it is currently in use. Then, the content of the key 608 corresponding to this element is taken out, the key 212 and the image data 206 are transferred to the font cache system 13, and a writing process is instructed (S703). As a return value of the processing result, from the font cache system 13,
If an overflow area error is returned, nothing is done and the registration process ends. In this case, at the end of the registration process, the value of the registration flag 606 is restored to the value before the process.
【0065】処理結果の戻り値として、フォントキャッ
シュシステム13から、書き込みエラーが戻された場合
は、登録処理602は削除処理603を呼び出す(S7
04)。この処理の結果、フォントキャッシュシステム
13には空き領域が生じるため、登録処理602は再
び、キー212とイメージデータ206をフォントキャ
ッシュシステム15に転送し、書き込み処理を指示す
る。更に、処理結果の戻り値として、フォントキャッシ
ュシステム13から、書き込みエラーが戻された場合
は、同様の処理を繰り返し、登録が完了する。この場合
は、登録処理終了時にアクセスカウンタ609の内容に
+1を行ない(S705)、この値を登録フラグ606
に書き込む(S706)。When a write error is returned from the font cache system 13 as the return value of the processing result, the registration processing 602 calls the deletion processing 603 (S7).
04). As a result of this processing, an empty area is generated in the font cache system 13, so the registration processing 602 again transfers the key 212 and the image data 206 to the font cache system 15, and instructs the writing processing. Further, when a writing error is returned from the font cache system 13 as a return value of the processing result, the same processing is repeated and the registration is completed. In this case, the content of the access counter 609 is incremented by 1 at the end of the registration process (S705), and this value is set to the registration flag 606.
(S706).
【0066】フォント管理テーブル605の登録フラグ
606を検索し、値の最も小さい要素を取り出し(S7
02)たとき、この値が0でなければ、削除処理603
を呼び出し(S707)、開き領域を確保し、S702
以降の処理を行なう。The registration flag 606 of the font management table 605 is searched and the element having the smallest value is extracted (S7).
02), if this value is not 0, delete processing 603
Is called (S707), an open area is secured, and S702
The following processing is performed.
【0067】(d3−3)読み出し処理 読み出し処理601は、フォント管理機構12の主たる
処理である。流れ図を図3に示し、説明する。フォント
管理機構12は、文字指定レコード20の内容を引数に
読み出し処理601を実行する。読み出し処理601
は、テーブル検索処理604を呼び出し(S801)、
文字指定レコード20の内容と同一の要素が、フォント
管理テーブル605に登録されているか検索する。(D3-3) Read Processing The read processing 601 is the main processing of the font management mechanism 12. A flow chart is shown in FIG. 3 and will be described. The font management mechanism 12 executes the reading process 601 by using the content of the character designation record 20 as an argument. Read processing 601
Calls the table search processing 604 (S801),
It is searched whether the same element as the content of the character designation record 20 is registered in the font management table 605.
【0068】まず同一の要素が検出された場合について
書く。First, the case where the same element is detected will be described.
【0069】この場合はアクセスカウンタ609の内容
を+1する(S802)。アクセスカウンタ609は、
809と同様の構成である。アクセスカウンタ609の
値は、検出された要素に対応した登録フラグ606に記
録される(S803)。続いて検出された要素に対応し
たキー608が読み出される(S804)。読み出し処
理601は、このキー608の値をキー212に代入
し、フォントキャッシュシステム13に渡し、読み出し
処理を指示し(S805)、処理結果として文字のイメ
ージデータ206を得る。フォント管理機構12は、こ
のイメージデータ206をアプリケーション11に渡し
処理を終了する。In this case, the content of the access counter 609 is incremented by 1 (S802). The access counter 609 is
The configuration is the same as 809. The value of the access counter 609 is recorded in the registration flag 606 corresponding to the detected element (S803). Then, the key 608 corresponding to the detected element is read (S804). The reading process 601 substitutes the value of the key 608 into the key 212, passes it to the font cache system 13, instructs the reading process (S805), and obtains the character image data 206 as a processing result. The font management mechanism 12 passes the image data 206 to the application 11 and ends the processing.
【0070】一方、文字指定レコード20で指定された
文字が、フォント管理テーブル605に登録されていな
かった場合の動作について書く。この場合、読み出し処
理601は、文字取り出し要求22のパケットをネット
ワーク上のフォントサーバ2へ送信する(S806)。
応答パケットとして、文字のイメージデータ206を含
むパケットが受信されたら(S807)、読み出し処理
601はこのイメージデータ206をアプリケーション
11に渡す。次に、文字指定レコード20、およびこの
イメージデータ206を引数に登録処理602を呼び出
す(808)。登録処理602は、すでに述べた処理を
実施し、この結果、フォントキャッシュシステム13の
更新が行なわれ、読み出し処理601は終了する。On the other hand, the operation when the character designated by the character designation record 20 is not registered in the font management table 605 will be described. In this case, the read processing 601 transmits the packet of the character extraction request 22 to the font server 2 on the network (S806).
When a packet including the character image data 206 is received as a response packet (S807), the read processing 601 passes the image data 206 to the application 11. Next, the registration process 602 is called with the character designation record 20 and this image data 206 as an argument (808). The registration processing 602 executes the processing already described, and as a result, the font cache system 13 is updated, and the reading processing 601 ends.
【0071】[0071]
【発明の効果】本発明によれば、次の様な効果を得るこ
とができる。まず、ネットワーク上のフォントサーバを
使用することから生じる効果として次の点が指摘でき
る。According to the present invention, the following effects can be obtained. First, the following points can be pointed out as the effects that result from using a font server on the network.
【0072】(1)要求側装置に、フォント元データを
持つ必要が無いため、補助記憶装置などの資源の有効利
用が図れる。(1) Since it is not necessary for the requesting device to have font original data, it is possible to effectively use resources such as an auxiliary storage device.
【0073】(2)供給装置側で、フォント元データを
一元管理することにより、新規の文字種の追加などの処
理を容易に行なうことができる。(2) By centrally managing the font original data on the supply device side, it is possible to easily perform processing such as addition of a new character type.
【0074】(3)供給側装置によって、各文字のイメ
ージデータ生成を行なうため、供給側装置を専用機とす
ることで、処理上特殊な操作を行なう必要のある文字デ
ータ等への対応が容易である。(3) Since the image data of each character is generated by the supply side device, by using the supply side device as a dedicated machine, it is easy to deal with the character data and the like which requires special processing. Is.
【0075】さらに、フォントサーバ(供給装置)側に
フォントキャッシュ機構を持つことによって、次の効果
が指摘できる。Furthermore, the following effects can be pointed out by having a font cache mechanism on the font server (supply device) side.
【0076】(4)要求側装置で、文字種の変更などに
よって、ローカルなフォントキャッシュのヒット率が悪
化した場合でも、他の装置の稼働により、フォントサー
バ上のフォントキャッシュには、種々の文字が登録され
ており、グローバルなキャッシュから要求文字を引き当
てることができる確率が高い。(4) Even if the hit rate of the local font cache deteriorates in the requesting device due to the change of the character type, various characters are stored in the font cache on the font server due to the operation of other devices. It is registered and there is a high probability that the requested character can be assigned from the global cache.
【0077】(5)フォントサーバの処理が、フォント
サーバ側にフォントキャッシュを実装したことで向上
し、結果的にシステム全体の処理速度の向上に結びつ
く。(5) The processing of the font server is improved by mounting the font cache on the font server side, and as a result, the processing speed of the entire system is improved.
【0078】これに加えて、本発明が要求装置上のロー
カルなフォントキャッシュの内容と、フォントサーバ上
のグローバルなフォントキャッシュの内容を不一致に保
つ操作を行なうため、次の様な効果が得られる。In addition to this, since the present invention performs the operation of keeping the contents of the local font cache on the requesting device and the contents of the global font cache on the font server inconsistent, the following effects can be obtained. ..
【0079】(6)要求側装置のフォントキャッシュ
と、フォントサーバ上のフォントキャッシュにおいて、
同一文字が重複し登録される率が低く、有限なキャッシ
ュメモリに、多くの文字を効率良く登録できる。(6) In the font cache of the requesting device and the font cache on the font server,
It is possible to efficiently register a large number of characters in a finite cache memory, because the same character is rarely duplicated and registered.
【図面の簡単な説明】[Brief description of drawings]
【図1】一つの実施例の概略構成図。FIG. 1 is a schematic configuration diagram of one embodiment.
【図2】フォントキャッシュシステムの構成図。FIG. 2 is a configuration diagram of a font cache system.
【図3】要求側装置での、読み出し処理の流れ図。FIG. 3 is a flowchart of a reading process in a requesting device.
【図4】要求側装置での、文字データ登録処理の流れ
図。FIG. 4 is a flow chart of a character data registration process in the request side device.
【図5】要求側装置での、文字データ削除処理の流れ
図。FIG. 5 is a flow chart of character data deletion processing in the request side device.
【図6】要求側装置のフォント管理機構の説明図。FIG. 6 is an explanatory diagram of a font management mechanism of a requesting device.
【図7】キャッシュ割り当て処理の説明図。FIG. 7 is an explanatory diagram of cache allocation processing.
【図8】フォントサーバ側のフォント管理機構の説明
図。FIG. 8 is an explanatory diagram of a font management mechanism on the font server side.
【図9】フォント管理テーブルの要素の説明図。FIG. 9 is an explanatory diagram of elements of a font management table.
【図10】キャッシュ管理処理での、データ読み出し処
理の流れ図。FIG. 10 is a flowchart of a data read process in the cache management process.
【図11】キャッシュ管理処理での、連結解消処理の流
れ図。FIG. 11 is a flowchart of connection cancellation processing in cache management processing.
【図12】キャッシュ管理処理での、データ書き込み処
理の流れ図。FIG. 12 is a flowchart of a data writing process in the cache management process.
【図13】フォントサーバでの文字データ読み出し処理
の流れ図。FIG. 13 is a flowchart of a character data reading process in the font server.
【図14】フォントサーバでの文字データ登録処理の流
れ図。FIG. 14 is a flow chart of character data registration processing in the font server.
1…文字要求側コンピュータ 2…フォントサーバ 3…ネットワーク 11…アプリケーション 12…フォント管理機構 13…フォントキャッシュシステム 14…ネットワークドライバ 16…フォント管理機構(フォントサーバ側) 17…フォント発生機構 18…フォントデータ読み出し機構 19…補助記憶装置 20…文字指定レコード(変数) 201…管理単位メモリ 203…指標部 204…データ部 205…キャッシュメモリ 206…文字のイメージデータ 207…キャッシュ管理機構 208…アドレステーブル 209…キーの値 210…指標の値 211…ポインタ 212…キー(キーの値を格納する変数) 601、801…読み出し処理 602、802…登録処理 603、803…削除処理 604、804…テーブル検索処理 605、805…フォント管理テーブル 606、806…登録フラグ 607、807…文字指定レコード 608、808…キー 609、809…アクセスカウンタ 701…読み出し処理 702…書き込み処理 703…連結解消処理 704…実アドレス演算部 705…アドレスバス 706…データバス 1 ... Character requesting computer 2 ... Font server 3 ... Network 11 ... Application 12 ... Font management mechanism 13 ... Font cache system 14 ... Network driver 16 ... Font management mechanism (font server side) 17 ... Font generation mechanism 18 ... Font data read Mechanism 19 ... Auxiliary storage device 20 ... Character designation record (variable) 201 ... Management unit memory 203 ... Index part 204 ... Data part 205 ... Cache memory 206 ... Character image data 207 ... Cache management mechanism 208 ... Address table 209 ... Of key Value 210 ... Index value 211 ... Pointer 212 ... Key (variable for storing key value) 601, 801, ... Read processing 602, 802 ... Registration processing 603, 803 ... Delete processing 604, 804 ... Table check Processing 605, 805 ... Font management table 606, 806 ... Registration flag 607, 807 ... Character designation record 608, 808 ... Key 609, 809 ... Access counter 701 ... Read processing 702 ... Write processing 703 ... Concatenation release processing 704 ... Real address operation Part 705 ... Address bus 706 ... Data bus
Claims (1)
データ資源を持つ1台以上の装置が、ネットワークによ
り接続されたシステムで使用され、 文字出力動作を行う装置については、出力すべき文字の
文字種、文字修飾指定、文字サイズ指定、文字コード指
定によって記述される文字の形状を表すデータが、指定
された特定のメモリ領域(以下ローカルフォントキャッ
シュと書く)に存在することを検索する手段と、この検
索により該当する文字のデータが有った場合、文字出力
要求を発生した処理に文字データを渡す手段と、この検
索により該当する文字が無かった場合、ネットワーク上
の予め定めた文字データ資源を持つ装置(以下フォント
サーバと書く)に対し、文字の文字種、文字修飾指定、
文字サイズ指定、文字コード指定によって記述される文
字の形状を表す画素のデータを転送するよう促す要求メ
ッセージを転送し、応答として得られる文字のデータを
受け取る手段を持ち、応答として得られた文字のデータ
は、ローカルフォントキャッシュに登録を試み、ローカ
ルフォントキャッシュに空き領域がない場合は、不要と
なった文字データを取り出し、空き領域を作り登録し、
一方、不要として取り出した文字データは、フォントサ
ーバに対し、同装置上の予め指定した特定のメモリ領域
(以下グローバルフォントキャッシュと書く)に登録す
るよう促す要求メッセージを付加し、転送する手段を持
つ構成であり、 ネットワーク上のフォントサーバについては、ネットワ
ーク上の他の装置より、文字種、文字修飾指定、文字サ
イズ指定、文字コード指定によって記述される文字の、
文字取得要求を受信する手段と、この手段により受信さ
れた文字について、形状を表すデータが、指定された特
定のメモリ領域に存在することを検索する手段と、この
検索により該当する文字のデータが有った場合、このデ
ータを読み取り、文字出力要求を発生した情報機器に渡
す手段と、前記検索により該当する文字が無かった場
合、指定された文字の形状を表す画素データを、アウト
ラインフォントデータより演算処理により発生し、前記
の文字取得要求を発生した装置に、この画素データを、
送信する手段を持ち、また、ネットワーク上の他の装置
から文字データの登録を要求するメッセージを受信した
場合は、グローバルフォントキャッシュへ登録を試み、
空き領域が得られない場合、不要となった文字データを
削除し、空き領域を作り前記登録を行なう手段を持つ構
成からなることを特徴とする文字データ管理方法。1. A plurality of devices performing a character output operation and one or more devices having a character data resource are used in a system connected by a network, and a device performing a character output operation should be output. A means for searching that the data representing the shape of the character described by the character type of the character, the character decoration specification, the character size specification, and the character code specification exists in the specified specific memory area (hereinafter referred to as local font cache). If there is data of the corresponding character by this search, a means for passing the character data to the process that generated the character output request, and if there is no corresponding character by this search, the predetermined character data on the network For a device that has resources (hereinafter referred to as a font server), specify the character type of the character, character modification specification,
It has a means to receive the data of the character obtained as the response by transmitting the request message that prompts the transfer of the pixel data representing the shape of the character described by the character size designation and the character code designation, and For data, try to register it in the local font cache. If there is no free space in the local font cache, take out unnecessary character data, create a free space, and register it.
On the other hand, the character data extracted as unnecessary is added with a request message for prompting the font server to register it in a specific memory area (hereinafter referred to as global font cache) designated in advance on the same device, and has means for transferring. With regard to the font server on the network, the characters described by the character type, character modification specification, character size specification, and character code specification from other devices on the network are
The means for receiving the character acquisition request, the means for searching for the data representing the shape of the character received by this means in the specified specific memory area, and the data for the corresponding character by this search If there is, the means for reading this data and passing it to the information device that issued the character output request, and if there is no corresponding character by the search, the pixel data representing the shape of the specified character is extracted from the outline font data. This pixel data is generated by the arithmetic processing and is sent to the device that generated the character acquisition request.
If you have a means to send, and if you receive a message requesting registration of character data from another device on the network, try to register in the global font cache,
A character data management method characterized in that, when no free space is obtained, unnecessary character data is deleted, a free space is created and the registration is performed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4037734A JPH05233510A (en) | 1992-02-25 | 1992-02-25 | Character data management method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4037734A JPH05233510A (en) | 1992-02-25 | 1992-02-25 | Character data management method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05233510A true JPH05233510A (en) | 1993-09-10 |
Family
ID=12505719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4037734A Pending JPH05233510A (en) | 1992-02-25 | 1992-02-25 | Character data management method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05233510A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005173554A (en) * | 2003-09-30 | 2005-06-30 | Toshiba Corp | Font repository system for multi-user web-based applications |
JP2012155681A (en) * | 2011-01-28 | 2012-08-16 | Skk Corp | Font server |
JP2013533527A (en) * | 2010-04-29 | 2013-08-22 | モノタイプ.イメージング.インコーポレイテッド | Starting a font subset |
JP2014029728A (en) * | 2013-10-21 | 2014-02-13 | Skk Corp | Terminal device |
-
1992
- 1992-02-25 JP JP4037734A patent/JPH05233510A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005173554A (en) * | 2003-09-30 | 2005-06-30 | Toshiba Corp | Font repository system for multi-user web-based applications |
JP2013533527A (en) * | 2010-04-29 | 2013-08-22 | モノタイプ.イメージング.インコーポレイテッド | Starting a font subset |
JP2012155681A (en) * | 2011-01-28 | 2012-08-16 | Skk Corp | Font server |
JP2014029728A (en) * | 2013-10-21 | 2014-02-13 | Skk Corp | Terminal device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2977688B2 (en) | Multi-processing device, method, and processor used for the same | |
US5961606A (en) | System and method for remote buffer allocation in exported memory segments and message passing between network nodes | |
JPH0816470A (en) | Parallel computer | |
JP2931490B2 (en) | Parallel processing method | |
EP0840202B1 (en) | Dynamic peripheral control of I/O buffers in peripherals with modular I/O | |
Tzou et al. | The performance of message‐passing using restricted virtual memory remapping | |
JPH07182260A (en) | Network packet frame buffer method | |
JPH04314163A (en) | Buffer managing system | |
JP2000158724A (en) | Image-processing apparatus, image processing method and recording medium | |
WO2025091889A1 (en) | Address translation method, computing system, and electronic device | |
JPH1196072A (en) | Memory access control circuit | |
JPH08241186A (en) | Buffer memory management unit and buffer memory management method | |
JPH05233510A (en) | Character data management method | |
JPH07239808A (en) | Distributed data managing system | |
CN118113638A (en) | RDMA data transmission method and device | |
JPH05261983A (en) | Character data control device | |
JP7645497B2 (en) | Parallel and distributed computing system | |
JP2001022640A (en) | Memory managing method | |
JPH06103477B2 (en) | Parallel cache memory | |
JPH05233328A (en) | Infoamation processing system for inter-process communication processing | |
JP3131925B2 (en) | Data transfer control system for broadband communication network | |
JP3506335B2 (en) | Control method | |
JP2002259213A (en) | Parallel computer system | |
JPS60191357A (en) | Simultaneous replacement system of shared data | |
JP2752767B2 (en) | Buffer management method |