JPH06266622A - キャッシュ制御装置 - Google Patents

キャッシュ制御装置

Info

Publication number
JPH06266622A
JPH06266622A JP5052648A JP5264893A JPH06266622A JP H06266622 A JPH06266622 A JP H06266622A JP 5052648 A JP5052648 A JP 5052648A JP 5264893 A JP5264893 A JP 5264893A JP H06266622 A JPH06266622 A JP H06266622A
Authority
JP
Japan
Prior art keywords
cache memory
pattern data
character
cache
information
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
Application number
JP5052648A
Other languages
English (en)
Inventor
Masao Yamada
政雄 山田
Masaaki Maekawa
政明 前川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP5052648A priority Critical patent/JPH06266622A/ja
Publication of JPH06266622A publication Critical patent/JPH06266622A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】キャッシュメモリの記憶領域の断片化を抑制す
ることができるキャッシュ制御装置を提供する。 【構成】パターンデータ更新手段21は、キャッシュメ
モリ使用状況記憶手段25内のキャッシュメモリの使用
状況を示す情報、及びパターンデータ管理情報記憶手段
23内のパターンデータの利用状況を示す情報の内容に
基づいてキャッシュメモリ10の内容を更新する。また
パターンデータ更新手段21は、キャッシュメモリの記
憶領域の断片化が予め設定された状態に達したか否かを
判定する。パターンデータ詰め込み手段22は、パター
ンデータ更新手段21によって、キャッシュメモリ10
の記憶領域の断片化が予め設定された状態に達したと判
定された場合は、キャッシュメモリ10に対するコンパ
クション処理を実行する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、キャッシュメモリを
制御するキャッシュ制御装置に関する。
【0002】
【従来の技術】輪郭等で表現された文字情報、図形情報
から出力装置で扱えるパターンを生成し出力する装置に
おいては、出力要求の都度、文字情報を取り出してパタ
ーンデータを生成していたので、出力を得るまでに多く
の時間を要していた。
【0003】このような問題に対処すべく、上述した装
置に、一度得られたパターンデータを記憶するキャッシ
ュメモリ装置を備えたものも実現されており、このよう
な装置においては、出力要求のパターンデータが、キャ
ッュメモリ装置に存在する場合は、そこからパターンデ
ータを取り出すようにしている。一方、キャッュメモリ
装置に存在しない場合は、文字情報を取り出してパター
ンデータを生成すると共に、そのパターンデータをキャ
ッシュメモリ装置に記憶して、そのパターンデータを次
回以降に利用できるようにしている。このようにキャッ
シュメモリ装置からパターンデータを取り出すようにす
ることにより、高速にパターンデータを得ることが可能
となる。
【0004】しかしキャッシュメモリ装置は比較的容量
が小さく、出力装置に送出するパターンデータ全てを保
持することができないため、従来においては、一般的
に、キャッシュメモリ装置に記憶されているパターンデ
ータを削除して、所望のパターンデータを新しく記憶す
るようにしている。
【0005】このようにキャッシュメモリ装置の記憶内
容を更新するようにした装置としては、特開昭62−2
84423号公報、特開平3−3113492号公報、
特開平1−281966号公報に開示されたものが知ら
れている。
【0006】特開昭62−284423号公報に開示さ
れたものでは、キャッシュメモリ装置に格納されている
使用頻度の低いものを削除して、新しく生成したパター
ンデータを記憶するようにしている。
【0007】特開平3−3113492号公報に開示さ
れたものでは、装置内のパターンデータの中で参照され
ない時間の長いものを削除して装置内に空きを作るよう
にしている。
【0008】特開平1−281966号公報に開示され
たものでは、キャッシュメモリ装置内に格納されている
パターンデータを文字サイズ毎にグループ化して、メン
バの少ないグループから削除して空き領域を作るように
している。
【0009】なお一般にキャッシュメモリ装置に登録さ
れた文字情報は、その文字コードによって検索されるこ
とが多い。キャッシュメモリ装置にキャッシュすべき文
字が登録される場合は、先頭から順に格納されていく。
例えば図9(a)に示すような文字列『おかいうおきう
ええいくあきああうあ』がキャッシュメモリ装置に登録
されたとすると、これらの文字の使用頻度は図9(b)
のようになる。この図9(b)においては、入力された
文字順ではなく、文字コードの若い順にその文字の使用
頻度が登録されていることが示されている。
【0010】さて図9(a)に示した文字列が入力され
た場合は、入力された順に文字が格納されていくので、
キャッシュメモリ装置の内容は図10に示すようにな
る。そこで、次に図9(a)に示されるキャッシュメモ
リ装置内の例えば使用頻度が一番多い文字「あ」を検索
しようとした場合、先頭から検索を行うようなときは、
文字「あ」が8番目に存在するため、8回の検索により
文字「あ」を得ることができる。また2分木探索の場合
においては、上述した文字列が図11に示すようにキャ
ッシュメモリ装置に登録された場合には、3回の検索に
より文字「あ」を得ることができる。
【0011】このようにキャッシュメモリ装置内の情報
の検索の際には、先頭から比較を行って該当文字を検索
するかあるいは2分木探索等により、所望の文字の検索
を行っている。
【0012】
【発明が解決しようとする課題】しかしながら、上記各
公報に開示されたものでは、輪郭等で定義された文字情
報を使用してパターンデータを生成する場合には、パタ
ーンデータのサイズの変化が著しく、キャッシュメモリ
装置内の記憶領域が断片的になり易くキャッシュメモリ
装置を有効に利用することができなかった。
【0013】また上記従来のキャッシュメモリ装置で
は、キャッシュすべき文字を先頭から順に格納するよう
にし、その文字の例えば使用頻度のみを更新するように
しているので、図10及び図11において文字「あ」の
使用頻度が一番多い場合であっても、文字の配置は変更
されずに、文字「あ」は最後の配置のままである。従っ
て、使用頻度の多い文字例えば「あ」を検索する場合で
あっても、上述した様に、先頭から比較を行って該当文
字を検索する方法にあっては8回の検索を、また2分木
探索にあっては3回の検索を行わなければならず、検索
に時間がかかっていた。
【0014】なおこのような場合においては、文字
「あ」を検索する際に、先頭から検索するようにした検
索方法にあっては、文字「あ」が図10において先頭に
配置(コード5、お」の位置)されていれば1回の検索
で済み、また2分木探索にあっても、文字「あ」が「コ
ード7、き」の位置に配置されていた場合は1回の検索
で済むことになる。しかし、従来においては、上述した
様にキャッシュすべき文字の配置を変更するようにして
いないので、検索に時間がかかっていた。
【0015】この発明は、キャッシュメモリの記憶領域
の断片化を抑制することができるキャッシュ制御装置を
提供することを目的とする。
【0016】またこの発明は、所望のデータの検索を迅
速に行うことができるキャッシュ制御装置を提供するこ
とを目的とする。
【0017】
【課題を解決するための手段】第1の発明は、パターン
データが記憶されるキャッシュメモリ(図1の10)を
制御するキャッシュ制御装置(図1の4)において、前
記キャッシュメモリの使用状況を管理する第1の管理手
段(図1の25、26)と、前記キャッシュメモリに記
憶されているパターンデータの利用状況を管理する第2
の管理手段(23、24)と、前記第1の管理手段及び
第2の管理手段の管理内容に基づいて前記キャッシュメ
モリの内容を更新する更新手段(図1の21)と、該更
新手段によって更新された前記キャッシュメモリの記憶
領域の断片化が予め設定された状態に達したか否かを判
定する判定手段(図1の21)と、該判定手段によって
前記断片化が前記予め設定された状態に達したと判定さ
れた場合は、前記キャッシュメモリに対するコンパクシ
ョン処理を実行するコンパクション手段(図1の22)
とを具備している。
【0018】第2の発明は、キャッシュメモリ(図5の
441)からデータを検索して出力するキャッシュ制御
装置において、所定形式の検索方法に従って前記キャッ
シュメモリにキャッシュされているデータを検索する検
索手段(図1の443)と、前記キャッシュメモリにキ
ャッシュされている複数のデータそれぞれの優先順位情
報に基づいて、当該複数のデータの配置を前記所定形式
の検索方法に適合する配置に変更する変更手段(図1の
450)とを具備している。
【0019】
【作用】第1の発明においては、更新手段が、第1の管
理手段によって管理されているキャッシュメモリの使用
状況を示す情報、及び第2の管理手段によって管理され
ているパターンデータの利用状況を示す情報に基づいて
キャッシュメモリの内容を更新し、コンパクション手段
は、判定手段によって、キャッシュメモリの記憶領域の
断片化が予め設定された状態に達したと判定された場合
は、キャッシュメモリに対するコンパクション処理を実
行する。これにより、キャッシュメモリの記憶領域の断
片化を抑制して、検索時における空き領域確保処理を削
減することができる。よってデータの格納が迅速に行
え、文字パターンの処理を短縮することができる。
【0020】第2の発明においては、変更手段は、キャ
ッシュメモリにキャッシュされている複数のデータの優
先順位情報(例えば使用頻度情報)に基づいて、当該複
数のデータの配置を、検索手段が実行する検索処理にお
ける所定形式の検索方法に適合する配置に変更する。こ
れにより、検索手段による検索処理に適したデータの配
置となるので、データの検索を迅速に行うことができ
る。
【0021】
【実施例】以下、本発明の実施例を添付図面を参照して
説明する。
【0022】最初に第1の実施例について図1乃至図4
を参照して説明する。
【0023】図1は、本発明に係るキャッシュ制御装置
を適用した出力装置を機能ブロック図で示したものであ
る。
【0024】同図において、出力装置は、文字指定手段
1、出力手段2、パターンデータアクセス手段3、キャ
ッシュ制御装置4、パターンデータ生成手段5、文字情
報記憶手段6を備えている。文字指定手段1は、出力す
るパターンデータの文字コード、大きさ、回転、傾きな
どを指定する。出力手段2は、文字指定手段1により指
定されたパターンデータを出力する。パターンデータア
クセス手段3は、文字指定手段1により指定されたパタ
ーンを、キャッシュ制御装置又はパターンデータ生成手
段5から取り出して、出力手段2に渡す。パターンデー
タ生成手段5は、輪郭等で定義された文字情報から、文
字指定手段1により指定されたパターンデータを生成す
る。文字情報記憶手段6は、輪郭等で定義される文字情
報を記憶する。
【0025】キャッシュ制御装置4は、キャッシュされ
たパターンデータが登録されるキャッシュメモリ10
と、キャッシュメモリ10を管理するキャッシュメモリ
管理手段20とを有して構成されている。
【0026】キャッシュメモリ管理手段20において、
パターンデータ更新手段21は、キャッシュメモリ10
内のパターンデータを削除すると共に、パターンデータ
生成手段5によって生成された新たなパターンデータを
キャッシュメモリ40に登録し、更にパターンデータを
管理する。パターンデータ詰め込み手段22は、キャッ
シュメモリ10の使用されている領域を整理いわゆるコ
ンパクション処理を実行して、まとまった大きさの空き
領域(つまり連続する空き領域)を確保する。パターン
データ管理情報記憶手段23はパターンデータ管理情報
を記憶する。パターンデータ管理情報更新手段24は、
パターンデータ更新手段21によってキャッシュメモリ
10内のパターンデータの管理を行う際に使用されるパ
ターンデータ管理情報を更新する。キャッシュメモリ使
用状況記憶手段25はキャッシュメモリ10の使用状況
を記憶する。キャッシュメモリ使用状況更新手段26
は、キャッシュメモリ10の使用状況を適宜更新する。
【0027】なお第1の実施例においては、上述した第
1の管理手段はキャッシュメモリ使用状況記憶手段25
及びキャッシュメモリ使用状況更新手段26に対応し、
上述した第2の管理手段はパターンデータ管理情報記憶
手段23及びパターンデータ管理情報更新手段24に対
応し、上述した更新手段はパターンデータ更新手段21
に対応し、上述したコンパクション手段はパターンデー
タ詰め込み手段22に対応している。
【0028】係る構成において、この第1の実施例の処
理について、図2に示すフローチャートを参照して説明
する。
【0029】出力手段2から特定のパターンデータを出
力させたい場合は、文字指定手段1によって、出力した
い文字の文字コード(出力手段2に送るパターンデータ
を生成する文字コード)、生成の条件、例えばパターン
データのサイズ等のパターンデータを生成する際の各種
パラメタを設定する(ステップ101)。これらの設定
された情報はパターンデータアクセス手段3に入力され
る。
【0030】パターンデータアクセス手段3では、指定
された文字のパターンデータが、キャッシュ制御装置4
のキャッシュメモリ10に記憶されているか否かを判定
する(ステップ102)。
【0031】ステップ102において記憶されていない
場合、パターンデータアクセス手段3は、パターンデー
タ生成手段5に対して、指定された文字のパターンデー
タの生成を依頼する。パターンデータ生成手段5では、
指定された文字のパターンデータに関する輪郭情報が、
文字情報記憶手段6に記憶されているか否かを判断し
(ステップ103)、記憶されていなければ、例えば
“輪郭情報がない”などのエラーをパターンデータアク
セス手段3に返す。パターンデータアクセス手段3は、
エラーを受け取ると、“輪郭情報がない”などのエラー
を出力手段2へ送出すると共に、パターンデータの取り
出しを終了する(ステップ104)。
【0032】ステップ103において輪郭情報が記憶さ
れている場合、パターンデータ生成手段5は、文字情報
記憶手段6から輪郭情報を読み込んで、パターンデータ
を生成し(ステップ105)、このパターンデータをキ
ャッシュ制御装置4へ渡す。キャッシュ制御装置4にお
いては、パターンデータ更新手段21が、キャッシュメ
モリ10内に、渡されたパターンデータを記憶するだけ
の空き領域が存在しているか否かを判断する(ステップ
106)。
【0033】ここで、渡されたパターンデータを記憶す
るだけの空き領域が存在していない場合は、パターンデ
ータ管理情報記憶手段23に記憶されているパターンデ
ータ管理情報を元に、キャッシュメモリ10に記憶され
ているパターンデータを削除し(ステップ107)、そ
の後、パターンデータをキャッシュメモリ10に記憶す
る(ステップ108)。ステップ106において空き領
域が存在する場合はステップ10に進む。
【0034】このようにしてキャッシュメモリ10の内
容が更新されると、パターンデータ管理情報更新手段2
4はパターンデータ管理情報記憶手段内のパターンデー
タ管理情報を更新すると共に、キャッシュメモリ使用状
況更新手段26はキャッシュメモリ使用状況記憶手段2
5内のキャッシュメモリ使用状況情報を更新する(ステ
ップ109)。
【0035】更にパターンデータ更新手段21は、キャ
ッシュメモリ10の空き領域の断片は多いか否かを判断
し(ステップ110)、キャッシュメモリ使用状況から
新しいパターンデータを記憶できる物理的に連続した領
域がとれないような空き領域の断片化が進んでいる場合
は、その旨をパターンデータ詰め込み手段22へ通知す
る。するとパターンデータ詰め込み手段22では、キャ
ッシュメモリ10に対するコンパクション処理(すなわ
ちキャッシュメモリ10内の未使用領域をまとめる処
理)を実行する。すなわち、断片をまとめて物理的に連
続する大きな空き領域を作る。このようにキャッシュメ
モリ10に対するコンパクション処理が実行されると、
パターンデータ管理情報更新手段24はパターンデータ
管理情報記憶手段内のパターンデータ管理情報を更新す
ると共に、キャッシュメモリ使用状況更新手段26はキ
ャッシュメモリ使用状況記憶手段25内のキャッシュメ
モリ使用状況情報を更新する(ステップ111)。
【0036】ステップ111を終了した場合、ステップ
110で「NO」の場合は、キャッシュ制御装置4で
の、指定された文字のパターンデータについての処理が
終了したことになるので、パターンデータアクセス手段
3は、パターンデータ生成手段5から得たパターンデー
タ又はキャッシュメモリ10から取り出したパターンデ
ータを、出力手段2へ出力する(ステップ112)。
【0037】なおステップ102において指定された文
字のパターンデータがキャッシュメモリ10に記憶され
ている場合、パターンデータアクセス手段3は、キャッ
シュ制御装置4からのパターンデータを受け取る。この
処理が終了した場合は、ステップ109に移行する。
【0038】次に上述した処理について、図3及び図4
を用いて具体的に説明する。
【0039】図3はキャッシュメモリ使用状況記憶手段
25に記憶されているキャッシュメモリ使用状況情報を
示したものであり、図3(a)は1文字のパターンデー
タがキャッシュメモリ10に記憶された場合のキャッシ
ュメモリ使用状況情を示しており、また図3(b)は9
文字のパターンデータがキャッシュメモリ10に記憶さ
れた場合のキャッシュメモリ使用状況情報を示してい
る。
【0040】図3において、MAは記憶アドレス(図に
おいては16進数で表記している)を表し、PSはパタ
ーンデータサイズ(図においては16進数で表記してい
る)を表している。この例では、キャッシュメモリ使用
状況情報は使用リスト210及び未使用リスト220か
ら構成されている。使用リスト210は、文字毎に、使
用領域及びパターンデータサイズの情報がリストされる
ようになっている。
【0041】図4はパターンデータ管理情報記憶手段2
3に記憶されているパターンデータ管理情報を示したも
のであり、図4(a)は上記1文字のパターンデータが
キャッシュメモリ10に記憶された場合のパターンデー
タ管理情報を示しており、また図4(b)は上記9文字
のパターンデータがキャッシュメモリ10に記憶された
場合のパターンデータ管理情報を示している。
【0042】図4において、パターンデータ管理情報は
テーブルから構成されており、このテーブルは、文字コ
ードが記述されるフィールド310と、文字サイズ(ポ
イント)が記述されるフィールド320と、記憶アドレ
ス(この実施例では16進数の表記法を採用している)
が記憶されるフィールド330と、パターンデータサイ
ズ(この実施例では16進数の表記法を採用している)
が記憶されるフィールド340と、利用状況情報として
の頻度情報が記憶されるフィールド350とから構成さ
れている。
【0043】1文字のパターンデータが格納される毎に
未使用リスト210が参照されて、キャッシュメモリ1
0から必要なだけの領域が使用され、更にパターン管理
情報に必要な情報が登録されていく。
【0044】ここで図3(a)に示す状態から図3
(b)に示す状態までは、キャッシュメモリ10には9
文字分のパターンデータを記憶する領域があるものとす
る。従ってこの場合はキャッシュメモリ10からのパタ
ーンデータの削除は行われず、パターンデータ管理情報
及びキャッシュメモリ使用状況情報が登録されるだけで
ある。そして新たに生成された10文字目のパターンデ
ータを現在のキャッシュメモリ10に記憶する際に、空
き領域が不足して記憶することができないものとする。
このような場合は、パターンデータ管理情報を元に、キ
ャッシュメモリ10に既に登録されているパターンデー
タを削除して空き領域を作ることになる。
【0045】次にパターンデータ更新手段21によるパ
ターンデータの削除処理について説明する。ここでは4
つの削除パターンについて説明する (1)使用頻度の低いパターンデータから削除する。図
4(b)に示す例においては、例えば登録しようとして
いるパターンデータが、20ポイントの文字サイズのパ
ターンデータであった場合は、文字コード58hまたは
文字コード78hのパターンデータ或いはこれらのパタ
ーンデータを削除し、次に文字コード6ahのパターン
データを削除すれば良い。勿論、必要に応じて使用頻度
の低いパターンデータを順次削除するようにしても良
い。
【0046】(2)使用頻度とパターンサイズ(占有領
域の大きさ)とに基づいて決定されるパターンデータを
削除する。図4(b)に示す例においては、例えば登録
しようとしているパターンデータが、20ポイントの文
字サイズのパターンデータであり、且つパターンデータ
のサイズが0x150であった場合は、文字コード58
hあるいは文字コード78hのパターンデータを削除す
れば良いことになるが、この場合は、パターンデータサ
イズの大きい文字コード58hのパターンデータを優先
して削除する。これにより、新しいパターンデータを記
憶する際に、小さい断片的な領域の発生を少なくするこ
ともできる。
【0047】(3)使用頻度だけでなく、キャッシュメ
モリに登録しようとしているパターンデータの文字サイ
ズを考慮して、同サイズの文字は削除の対象から除外す
る。図4(b)に示す例においては、例えば登録しよう
としているパターンデータが、40ポイントの文字サイ
ズのパターンデータであった場合は、文字コード58h
または文字コード78hのパターンデータが削除対象と
なるが、文字コード58hの文字については文字サイズ
が40ポイントであるので、同サイズのパターンデータ
は使用される確率が高いということから、文字コード5
8hのパターンデータについては削除対象から除外し、
文字コード78hのパターンデータを優先して削除す
る。これにより、以降使用される可能性の高い現在のパ
ターンデータと同じ文字サイズのものをキャッシュメモ
リ内に登録させておくことができることとなり、キャッ
シュヒット率を向上させることができる。
【0048】(4)LRU法(Least Recently Usedrul
e) に従ってパターンデータを削除する。
【0049】そして、このようにキャッシュメモリ10
からパターンデータを削除して空き領域が得られたなら
ば、その空き領域に新たなパターンデータを格納する。
【0050】またパターンデータが削除されると、キャ
ッシュメモリ使用状況更新手段26は、削除された領域
をキャッシュメモリ使用状況記憶手段25に記憶されて
いる未使用リスト220に繋ぐ。同時にパターンデータ
管理情報更新手段24は、削除されたパターンデータに
ついての情報をパターンデータ管理情報記憶手段23か
ら削除する。
【0051】次にパターンデータ更新手段21は、キャ
ッシュメモリ10への文字パターンの登録が終わった時
点で、未使用リスト220を走査し、パターンデータを
記憶するのに十分大きな連続する領域がとれないときに
は、パターンデータ詰め込み手段22にコンパクション
処理を依頼する。
【0052】ここで、「パターンデータを記憶するのに
十分大きな連続する領域がとれないとき」とは、キャッ
シュメモリ10に、予め設定されるパターンデータサイ
ズのパターンデータを記憶するための空き領域は存在す
るが、連続した空き領域としては存在していない状態を
いう。また予め設定されるパターンデータサイズとして
は、例えばキャッシュメモリ10に記憶されているパタ
ーンデータの中で、一番小さいパターンデータサイズを
採用すれば良い。
【0053】そしてパターンデータ詰め込み手段22
は、使用中のパターンデータの領域を移動し、断片領域
をまとめて大きな空き領域を作る処理(コンパクション
処理)を行う。なおこのような断片領域のまとめ処理は
パターンデータを削除する毎に行うようにしても良い。
【0054】なお上記第1の実施例では、利用状況情報
として頻度情報を用いているが、利用状況情報として文
字情報からパターンデータへの展開処理時間を示す情報
を用いるようにしても良い。この場合は、展開処理に時
間を要するパターンデータについてはキャッシュメモリ
に登録しておくようにする。これによって、展開処理に
時間を要するパターンデータの生成回数が削減されるの
で、パターンデータ出力を高速に行うことができる。
【0055】以上説明したように第1の実施例によれ
ば、キャッシュメモリの断片化を抑制することができる
ので、パターンデータをキャッシュメモリに記憶する際
に、多くの処理時間を要する空き領域確保処理が軽減さ
れ、かつ記憶領域の確保が容易となる。また断片化によ
るキャッシュメモリの使用効率の低下を防止することが
できる。すなわちキャッシュメモリに多くのパターンデ
ータを登録することができることになるので、キャッシ
ュヒット率を向上させることができる。従ってパターン
データ出力を高速に行うことができる。
【0056】次に第2の実施例について図5乃至図8を
参照して説明する。
【0057】図5は、本発明に係るキャッシュ制御装置
を機能ブロック図で示したものである。
【0058】同図において、キャッシュ制御装置は、文
字の出力要求を行う入力部410と、文字を出力する出
力部420と、文字パターンを生成するキャラクタジェ
ネレータ(以下、CGという)430と、文字パターン
をキャッシュするキャッシュメモリ装置440と、キャ
ッシュメモリ装置440を管理するキャッシュメモリ管
理部450と、文字の出力要求に応じた文字パターンを
CG430又はキャッシュメモリ装置440から得る文
字出力制御部460と、作成された文書を記憶する外部
記憶装置470と、中央処理装置(以下、CPUとい
う)480とを備えている。なお入力部410、出力部
420、文字出力制御部460、外部記憶装置470及
びCPU480はバス490に接続されており、CPU
480はバス490に接続された各部を制御する。
【0059】キャッシュメモリ装置440は、キャッシ
ュされた文字パターンを記憶するキャッシュメモリ44
1と、文字出力制御部460から渡された文字パターン
をキャッシュメモリ441に登録する登録部442と、
キャッシュメモリ441に記憶されている文字パターン
を所定形式の検索方法(例えば、先頭から検索する方
法、2分木探索方法等)に従って検索する文字検索部4
43とを有している。
【0060】キャッシュメモリ管理部450は、キャッ
シュメモリ441にキャッシュされている複数の文字パ
ターンの優先順位情報に基づいて、当該複数のデータの
配置を上記所定形式の検索方法に適合する配置に変更す
る。
【0061】この第2の実施例においては、上述した検
索手段は文字検索部443に対応し、上述した処理手段
はキャッシュメモリ管理部450に対応している。
【0062】係る構成において、キャッシュ制御装置の
概略処理について説明する。
【0063】入力部410によって文字の出力要求が行
われると、その情報が文字出力制御部460に渡され
る。
【0064】文字出力制御部460では、キャッシュメ
モリ装置440に対して、文字の出力要求に対応するパ
ターンがキャッシュされているかどうかを問い合わせ、
キャッシュされている場合は、キャッシュメモリ装置4
40から、要求された文字パターンを得る。一方、文字
パターンが存在していない場合は、CG430に対して
文字パターンの生成を要求し、CG430により生成さ
れた文字パターンを得る。このように新たな文字要求が
あった場合、文字出力制御部460では、CG430あ
るいはキャッシュメモリ441のいずれかから文字パタ
ーンを得ることになる。キャッシュメモリ441から文
字パターンが得られた場合は、キャッシュメモリ441
内の使用頻度情報が変更されることになる。一方、CG
430から文字パターンが得られた場合は、その文字パ
ターンがキャッシュメモリ441に登録される。いずれ
の場合も、キャッシュメモリ441内のキャッシュ情報
が変更されることになる。
【0065】このようにキャッシュ情報が変更されるよ
うな場合は、文字検索部443の検索方法に適した文字
パターンの再配置を行う必要がある、次にキャッシュメ
モリ管理部450の再配置処理について、図6に示すフ
ローチャートを参照して説明する。
【0066】すなわちキャッシュメモリ管理部450
は、キャッシュメモリ441内のキャッシュ情報が変更
されたか否かを判断し(ステップ510)、変更された
場合は、キャッシュメモリ内容の再配置の必要か否かを
判断し(ステップ520)、再配置の必要がある場合
は、予め設定されたアルゴリズムに従ってキャッシュメ
モリ内容の再配置を行う(ステップ530)。ここで、
もう少し詳細に説明すると、キャッシュメモリ管理部4
50は、キャッシュメモリ装置440内の文字検索部4
43が実行する検索処理における検索方法に適合するよ
うに、キャッシュメモリ441内の文字情報の配置を変
更する。すなわち、キャッシュメモリ441にキャッシ
ュされている複数の文字パターンの優先順位情報(例え
ば文字の出現頻度)に基づいて、キャッシュメモリ44
1から文字を得る場合に検索時間が短くなるように、文
字パターンの配置を変更する。ステップ510で「N
O」の場合、ステップ520で「NO」の場合は処理を
終了する。
【0067】次に具体例を挙げて説明する。
【0068】例えば、図9(a)に示した文字列が入力
されたとすると、図9(b)に示されるように使用頻度
の一番多い「あ」の文字がなるべく検索回数の少ない場
所に配置されるようにキャッシュメモリ内の文字情報位
置を変更する。この変更のアルゴリズムは、例えばその
文字の出現頻度を基に配置を変更するような手順になっ
ている。
【0069】具体的には、先頭から探索が行われる場
合、図9(a)に示される入力文字列に対しは、図10
に示されるキャッシュメモリの内容は、文字の頻度を基
に図7のように変更される。すなわち先頭から順に頻度
の高い文字が配置されることとなる。また2分木探索の
場合、図9(a)に示される入力文字列に対しは、図1
1に示されるキャッシュメモリの内容は、文字の頻度を
基に図8のように変更される。
【0070】なおこの第2の実施例では、頻度を基に再
配置するようにしているが、予め登録される文字自体に
属性情報としてのある重み付けを行っておき、この重み
情報を基に配置の変更を行うようにしても良い。
【0071】以上説明したように第2の実施例によれ
ば、キャッシュメモリ内の文字情報の配置を文字検索処
理に合うように再配置するようにしているので、検索に
要する時間を短縮することができる。
【0072】また第2の実施例の変形例として、キャッ
シュメモリ10内の文字パターンをインデックスや対応
表を介して検索するようにしている場合は、インデック
スや対応表に、通常の文字パターンに関する情報(例え
ば文字コード、キャッシュメモリ上のアドレス情報等)
を加えて、文字パターンの使用頻度などの利用状況情報
も登録しておく。そして、インデックスや対応表の内容
を、例えば先頭から検索する方法や2分木探索方法によ
って検索するようにしていた場合は、上述した第2の実
施例で説明したように、検索方法に適した位置に配置す
れば良い。従ってインデックスや対応表からの文字パタ
ーンに関する情報を迅速に検索することができることと
なり、よってキャッシュメモリ10からの文字パターン
の検索も迅速に行うことができる。
【0073】
【発明の効果】以上説明したように、第1の発明によれ
ば、更新手段が、第1の管理手段によって管理されてい
るキャッシュメモリの使用状況を示す情報、及び第2の
管理手段によって管理されているパターンデータの利用
状況を示す情報に基づいてキャッシュメモリの内容を更
新し、コンパクション手段は、判定手段によって、キャ
ッシュメモリの記憶領域の断片化が予め設定された状態
に達したと判定された場合は、キャッシュメモリに対す
るコンパクション処理を実行するようにしているので、
キャッシュメモリの記憶領域の断片化を抑制することが
できる。またキャッシュメモリの記憶領域の断片化を抑
制することにより、キャッシュメモリの使用効率を向上
させることができるので、多くのパターンデータをキャ
ッシュメモリに登録することができることになり、よっ
てキャッシュヒット率を向上させることができる。従っ
てパターンデータ出力を高速に行うことができるという
利点がある。
【0074】第2の発明によれば、変更手段は、キャッ
シュメモリにキャッシュされている複数のデータの優先
順位情報に基づいて、当該複数のデータの配置を、検索
手段が実行する検索処理における所定形式の検索方法に
適合する配置に変更するようにしているので、検索手段
による検索処理に適したデータの配置となるので、デー
タの検索を迅速に行うことができる。
【図面の簡単な説明】
【図1】本発明に係るキャッシュ制御装置の第1の実施
例を示す機能ブロック図。
【図2】第1の実施例の処理動作を示すフローチャー
ト。
【図3】第1の実施例のキャッシュメモリ使用状況記憶
手段に記憶されるキャッシュメモリ使用状況情報の一例
を示す図。
【図4】第1の実施例のパターンデータ管理情報記憶手
段に記憶されるパターンデータ管理情報の一例を示す
図。
【図5】本発明に係るキャッシュ制御装置の第2の実施
例を示す機能ブロック図。
【図6】第2の実施例の処理動作を示すフローチャー
ト。
【図7】第2の実施例のキャッシュメモリ管理部によっ
て再配置処理された後のキャッシュメモリの内容を示す
図。
【図8】第2の実施例のキャッシュメモリ管理部によっ
て再配置処理された後のキャッシュメモリの内容を示す
図。
【図9】従来におけるキャッシュメモリ内の文字パター
ンの検索処理を説明するための図。
【図10】従来におけるキャッシュメモリ内の文字パタ
ーンの検索処理を説明するための図。
【図11】従来におけるキャッシュメモリ内の文字パタ
ーンの検索処理を説明するための図。
【符号の説明】
4…キャッシュ制御装置、 10、441…キャッシュメモリ、 20…キャッシュメモリ管理手段、 21…パターンデータ更新手段、 22…パターンデータ詰め込み手段、 23…パターンデータ管理情報記憶手段、 24…パターンデータ管理情報更新手段、 25…キャッシュメモリ使用状況記憶手段、 26…キャッシュメモリ使用状況更新手段、 440…キャッシュメモリ装置、442…登録部、 443…文字検索部、450…キャッシュメモリ管理
部。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 パターンデータが記憶されるキャッシュ
    メモリを制御するキャッシュ制御装置において、 前記キャッシュメモリの使用状況を管理する第1の管理
    手段と、 前記キャッシュメモリに記憶されているパターンデータ
    の利用状況を管理する第2の管理手段と、 前記第1の管理手段及び第2の管理手段の管理内容に基
    づいて前記キャッシュメモリの内容を更新する更新手段
    と、 前記更新手段によって更新された前記キャッシュメモリ
    の記憶領域の断片化が予め設定された状態に達したか否
    かを判定する判定手段と、 前記判定手段によって前記断片化が前記予め設定された
    状態に達したと判定された場合は、前記キャッシュメモ
    リに対するコンパクション処理を実行するコンパクショ
    ン手段とを具備したことを特徴とするキャッシュ制御装
    置。
  2. 【請求項2】 キャッシュメモリからデータを検索して
    出力するキャッシュ制御装置において、 所定形式の検索方法に従って前記キャッシュメモリにキ
    ャッシュされているデータを検索する検索手段と、 前記キャッシュメモリにキャッシュされている複数のデ
    ータそれぞれの優先順位情報に基づいて、当該複数のデ
    ータの配置を前記所定形式の検索方法に適合する配置に
    変更する変更手段とを具備したことを特徴とするキャッ
    シュ制御装置。
JP5052648A 1993-03-12 1993-03-12 キャッシュ制御装置 Pending JPH06266622A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5052648A JPH06266622A (ja) 1993-03-12 1993-03-12 キャッシュ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5052648A JPH06266622A (ja) 1993-03-12 1993-03-12 キャッシュ制御装置

Publications (1)

Publication Number Publication Date
JPH06266622A true JPH06266622A (ja) 1994-09-22

Family

ID=12920672

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5052648A Pending JPH06266622A (ja) 1993-03-12 1993-03-12 キャッシュ制御装置

Country Status (1)

Country Link
JP (1) JPH06266622A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010160544A (ja) * 2009-01-06 2010-07-22 Core Micro Systems Inc キャッシュメモリシステム及びキャッシュメモリの制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010160544A (ja) * 2009-01-06 2010-07-22 Core Micro Systems Inc キャッシュメモリシステム及びキャッシュメモリの制御方法

Similar Documents

Publication Publication Date Title
CN110268394B (zh) 用于存储和操作键值数据的方法、***及机器可读存储媒体
US8224829B2 (en) Database
CN110383261B (zh) 用于多流存储装置的流选择
US5799299A (en) Data processing system, data retrieval system, data processing method and data retrieval method
AU2002222096A1 (en) Method of organising, interrogating and navigating a database
KR100260868B1 (ko) 배열 변경을 최적화하기 위해 배열 요소를 정렬하는 컴퓨터 시스템 및 방법
JP3992495B2 (ja) トリー構造に基づく機能的メモリ
US7054994B2 (en) Multiple-RAM CAM device and method therefor
JP2000324172A (ja) アドレスに関するプレフィクスの格納方法
JP3251138B2 (ja) ハッシュ方式
JP3363292B2 (ja) データベース管理システム
JPH06266622A (ja) キャッシュ制御装置
CN108614879A (zh) 小文件处理方法与装置
JP3703874B2 (ja) ファイル管理方法及びファイル管理装置
JP2743849B2 (ja) 更新バッファ管理装置
JP2003150641A (ja) ハッシュを用いた記憶・検索方法,記憶・検索装置および記憶・検索プログラム
JP2001101047A (ja) データ管理装置、データ管理方法および記録媒体
CN114218272A (zh) 一种基于art树的存储引擎缓存方法及***
CN117632946A (zh) 基于动态前缀的层级b+树算法、装置及计算机存储介质
JP2002149702A (ja) 木構造情報検索方法および装置
JPH08328946A (ja) 2次記憶領域の管理方法
JPH08129556A (ja) データの格納方法
JPH07210563A (ja) 索引処理方法
JPH08263044A (ja) 文字処理装置
JPH08101848A (ja) 文書処理装置及び検索方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031224