JPH07152643A - Virtual storage system - Google Patents

Virtual storage system

Info

Publication number
JPH07152643A
JPH07152643A JP5326197A JP32619793A JPH07152643A JP H07152643 A JPH07152643 A JP H07152643A JP 5326197 A JP5326197 A JP 5326197A JP 32619793 A JP32619793 A JP 32619793A JP H07152643 A JPH07152643 A JP H07152643A
Authority
JP
Japan
Prior art keywords
data
page
data conversion
storage device
conversion
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.)
Granted
Application number
JP5326197A
Other languages
Japanese (ja)
Other versions
JP2932919B2 (en
Inventor
Ichiro Yamashita
一郎 山下
Shigehisa Kawabe
恵久 川邉
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 JP5326197A priority Critical patent/JP2932919B2/en
Publication of JPH07152643A publication Critical patent/JPH07152643A/en
Application granted granted Critical
Publication of JP2932919B2 publication Critical patent/JP2932919B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To provide the virtual storage system which is highly flexibly by performing flexible data conversion at the time of a page-in and a page-out process as to a virtual storage system which employs a paging system. CONSTITUTION:When a memory management device 1 sends a page-in indication to a pager 2, data before conversion which are read in a temporary storage device 5 from a magnetic disk device 6 or paged out and present in the temporary storage device 5 are converted by a data converting device 4 by the indication of the pager 2 and written in a specific page of a main storage device 3. When a page-out indication is made, the data converting device 4 performs data conversion and writes the data in the temporary storage device 5 and the page is released. Information for the switching of the data conversion and the switching of paging operation is stored in, for example, a paging table and on the basis of the table, the data converting process and paging process are carried out.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、データプロセッサの仮
想記憶システムに関し、特に、ページング方式による仮
想記憶システムに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processor virtual storage system, and more particularly to a paging type virtual storage system.

【0002】[0002]

【従来の技術】従来より用いられているページング方式
による仮想記憶システムでは、主記憶装置と補助記憶装
置を含み、仮想記憶域をページ単位に分割し、また、主
記憶装置全体をページ枠に分割し、ページ単位で主記憶
装置と補助記憶装置との間でデータの転送を行なうもの
である。ページング方式による仮想記憶システムは、メ
インフレームコンピュータに始まり、ワークステーショ
ンやパーソナルコンピュータにおいてまで利用可能なほ
ど普及している。
2. Description of the Related Art A conventional paging type virtual storage system includes a main storage device and an auxiliary storage device, divides a virtual storage area into pages, and divides the entire main storage device into page frames. However, data is transferred between the main storage device and the auxiliary storage device in page units. The virtual memory system based on the paging system has spread so that it can be used not only in mainframe computers but also in workstations and personal computers.

【0003】例えば、Rashid,R.他,”Mac
hine−IndependentVirtual M
emory Management for Page
dUniprocessor and Multipr
ocessor Architectures”,CM
U Techinical Report,Vol.C
MU−CS−87−140(1987)で説明されてい
るMach OSの外部ページャでは、ページインやペ
ージアウトの要求をメッセージとして扱うことにより、
ページング操作をカーネル空間、ユーザ空間、自ホス
ト、遠隔ホストのいずれでも行なうことを可能にしてい
る。
For example, Rashid, R .; Others, "Mac
Hine-Independent Virtual M
emory Management for Page
dUniprocessor and Multipr
processor Architectures ”, CM
U Technical Report, Vol. C
The external pager of Mach OS described in MU-CS-87-140 (1987) handles page-in and page-out requests as messages,
It is possible to perform paging operations in kernel space, user space, own host, or remote host.

【0004】また、荻野達也他,”ToM マイクロカ
ーネル”電子情報通信学会論文誌D−1,Vol.J7
5−D−1,No.8,pp555−562(199
2)で説明されているToM OSの仮想記憶方式で
は、ページフォルトとページアウト要求はイベントとし
て抽象化されている。ページフォルト・イベントが発生
すると、カーネルが物理ページを確保し、イベント処理
スレッドがページイン処理用のページャエントリに遠隔
手続き呼び出しを行なう。また、物理ページを確保する
際に、ページアウトが必要な場合には、ページアウトし
たい仮想ページに対してページアウト・イベントを発生
させ、イベント処理スレッドがページアウト処理用のペ
ージャエントリに遠隔手続き呼び出しを行なう。
Also, Tatsuya Ogino et al., "ToM Microkernel," IEICE Transactions D-1, Vol. J7
5-D-1, No. 8, pp555-562 (199
In the virtual storage system of ToMOS described in 2), page faults and page out requests are abstracted as events. When a page fault event occurs, the kernel reserves a physical page and the event processing thread makes a remote procedure call to the pager entry for page in processing. If a page-out is required to secure a physical page, a page-out event is generated for the virtual page to be paged out, and the event processing thread calls the remote procedure for the pager entry for page-out processing. Do.

【0005】さらに、特開昭62−197843号公報
や、特開平1−169555号公報などでは、仮想記憶
空間に補助記憶装置上のファイルをマッピングして、ア
クセスすることでファイルに対する入出力に代わって仮
想記憶管理機構を利用した入出力を行なう仮想外記憶装
置について開示している。
Further, in Japanese Laid-Open Patent Publication No. 62-197843 and Japanese Laid-Open Patent Publication No. 1-169555, a file in an auxiliary storage device is mapped in a virtual storage space and accessed to replace input / output to / from the file. And a virtual external storage device that performs input / output using a virtual storage management mechanism.

【0006】上述の各仮想記憶管理システムでは、補助
記憶装置と主記憶装置との間のデータ転送は、主記憶装
置に転送されるデータそのものにより行なわれている。
近年、例えば画像処理などのように、多量のデータを扱
うようになるとともに、ページングのために必要となる
補助記憶装置の容量の増加、及び、補助記憶装置と主記
憶装置との間の転送効率が問題となっている。
In each of the above virtual memory management systems, data transfer between the auxiliary memory device and the main memory device is performed by the data itself transferred to the main memory device.
In recent years, for example, as in the case of image processing, a large amount of data is used, the capacity of the auxiliary storage device required for paging is increased, and the transfer efficiency between the auxiliary storage device and the main storage device is increased. Is a problem.

【0007】このような問題に対処するため、従来のい
くつかのシステムでは、ページングの際にデータを圧縮
あるいは伸張する処理を行なうことが考えられている。
例えば、特開平4−14154号公報や、特開昭62−
154152号公報に記載されたシステムでは、主記憶
装置にあるデータを圧縮して補助記憶装置の未使用域に
書き出し、また、補助記憶装置にある圧縮データを伸張
復元して主記憶装置に読み込むことにより、補助記憶装
置上の領域を節約するとともに、圧縮された形でデータ
転送を行ない、転送効率を向上させている。
In order to deal with such a problem, in some conventional systems, it is considered that data is compressed or expanded during paging.
For example, JP-A-4-14154 and JP-A-62-
In the system described in Japanese Patent No. 154152, the data in the main storage device is compressed and written to an unused area of the auxiliary storage device, and the compressed data in the auxiliary storage device is decompressed and restored and read into the main storage device. This saves the area on the auxiliary storage device and transfers data in a compressed form to improve the transfer efficiency.

【0008】一方、情報機器としてコンピュータが一般
化し、個人利用に供されるにつれて、情報の暗号化、情
報の圧縮、画像情報の階調変換や解像度変換などの前処
理や後処理を行なう必要性が高まって来ている。従来、
このような情報の暗号化、情報の圧縮、画像情報の階調
変換や解像度変換などの前処理、後処理は、専用のプロ
グラムで行なうか、あるいは、アプリケーションプログ
ラムの内部に組み込まれて実行されている。
On the other hand, as computers have become common as information equipment and are used for personal use, it is necessary to perform pre-processing and post-processing such as information encryption, information compression, gradation conversion and resolution conversion of image information. Is increasing. Conventionally,
Such pre-processing and post-processing such as information encryption, information compression, image information gradation conversion and resolution conversion are performed by a dedicated program, or are executed by being incorporated in an application program. There is.

【0009】これらの処理は、ユーザが所望する処理の
前後に決まって行なわれる場合が多い。そのため、これ
らの処理をシステム側で効率良く行なう機構が望まれて
いる。その一つとして、仮想記憶システムにおいて、こ
れらの前処理、後処理を行なうことが考えられる。
In many cases, these processes are performed before and after the process desired by the user. Therefore, a mechanism for efficiently performing these processes on the system side is desired. As one of them, it is conceivable to perform these pre-processing and post-processing in the virtual memory system.

【0010】上述した従来の仮想記憶システムでは、圧
縮伸張についてはデータ転送時に行なうものの、その他
の処理をデータ転送時に行なうことは全く考えられてい
なかった。これは、従来のシステムが、補助記憶装置の
効率的な利用と転送効率の向上のみを目指すものである
ことによる。また、従来のシステムでは、圧縮及び伸張
の処理は、データ転送時に必ず行なわれてしまい、デー
タの種類、システムの状態、あるいは、ユーザの意図な
どに応じて選択的に行なえるものではなかった。
In the above-mentioned conventional virtual memory system, compression / expansion is performed at the time of data transfer, but it has not been considered at all to perform other processing at the time of data transfer. This is because the conventional system aims only to efficiently use the auxiliary storage device and improve the transfer efficiency. Further, in the conventional system, the compression and decompression processes are always performed at the time of data transfer, and cannot be selectively performed according to the type of data, the state of the system, or the intention of the user.

【0011】[0011]

【発明が解決しようとする課題】本発明は、上述した事
情に鑑みてなされたもので、ページング方式による仮想
記憶システムにおいて、ページインやページアウトの際
に、単にデータを転送するだけでなく、柔軟なデータ変
換を行なうことにより、融通性の高い仮想記憶システム
を提供することを目的とするものである。
SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned circumstances, and in a paging-type virtual storage system, not only is data transferred at the time of page-in or page-out, It is an object of the present invention to provide a highly flexible virtual storage system by performing flexible data conversion.

【0012】[0012]

【課題を解決するための手段】本発明は、ページ方式の
仮想記憶システムにおいて、主記憶装置と、少なくとも
前記主記憶装置を管理する記憶管理手段と、データ転送
に関する情報を保持するデータ転送情報保持手段と、デ
ータ変換に関する情報を保持するデータ変換情報保持手
段と、転送データに対してデータ変換を行なうデータ変
換手段と、前記データ転送情報保持手段に保持されてい
るデータ転送に関する情報を参照しページ単位のデータ
転送を行なうとともに該データ転送の際に前記データ変
換情報保持手段に保持されているデータ変換に関する情
報に基づき前記データ変換手段に対する所定のデータ変
換の指示及び前記記憶管理手段に対する管理指示を行な
うページャを有することを特徴とするものである。
According to the present invention, in a page-type virtual storage system, a main storage device, storage management means for managing at least the main storage device, and data transfer information holding for holding information relating to data transfer. A page for referring to a means, a data conversion information holding means for holding information about data conversion, a data conversion means for performing data conversion on transfer data, and a data transfer information held in the data transfer information holding means. A unit data transfer is performed, and a predetermined data conversion instruction to the data conversion means and a management instruction to the storage management means are issued to the data conversion means based on the data conversion information held in the data conversion information holding means at the time of the data transfer. It is characterized by having a pager for performing.

【0013】前記ページャは、補助記憶装置または一時
記憶装置と前記主記憶装置の間、あるいは、前記主記憶
装置内のページング対象領域とページング対象外領域と
の間でページ単位のデータ転送を行ない、データ転送の
際に、前記データ変換手段により転送データに対してデ
ータ変換を行なうように構成することができる。
The pager transfers data in page units between an auxiliary storage device or a temporary storage device and the main storage device, or between a paging target area and a non-paging target area in the main storage device, At the time of data transfer, the data conversion means may be configured to perform data conversion on the transfer data.

【0014】このとき、前記ページャが前記主記憶装置
内のページング対象領域とページング対象外領域との間
でページ単位のデータ転送を行なう場合に、前記記憶管
理手段は、前記データ変換情報保持手段が保持している
データ変換に関する情報に基づき前記主記憶装置内のペ
ージング対象外領域にページアウトされている所定のペ
ージを消去しないように管理可能に構成することができ
る。また、前記ページャが前記主記憶装置と補助記憶装
置との間でページ単位のデータ転送を行なう場合に、前
記記憶管理手段は、前記主記憶装置内のデータが前記デ
ータ変換手段で変換されずに補助記憶装置にページアウ
トされないように管理可能に構成することができる。
At this time, when the pager transfers data in page units between the paging target area and the non-paging target area in the main storage device, the storage management means is configured such that the data conversion information holding means is It is possible to manage so that a predetermined page paged out to the non-paging target area in the main storage device is not erased based on the held information about the data conversion. Further, when the pager transfers data in page units between the main storage device and the auxiliary storage device, the storage management means does not convert the data in the main storage device by the data conversion means. It can be configured so that it cannot be paged out to the auxiliary storage device.

【0015】また、前記データ変換手段は複数のデータ
変換処理を有し、前記ページャからの指示に従って前記
複数のデータ変換処理の中から1つまたは複数のデータ
変換処理を選択し、前記ページャによるデータ転送の際
に、転送データに対して選択されたデータ変換処理を施
すことができるように構成することができる。
Further, the data conversion means has a plurality of data conversion processes, selects one or a plurality of data conversion processes from the plurality of data conversion processes according to an instruction from the pager, and outputs data by the pager. It can be configured such that the selected data conversion processing can be performed on the transfer data at the time of transfer.

【0016】複数のデータ変換処理の選択は、所定の手
続きを実行した結果や、ユーザが指定するパラメータ、
システムの状態やページの属性などの情報に基づいて行
なうように構成することができる。
A plurality of data conversion processes are selected by selecting a result of executing a predetermined procedure, a parameter designated by the user,
It can be configured to be performed based on information such as system status and page attributes.

【0017】さらに、前記データ変換手段は、ユーザが
あらかじめ用意した所定のデータ変換手続きを登録可能
に構成することができる。
Further, the data conversion means can be configured so that a predetermined data conversion procedure prepared by the user can be registered.

【0018】[0018]

【作用】本発明によれば、データ転送に関する情報とと
もにデータ変換に関する情報が保持可能に構成されてお
り、ページャは、データ転送に関する情報を参照してペ
ージ単位のデータ転送を行なうとともに、データ転送の
際にデータ変換に関する情報に基づいてデータ変換手段
により自動的に所定のデータ変換を行なう。そのため、
データ変換に関する情報の設定に応じて柔軟にデータ変
換を行なうことができる。このとき、従来ではアプリケ
ーションにより行なわれていたデータ変換をページング
の際のデータ転送時にデータ変換手段により行なうた
め、アプリケーション側にデータ変換のためのプログラ
ムを用意する必要かなく、アプリケーションプログラム
の開発及び構成が簡単となる。
According to the present invention, the information about the data transfer and the information about the data conversion can be held, and the pager refers to the information about the data transfer to perform the data transfer on a page-by-page basis. At this time, the data conversion means automatically performs a predetermined data conversion based on the information regarding the data conversion. for that reason,
The data conversion can be flexibly performed according to the setting of the information regarding the data conversion. At this time, since the data conversion that has been conventionally performed by the application is performed by the data conversion means at the time of data transfer during paging, it is not necessary to prepare a program for data conversion on the application side, and the development and configuration of the application program are performed. Will be easier.

【0019】ページャによるデータ転送の対象として
は、補助記憶装置または一時記憶装置と主記憶装置の
間、あるいは、主記憶装置内のページング対象領域とペ
ージング対象外領域との間とすることができ、特に、一
時記憶装置と主記憶装置の間、あるいは、主記憶装置内
のページング対象領域とページング対象外領域との間で
のデータ転送では、データ転送の際に、データ変換手段
により転送データに対してデータ変換を行なうことによ
り、高速なデータ転送およびデータ変換を実現すること
ができる。
The target of data transfer by the pager can be between the auxiliary storage device or the temporary storage device and the main storage device, or between the paging target area and the non-paging target area in the main storage device, In particular, in the data transfer between the temporary storage device and the main storage device, or between the paging target area and the non-paging target area in the main storage device, the data conversion means converts the transfer data to the transfer data during the data transfer. By performing the data conversion by the data conversion, high-speed data transfer and data conversion can be realized.

【0020】ページャが主記憶装置内のページング対象
領域とページング対象外領域との間でページ単位のデー
タ転送を行なう場合には、記憶管理手段は、データ変換
に関する情報に基づき、主記憶装置内のページング対象
外領域にページアウトされている所定のページを消去し
ないように管理可能である。そのため、例えば、変換前
のデータを消去せずに記憶させておくことにより、ペー
ジインされた変換後のデータだけでなく、ページアウト
されている変換前のデータをも、プロセスからアクセス
可能に構成することができる。
When the pager transfers data in page units between the paging target area and the non-paging target area in the main storage device, the storage management means stores the data in the main storage device based on the information regarding the data conversion. It is possible to manage not to delete a predetermined page that is paged out to the non-paging area. Therefore, for example, by storing the data before conversion without erasing it, not only the converted data that was paged in but also the data that was paged out before conversion can be accessed from the process. can do.

【0021】ページャが前記主記憶装置と補助記憶装置
との間でページ単位のデータ転送を行なう場合に、主記
憶装置内のデータがデータ変換手段で変換されずに補助
記憶装置にページアウトされないように、記憶管理手段
が管理することにより、例えば、暗号化データを復号化
して主記憶装置に転送した後、復号化データがそのまま
補助記憶装置にページアウトされてしまうのを防ぎ、機
密を保持することができる。
When the pager transfers data in page units between the main storage device and the auxiliary storage device, the data in the main storage device is not converted by the data conversion means and is not paged out to the auxiliary storage device. In addition, by managing the storage management means, for example, after the encrypted data is decrypted and transferred to the main storage device, the decrypted data is prevented from being paged out to the auxiliary storage device as it is, and the confidentiality is maintained. be able to.

【0022】データ変換手段が複数のデータ変換処理を
有し、前記ページャからの指示に従って前記複数のデー
タ変換処理の中から1つまたは複数のデータ変換処理を
選択し、前記ページャによるデータ転送の際に、転送デ
ータに対して選択されたデータ変換処理を施すことによ
り、種々の状態に対応した柔軟なデータ変換をデータ転
送時に行なうことができる。データ変換処理の選択は、
例えば、所定の手続きを実行した結果や、ユーザが指定
するパラメータ、システムの状態やページの属性などの
情報に基づいて行なうことができる。
The data conversion means has a plurality of data conversion processes, selects one or a plurality of data conversion processes from the plurality of data conversion processes according to an instruction from the pager, and transfers the data by the pager. By performing the selected data conversion process on the transfer data, it is possible to perform flexible data conversion corresponding to various states at the time of data transfer. The choice of data conversion process is
For example, it can be performed based on the result of executing a predetermined procedure, parameters specified by the user, system status, page attributes, and the like.

【0023】さらに、データ変換手段は、ユーザがあら
かじめ用意した所定のデータ変換手続きを登録可能に構
成することができ、よりユーザの意向に即した柔軟なデ
ータ変換を実現することができる。
Further, the data conversion means can be configured so that a predetermined data conversion procedure prepared by the user can be registered, and a flexible data conversion more suited to the user's intention can be realized.

【0024】[0024]

【実施例】図1は、本発明の仮想記憶システムの一実施
例を示すブロック構成図である。図中、1はメモリ管理
装置、2はページャ、3は主記憶装置、4はデータ変換
装置、5は一時記憶装置、6は磁気ディスク装置であ
る。
1 is a block diagram showing an embodiment of a virtual storage system of the present invention. In the figure, 1 is a memory management device, 2 is a pager, 3 is a main storage device, 4 is a data conversion device, 5 is a temporary storage device, and 6 is a magnetic disk device.

【0025】主記憶装置3は、ある一定の記憶容量の領
域、すなわち、ページに分割され、ページの単位で管理
される。また、一時記憶装置5も、ページに分割され、
ページの単位で管理される。主記憶装置3と一時記憶装
置5のページサイズは同一でなくてもよい。一時記憶装
置5には、磁気ディスク装置6との間で転送されるデー
タ、および、主記憶装置3との間で転送されるデータで
あって、データ変換装置4による変換前のデータが保持
される。以下の説明で、変換前のデータとは、主記憶装
置3への転送データの変換前のデータを示し、変換後の
データとは、主記憶装置3へ転送されたデータ変換のな
されたデータを示す。主記憶装置3からページアウトさ
れる場合には、変換後のデータがデータ変換装置4によ
り変換前のデータに変換されるものとする。磁気ディス
ク装置6は、ある一定の記憶容量の領域に分割されたブ
ロックの単位で管理されている。このブロックは、必ず
しもページと同じサイズでなくともよい。
The main memory 3 is divided into areas having a certain storage capacity, that is, pages, and managed in page units. The temporary storage device 5 is also divided into pages,
It is managed in page units. The page sizes of the main storage device 3 and the temporary storage device 5 do not have to be the same. The temporary storage device 5 holds data transferred to and from the magnetic disk device 6 and data transferred to and from the main storage device 3 before conversion by the data conversion device 4. It In the following description, the data before conversion refers to the data before conversion of the transfer data to the main storage device 3, and the data after conversion refers to the data that has been converted to the data transferred to the main storage device 3. Show. When paged out from the main storage device 3, it is assumed that the converted data is converted into the data before conversion by the data conversion device 4. The magnetic disk device 6 is managed in units of blocks divided into areas having a certain storage capacity. This block does not necessarily have to be the same size as the page.

【0026】メモリ管理装置1は、主記憶装置3及び一
時記憶装置5の管理を行ない、例えば、ページの割当て
及び解放、空きページの管理などを行なう。また、メモ
リ管理装置1は、仮想記憶空間上のアドレスと、主記憶
装置3上の実アドレス、及び、一時記憶装置5に退避し
ているデータのアドレス、さらに、磁気ディスク装置6
のアドレスを管理するためのページテーブルを有してい
る。このページテーブルを用いて、論理アドレスから物
理アドレスへのアドレス変換が行なわれる。このページ
テーブルには、データ変換を行なうための情報も保持さ
れている。
The memory management device 1 manages the main storage device 3 and the temporary storage device 5, for example, allocates and releases pages and manages empty pages. In addition, the memory management device 1 has an address in the virtual storage space, a real address in the main storage device 3, an address of data saved in the temporary storage device 5, and the magnetic disk device 6 as well.
It has a page table for managing the addresses of. Address conversion from a logical address to a physical address is performed using this page table. This page table also holds information for data conversion.

【0027】ページャ2は、メモリ管理装置1に保持さ
れているページテーブルを参照し、主記憶装置3と一時
記憶装置5の間、及び、一時記憶装置5と磁気ディスク
装置6との間のデータ転送を行なう。主記憶装置3と一
時記憶装置5の間のデータ転送を行なう際には、ページ
テーブルを参照し、データ変換を行なうための情報に従
って、必要な場合には転送データに対して指定されたデ
ータ変換が行なわれるように、データ変換装置4に指示
する。
The pager 2 refers to the page table held in the memory management device 1 and refers to data between the main storage device 3 and the temporary storage device 5 and between the temporary storage device 5 and the magnetic disk device 6. Transfer. When performing data transfer between the main storage device 3 and the temporary storage device 5, the page table is referred to, and according to the information for performing the data conversion, the data conversion specified for the transfer data is performed if necessary. The data conversion device 4 is instructed to perform.

【0028】データ変換装置4は、ページャ2によるデ
ータ転送の際に転送データに対して所定の変換処理を行
なう。データ変換装置4は、複数のデータ変換方式を用
意しておくことができる。例えば、第1の変換方式と、
その逆変換である第2の変換方式を用意しておき、ペー
ジインの際には第1の変換方式を、ページアウトの際に
は第2の変換方式を適用することができる。このとき、
第1の変換方式は、変換前データを変換後データに変換
し、第2の変換方式は、変換後データを変換前データに
戻す変換を行なうことになる。データ変換装置4で行な
うデータ変換は、可逆変換に限らず、変換後のデータに
第2の変換方式を適用した結果が変換前のデータと異な
る変換であってもよい。また、1つの変換方式のみを用
いてもよく、この場合、1つの変換方式で双方向の変換
を行なってもよい。例えば、画像の白黒の反転処理を変
換方式として用いる場合には、1つの変換方式で双方向
の変換を行うことができる。さらに、多数の変換方式を
内蔵し、切り換えて用いることもできる。もちろん、ペ
ージャ2は、ページテーブル内のデータ変換を行なうた
めの情報に基づき、データ変換装置4による変換を行な
わないという選択を行なうことも可能である。データ変
換装置4に、変換を行なわないという変換方式を登録し
ておいて、これを選択するように構成したり、データ変
換装置をバイパスするように構成することもできる。
The data converter 4 performs a predetermined conversion process on the transfer data when the pager 2 transfers the data. The data conversion device 4 can prepare a plurality of data conversion methods. For example, the first conversion method,
It is possible to prepare a second conversion method that is the reverse conversion, and apply the first conversion method at the time of page-in and the second conversion method at the time of page-out. At this time,
The first conversion method is to convert the pre-conversion data into the post-conversion data, and the second conversion method is to convert the post-conversion data back into the pre-conversion data. The data conversion performed by the data conversion device 4 is not limited to the reversible conversion, and the result obtained by applying the second conversion method to the converted data may be different from that before the conversion. Further, only one conversion method may be used, and in this case, bidirectional conversion may be performed by one conversion method. For example, when the black and white inversion processing of an image is used as a conversion method, bidirectional conversion can be performed by one conversion method. Furthermore, a large number of conversion methods can be built in and switched. Of course, the pager 2 can also select not to perform the conversion by the data conversion device 4 based on the information for performing the data conversion in the page table. It is also possible to register a conversion method in which no conversion is performed in the data conversion device 4 and select this, or to bypass the data conversion device.

【0029】この実施例では、主記憶装置3と磁気ディ
スク装置6の間に一時記憶装置5を設け、一時記憶装置
5と主記憶装置3との間のデータ転送の際にデータ変換
装置4によりデータ変換を行なう例を示している。もち
ろん、一時記憶装置5を用いずに直接主記憶装置3と磁
気ディスク装置6との間でデータ転送を行なうように構
成することもできる。または、複数の一時記憶装置を用
いてもよい。あるいは、主記憶装置3をページング対象
領域と対象外領域に分け、その間でページングを行なう
ように構成することもできる。本発明は、一般的に、階
層的な記憶装置に対して適用することができる。
In this embodiment, a temporary storage device 5 is provided between the main storage device 3 and the magnetic disk device 6, and the data conversion device 4 uses the temporary storage device 5 when transferring data between the temporary storage device 5 and the main storage device 3. An example of performing data conversion is shown. Of course, it is also possible to directly transfer data between the main storage device 3 and the magnetic disk device 6 without using the temporary storage device 5. Alternatively, a plurality of temporary storage devices may be used. Alternatively, the main memory 3 may be divided into a paging target area and a non-target area, and paging may be performed between them. The present invention is generally applicable to hierarchical storage devices.

【0030】また、磁気ディスク装置6の代わりに光デ
ィスク装置やあるいは光磁気ディスク装置、フロッピー
装置、半導体メモリを利用したシリコンディスク装置、
ランダムアクセスが可能なテープ装置など、種々の装置
を1つまたは複数台あるいは複数種類の装置を組み合わ
せて用いても良い。
Further, instead of the magnetic disk device 6, an optical disk device or a magneto-optical disk device, a floppy device, a silicon disk device using a semiconductor memory,
One or more of various devices such as a tape device capable of random access or a combination of a plurality of types of devices may be used.

【0031】この実施例では、データ変換装置4による
データ変換は、主記憶装置3と一時記憶装置5の間の転
送データに対して行なっているが、例えばページインの
際に、データ変換後のデータを一旦一時記憶装置5に格
納してから転送し、ページアウトの際には、一旦一時記
憶装置5に格納してからデータ変換を行なうように構成
してもよい。その場合には、データ変換装置4は、変換
前のデータと変換後のデータを別の一時記憶装置5ある
いは一時記憶装置5の別の領域に記録することも可能で
ある。
In this embodiment, the data conversion by the data conversion device 4 is performed on the transfer data between the main storage device 3 and the temporary storage device 5, but at the time of page-in, for example, after the data conversion. The data may be temporarily stored in the temporary storage device 5 and then transferred. When the page-out is performed, the data may be stored in the temporary storage device 5 and then converted. In that case, the data conversion device 4 can also record the data before conversion and the data after conversion in another temporary storage device 5 or another area of the temporary storage device 5.

【0032】図2は、ページテーブルの一例の説明図で
ある。図2に示したページテーブルは、仮想空間に割り
当てられたページごとに、1つのエントリが割り当てら
れている。1つのエントリは、仮想アドレス部、実アド
レス部、フラグ1部、一時記憶装置アドレス列部、フラ
グ2部、磁気ディスク装置アドレス列部、オフセット
部、アクション部から構成されている。
FIG. 2 is an explanatory diagram of an example of the page table. In the page table shown in FIG. 2, one entry is assigned to each page assigned to the virtual space. One entry is composed of a virtual address part, a real address part, a flag part 1, a temporary storage device address string part, a flag part 2, a magnetic disk device address string part, an offset part, and an action part.

【0033】実アドレス部は、仮想空間上のページの実
データが保持されている主記憶装置3上のページのアド
レスを保持する。フラグ1部は、その主記憶装置3上の
ページに対して、データの更新があったことを記録す
る。すなわち、そのページがページインされたときに
は、フラグ1部は初期状態としてクリアされ、主記憶装
置3上のページに対して変更のアクセスがあったときに
印が付けられ、ページアウトされたときにはクリアされ
る。
The real address section holds the address of the page in the main storage device 3 where the real data of the page in the virtual space is held. The flag 1 copy records that the data in the page in the main storage device 3 has been updated. That is, when the page is paged in, the flag 1 part is cleared as an initial state, is marked when there is a change access to the page in the main storage device 3, and is cleared when the page is paged out. To be done.

【0034】一時記憶装置アドレス列部は、仮想空間上
のページの変換前のデータとして必要なデータがキャッ
シュされている一時記憶装置5上のアドレスの列を保持
している。フラグ2部は、その一時記憶装置5上のペー
ジに対してデータの更新があったことを記録する。すな
わち、そのページが磁気ディスク装置6から読み込まれ
たときには、フラグ2部は初期状態としてクリアされ、
データ変換装置4によってそのページに書き込みがあっ
たときに印が付けられ、磁気ディスク装置6へ書き出さ
れたときにはクリアされる。
The temporary storage device address string portion holds a string of addresses on the temporary storage device 5 in which data required as data before conversion of a page in the virtual space is cached. The flag 2 part records that the data on the page in the temporary storage device 5 has been updated. That is, when the page is read from the magnetic disk device 6, the flag 2 part is cleared as the initial state,
The page is marked when the page is written by the data conversion device 4, and cleared when the page is written to the magnetic disk device 6.

【0035】磁気ディスク装置アドレス列部は、仮想記
憶上のページの変換前のデータとして必要な磁気ディス
ク装置6上のブロックのアドレスの列を保持する。オフ
セット部は、その仮想記憶上のページのデータが、磁気
ディスク装置アドレス列に記述された変換前のデータか
らデータ変換装置4で変換されたとき、変換後のデータ
の何ページ目に存在するかの情報を保持している。
The magnetic disk device address string portion holds a string of addresses of blocks on the magnetic disk device 6 required as data before conversion of a page in virtual storage. When the data of the page on the virtual memory is converted by the data converter 4 from the data before conversion described in the magnetic disk device address string, the offset unit is in which page of the data after conversion. Holds the information of.

【0036】アクション部は、仮想記憶上のページに対
して、データ変換装置4がデータ変換のために用いる情
報や、メモリ管理装置1がページングの際に行なう処理
情報などを保持する。例えば、データ変換装置4のデー
タ変換機能を用いて変換を行なうか否かや、データ変換
装置4に多数のデータ変換方式が用意されている場合、
どのデータ変換方式を用いるかを示す。また、メモリ管
理装置1に対して、変換前のデータをページアウトしな
いように指示するためにも用いられる。以下、この実施
例の説明では、アクション部に印があった場合にデータ
変換装置4によりデータ変換を行なうものとする。
The action section holds information used for data conversion by the data conversion device 4 and processing information performed by the memory management device 1 at the time of paging for a page in virtual storage. For example, whether or not to perform conversion using the data conversion function of the data conversion device 4 and whether the data conversion device 4 has a large number of data conversion methods,
Indicates which data conversion method to use. It is also used to instruct the memory management device 1 not to page out the data before conversion. In the following description of this embodiment, it is assumed that the data conversion device 4 performs data conversion when the action part is marked.

【0037】図2に示した例では、仮想アドレスAv1
に対応するデータは、主記憶装置3にはページインされ
ていない。また、アクション部に変換を示すIDが記述
されているので、ページングの際にデータ変換装置4に
より所定のデータ変換を行なうことを示している。ペー
ジインの際に用いる変換前のデータは、一時記憶装置5
のアドレスAb1,Ab2にすでに格納されており、さ
らに、その変換前のデータは、磁気ディスク装置6上の
アドレスAd1,Ad2に格納されている。オフセット
が0であるので、ページインのとき、データ変換装置4
によりデータ変換を行なって、その最初のページのデー
タが仮想アドレスAv1に対応する実データとして主記
憶装置3にロードされる。このとき、仮想アドレスAv
2,Av3,Av4に対応する実データも、データ変換
により作成される場合もあるが、すでに主記憶装置3上
にロードされているので、あらためてロードしない。し
かし、フラグ1部にフラグMが付けられていないページ
については、ロードしても差し支えない。
In the example shown in FIG. 2, the virtual address Av1
The data corresponding to is not paged in to the main storage device 3. Further, since an ID indicating conversion is described in the action part, it indicates that the data conversion device 4 performs predetermined data conversion at the time of paging. The data before conversion used at the time of page-in is stored in the temporary storage device 5.
Are already stored in the addresses Ab1 and Ab2, and the data before the conversion are stored in the addresses Ad1 and Ad2 on the magnetic disk device 6. Since the offset is 0, the data conversion device 4
The data of the first page is loaded into the main storage device 3 as real data corresponding to the virtual address Av1. At this time, the virtual address Av
The actual data corresponding to 2, Av3, Av4 may also be created by data conversion, but since it is already loaded on the main storage device 3, it is not loaded again. However, a page in which the flag M is not added to the flag part 1 may be loaded.

【0038】別の仮想アドレスAv2に対応するデータ
は、主記憶装置3上のアドレスAr2にロードされ、デ
ータプロセッサにより変更がなされてフラグ1部にフラ
グMが付けられている。そのため、このページがページ
アウトされるときには、主記憶装置3から一時記憶装置
5へのデータ転送が発生する。アクション部に変換を示
すIDが記述されているので、データ変換装置4により
データ変換を行なっているから、一時記憶装置5へデー
タを転送することになる。
The data corresponding to another virtual address Av2 is loaded into the address Ar2 on the main storage device 3, is modified by the data processor, and the flag M is attached to the flag 1 part. Therefore, when this page is paged out, data transfer from the main storage device 3 to the temporary storage device 5 occurs. Since the ID indicating the conversion is described in the action part, since the data conversion is performed by the data conversion device 4, the data is transferred to the temporary storage device 5.

【0039】上述の実施例において、一時記憶装置アド
レス列や磁気ディスク装置アドレス列は、それぞれの装
置のアドレスそのものが保持されるが、これに限らず、
アドレスの先頭をIDとし、このIDを保持したり、他
のIDを保持するように構成してもよい。また、上述の
実施例では、ページテーブルは、メモリ管理装置1が保
持していたが、これに限らず、ページャ2が保持した
り、あるいは、ページテーブルの管理部により保持され
るように構成することもできる。また、図2に示した例
では、データ転送に関する情報を保持するページテーブ
ルに、データ変換に関する情報であるアクション部の欄
を含ませて構成したが、データ変換に関する情報を別に
管理するように構成することもできる。その場合には、
データ変換に関する情報は、メモリ管理装置1、また
は、データ変換装置4、あるいは、別の管理部により保
持されるように構成することができる。
In the above embodiment, the temporary storage device address string and the magnetic disk device address string hold the addresses of the respective devices, but the present invention is not limited to this.
The head of the address may be an ID, and this ID may be held, or another ID may be held. Further, in the above-described embodiment, the page table is held by the memory management device 1, but the present invention is not limited to this, and the pager 2 may be held or may be held by the page table management unit. You can also Further, in the example shown in FIG. 2, the page table holding the information on the data transfer is configured to include the column of the action section which is the information on the data conversion, but it is configured to separately manage the information on the data conversion. You can also do it. In that case,
The information regarding the data conversion can be configured to be held by the memory management device 1, the data conversion device 4, or another management unit.

【0040】本発明の仮想記憶システムの一実施例にお
ける動作を、図1、図2、及び、図3ないし図14を用
いて説明する。以下の動作の説明において、具体的な例
を用いて説明する場合には、磁気ディスク装置6には符
号化されたデータが格納されており、データ変換装置4
には、第1の変換方式として復号化を行なう変換手段
と、第2の変換方式として符号化を行なう変換手段が備
えられているものとする。
The operation of one embodiment of the virtual storage system of the present invention will be described with reference to FIGS. 1, 2 and 3 to 14. In the following description of the operation, in the case of using a specific example, the magnetic disk device 6 stores encoded data, and the data conversion device 4
Is provided with a conversion means for performing decoding as a first conversion method and a conversion means for performing encoding as a second conversion method.

【0041】図3は、本発明の仮想記憶システムの一実
施例における動作の概要の説明図である。図3では、主
記憶装置3のアドレス空間を物理アドレス空間として示
している。主記憶装置3上にアクセスされたページが存
在しない場合、ページインの動作が行なわれる。転送す
べきデータの変換前のデータが一時記憶装置5のアドレ
ス空間に存在していない場合には、まず、磁気ディスク
装置6からディスクブロックDB1を一時記憶装置5の
アドレス空間に読み込む。この動作をで示している。
一時記憶装置5のアドレス空間に読み込まれ、あるい
は、ページアウトされて一時記憶装置5のアドレス空間
に存在しているページBB1は、ページャ2の指示によ
り、データ変換装置4により読み込まれ、例えば、第1
の変換方式によりデータ変換されて、物理アドレス空間
の所定のページに書き込まれる。この動作をで示して
いる。物理アドレス空間にデータを書き込む所定のペー
ジは、メモリ管理装置1により管理されている空きペー
ジから確保される。
FIG. 3 is an explanatory view of the outline of the operation in one embodiment of the virtual storage system of the present invention. In FIG. 3, the address space of the main storage device 3 is shown as a physical address space. If the accessed page does not exist in the main storage device 3, the page-in operation is performed. If the data before conversion of the data to be transferred does not exist in the address space of the temporary storage device 5, first, the disk block DB1 is read from the magnetic disk device 6 into the address space of the temporary storage device 5. This operation is indicated by.
The page BB1 read in the address space of the temporary storage device 5 or paged out and existing in the address space of the temporary storage device 5 is read by the data conversion device 4 according to an instruction from the pager 2, and, for example, 1
The data is converted by the above conversion method and written in a predetermined page of the physical address space. This operation is indicated by. A predetermined page for writing data in the physical address space is secured from an empty page managed by the memory management device 1.

【0042】例えば、上述の符号化,復号化の場合や、
圧縮,伸張等の処理等のデータ変換においては、変換前
データと変換後データとでデータ量が変化する。また、
画像処理などにおいても、データ変換によりデータ量が
変化する場合がある。第1の変換方式として復号化を行
なう場合、例えば、図3に示すように、変換前の1ペー
ジのデータは、データ変換によって変換後データはデー
タ量が増加し、例えば、ページRB1,RB2の2ペー
ジ必要となった場合を示している。ページインの際に、
この2ページを同時に物理アドレス空間にロードする必
要はなく、選択的にロードしてもよい。このとき、ロー
ドするページは、ページテーブルのオフセット部を参照
することにより知ることができる。また、全てのページ
をロードする場合には、あらかじめ変換後のデータ量を
知って、物理アドレス空間に領域を確保しておく必要が
ある。その場合、連続したページを確保する必要はな
い。変換後のデータ量は、あらかじめページテーブルに
記憶させておくことができる。
For example, in the case of the above-mentioned encoding and decoding,
In data conversion such as processing such as compression and expansion, the amount of data changes between the pre-conversion data and the post-conversion data. Also,
Even in image processing, the data amount may change due to data conversion. When decoding is performed as the first conversion method, for example, as shown in FIG. 3, for the data of one page before conversion, the data amount of the converted data increases due to the data conversion, and, for example, the data of pages RB1 and RB2 It shows the case where two pages are required. When you page in,
It is not necessary to load these two pages in the physical address space at the same time, and they may be selectively loaded. At this time, the page to be loaded can be known by referring to the offset part of the page table. In addition, when loading all pages, it is necessary to know the converted data amount in advance and secure an area in the physical address space. In that case, it is not necessary to secure consecutive pages. The converted data amount can be stored in advance in the page table.

【0043】物理アドレス空間に空きページがなくな
る、あるいは、少なくなると、ページアウトが行なわれ
る。ページアウトされるページの選択は、従来から用い
られている方法を用いることができ、例えば、LRU方
式などを用いることができる。また、選択されたページ
とともに第2の変換方式で必要となるページも選択され
る。このページは、ページテーブルの一時記憶装置のア
ドレス列部が同じページを検索することにより知ること
ができる。これらのページが更新されていない場合に
は、単に空きページとして解放してしまえばよい。更新
されている場合には、一時記憶装置5へのデータ転送を
行なう。この動作をで示している。更新されているか
否かは、ページテーブルのフラグ1部を参照することに
より知ることができる。
When there are no free pages in the physical address space, or when there are no free pages, page out is performed. A conventionally used method can be used to select a page to be paged out, for example, the LRU method can be used. In addition, the page required by the second conversion method is also selected together with the selected page. This page can be known by searching for the same page in the address column portion of the temporary storage device of the page table. If these pages have not been updated, they can simply be released as free pages. If it has been updated, the data is transferred to the temporary storage device 5. This operation is indicated by. Whether or not it has been updated can be known by referring to the flag 1 part of the page table.

【0044】一時記憶装置5へのデータ転送の際に、デ
ータ変換装置4によって第2の変換方式でデータ変換が
行なわれる。例えば、物理アドレス空間上のページRB
1,RB2が読み出され、符号化を行なう第2の変換方
式により、1ページ分の符号化データに変換され、一時
記憶装置5のアドレス空間のページBB1に格納され
る。このとき、物理アドレス空間のRB1,RB2は空
きページとして解放されるとともに、ページテーブルの
フラグ2部に印が付けられる。
At the time of data transfer to the temporary storage device 5, the data conversion device 4 performs data conversion by the second conversion method. For example, page RB in the physical address space
1, RB2 are read out, converted into one page of encoded data by the second conversion method for encoding, and stored in page BB1 of the address space of the temporary storage device 5. At this time, RB1 and RB2 in the physical address space are released as empty pages and the flag 2 of the page table is marked.

【0045】その後、所定のタイミングにより、磁気デ
ィスク装置6の所定のブロックDB1に書き出される。
磁気ディスク装置6に書き出されると、ページテーブル
のフラグ2部は、クリアされる。
After that, the data is written in a predetermined block DB1 of the magnetic disk device 6 at a predetermined timing.
When the data is written to the magnetic disk device 6, the flag 2 of the page table is cleared.

【0046】図4は、本発明の仮想記憶システムの一実
施例におけるページインの動作を説明するフローチャー
トである。S101において、主記憶装置3上に駐在し
ていないページが参照されると、メモリ管理装置1は、
S103において、空きページを確認後、S104にお
いて、参照されたページのページインをページャ2に指
示する。ページャ2は、メモリ管理装置1からのページ
インの指示を受けると、S105において、ページテー
ブルを参照し、ページインする仮想ページの列を選択す
る。この仮想ページの列には、少なくとも参照されたペ
ージを含むものとする。仮想ページの列としては、例え
ば、参照されたページとともにデータ変換が行なわれる
複数の仮想ページを選択することができる。仮想ページ
列の選択は、できるだけコストが小さくなるように行な
うのが望ましい。S102において、主記憶装置3の空
きページの数が少ない場合には、S103において、ペ
ージアウトを行なってからページインを行なう。実際に
ページインするページ数は、空きページ数より少ないペ
ージ数でなければならない。
FIG. 4 is a flow chart for explaining the page-in operation in the embodiment of the virtual memory system of the present invention. When a page not resident in the main storage device 3 is referenced in S101, the memory management device 1
After confirming an empty page in S103, the pager 2 is instructed to page in the referenced page in S104. Upon receiving the page-in instruction from the memory management device 1, the pager 2 refers to the page table in S105 and selects a column of virtual pages to be page-in. This column of virtual pages shall include at least the referenced page. As the row of virtual pages, for example, a plurality of virtual pages for which data conversion is performed together with the referenced page can be selected. It is desirable to select the virtual page sequence so that the cost is as low as possible. When the number of empty pages in the main storage device 3 is small in S102, page out is performed and then page in is performed in S103. The number of pages actually paged in must be less than the number of free pages.

【0047】S106において、ページャ2は、選んだ
仮想ページ列のサイズ(ページ数)だけの実空間上のペ
ージを、主記憶装置3上に確保するように、メモリ管理
装置1に指示する。メモリ管理装置1は、ページャ2か
ら要求されたページ数だけページを主記憶装置3上に確
保し、ページテーブルの該当するエントリを変更する。
In step S106, the pager 2 instructs the memory management device 1 to secure in the main storage device 3 pages in the real space having the size (number of pages) of the selected virtual page sequence. The memory management device 1 reserves as many pages in the main storage device 3 as the number of pages requested by the pager 2 and changes the corresponding entry in the page table.

【0048】S107において、ページャ2は、ページ
テーブルを参照し、仮想ページ列に対応する一時記憶装
置5上の変換前のデータが全て存在するかどうかを調べ
る。1つでも存在しない場合、S108において、メモ
リ管理装置1に対して、存在しないページ数の領域を一
時記憶装置5上に確保するように指示する。ここで、一
時記憶装置5上に必要なページ数は、磁気ディスク装置
6の該当するブロックをロードするために必要な領域に
対応するページ数であり、ページの大きさとブロックの
大きさが同じ場合には、磁気ディスク装置6上のブロッ
ク数と一時記憶装置5上に必要なページ数は同じであ
る。メモリ管理装置1は、ページャ2から要求されたペ
ージ数の領域を一時記憶装置5上に確保し、ページテー
ブルの該当のエントリを変更する。ページャ2は、磁気
ディスク装置6上の必要なページを、一時記憶装置5上
に確保された領域にロードする。
In step S107, the pager 2 refers to the page table and checks whether or not all the pre-conversion data in the temporary storage device 5 corresponding to the virtual page sequence exist. If even one does not exist, in S108, the memory management device 1 is instructed to secure an area of the number of pages that does not exist in the temporary storage device 5. Here, the number of pages required on the temporary storage device 5 is the number of pages corresponding to the area required to load the corresponding block of the magnetic disk device 6, and when the page size and the block size are the same. In addition, the number of blocks on the magnetic disk device 6 and the number of pages required on the temporary storage device 5 are the same. The memory management device 1 reserves the area of the number of pages requested by the pager 2 in the temporary storage device 5, and changes the corresponding entry in the page table. The pager 2 loads necessary pages on the magnetic disk device 6 into an area secured on the temporary storage device 5.

【0049】S109において、ページャ2は、一時記
憶装置5上に揃えられた変換前のデータに対するデータ
変換及びデータの転送をデータ変換装置4に要求する。
データ変換の要求を受けたデータ変換装置4は、一時記
憶装置5上の変換前のデータに対してデータ変換を行な
い、変換後のデータを主記憶装置3上のページ列に書き
込む。例えば、データ変換装置4は、一時記憶装置5上
の符号化された変換前データに対して、復号化処理を行
ない、復号化された変換後データを主記憶装置3に書き
込む。符号化,復号化のためのユニットを複数有する場
合は、ページテーブルのアクション部のIDで指定され
るユニットに対して変換を要求するように構成すること
ができる。
In step S109, the pager 2 requests the data conversion device 4 to perform data conversion and data transfer for the unconverted data arranged in the temporary storage device 5.
Upon receiving the data conversion request, the data conversion device 4 performs data conversion on the data before conversion in the temporary storage device 5, and writes the converted data in the page row on the main storage device 3. For example, the data conversion device 4 performs a decoding process on the encoded pre-conversion data on the temporary storage device 5, and writes the decoded post-conversion data to the main storage device 3. When there are a plurality of units for encoding and decoding, the unit specified by the ID of the action part of the page table can be configured to request conversion.

【0050】以上の動作により、ページアウトされてい
る変換前データに対してデータ変換を行ない、主記憶装
置3上に必要なページをページインすることができる。
By the above-mentioned operation, data conversion can be performed on the page-out pre-conversion data, and the necessary page can be page-in on the main storage device 3.

【0051】図5ないし図8は、本発明の仮想記憶シス
テムの一実施例におけるページインの動作の一例の説明
図である。いま、図5に示すように、実空間にページA
r1がロードされた状態であるとする。この状態のとき
に、CPUが仮想空間のページAv2に含まれる仮想ア
ドレスにアクセスしようとすると、メモリ管理装置1
は、ページテーブルを参照し、そのアドレスを実空間の
アドレスに変換する。この変換の際に、その実空間のア
ドレスを含む実空間のページが主記憶装置3上に駐在し
ていないことがわかる。このとき、メモリ管理装置1
は、ページフォールトを起こし、ページング処理に移行
する。ここで、ページャ2は、ページAv2とともに、
ページAv2以外のページAv3,Av4も、同時にペ
ージインすべきページとして選択する。
5 to 8 are explanatory views of an example of page-in operation in the embodiment of the virtual storage system of the present invention. Now, as shown in FIG. 5, page A in the real space is
It is assumed that r1 is loaded. In this state, when the CPU attempts to access the virtual address included in the page Av2 of the virtual space, the memory management device 1
Refers to the page table and converts the address into an address in real space. At the time of this conversion, it is understood that the page of the real space including the address of the real space is not resident in the main storage device 3. At this time, the memory management device 1
Causes a page fault and shifts to paging processing. Here, the pager 2, along with the page Av2,
Pages Av3 and Av4 other than the page Av2 are simultaneously selected as pages to be paged in.

【0052】図6において、仮想空間上のページAv
2,Av3,Av4のデータを置くための実空間上のペ
ージAr2,Ar3,Ar4を主記憶装置上に確保し、
ページテーブルを更新する。ここで、仮想空間上のペー
ジAv1に対応する実空間上のページAr1は既に存在
している。ページャ2に対して、ページAv2,Av
3,Av4のページインを要求する。あるいは、ページ
Av1の更新フラグに印がついていなければ、ページA
v1にもページインを行なうようにしてもよい。
In FIG. 6, page Av in the virtual space
Secure pages Ar2, Ar3, Ar4 in the real space for storing data 2, Av3, Av4 in the main memory,
Update the page table. Here, the page Ar1 in the real space corresponding to the page Av1 in the virtual space already exists. Pages Av2 and Av for pager 2
3, request Av4 page-in. Alternatively, if the update flag of page Av1 is not marked, page A
You may make it page-in also to v1.

【0053】ページインの要求を受けたページャ2は、
ページテーブルを参照し、仮想空間上のページAv2,
Av3,Av4をページインするために必要な磁気ディ
スク装置6のブロックがブロックAd1,Ad2である
ことを調べる。さらに、ページテーブルを参照すること
により、磁気ディスク装置6のブロックAd1,Ad2
が、一時記憶装置5上にロードされていないことがわか
る。ページャ2は、磁気ディスク装置6のブロックAd
1,Ad2をロードするための一時記憶装置5上のペー
ジの確保をメモリ管理装置1に要求する。一時記憶装置
5上のページの確保の要求を受けたメモリ管理装置1
は、図7に示すように、一時記憶装置5上にページAb
1,Ab2を確保し、ページテーブルの該当するエント
リを更新し、確保の完了をページャ2に伝える。
The pager 2 which has received the page-in request
Referring to the page table, the page Av2 in the virtual space
It is checked that the blocks of the magnetic disk device 6 required to page in Av3 and Av4 are blocks Ad1 and Ad2. Further, by referring to the page table, the blocks Ad1 and Ad2 of the magnetic disk device 6 are
However, it is found that they are not loaded on the temporary storage device 5. The pager 2 is a block Ad of the magnetic disk device 6.
The memory management device 1 is requested to secure a page on the temporary storage device 5 for loading 1, Ad2. Memory management device 1 that has received a request to secure a page on temporary storage device 5
Page Ab on the temporary storage device 5 as shown in FIG.
1, Ab2 are reserved, the corresponding entry in the page table is updated, and the completion of the reservation is notified to the pager 2.

【0054】一時記憶装置5上のページAb1,Ab2
の確保の完了を伝えられたページャ2は、磁気ディスク
装置6のブロックAd1,Ad2のデータを、一時記憶
装置5上のページAb1,Ab2にロードする。そし
て、データ変換装置4は、一時記憶装置5上のページA
b1,Ab2のデータを変換し、4ページの変換後のデ
ータを生成する。このうち、2〜4番目のページを、そ
れぞれ、主記憶装置3上のページAr2,Ar3,Ar
4に書き込む。この状態を図6に示している。変換後の
データのうち、最初のページは主記憶上のページAr1
に対応するが、このページは既にロードされているの
で、改めてロードする必要はない。
Pages Ab1 and Ab2 on the temporary storage device 5
The pager 2 which has been notified of the completion of the reservation of the data loads the data in the blocks Ad1 and Ad2 of the magnetic disk device 6 into the pages Ab1 and Ab2 in the temporary storage device 5. Then, the data conversion device 4 uses the page A on the temporary storage device 5.
The data of b1 and Ab2 are converted to generate the converted data of 4 pages. Of these pages, the second to fourth pages are pages Ar2, Ar3, Ar on the main storage device 3, respectively.
Write to 4. This state is shown in FIG. Of the converted data, the first page is the page Ar1 in the main memory
This page does not need to be reloaded, because this page is already loaded.

【0055】図8に示した状態となると、CPUがアク
セスした仮想空間のページAv2に含まれる仮想アドレ
スは、実アドレスに変換でき、CPUによる主記憶装置
3へのアクセスが行なわれる。
In the state shown in FIG. 8, the virtual address included in the page Av2 of the virtual space accessed by the CPU can be converted into a real address, and the CPU accesses the main storage device 3.

【0056】図9は、本発明の仮想記憶システムの一実
施例におけるページアウトの動作を説明するフローチャ
ートである。主記憶装置3上のページが不足し、例え
ば、主記憶装置3上の空きページが第1の所定の量以下
になると、S111において、メモリ管理装置1は、ペ
ージャ2に対してページアウトを指示する。また、メモ
リ管理装置1は、S112において、ページアウトする
ページを主記憶上から選択する。ページアウトするペー
ジの選択は、ページャ3が行なってもよい。この選択方
法は、従来の仮想記憶システムと同様の方式を採用する
こととする。例えば、LRU方式などを用いることがで
きる。
FIG. 9 is a flow chart for explaining the page-out operation in the embodiment of the virtual memory system of the present invention. When the pages in the main storage device 3 are insufficient, for example, the number of free pages in the main storage device 3 becomes less than or equal to the first predetermined amount, the memory management device 1 instructs the pager 2 to page out in S111. To do. Further, the memory management device 1 selects a page to be paged out from the main memory in S112. The pager 3 may select the page to be paged out. For this selection method, a method similar to that of the conventional virtual memory system is adopted. For example, the LRU method or the like can be used.

【0057】S113において、ページャ2は、ページ
テーブルを参照し、選択されたページ列について、全て
のページが一時記憶装置5または磁気ディスク装置6の
どちらにも存在しないかを調べる。存在しない場合に
は、選択されたページと同時にページアウトされるペー
ジが主記憶上にあるはずである。まだ主記憶が割り当て
られていない場合には、実際に空きページを割り当てる
か、ダミーのページを割り当てる。
In S113, the pager 2 refers to the page table and checks whether or not all the pages of the selected page row exist in either the temporary storage device 5 or the magnetic disk device 6. If it does not exist, there should be a page in main memory that is paged out at the same time as the selected page. If the main memory has not been allocated yet, a free page is actually allocated or a dummy page is allocated.

【0058】ページャ2は、S114において、データ
変換装置4に対して、同時にページアウトされるページ
の変換前データをデータ変換して得られる変換前データ
のサイズを問合わせ、S115において、返されたサイ
ズだけの領域を一時記憶装置5上に確保するように、メ
モリ管理装置1に依頼する。変換前データのサイズが変
換後データに依存しないで一定の割合の場合には、デー
タ変換装置4に対する問い合わせは必要ない。メモリ管
理装置1は、依頼されたサイズの領域を一時記憶位装置
4上に確保し、S116において、そのページのアドレ
ス列をページテーブルに書き込む。
In step S114, the pager 2 inquires of the data conversion device 4 about the size of the pre-conversion data obtained by data conversion of the pre-conversion data of the page to be paged out at the same time, and in step S115, the data is returned. The memory management device 1 is requested to secure an area of only the size on the temporary storage device 5. If the size of the pre-conversion data does not depend on the post-conversion data and is a constant ratio, an inquiry to the data conversion device 4 is unnecessary. The memory management device 1 secures an area of the requested size on the temporary storage device 4, and writes the address string of the page in the page table in S116.

【0059】S117において、ページャ2は、データ
変換装置4に対し、同時にページアウトされる全てのペ
ージのデータをデータ変換し、メモリ管理装置1によっ
て確保された一時記憶装置5上のページに書き込むよう
指示する。データ変換装置4に複数のデータ変換方式が
用意されている場合には、ページャ2は、ページテーブ
ルを参照し、指定されているデータ変換方式が選択され
るように、データ変換装置4に指示する。データ変換装
置4は、依頼されたページ列のデータをデータ変換し
て、メモリ管理装置1によって確保された一時記憶装置
5上のページに書き込む。
In step S117, the pager 2 causes the data converter 4 to convert the data of all pages that are paged out at the same time and write the converted data into the page in the temporary storage device 5 secured by the memory management device 1. Give instructions. When the data conversion device 4 has a plurality of data conversion methods, the pager 2 refers to the page table and instructs the data conversion device 4 to select the specified data conversion method. . The data conversion device 4 performs data conversion of the requested data of the page sequence and writes the data in the page on the temporary storage device 5 secured by the memory management device 1.

【0060】ページャ2は、S118で、主記憶装置3
上のページの解放をメモリ管理装置1に指示する。メモ
リ管理装置1は、主記憶装置3上の解放するページを未
使用ページ集合に加え、S119においてページテーブ
ルを更新する。
The pager 2 determines in step S118 that the main memory 3
It instructs the memory management device 1 to release the upper page. The memory management device 1 adds the page to be released on the main storage device 3 to the unused page set, and updates the page table in S119.

【0061】さらに、ページャ2は、ページアウトされ
た一時記憶装置5上のページを磁気ディスク装置6へ書
き出すように構成しても良い。
Further, the pager 2 may be configured to write the page-out page in the temporary storage device 5 to the magnetic disk device 6.

【0062】S113において、選択されたページ列の
全てのページが一時記憶装置5または磁気ディスク装置
6のどちらかに存在している場合には、S120におい
て、選択された仮想ページのどのページにも変更が加え
られていないか否かを判定する。変更が加えられていな
い場合には、一時記憶装置5に退避する必要はない。そ
のため、ページャ2は、S118において、主記憶装置
3上の選択されたページの解放をメモリ管理装置1に指
示する。メモリ管理装置1は、主記憶装置3上の解放す
るページを未使用ページ集合に加え、S119におい
て、ページテーブルを更新する。
In S113, if all the pages of the selected page sequence exist in either the temporary storage device 5 or the magnetic disk device 6, in S120, all the pages of the selected virtual page are stored. Determine if no changes have been made. If no changes have been made, it is not necessary to save to the temporary storage device 5. Therefore, the pager 2 instructs the memory management device 1 to release the selected page in the main storage device 3 in S118. The memory management device 1 adds the page to be released on the main storage device 3 to the unused page set, and updates the page table in S119.

【0063】S120において、選択された仮想ページ
の少なくとも1つのページに変更が加えられている場合
には、S121において、ページャ2はページテーブル
を調べ、同時にページアウトされるページを全てページ
インする。このため、上述のページアウト処理を開始す
るための第1の所定の量は、同時にページアウトされる
ページの数よりも大きい必要がある。
In S120, if at least one page of the selected virtual page has been changed, in S121, the pager 2 checks the page table and simultaneously page-in all pages to be paged out. Therefore, the first predetermined amount for starting the above-described page-out process needs to be larger than the number of pages that are paged out at the same time.

【0064】同時にページアウトされるページがページ
インされると、S117へ進み、ページャ2は、データ
変換装置4に対し、同時にページアウトされる全てのペ
ージのデータをデータ変換して、該当する一時記憶装置
5上のページに書き込むよう指示する。このとき、一時
記憶装置5上の領域は、S121におけるページインの
際に確保されているので、改めて領域を確保する必要は
ない。
When the pages to be paged out at the same time are paged in, the process proceeds to S117, where the pager 2 performs data conversion on the data of all pages to be paged out at the same time to the data conversion device 4, and the corresponding temporary data is converted. It is instructed to write to a page on the storage device 5. At this time, since the area on the temporary storage device 5 is secured at the time of page-in in S121, it is not necessary to secure the area again.

【0065】ページャ2は、S118において、主記憶
装置3上の選択されたページの解放をメモリ管理装置1
に指示する。メモリ管理装置1は、主記憶装置3上の解
放するページを未使用ページ集合に加え、S119にお
いて、ページテーブルを更新する。さらに、ページャ2
は、一時記憶装置5上のページを磁気ディスク装置6に
書き出すように構成しても良い。
In step S118, the pager 2 releases the selected page on the main storage device 3 by the memory management device 1.
Instruct. The memory management device 1 adds the page to be released on the main storage device 3 to the unused page set, and updates the page table in S119. In addition, pager 2
May be configured to write the page in the temporary storage device 5 to the magnetic disk device 6.

【0066】S122において、ページャ2は、空きペ
ージが第2の所定の量以上になったか否かを判定し、空
きページが第2の所定の量以上になるまで、S112以
降の処理、すなわち、ページアウトするページを探し出
し、主記憶装置のページを解放する処理を続ける。
In S122, the pager 2 determines whether or not the number of empty pages has become equal to or larger than the second predetermined amount, and the processing after S112, that is, until the number of empty pages becomes equal to or larger than the second predetermined amount, that is, The process of finding the page to be paged out and releasing the page in the main memory is continued.

【0067】一時記憶装置5から磁気ディスク装置6へ
のデータ転送は、上述のようにページアウト時に行なう
ことができる。あるいは、一時記憶装置5の空きページ
が第3の所定の量より少なくなったことを検出して開始
してもよい。磁気ディスク装置6へのデータ転送は、一
時記憶装置5内の空きページが第4の所定の量以上とな
るまでデータ転送を行なうように構成することができ
る。
Data transfer from the temporary storage device 5 to the magnetic disk device 6 can be performed at the time of page-out as described above. Alternatively, it may be started by detecting that the number of empty pages in the temporary storage device 5 becomes smaller than the third predetermined amount. The data transfer to the magnetic disk device 6 can be configured such that the data transfer is performed until the number of empty pages in the temporary storage device 5 becomes equal to or larger than the fourth predetermined amount.

【0068】図10ないし図14は、本発明の仮想記憶
システムの一実施例におけるページアウトの動作の一例
の説明図である。いま、図10に示すように、実空間に
ページAr2,Ar3,Ar4がロードされている。こ
の状態で主記憶装置3上のページが不足し、ページアウ
トの処理が起動され、ページアウトするページとしてペ
ージAr2,Ar3,Ar4が選択されたものとする。
このとき、ページャ2は、ページテーブルからページA
r2,Ar3,Ar4と同時にページアウトされる必要
のあるページを調べる。ここでは、仮想空間のページA
v1が同時にページアウトされるページとして選択され
る。
10 to 14 are explanatory views of an example of the page-out operation in the embodiment of the virtual storage system of the present invention. Now, as shown in FIG. 10, pages Ar2, Ar3, and Ar4 are loaded in the real space. In this state, it is assumed that there are not enough pages in the main storage device 3, the page-out process is activated, and pages Ar2, Ar3, and Ar4 are selected as pages to be paged-out.
At this time, the pager 2 selects page A from the page table.
Check for pages that need to be paged out at the same time as r2, Ar3, Ar4. Here, page A of the virtual space
v1 is selected as the page to be paged out at the same time.

【0069】この同時にページアウトされるページの検
索は、例えば図10の例では、仮想アドレスのIDによ
って同時にページアウト(符号化)される必要のあるペ
ージがグループ化されており、この仮想アドレスのID
により検索を行なうことができる。または、一時記憶装
置アドレス列や磁気ディスク装置アドレス列の同じペー
ジを選択するように構成することもできる。あるいは、
ページテーブルに、同時にページアウトされる必要のあ
るページのIDを保持する列を追加することによって、
検索を容易にすることもできる。
In the search for pages to be paged out at the same time, for example, in the example of FIG. 10, the pages that need to be paged out (encoded) at the same time are grouped by the ID of the virtual address. ID
Can be searched by. Alternatively, the same page in the temporary storage device address sequence or the magnetic disk device address sequence can be selected. Alternatively,
By adding a column to the page table that holds the IDs of pages that need to be paged out at the same time,
You can also make the search easier.

【0070】一方、ページテーブルのフラグ1部に付さ
れた変更マークから、実空間上のページAr2のデータ
に対して変更があったことがわかる。また、変更マーク
が付されているページはページアウトされていないの
で、ページAr2は主記憶のみに存在し、変更されたペ
ージAr2のデータは一時記憶装置5及び磁気ディスク
装置6には存在しない。図9に示したフローチャートよ
り、S121において、必要なページをページインする
処理が実行されることになる。
On the other hand, from the change mark attached to the flag 1 part of the page table, it can be seen that the data of the page Ar2 in the real space has been changed. Further, since the page marked with the change mark is not paged out, the page Ar2 exists only in the main memory, and the data of the changed page Ar2 does not exist in the temporary storage device 5 and the magnetic disk device 6. According to the flowchart shown in FIG. 9, in S121, the process of page-in the necessary page is executed.

【0071】ここで、ページテーブルより、仮想空間の
ページAv1のデータは、実空間に割り当てられていな
いことがわかる。そのため、仮想空間のページAv1の
データを実空間にロードする必要がある。また、仮想空
間のページAv1のデータを実空間にロードするために
は、磁気ディスク装置6上の領域Ad1,Ad2を一時
記憶装置5上にロードする必要があることが分かる。さ
らに、ページテーブルから、磁気ディスク装置6上の領
域Ad1は、すでに一時記憶装置5上のページAb1に
ロードされているため、Ad2だけをロードしてくれば
良いことが分かる。
Here, it can be seen from the page table that the data of page Av1 in the virtual space is not assigned to the real space. Therefore, it is necessary to load the data of page Av1 in the virtual space into the real space. Further, it is understood that in order to load the data of the page Av1 in the virtual space into the real space, the areas Ad1 and Ad2 on the magnetic disk device 6 need to be loaded onto the temporary storage device 5. Further, from the page table, it can be seen that the area Ad1 on the magnetic disk device 6 has already been loaded on the page Ab1 on the temporary storage device 5, so only Ad2 needs to be loaded.

【0072】ページャ2は、メモリ管理装置1に対し、
磁気ディスク装置6上の領域Ad2のデータをロードす
るための領域の確保を要求する。要求を受けたメモリ管
理装置1は、一時記憶装置5上の空間に、ページAb2
の領域を確保し、ページAb2のアドレスをページャ2
に伝える。ページャ2は、領域Ad2のデータを一時記
憶装置5上のページAb2にロードする。同時に、ペー
ジャ2は、ページテーブルの仮想アドレスAv1,Av
2,Av3,Av4のエントリの一時記憶装置アドレス
列にページAb2を追加する。この状態を図11に示
す。
The pager 2 is different from the memory management device 1 in that
A request is made to secure an area for loading data in the area Ad2 on the magnetic disk device 6. The memory management device 1 receiving the request stores the page Ab2 in the space on the temporary storage device 5.
Area is secured and the address of page Ab2 is set to pager 2
Tell. The pager 2 loads the data in the area Ad2 onto the page Ab2 on the temporary storage device 5. At the same time, the pager 2 receives the virtual addresses Av1 and Av of the page table.
The page Ab2 is added to the temporary storage device address columns of the entries 2, 2, Av3, Av4. This state is shown in FIG.

【0073】メモリ管理装置1は、仮想空間のページA
v1のデータを実空間上に置くために、ページAr1を
確保する。データ変換装置4の復号化ユニットは、一時
記憶装置上のページAb1,Abのデータを復号化し
て、復号化されたデータの最初のページを実空間のペー
ジAr1に書き込む。この状態を図12に示している。
これでデータ変換に必要な全てのページが主記憶に配置
されたことになる。
The memory management device 1 uses the page A of the virtual space.
A page Ar1 is secured in order to place v1 data in the real space. The decoding unit of the data conversion device 4 decodes the data of the pages Ab1 and Ab on the temporary storage device, and writes the first page of the decoded data to the page Ar1 of the real space. This state is shown in FIG.
Now, all the pages required for data conversion are arranged in the main memory.

【0074】データ変換装置4の符号化ユニットは、実
空間上のページAr1,Ar2,Ar3,Ar4のデー
タを符号化して、一時記憶装置5上のページAb1,A
b2に書き込む。ページャ2は、ページテーブルの仮想
空間Av1,Av2,Av3,Av4のエントリの実ア
ドレスの変更マークをクリアし、一時記憶装置アドレス
列に変更マークを付ける。この状態を図13に示してい
る。
The encoding unit of the data conversion device 4 encodes the data of the pages Ar1, Ar2, Ar3, Ar4 in the real space, and the pages Ab1, A in the temporary storage device 5 are encoded.
Write to b2. The pager 2 clears the change mark of the real address of the entries of the virtual spaces Av1, Av2, Av3, Av4 of the page table and puts the change mark on the temporary storage device address column. This state is shown in FIG.

【0075】ページャ2は、一時記憶装置5上のページ
Ab1,Ab2のデータを磁気ディスク装置6上の領域
Ad1,Ad2に書き込み、ページテーブルの仮想空間
上のページAv1,Av2,Av3,Av4のエントリ
の一時記憶装置アドレス列に付されていた変更マークを
クリアする。
The pager 2 writes the data of pages Ab1 and Ab2 on the temporary storage device 5 to the areas Ad1 and Ad2 on the magnetic disk device 6, and makes entries of pages Av1, Av2, Av3 and Av4 in the virtual space of the page table. Clear the change mark attached to the temporary storage device address column.

【0076】メモリ管理装置1は、実空間上のページA
r1,Ar2,Ar3,Ar4を解放し、ページテーブ
ルの仮想空間上のページAv1,Av2,Av3,Av
4のエントリの実アドレスをクリアする。この状態を図
14に示している。このようにして、実空間上のページ
Ar2,Ar3,Ar4のページアウトを行なうことが
できる。
The memory management device 1 uses the page A in the real space.
r1, Ar2, Ar3, Ar4 are released, and pages Av1, Av2, Av3, Av in the virtual space of the page table are released.
Clear the real address of entry 4. This state is shown in FIG. In this way, the pages Ar2, Ar3, Ar4 in the real space can be paged out.

【0077】上述の説明では、既に仮想空間にマップさ
れたデータのページングの動作について説明したが、例
えば、新たなファイルがオープンされて仮想空間にマッ
プされる。通常、データ変換はデータに応じて決定され
る場合が多い。そのため、新たなファイルがオープンさ
れたときに、ページテーブルにデータ変換に関する設定
がなされる。設定されるデータ変換手続きは、システム
が設定することもできるが、ユーザが指定することも可
能である。
In the above description, the paging operation of the data already mapped in the virtual space has been described. For example, a new file is opened and mapped in the virtual space. Usually, data conversion is often decided according to the data. Therefore, when a new file is opened, the page table is set for data conversion. The data conversion procedure to be set can be set by the system or specified by the user.

【0078】一例として、オープンしたファイルをメモ
リにマップする際に、あらかじめシステムで用意された
複数のデータ変換方式から、ユーザが所望する変換方式
を選択する方式を説明する。アプリケーション・プログ
ラムでは、ファイルをオープンした後、メモリ・マップ
システムコールにより、例えば、配列にファイルのデー
タをマップする。メモリ・マップシステムコールとして
は、例えば、SunMicro systems In
cのSun OSのmmapシステムコールなどがあ
る。従来のメモリ・マップシステムコールの引数に加え
て、第1のデータ変換方式の番号と第2のデータ変換方
式の番号をつけ加える。このとき、例えば、第1のデー
タ変換方式はディスクブロックのデータから主記憶装置
に転送するデータへ変換するデータ変換処理であり、第
2のデータ変換方式は主記憶装置のデータからディスク
ブロックへのデータへ変換するデータ変換処理とするこ
とができる。
As an example, a method of selecting a conversion method desired by the user from a plurality of data conversion methods prepared by the system when the opened file is mapped to the memory will be described. In the application program, after opening the file, the memory map system call is used to map the data of the file to an array, for example. Examples of the memory map system call include, for example, Sun Micro Systems In
For example, there is a Sun OS mmap system call. In addition to the conventional memory map system call argument, the number of the first data conversion method and the number of the second data conversion method are added. At this time, for example, the first data conversion method is a data conversion process for converting the data in the disk block into the data to be transferred to the main memory device, and the second data conversion method is the data conversion process from the data in the main memory device to the disk block. It can be a data conversion process for converting to data.

【0079】メモリ・マップシステムコールが行なわれ
ると、仮想ブロック識別子、例えば、図2に示した仮想
アドレスのIDが割り当てられ、ページャ2に仮想ブロ
ック識別子と、第1の変換方式、第2の変換方式のタプ
ルが送られる。ページャ2では、ページテーブルに仮想
ブロック識別子に対応するエントリを確保し、確保した
エントリにそれぞれ、第1のデータ変換方式の番号、第
2のデータ変換方式の番号、変換前データのブロック識
別子の列を割り当てる。ここで、ブロック識別子とは、
磁気ディスク装置のディスクブロックに付けられた識別
子のことである。例えば、図2に示したページテーブル
の例では、磁気ディスク装置アドレス列に相当する。第
1のデータ変換方式の番号、第2のデータ変換方式の番
号などは、アクション部に記述される。
When the memory map system call is performed, a virtual block identifier, for example, the ID of the virtual address shown in FIG. 2 is assigned, and the pager 2 is assigned the virtual block identifier, the first conversion method, and the second conversion. Method tuples are sent. In the pager 2, an entry corresponding to the virtual block identifier is reserved in the page table, and the reserved entry has a column of the first data conversion method number, the second data conversion method number, and the block identifier of the pre-conversion data, respectively. Assign Here, the block identifier is
An identifier attached to a disk block of a magnetic disk device. For example, in the example of the page table shown in FIG. 2, it corresponds to a magnetic disk device address column. The number of the first data conversion method and the number of the second data conversion method are described in the action section.

【0080】第1のデータ変換方式及び第2のデータ変
換方式は、どちらか一方を指定することもできるし、両
方とも指定しないことも可能とすることができる。指定
されなかったデータ変換方式は、システムでデフォルト
の変換方式を割り当ててもよいし、データ変換装置4に
よる変換を行なわないことを示すように構成することも
できる。
Either the first data conversion method or the second data conversion method may be designated, or both may not be designated. The unspecified data conversion method may be assigned a default conversion method in the system, or may be configured to indicate that no conversion is performed by the data conversion device 4.

【0081】この例は、データ変換装置4に複数のデー
タ変換方式が存在する場合に特に有効であり、アプリケ
ーションが使用するファイルに応じてデータ変換方式を
切り換えて用いることが可能となる。また、ユーザがO
Sのコマンドレベルで明示的にデータ変換方式を指定で
きるように構成することもできる。この場合、例えば、
ファイルのコピーにより、ファイルデータのデータ変換
を行なうことが可能となる。
This example is particularly effective when the data conversion device 4 has a plurality of data conversion methods, and the data conversion methods can be switched and used according to the file used by the application. Also, if the user is O
The data conversion method can be explicitly specified at the S command level. In this case, for example,
By copying the file, it becomes possible to perform data conversion of the file data.

【0082】また、ユーザが用意したデータ変換手続き
を実行することも可能である。前述のメモリ・マップシ
ステムコールの引数として、例えば、第1のデータ変換
方式、第2のデータ変換方式を指示する際に、データ変
換手続きのエントリアドレスを与えるように構成する。
メモリ・マップが行なわれ、ページインが行なわれたと
きに、変換前データがユーザプロセス空間にマップされ
る。変換前データを変換する際に、システムからユーザ
プロセスに対して第1のデータ変換手続きのエントリア
ドレスにコールバックが行なわれ、該当する変換後デー
タのページに、変換されたデータが書き込まれる。その
後、システムモードに戻りページイン処理が終了する。
It is also possible to execute a data conversion procedure prepared by the user. As an argument of the above memory map system call, for example, when designating the first data conversion method and the second data conversion method, the entry address of the data conversion procedure is given.
When the memory mapping is performed and the page-in is performed, the pre-conversion data is mapped in the user process space. When converting the pre-conversion data, the system calls back the user process to the entry address of the first data conversion procedure, and the converted data is written in the corresponding post-conversion data page. Then, the system returns to the system mode and the page-in process ends.

【0083】データ変換装置4に複数のデータ変換手続
きが存在するとき、これらを選択する方法としては、上
述のユーザあるいはアプリケーションにより明示的にデ
ータ変換手続を選択する方法のほか、種々の選択方法を
用いることができる。以下、いくつかの選択方法につい
て説明する。
When there are a plurality of data conversion procedures in the data conversion device 4, various selection methods are available as a method for selecting these, in addition to the above-mentioned method of explicitly selecting the data conversion procedure by the user or application. Can be used. Hereinafter, some selection methods will be described.

【0084】まず、所定の手続きを実行することによ
り、データ変換方式を選択することができる。この例に
おいては、データ変換装置4は、手続きを評価した結果
とデータ変換方式の対応を表す手続きテーブルを保持
し、管理する。データ変換装置4は、データ変換を行な
うステップにおいて、あらかじめ設定された所定の手続
きを評価し、その結果に対応するデータ変換方式を手続
きテーブルを参照することにより決定し、決定されたデ
ータ変換方式によりデータ変換を実行する。データ変換
方式を決定するために実行される所定の手続きは、ペー
ジイン、ページアウトに共通して設けてもよいし、別々
に設けることも可能である。
First, the data conversion method can be selected by executing a predetermined procedure. In this example, the data conversion device 4 holds and manages a procedure table showing the correspondence between the result of evaluation of the procedure and the data conversion method. In the data conversion step, the data conversion device 4 evaluates a predetermined procedure set in advance, determines the data conversion method corresponding to the result by referring to the procedure table, and determines the data conversion method according to the determined data conversion method. Perform data conversion. The predetermined procedure executed to determine the data conversion method may be provided commonly for page-in and page-out, or may be provided separately.

【0085】別の選択方式として、パラメータによりデ
ータ変換方式を選択することができる。パラメータは、
ユーザから入力されることもあるし、アプリケーション
から設定されることもある。データ変換装置4にパラメ
ータ記憶部を新たに設けておくとともに、各パラメータ
に対応するデータ変換方式を表わすパラメータテーブル
を保持し、管理する。データ変換装置4は、パラメータ
の入力を受け付け、それをパラメータ記憶部に格納す
る。
As another selection method, a data conversion method can be selected by a parameter. The parameters are
It may be input by the user or may be set by the application. A parameter storage unit is newly provided in the data conversion device 4, and a parameter table representing a data conversion method corresponding to each parameter is held and managed. The data conversion device 4 receives an input of a parameter and stores it in the parameter storage unit.

【0086】データ変換装置4は、データ変換のステッ
プにおいて、パラメータ記憶部をアクセスして、パラメ
ータを取り出す。そして、パラメータテーブルを参照し
て、取り出したパラメータに対応するデータ変換方式を
調べ、得られたデータ変換方式によってデータ変換を実
行する。
In the data conversion step, the data conversion device 4 accesses the parameter storage unit to take out the parameter. Then, referring to the parameter table, the data conversion method corresponding to the extracted parameter is checked, and the data conversion is executed by the obtained data conversion method.

【0087】この例の場合、データ転送の方向を一つの
パラメータとし、第1の変換方式と第2の変換方式を切
り替えることもできる。また、パラメータテーブルを参
照する代わりに、所定の手続きでパラメータを評価し、
データ変換方式を決定するようにしてもよい。
In the case of this example, the direction of data transfer can be used as one parameter to switch between the first conversion method and the second conversion method. Also, instead of referring to the parameter table, the parameters are evaluated by a predetermined procedure,
The data conversion method may be determined.

【0088】また、システムの状態をパラメータとして
用い、データ変換方式を選択することができる。データ
変換装置4に、システム状態検知部を新たに設けるとと
もに、システムの状態とデータ変換方式の対応を表わす
状態テーブルを設ける。データ変換装置4は、データ変
換を行なうステップにおいて、データ変換方式を選択す
るために、どのシステムの状態をパラメータにするかを
決定する。この使用するパラメータの決定は、あらかじ
め与えておいてもよいし、所定の手続きを実行すること
によりどのシステムの状態をパラメータに選ぶかを決定
してもよい。パラメータとなるシステムの状態が決定さ
れると、状態テーブルを参照し、データ変換方式を決定
してデータ変換を実行する。
Further, the data conversion method can be selected by using the system state as a parameter. The data conversion device 4 is additionally provided with a system state detection unit and a state table showing the correspondence between the system state and the data conversion method. In the data conversion step, the data conversion device 4 determines which system state is used as a parameter in order to select the data conversion method. The parameter to be used may be determined in advance, or which system state is selected as the parameter may be determined by executing a predetermined procedure. When the system state as a parameter is determined, the state table is referred to, the data conversion method is determined, and the data conversion is executed.

【0089】状態テーブルを参照する代わりに、所定の
手続きによってシステムの状態を評価し、その評価結果
に基づき、直接、データ変換方式を選択するようにして
もよい。
Instead of referring to the state table, the state of the system may be evaluated by a predetermined procedure and the data conversion method may be directly selected based on the evaluation result.

【0090】システムの状態によりデータ変換方式を切
り替える具体的な例としては、画像表示装置において、
表示可能な色数や解像度に応じてデータを変換すること
が考えられる。例えば、磁気ディスク装置6に格納され
た画像データが24ビットのカラー画像であり、画像表
示装置の表示可能な色数が8ビットのカラー画像である
場合、データ変換装置4は、システム状態検知部により
画像表示装置の表示可能な色数を調べ、24ビットカラ
ーの画像データを8ビットカラーの画像データに変換す
るデータ変換手続きを選択し、データ変換を行なえばよ
い。
As a concrete example of switching the data conversion method depending on the state of the system, in the image display device,
It is possible to convert the data according to the number of colors that can be displayed and the resolution. For example, when the image data stored in the magnetic disk device 6 is a 24-bit color image and the number of colors that can be displayed by the image display device is an 8-bit color image, the data conversion device 4 uses the system state detection unit. The number of colors that can be displayed by the image display device is checked by, and a data conversion procedure for converting 24-bit color image data into 8-bit color image data is selected and data conversion may be performed.

【0091】さらに別の選択方式として、磁気ディスク
装置6に格納されている属性によりデータ変換方式を選
択することができる。属性としては、例えば、ディレク
トリに格納されているファイル属性やファイルの拡張子
を用いたり、あるいは、FATに各ブロックごとに属性
値を格納しておいたり、ファイルの所定位置の数バイト
にマジックナンバーを記憶させておき、これらの情報を
用いるようにすればよい。磁気ディスク装置6は、ペー
ジブロックを管理するとともに、これらの属性を保持
し、管理する。また、データ変換装置4は、各属性とデ
ータ変換方式の対応を表わす属性テーブルを保持し、管
理する。
As another selection method, the data conversion method can be selected according to the attribute stored in the magnetic disk device 6. As the attribute, for example, the file attribute stored in the directory or the file extension is used, or the attribute value is stored in the FAT for each block, or the magic number is stored in a few bytes at a predetermined position of the file. Is stored and these pieces of information may be used. The magnetic disk device 6 manages a page block and holds and manages these attributes. Further, the data conversion device 4 holds and manages an attribute table showing correspondence between each attribute and the data conversion method.

【0092】データ変換装置4は、データ変換を行なう
ステップにおいて、一時記憶テーブルからページブロッ
クに対応する属性を取り出し、属性テーブルを参照して
データ変換方式を決定し、データ変換を実行する。
In the data conversion step, data conversion device 4 retrieves the attribute corresponding to the page block from the temporary storage table, refers to the attribute table to determine the data conversion method, and executes the data conversion.

【0093】例えば、磁気ディスク装置6内に圧縮され
たファイルと、通常のテキストファイルが存在する場
合、これを区別する属性を判定することにより、例え
ば、圧縮されたファイルはページインの際に伸張し、通
常のテキストファイルの場合には変換を行なわないよう
に、自動的に制御することが可能である。
For example, when there are a compressed file and a normal text file in the magnetic disk device 6, the attribute for distinguishing them is determined, so that the compressed file is expanded at the time of page-in. However, it is possible to control automatically so that the conversion is not performed in the case of a normal text file.

【0094】さらに別の例として、データ変換装置4に
よるデータ変換の際の統計情報を保持し、その情報を基
に変換方式を選択することが考えられる。データ変換装
置4は、データ変換に伴う統計情報をテーブルとして保
持する。そのテーブルを統計情報テーブルとする。図1
5は、統計情報テーブルの内容の一例の説明図である。
統計情報テーブルの各行は、各変換方式それぞれに対応
する統計情報を表わす。統計情報としては、例えば図1
5に示すように、データ変換の平均処理時間、データ変
換の最大処理時間、データ変換の最小処理時間とするこ
とができる。もちろん、これ以外の情報をデータ変換装
置4が保持することも可能である。また、統計情報テー
ブルは、磁気ディスク装置6に蓄積し、適宜、データ変
換装置4に読み込むこともできる。
As still another example, it is conceivable to hold statistical information at the time of data conversion by the data conversion device 4 and select the conversion method based on that information. The data conversion device 4 holds statistical information associated with data conversion as a table. Let that table be a statistical information table. Figure 1
5 is an explanatory diagram of an example of the contents of the statistical information table.
Each row of the statistical information table represents statistical information corresponding to each conversion method. As the statistical information, for example, FIG.
As shown in FIG. 5, the average processing time for data conversion, the maximum processing time for data conversion, and the minimum processing time for data conversion can be set. Of course, the data conversion device 4 can also hold other information. The statistical information table can be stored in the magnetic disk device 6 and read into the data conversion device 4 as appropriate.

【0095】データ変換装置4がデータ変換方式を選択
する場合、データ変換装置が保持する統計情報テーブル
の情報を所定の評価手続きで評価し、得られた結果に対
応するデータ変換方式を選択する。所定の評価手続き
は、データ変換装置4が保持してもよいし、アプリケー
ションプログラムから与えるようにしても良い。例え
ば、上述のmmap関数の引数の一つとして、評価手続
きへのポインタを与える方法が考えられる。
When the data conversion device 4 selects the data conversion method, the information in the statistical information table held by the data conversion device is evaluated by a predetermined evaluation procedure, and the data conversion method corresponding to the obtained result is selected. The predetermined evaluation procedure may be held by the data conversion device 4 or may be given from an application program. For example, a method of giving a pointer to the evaluation procedure as one of the arguments of the mmap function described above can be considered.

【0096】上述の各選択方法において、データ変換装
置4に配置した各種のテーブルは、ページャ2など、別
の管理装置により管理するように構成することもでき
る。また、ファイルの属性情報など、ある種の情報は、
ページテーブルに欄を設けて管理することも可能であ
る。
In each of the selection methods described above, the various tables arranged in the data conversion device 4 may be configured to be managed by another management device such as the pager 2. Also, some types of information, such as file attribute information,
It is also possible to provide columns in the page table for management.

【0097】次に本発明の仮想記憶システムの応用例に
ついて説明する。図16は、本発明の仮想記憶システム
を映像データの処理に応用した一例のブロック図であ
る。図中、図1と同様の部分には同じ符号を付して説明
を省略する。11はデータプロセッサ、12は出力装
置、13は回線性能測定装置、14は回線性能データベ
ースである。この例では、特定のフレームレートで表現
される映像データが映像データファイルとして磁気ディ
スク装置6上に記録されており、通信回線の速度に応じ
て所望のフレームレートで読み出し転送する方式を示し
ている。映像データファイルは、例えば、1秒当たり3
0フレームで表現され、1フレーム当たり1キロバイト
で表現される映像データが磁気ディスク装置6に格納さ
れているものとする。出力装置12は、シリアル回線に
対して映像データを送出する。ユーザは、この出力装置
12から送出される映像データを視聴する。回線性能測
定装置13は、出力装置12の性能測定を行ない、測定
結果はデータプロセッサ11に通知される。回線性能デ
ータベース15には、測定結果に基づき、回線の状態を
判別するための情報が格納されている。
Next, an application example of the virtual memory system of the present invention will be described. FIG. 16 is a block diagram of an example in which the virtual storage system of the present invention is applied to the processing of video data. In the figure, the same parts as those in FIG. Reference numeral 11 is a data processor, 12 is an output device, 13 is a line performance measuring device, and 14 is a line performance database. In this example, video data expressed at a specific frame rate is recorded as a video data file on the magnetic disk device 6, and a method of reading and transferring at a desired frame rate according to the speed of the communication line is shown. . Video data files are, for example, 3 per second
It is assumed that the video data represented by 0 frame and represented by 1 kilobyte per frame is stored in the magnetic disk device 6. The output device 12 sends video data to the serial line. The user views the video data sent from the output device 12. The line performance measuring device 13 measures the performance of the output device 12, and the measurement result is notified to the data processor 11. The line performance database 15 stores information for determining the line state based on the measurement result.

【0098】磁気ディスク装置6に格納されている映像
データファイルの映像を、1秒当たり64キロビットの
シリアル回線を経由して、ユーザが視聴する場合を説明
する。この場合、ちょうど1秒当たり8フレームの映像
が転送できる。
A case where the user views the video of the video data file stored in the magnetic disk device 6 via the serial line of 64 kilobits per second will be described. In this case, exactly 8 frames of video can be transferred per second.

【0099】アプリケーションは、映像ファイルをオー
プンし、第1のデータ変換手続きを引数の一つとしてメ
モリ・マップシステムコールを起動する。第1のデータ
変換手続きとしては、8フレームごとに映像データを取
り出して主記憶装置に書き込む手続きを指定することが
できる。
The application opens the video file and activates the memory map system call using the first data conversion procedure as one of the arguments. As the first data conversion procedure, it is possible to specify a procedure in which video data is taken out every eight frames and written in the main storage device.

【0100】ページャは、磁気ディスク装置6上の映像
データを一時記憶装置5上に読み込むように制御し、デ
ータ変換装置4により第1のデータ変換手続きを実行し
て8フレームごとの映像データを取り出し、主記憶装置
3に転送する。
The pager controls the video data on the magnetic disk device 6 to be read into the temporary storage device 5, and the data conversion device 4 executes the first data conversion procedure to take out the video data for every 8 frames. , To the main storage device 3.

【0101】アプリケーションは、主記憶装置3に展開
されたフレームを1フレームずつ順に読み出して、処理
を行なう。このとき、主記憶装置3に展開された映像デ
ータは、既にシリアル回線の転送速度に従って主記憶装
置3に転送されているので、アプリケーションは、シリ
アル回線の転送速度に独立して映像データを処理するこ
とができる。
The application sequentially reads out the frames expanded in the main memory 3 frame by frame and performs the processing. At this time, since the video data expanded in the main storage device 3 has already been transferred to the main storage device 3 according to the transfer speed of the serial line, the application processes the video data independently of the transfer speed of the serial line. be able to.

【0102】また、例えば、映像データ視聴中にシリア
ル回線が混雑して、ちょうど1秒当たり5フレームの映
像しか転送できなくなった場合でも、5フレームごとに
映像データを取り出すデータ変換手続きを指定して再マ
ップすることにより、シリアル回線の混雑に対応するこ
とができる。
Also, for example, even when only 5 frames of video can be transferred per second due to congestion of the serial line while viewing the video data, a data conversion procedure for extracting the video data every 5 frames is specified. By re-mapping, the congestion of the serial line can be dealt with.

【0103】何フレームごとに取り出せば、滞りなく、
かつ、できるだけ滑らかに映像を視聴できるか、すなわ
ち、最適なフレームレートを定めるためには、シリアル
回線の通信速度と混雑度などを測定する性能測定手続き
を実行した上で定めるようにしてもよい。図16に示し
た例では、回線性能測定装置13を設けており、シリア
ル回線の通信速度や混雑度などを測定することができ
る。この回線性能測定装置13による測定結果をもと
に、データプロセッサ11は所定の手続きを実行し、例
えば、回線性能データベース15を参照して、測定結果
に対応した回線状態を判別し、回線状態に適合したデー
タ変換手続きを選択して指定すればよい。
No matter how many frames are taken out,
In addition, in order to view the video as smoothly as possible, that is, in order to determine the optimum frame rate, it may be determined after executing the performance measurement procedure for measuring the communication speed and the congestion degree of the serial line. In the example shown in FIG. 16, the line performance measuring device 13 is provided so that the communication speed and congestion degree of the serial line can be measured. Based on the measurement result by the line performance measuring device 13, the data processor 11 executes a predetermined procedure. For example, referring to the line performance database 15, the line state corresponding to the measurement result is determined, and the line state is determined. You can select and specify a suitable data conversion procedure.

【0104】図17は、本発明の仮想記憶システムを映
像データの処理に応用した別の例のブロック図である。
図中、図16と同様の部分には同じ符号を付して説明を
省略する。15はデータプロセッサ性能測定装置、16
は磁気ディスク性能測定装置、17は変換方式選択装置
である。この例では、図16に示した例に加え、データ
プロセッサ11の性能を測定するデータプロセッサ性能
測定装置15と、磁気ディスク装置6の性能を測定する
磁気ディスク性能測定装置16を設けている。回線性能
測定装置13、データプロセッサ性能測定装置15、磁
気ディスク性能測定装置16の測定結果は変換方式選択
装置17に入力される。変換方式選択装置17では、こ
れらの性能測定装置からの測定結果をもとに、最適なフ
レームレートを決定し、そのフレームレートに映像デー
タを変換するデータ変換方式を選択する。データ変換装
置4では、変換方式選択装置17により選択されたデー
タ変換方式によりデータ変換を行ない、最適なフレーム
レートの映像データを生成する。
FIG. 17 is a block diagram of another example in which the virtual storage system of the present invention is applied to the processing of video data.
16, those parts which are the same as those corresponding parts in FIG. 16 are designated by the same reference numerals, and a description thereof will be omitted. 15 is a data processor performance measuring device, 16
Is a magnetic disk performance measuring device, and 17 is a conversion method selecting device. In this example, in addition to the example shown in FIG. 16, a data processor performance measuring device 15 for measuring the performance of the data processor 11 and a magnetic disk performance measuring device 16 for measuring the performance of the magnetic disk device 6 are provided. The measurement results of the line performance measuring device 13, the data processor performance measuring device 15, and the magnetic disk performance measuring device 16 are input to the conversion method selection device 17. The conversion method selection device 17 determines the optimum frame rate based on the measurement results from these performance measurement devices, and selects the data conversion method for converting the video data to the frame rate. The data conversion device 4 performs data conversion according to the data conversion method selected by the conversion method selection device 17 to generate video data having an optimum frame rate.

【0105】この例によれば、シリアル回線の通信速度
と混雑度の他に、データプロセッサや、ディスク装置の
性能を考え合せて評価することにより、最適なフレーム
レートを定めているので、磁気ディスクのアクセススピ
ードや、データプロセッサの混雑度などに影響されず
に、常に最適な映像データの伝送を行なうことができ
る。もちろん、他のシステム性能を評価するように構成
することもできる。
According to this example, the optimum frame rate is determined by evaluating the performance of the data processor and the disk device in addition to the communication speed and the congestion degree of the serial line. It is possible to always perform optimal video data transmission without being affected by the access speed of the device and the congestion degree of the data processor. Of course, it can be configured to evaluate other system performance.

【0106】このように、図16、図17に示した例に
よれば、回線状態やシステムの状態に応じて、主記憶装
置3へのデータ転送時にすでに最適なフレームレートの
映像データとなっているので、アプリケーションはフレ
ームレートを気にすることなく処理を行なうことがで
き、回線速度や回線状態、システムの状態などに独立に
アプリケーションを作成することができる。
As described above, according to the examples shown in FIGS. 16 and 17, the video data having the optimum frame rate is already obtained when the data is transferred to the main storage device 3 according to the line status and the system status. Therefore, the application can perform processing without worrying about the frame rate, and the application can be created independently depending on the line speed, line state, system state, and the like.

【0107】図18は、本発明の仮想記憶システムをネ
ットワークに応用した一例のブロック図である。図中、
図1と同様の部分には同じ符号を付して説明を省略す
る。21はネットワーク、22は補助記憶装置、23は
一時記憶管理装置、24は磁気ディスク装置、25は一
時記憶装置である。この例では、図1の磁気ディスク装
置6の代わりにネットワーク21に接続され、さらに、
ネットワーク21に補助記憶装置22が接続されてい
る。補助記憶装置22は、一時記憶管理装置23、磁気
ディスク装置24、一時記憶装置25を有する。一時記
憶管理装置23は、磁気ディスク装置24と一時記憶装
置25の記憶領域の管理を行なう。磁気ディスク装置2
4と一時記憶装置25との間でページングを行なう構成
であってももちろんよい。
FIG. 18 is a block diagram of an example in which the virtual storage system of the present invention is applied to a network. In the figure,
The same parts as those in FIG. 1 are designated by the same reference numerals and the description thereof will be omitted. Reference numeral 21 is a network, 22 is an auxiliary storage device, 23 is a temporary storage management device, 24 is a magnetic disk device, and 25 is a temporary storage device. In this example, the magnetic disk device 6 of FIG.
An auxiliary storage device 22 is connected to the network 21. The auxiliary storage device 22 includes a temporary storage management device 23, a magnetic disk device 24, and a temporary storage device 25. The temporary storage management device 23 manages the storage areas of the magnetic disk device 24 and the temporary storage device 25. Magnetic disk unit 2
Of course, the configuration may be such that paging is performed between the data storage device 4 and the temporary storage device 25.

【0108】ネットワーク21としては、例えば、よく
知られたイーサネットなどを用いることができる。この
ネットワーク21を経由して、一時記憶装置5及び25
が通信を行ない、協調して、上述のような動作をする。
As the network 21, for example, a well-known Ethernet or the like can be used. Via this network 21, temporary storage devices 5 and 25
Communicate with each other and cooperate to operate as described above.

【0109】例えば、データ変換装置4は、一時記憶装
置5内の変換前データを、例えば、通信用のフォーマッ
トに変換し、よく知られたネットワークプロトコル、例
えば、TCP/IPプロトコルを用いてネットワーク2
1により通信を行ない、一時記憶装置25に変換前デー
タを書き込む。
For example, the data conversion device 4 converts the pre-conversion data in the temporary storage device 5 into, for example, a communication format, and uses the well-known network protocol, for example, TCP / IP protocol to connect the network 2 to the network 2.
Communication is performed according to 1, and the pre-conversion data is written in the temporary storage device 25.

【0110】また、補助記憶装置22は、逆に一時記憶
装置25内の変換前データを、よく知られたネットワー
クプロトコル、例えば、TCP/IPプロトコルを用い
て、ネットワーク21により通信を行ない、一時記憶装
置5に変換前データとして書き込む。そして、データ変
換装置4により変換後データに復元する。
On the contrary, the auxiliary storage device 22 communicates the pre-conversion data in the temporary storage device 25 with the network 21 using a well-known network protocol, for example, TCP / IP protocol, and temporarily stores it. It is written in the device 5 as pre-conversion data. Then, the data converter 4 restores the converted data.

【0111】いずれの場合も一時記憶装置5内のデータ
に対してデータ変換を行なう代わりに、一時記憶装置2
5内のデータに対してデータ変換を行なうように、補助
記憶装置22側にデータ変換装置4を有してもよい。ま
た、両方にデータ変換装置を配置し、ネットワーク21
により通信を行なう間だけ変換前データとなるように構
成することもできる。この場合、データ変換装置によっ
て暗号化及び復号化を行なうことにより、ネットワーク
21上のデータのセキュリティを確保することができ
る。
In any case, instead of performing the data conversion on the data in the temporary storage device 5, the temporary storage device 2
The data conversion device 4 may be provided on the side of the auxiliary storage device 22 so that the data in the data 5 is converted. In addition, data conversion devices are arranged on both sides, and the network 21
Can be configured so that the data before conversion is only during communication. In this case, the security of data on the network 21 can be ensured by performing encryption and decryption by the data conversion device.

【0112】このようなネットワークを用いた構成を用
いることにより、ネットワークを経由した磁気ディスク
装置に対する遠隔ファイルシステムを実現することがで
きる。図18に示した補助記憶装置22に加えて、第2
の補助記憶装置、第3の補助記憶装置…というように、
複数の補助記憶装置が互いにネットワークを経由して通
信を行ない、一時記憶装置5などと互いに協調して動作
する補助記憶装置群を構成してもよい。
By using the configuration using such a network, it is possible to realize a remote file system for the magnetic disk device via the network. In addition to the auxiliary storage device 22 shown in FIG.
Auxiliary storage device, third auxiliary storage device ...
A plurality of auxiliary storage devices may communicate with each other via a network to form an auxiliary storage device group that operates in cooperation with the temporary storage device 5 and the like.

【0113】次に、本発明の仮想記憶システムにより暗
号化及び復号化を行なう応用例について説明する。装置
構成としては、図1に示した構成や、図18に示した構
成などを用いることができる。データ変換装置4で行な
われるデータ変換手続きとして、mブロックをnブロッ
クに変換する暗号化手続きか、あるいは、nブロックを
mブロックに変換する復号化手続きを用いる。特に、第
1のデータ変換手続きとして、例えば、DESアルゴリ
ズムで知られる暗号化方式に基づく復号化手続きとし、
第2のデータ変換手続きとして、同じくDESアルゴリ
ズムで知られる暗号化方式に基づく復号化手続きとす
る。
Next, an application example in which encryption and decryption are performed by the virtual storage system of the present invention will be described. As the device configuration, the configuration shown in FIG. 1 or the configuration shown in FIG. 18 can be used. As the data conversion procedure performed by the data conversion device 4, an encryption procedure for converting m blocks into n blocks or a decryption procedure for converting n blocks into m blocks is used. In particular, as the first data conversion procedure, for example, a decryption procedure based on the encryption method known by the DES algorithm,
The second data conversion procedure is a decryption procedure based on the encryption method also known by the DES algorithm.

【0114】アプリケーションプログラムは、データ変
換手続きの選択を行なうときに、暗号化及び復号化の変
換方法とそのキー情報を指定する。例えば、ファイルの
オープン処理のパラメータの1つとして、これらの情報
を指定する。これらのパラメータは、ページャ2で解釈
され、変換手続きを指定する引数とキー情報を指定する
引数の2つから定まる変換手続きの番号を、ページテー
ブルの該当する場所に格納する。
When selecting the data conversion procedure, the application program specifies the encryption / decryption conversion method and its key information. For example, such information is designated as one of the parameters of the file open process. These parameters are interpreted by the pager 2, and the number of the conversion procedure, which is determined by two arguments that specify the conversion procedure and the argument that specifies the key information, is stored in the corresponding location of the page table.

【0115】図19は、暗号化・復号化で使用されるペ
ージテーブルの一例の説明図である。ページテーブルへ
の登録は、変換手続きを指定する引数により変換手続き
の番号を指定し、キー情報は、キー情報の欄に記憶させ
ておく。変換手続きが起動された際に、ページテーブル
のキー情報の欄を参照して、変換手続きを開始する。
FIG. 19 is an explanatory diagram of an example of a page table used for encryption / decryption. For registration in the page table, the number of the conversion procedure is specified by the argument specifying the conversion procedure, and the key information is stored in the key information column. When the conversion procedure is activated, the conversion procedure is started by referring to the key information column of the page table.

【0116】あるいは、データ変換のための情報を、例
えば、データ変換テーブルとして別に保持管理すること
もできる。この場合、データ変換テーブルのエントリに
キー情報を保持する欄を設け、変換手続きを指定する引
数で変換手続の番号を指定し、キー情報は、後に変換手
続きが起動された際に、データ変換テーブルのキー情報
の欄を参照して変換手続を開始するようにしてもよい。
Alternatively, information for data conversion can be separately held and managed as, for example, a data conversion table. In this case, a column for holding the key information is provided in the entry of the data conversion table, the number of the conversion procedure is specified by the argument specifying the conversion procedure, and the key information is used when the conversion procedure is activated later. The conversion procedure may be started by referring to the key information column of.

【0117】以上の構成により、キー情報を有するアプ
リケーションまたはユーザが、データを暗号化したり復
号化してアクセスすることができる。
With the above configuration, an application or user having key information can access by encrypting or decrypting data.

【0118】この例では、磁気ディスク装置6に記録さ
れたデータブロックは、DESアルゴリズムにより暗号
化された情報が記録されるため、磁気ディスク装置の盗
難による機密漏洩に対して、セキュリティ管理上好まし
い。また、本発明では、上述したように、一時記憶装置
5の領域を変換前データ用と変換後データ用に分離して
構成することができるので、復号化したデータを保持す
るページと暗号化したデータを保持するページを区別し
て管理でき、復号化したデータを保持するページを磁気
ディスク装置6に書き出さないようなページング方式を
採用することによって、暗号化されていないデータが磁
気ディスク装置6に格納されないようにすることができ
る。そのため、磁気ディスク装置6上のデータを覗き見
ることによって発生する機密漏洩に対してセキュリティ
管理上好ましい。
In this example, since the data block recorded in the magnetic disk device 6 is recorded with the information encrypted by the DES algorithm, it is preferable in terms of security management against leakage of confidential information due to the theft of the magnetic disk device. Further, in the present invention, as described above, since the area of the temporary storage device 5 can be separately configured for the pre-conversion data and the post-conversion data, it is encrypted with the page holding the decrypted data. By storing a page that holds data in a distinguishable manner and by not writing a page that holds decrypted data to the magnetic disk device 6, unencrypted data is stored in the magnetic disk device 6. You can prevent it. Therefore, it is preferable in terms of security management that confidential information is leaked by looking into the data on the magnetic disk device 6.

【0119】さらに、図18で説明したネットワークを
経由した情報格納方式を組合わせた構成において、暗号
化されていないデータがネットワーク通信によって遠隔
磁気ディスク装置との間で転送されないようにすること
ができ、ネットワーク通信を盗聴することで発生する機
密漏洩に対して、セキュリティ管理上好ましい。
Further, in the configuration in which the information storage methods via the network described in FIG. 18 are combined, it is possible to prevent unencrypted data from being transferred to the remote magnetic disk device by network communication. This is preferable in terms of security management against the leakage of confidentiality caused by eavesdropping on network communication.

【0120】この例においては、アプリケーションプロ
グラムは、アクセスするデータの暗号化手続きや復号化
手続きの実装を含めなくてよい。また、複数のアプリケ
ーションがシステムに組込まれた共用の手続きを利用す
ることで、プログラムのモジュール化が達成でき、アプ
リケーション作成の効率を向上させることができるばか
りでなく、注意を欠いた実装によるセキュリティ管理上
の不備に関して、アプリケーションごとに気を配る必要
がなく、管理上も好ましい。
In this example, the application program need not include the implementation of the encryption procedure and the decryption procedure of the data to be accessed. In addition, by using a common procedure in which multiple applications are built into the system, modularization of the program can be achieved, the efficiency of application creation can be improved, and security management by careful implementation is not only possible. Regarding the above defects, it is not necessary to pay attention to each application and it is preferable in terms of management.

【0121】さらに、この例では、仮想記憶の処理の中
でシステムが暗号化/復号化するので、ユーザプロセス
で暗号化/復号化する方式に比較して、暗号化/復号化
に用いるデータや一時記憶などの資源の隠蔽が容易とな
る。
Furthermore, in this example, since the system encrypts / decrypts during the processing of virtual memory, the data used for encryption / decryption can be compared with the method of encryption / decryption by the user process. Concealment of resources such as temporary storage becomes easy.

【0122】図20は、本発明の仮想記憶システムを画
像処理に応用した一例のブロック図である。図中、図1
と同様の部分には同じ符号を付して説明を省略する。3
1は端末装置、32は端末性能測定装置、33は変換方
式選択装置である。ここでは、磁気ディスク装置6上
に、特定の階調で特定の解像度の画像データファイルを
記録した後、ある解像度の画像を処理するアプリケーシ
ョンが読み出す場合と、出力装置、例えば、端末装置3
1に応じて所望の解像度かつ所望の表現階調で読み込む
場合を説明する。端末装置31の性能を端末性能測定装
置32により測定し、測定結果に基づき、変換方式選択
装置33がデータ変換装置4内のデータ変換手続きを選
択する。選択されたデータ変換手続きによりデータ変換
を行なう。
FIG. 20 is a block diagram of an example in which the virtual storage system of the present invention is applied to image processing. In the figure,
The same reference numerals are given to the same portions as, and the description thereof will be omitted. Three
Reference numeral 1 is a terminal device, 32 is a terminal performance measuring device, and 33 is a conversion method selecting device. Here, a case where an application that processes an image of a certain resolution is read after an image data file of a specific resolution is recorded on the magnetic disk device 6 at a specific gradation and an output device, for example, the terminal device 3 is used.
A case of reading with a desired resolution and a desired expression gradation according to 1 will be described. The performance of the terminal device 31 is measured by the terminal performance measuring device 32, and the conversion method selection device 33 selects a data conversion procedure in the data conversion device 4 based on the measurement result. Data conversion is performed according to the selected data conversion procedure.

【0123】以下、具体例をもとに説明する。磁気ディ
スク装置6内に格納されている画像データファイルの画
像データとしては、例えば、縦横それぞれ600ピクセ
ルで、解像度が25.4mm当たり400ピクセルの画
像を表現しているものとする。各ピクセルは、赤、青、
緑それぞれ256階調で表現されるものとする。この画
像データファイルの名前をAとする。また、データ変換
装置4に用意されているデータ変換手続きは解像度変換
の手続きである。この手続きは、25.4mm当たり4
00ピクセルの解像度から、それぞれ、25.4mm当
たり75ピクセル、25.4mm当たり100ピクセ
ル、25.4mm当たり200ピクセルの画像に変換す
る3種類の手続きであるとする。
Hereinafter, a specific example will be described. As the image data of the image data file stored in the magnetic disk device 6, for example, it is assumed that an image having 600 pixels vertically and horizontally and having a resolution of 400 pixels per 25.4 mm is represented. Each pixel is red, blue,
It is assumed that each green is represented by 256 gradations. The name of this image data file is A. Further, the data conversion procedure prepared in the data conversion device 4 is a resolution conversion procedure. This procedure is 4 per 25.4 mm
It is assumed that there are three types of procedures for converting from a resolution of 00 pixels to an image of 75 pixels per 25.4 mm, 100 pixels per 25.4 mm, and 200 pixels per 25.4 mm.

【0124】ファイルAと全く同じ画像データを保持す
るファイルのファイル名をA#75、A#100、A#
200、A#400であるとする。全く同じ画像データ
を保持するファイルは、ファイルAをコピーしてもよい
が、従来のUNIX OSのファイルシステムで用いら
れるシンボリックリンクやハードリンクの仕組みを用い
て、同一のファイルに複数のファイル名を与えることで
提供してもよい。
The file names of the files holding the same image data as the file A are A # 75, A # 100, A #.
200 and A # 400. File A that holds exactly the same image data may be copied from file A, but multiple file names can be assigned to the same file using the symbolic link or hard link mechanism used in the conventional UNIX OS file system. It may be provided by giving.

【0125】ファイルA#75をオープンすると、ファ
イル名を解釈する手続きが実行され、例えば、ファイル
名中の記号#に続く数値75によって、400ピクセル
の解像度から75ピクセルの解像度に変換するデータ変
換手続きを指定することができる。この指定は、メモリ
・マップシステムコールの引数として与えられる。
When the file A # 75 is opened, a procedure for interpreting the file name is executed. For example, a data conversion procedure for converting the resolution of 400 pixels to the resolution of 75 pixels by the numerical value 75 following the symbol # in the file name. Can be specified. This specification is given as an argument of the memory map system call.

【0126】上述のように、メモリ・マップシステムコ
ールにより、データ変換テーブルに、変換方式として2
5.4mm当たり400ピクセルの解像度から、25.
4mm当たり75ピクセルの解像度の画像に変換するデ
ータ変換手続を選択するように登録される。そして、主
記憶装置へのデータ転送の際にデータ変換装置4により
解像度変換が行なわれる。そのため、アプリケーション
は25.4mm当たり400ピクセルの解像度の画像で
あることを意識することなく、25.4mm当たり75
ピクセルの解像度の画像として読み込むことができる。
ファイルA#100、A#200についても同様であ
る。
As described above, by the memory map system call, 2 is set as the conversion method in the data conversion table.
From a resolution of 400 pixels per 5.4 mm to 25.
Registered to select a data conversion procedure to convert to an image with a resolution of 75 pixels per 4 mm. Then, at the time of data transfer to the main storage device, resolution conversion is performed by the data conversion device 4. Therefore, the application does not have to be aware that the image has a resolution of 400 pixels per 25.4 mm.
It can be read as an image with pixel resolution.
The same applies to the files A # 100 and A # 200.

【0127】次に、上述の画像データを保持するファイ
ルAを、端末やプリンタに出力するアプリケーションに
ついて説明する。ユーザはこの画像ファイルをオープン
して、25.4mm当たり75ピクセルの解像度のディ
スプレイ表示器に表示するために、75ピクセルの解像
度に変換してメモリにマップする。そのために、第1の
変換方式として、25.4mm当たり400ピクセルの
画像を75ピクセルの画像に階調変換する画像処理手続
きを指定すればよい。この方法としては、例えば、上述
のように、階調変換の画像手続きを示す番号をメモリ・
マップシステムコールの引数として与えて発行すればよ
い。
Next, an application for outputting the file A holding the above-mentioned image data to a terminal or printer will be described. The user opens this image file, converts it to a resolution of 75 pixels and maps it to memory for display on a display with a resolution of 75 pixels per 25.4 mm. Therefore, as the first conversion method, an image processing procedure for gradationally converting an image of 400 pixels per 25.4 mm into an image of 75 pixels may be designated. As this method, for example, as described above, the number indicating the image procedure of gradation conversion is stored in the memory
It can be issued by giving it as an argument of the map system call.

【0128】アプリケーションが出力しようとする端末
装置やプリンタ装置の解像度は、端末性能測定装置32
により得ることができる。得られた解像度を基に、変換
方式選択装置33により、ユーザが関与することなく、
自動的に階調変換の画像処理手続きを選択する。
The resolution of the terminal device or the printer device which the application intends to output is determined by the terminal performance measuring device 32.
Can be obtained by Based on the obtained resolution, by the conversion method selection device 33, without the user's involvement,
An image processing procedure for gradation conversion is automatically selected.

【0129】または、端末装置やプリンタ装置の解像度
を保持するシステム記述ファイルを参照するか、あるい
は、端末装置またはプリンタ装置の解像度を保持する別
のアプリケーションに問い合わせる手続きを実行する。
この手続きは、例えば、端末やプリンタ装置に問い合わ
せを行ない、解像度情報を得る手続きとする。得られた
解像度を基に、ユーザが関与することなく、自動的に階
調変換の画像処理手続きを選択して、mmapシステム
コールの引数として指定するようにしてもよい。例え
ば、75ピクセルの解像度の端末装置でアプリケーショ
ンを起動した場合、400ピクセルの解像度のファイル
を端末に表示するために、アプリケーションは端末装置
と通信を行なって75ピクセルの解像度の端末装置であ
ることを得る。次に、400ピクセルの解像度から75
ピクセルの解像度に変換するデータ変換手続きの番号を
メモリ・マップシステムコールの引数として与える。
Alternatively, the system description file holding the resolution of the terminal device or the printer device is referred to, or a procedure for inquiring to another application holding the resolution of the terminal device or the printer device is executed.
In this procedure, for example, an inquiry is made to a terminal or a printer to obtain resolution information. An image processing procedure for gradation conversion may be automatically selected based on the obtained resolution without the user's involvement and designated as an argument of the mmap system call. For example, when an application is started on a terminal device having a resolution of 75 pixels, the application communicates with the terminal device to display a file having a resolution of 400 pixels on the terminal, and the application device is a terminal device having a resolution of 75 pixels. obtain. Then from the resolution of 400 pixels to 75
The number of the data conversion procedure for converting to the pixel resolution is given as an argument of the memory map system call.

【0130】この例によれば、磁気ディスク装置6上の
25.4mm当たり400ピクセルの画像データは、デ
ータ変換装置4の選択されたデータ変換手続きにより、
25.4mmあたり75ピクセルの画像データに変換さ
れて主記憶装置3に転送される。そのため、主記憶装置
3上の画像データをディスプレイに表示するアプリケー
ションは、磁気ディスク装置6上の画像データファイル
に格納されている画像データの解像度に関係なく、ま
た、特別な解像度変換処理を行なうことなく、主記憶装
置3上にマップされた画像データをディスプレイに出力
するだけでよい。
According to this example, the image data of 400 pixels per 25.4 mm on the magnetic disk device 6 is obtained by the data conversion procedure selected by the data conversion device 4.
It is converted into image data of 75 pixels per 25.4 mm and transferred to the main storage device 3. Therefore, the application that displays the image data in the main storage device 3 on the display should perform a special resolution conversion process regardless of the resolution of the image data stored in the image data file in the magnetic disk device 6. Instead, it is only necessary to output the image data mapped on the main storage device 3 to the display.

【0131】また、ディスプレイ装置の解像度が25.
4mm当たり75ピクセルではなく、100ピクセルで
あった場合でも、端末性能測定装置32により自動的に
検出されてデータ変換手続きが切り換えられ、あるい
は、メモリ・マップシステムコールの引数として25.
4mm当たり400ピクセルの画像を100ピクセルの
画像に解像度変換する画像処理手続きを第1の変換手続
きとして指定するだけで良く、アプリケーションは出力
装置の解像度として独立して作成できる。
Further, the resolution of the display device is 25.
Even if the number of pixels is 100 pixels instead of 75 pixels per 4 mm, the data conversion procedure is automatically detected by the terminal performance measuring device 32 and the data conversion procedure is switched, or 25.
The image processing procedure for converting the resolution of the image of 400 pixels per 4 mm into the image of 100 pixels need only be designated as the first conversion procedure, and the application can be created independently as the resolution of the output device.

【0132】上述の例では、画像データファイルの解像
度が一定の例を示したが、画像データファイル内の画像
データの解像度が違う場合のデータ変換手続きの選択方
法について説明する。この場合には、例えば、上述のデ
ータ変換手続きの選択方法で説明したマジックナンバー
によるデータ変換手続きの選択の方法を用いることがで
きる。図21は、マジックナンバーの一例の説明図であ
る。例えば、図21に示すように、ファイルデータの解
像度を表わす2バイトの値をマジックナンバーとしてフ
ァイルの先頭に置く。画像ファイルをオープンすると、
ファイルの先頭の2バイトを読み込んで解釈する手続き
が実行され、解像度を判別し、適当な変換手続きが選択
される。
In the above example, the resolution of the image data file is constant, but a method of selecting the data conversion procedure when the resolution of the image data in the image data file is different will be described. In this case, for example, the method of selecting the data conversion procedure by the magic number described in the method of selecting the data conversion procedure described above can be used. FIG. 21 is an explanatory diagram of an example of a magic number. For example, as shown in FIG. 21, a 2-byte value representing the resolution of file data is placed at the beginning of the file as a magic number. When you open an image file,
A procedure for reading and interpreting the first 2 bytes of the file is executed, the resolution is determined, and an appropriate conversion procedure is selected.

【0133】例えば、縦横それぞれ600ピクセル、解
像度が25.4mm当たり400ピクセルであり、1ピ
クセル当たり1バイトで表現される画像を画像ファイル
として格納しているとする。このファイルの名前をAと
する。また、縦横それぞれ600ピクセル、解像度が2
5.4mm当たり200ピクセルであり、1ピクセル当
たり1バイトで表現される画像を画像ファイルとして格
納しているとする。このファイルの名前をBとする。
For example, suppose that an image file is stored as an image file in which the vertical and horizontal directions are 600 pixels, the resolution is 400 pixels per 25.4 mm, and each pixel is represented by 1 byte. The name of this file is A. Also, the vertical and horizontal directions are 600 pixels each, and the resolution is
It is assumed that there are 200 pixels per 5.4 mm, and an image represented by 1 byte per pixel is stored as an image file. The name of this file is B.

【0134】システムで用意されている解像度変換の手
続きは、400ピクセルの解像度から、それぞれ、75
ピクセル、100ピクセル、200ピクセルの解像度に
変換する手続きと、200ピクセルの解像度から、それ
ぞれ、75ピクセル、100ピクセル、200ピクセル
の解像度に変換する手続きの6種類であるとする。
The resolution conversion procedure prepared by the system is 75 pixels from the resolution of 400 pixels.
It is assumed that there are six types of procedures, that is, a procedure of converting to a resolution of pixels, 100 pixels, and 200 pixels, and a procedure of converting from a resolution of 200 pixels to a resolution of 75 pixels, 100 pixels, and 200 pixels, respectively.

【0135】ディスプレイ表示器が25.4mm当たり
75ピクセルの解像度の場合、画像ファイルAをオープ
ンすると、そのマジックナンバーにより、画像の解像度
が25.4mm当たり400ピクセルであることが分か
るので、解像度変換の手続きは400ピクセルの解像度
から75ピクセルの解像度に変換する手続きが選択され
る。ファイルBをオープンした場合には、そのマジック
ナンバーから、200ピクセルの解像度から75ピクセ
ルの解像度に変換する手続きが選択される。
Display When the display has a resolution of 75 pixels per 25.4 mm, when the image file A is opened, the magic number indicates that the resolution of the image is 400 pixels per 25.4 mm. As the procedure, the procedure of converting from the resolution of 400 pixels to the resolution of 75 pixels is selected. When the file B is opened, a procedure for converting the resolution of 200 pixels to the resolution of 75 pixels is selected based on the magic number.

【0136】この場合にも、ファイルAをオープンして
も、ファイルBをオープンしても、主記憶装置3にマッ
プされる画像データは25.4mm当たり75ピクセル
の解像度を有する画像データに変換されているので、ア
プリケーションは、画像データファイルに格納されてい
る画像データの解像度に関係なく、例えば、ディスプレ
イ表示器への表示を行なうことができる。
Also in this case, whether the file A is opened or the file B is opened, the image data mapped in the main memory 3 is converted into the image data having the resolution of 75 pixels per 25.4 mm. Therefore, the application can perform display on, for example, a display indicator regardless of the resolution of the image data stored in the image data file.

【0137】上述の解像度変換の例では、多数の解像度
変換を行なうデータ変換手続きを用意したが、汎用の1
つあるいは数種のデータ変換手続きのみを用意し、画像
ファイル内の画像データの解像度と、アプリケーション
や出力装置が必要とする画像データの解像度をパラメー
タとしてデータ変換手続きに与える構成とすることもで
きる。
In the above-mentioned resolution conversion example, a data conversion procedure for performing a large number of resolution conversions is prepared.
It is also possible to prepare only one or several kinds of data conversion procedures and to give the resolution of the image data in the image file and the resolution of the image data required by the application or the output device as parameters to the data conversion procedure.

【0138】上述の例では、解像度の変換について述べ
たが、これに限らず、階調の変換や、色の変換について
も、解像度と同様に、所望のデータ変換を行なうデータ
変換手続き指定することによりで、アプリケーションの
処理可能な階調や色に、あるいは、出力装置の表現可能
な階調や色に、データ変換して主記憶装置3にデータ転
送されるので、階調や色とは独立にアプリケーションを
作成することができる。
In the above-mentioned example, the resolution conversion is described, but the present invention is not limited to this. For the gradation conversion and the color conversion, like the resolution, a data conversion procedure for performing a desired data conversion should be designated. Therefore, since the data is converted into the gradation and color that can be processed by the application or the gradation and color that can be expressed by the output device and transferred to the main storage device 3, the gradation and color are independent of the gradation and color. You can create applications in.

【0139】さらに、ユーザは自らが使用する端末装置
の解像度や階調を知らなくても、自動的に解像度や階調
の変換が行なわれ、WYSIWYG(What You
See Is What You Get)性が保持
される。アプリケーションは、画像の表示装置ごとに異
なる解像度、表現可能な階調や色について、特別な画像
処理を行なうことなく機種に依存しない形で作成するこ
とができ、ポータビリティを向上させることができる。
Further, even if the user does not know the resolution and gradation of the terminal device used by the user, the resolution and gradation are automatically converted, and WYSIWYG (What You
See Is What You Get) property is maintained. An application can create different resolutions, expressible gradations and colors for each image display device in a form that does not depend on the model without performing special image processing, and can improve portability.

【0140】画像データの変換処理は、解像度、階調、
色等の変換だけではなく、画像の回転、拡大縮小といっ
た座標変換や、特定領域の切り出し処理、特定画像との
合成処理、圧縮伸張など、種々の画像処理を行なうこと
ができる。
The conversion processing of image data is performed by resolution, gradation,
In addition to conversion of colors and the like, various image processing such as coordinate conversion such as image rotation and enlargement / reduction, clipping processing of a specific area, combining processing with a specific image, compression / expansion, and the like can be performed.

【0141】本発明の情報格納方式においては、解像度
変換前のデータを保持する領域と解像度変換後のデータ
を保持する領域を区別して管理することが可能であるの
で、例えば、同時に複数の解像度に変換を行なう場合、
解像度変換前のデータを共有することができる。また、
変換後のデータは変換前のデータから変換処理を行なう
ことで作成するので、変換前のデータを磁気ディスク装
置6にページアウトしないですますページング方式を採
用することにより、磁気ディスク装置6の入出力の速度
に依存せずに、効率のよい解像度変換が達成できる。
In the information storage system of the present invention, since it is possible to separately manage the area holding the data before resolution conversion and the area holding the data after resolution conversion, for example, a plurality of resolutions can be simultaneously set. When converting,
Data before resolution conversion can be shared. Also,
Since the data after conversion is created by performing the conversion process from the data before conversion, the data before conversion is not paged out to the magnetic disk device 6. By adopting the paging method, the input / output of the magnetic disk device 6 is performed. Efficient resolution conversion can be achieved without depending on the speed.

【0142】以上、いくつかの応用例について説明した
が、これらの例に限らず、本発明は、種々のデータ処理
に適用することができる。
Although some application examples have been described above, the present invention is not limited to these examples and can be applied to various data processing.

【0143】[0143]

【発明の効果】以上の説明から明らかなように、本発明
によれば、データ変換に関する情報を有しているので、
この情報に従って、転送時に実行される処理を動的に切
り換え、ページング時にデータ変換を実行することがで
きる。そのため、広い範囲のアプリケーションに対して
融通性の高い仮想記憶システムを提供することができる
という効果がある。
As is apparent from the above description, according to the present invention, since the data conversion information is included,
According to this information, the processing executed at the time of transfer can be dynamically switched, and the data conversion can be executed at the time of paging. Therefore, it is possible to provide a highly flexible virtual storage system for a wide range of applications.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明の仮想記憶システムの一実施例を示す
ブロック構成図である。
FIG. 1 is a block diagram showing an embodiment of a virtual storage system of the present invention.

【図2】 ページテーブルの一例の説明図である。FIG. 2 is an explanatory diagram of an example of a page table.

【図3】 本発明の仮想記憶システムの一実施例におけ
る動作の概要の説明図である。
FIG. 3 is an explanatory diagram of an outline of an operation in one embodiment of the virtual storage system of the present invention.

【図4】 本発明の仮想記憶システムの一実施例におけ
るページインの動作を説明するフローチャートである。
FIG. 4 is a flowchart illustrating a page-in operation in an embodiment of the virtual storage system of the present invention.

【図5】 本発明の仮想記憶システムの一実施例におけ
るページインの動作の一例の説明図である。
FIG. 5 is an explanatory diagram showing an example of a page-in operation in the embodiment of the virtual storage system of the present invention.

【図6】 本発明の仮想記憶システムの一実施例におけ
るページインの動作の一例の説明図である。
FIG. 6 is an explanatory diagram showing an example of a page-in operation in one embodiment of the virtual storage system of the present invention.

【図7】 本発明の仮想記憶システムの一実施例におけ
るページインの動作の一例の説明図である。
FIG. 7 is an explanatory diagram showing an example of a page-in operation in the embodiment of the virtual storage system of the present invention.

【図8】 本発明の仮想記憶システムの一実施例におけ
るページインの動作の一例の説明図である。
FIG. 8 is an explanatory diagram showing an example of a page-in operation in the embodiment of the virtual storage system of the present invention.

【図9】 本発明の仮想記憶システムの一実施例におけ
るページアウトの動作を説明するフローチャートであ
る。
FIG. 9 is a flowchart illustrating a page-out operation in the embodiment of the virtual storage system of the present invention.

【図10】 本発明の仮想記憶システムの一実施例にお
けるページアウトの動作の一例の説明図である。
FIG. 10 is an explanatory diagram showing an example of a page-out operation in the embodiment of the virtual storage system of the present invention.

【図11】 本発明の仮想記憶システムの一実施例にお
けるページアウトの動作の一例の説明図である。
FIG. 11 is an explanatory diagram showing an example of a page-out operation in the embodiment of the virtual storage system of the present invention.

【図12】 本発明の仮想記憶システムの一実施例にお
けるページアウトの動作の一例の説明図である。
FIG. 12 is an explanatory diagram showing an example of a page-out operation in the embodiment of the virtual storage system of the present invention.

【図13】 本発明の仮想記憶システムの一実施例にお
けるページアウトの動作の一例の説明図である。
FIG. 13 is an explanatory diagram showing an example of a page-out operation in the embodiment of the virtual storage system of the present invention.

【図14】 本発明の仮想記憶システムの一実施例にお
けるページアウトの動作の一例の説明図である。
FIG. 14 is an explanatory diagram showing an example of a page-out operation in the embodiment of the virtual storage system of the present invention.

【図15】 統計情報テーブルの内容の一例の説明図で
ある。
FIG. 15 is an explanatory diagram of an example of contents of a statistical information table.

【図16】 本発明の仮想記憶システムを映像データの
処理に応用した一例のブロック図である。
FIG. 16 is a block diagram of an example in which the virtual storage system of the present invention is applied to the processing of video data.

【図17】 本発明の仮想記憶システムを映像データの
処理に応用した別の例のブロック図である。
FIG. 17 is a block diagram of another example in which the virtual storage system of the present invention is applied to the processing of video data.

【図18】 本発明の仮想記憶システムをネットワーク
に応用した一例のブロック図である。
FIG. 18 is a block diagram of an example in which the virtual storage system of the present invention is applied to a network.

【図19】 暗号化・復号化で使用されるページテーブ
ルの一例の説明図である。
FIG. 19 is an explanatory diagram of an example of a page table used for encryption / decryption.

【図20】 本発明の仮想記憶システムを画像処理に応
用した一例のブロック図である。
FIG. 20 is a block diagram of an example in which the virtual storage system of the present invention is applied to image processing.

【図21】 マジックナンバーの一例の説明図である。FIG. 21 is an explanatory diagram of an example of a magic number.

【符号の説明】[Explanation of symbols]

1 メモリ管理装置、2 ページャ、3 主記憶装置、
4 データ変換装置、5 一時記憶装置、6 磁気ディ
スク装置、11 データプロセッサ、12 出力装置、
13 回線性能測定装置、14 回線性能データベー
ス、15 データプロセッサ性能測定装置、16 磁気
ディスク性能測定装置、17 変換方式選択装置、21
ネットワーク、22 補助記憶装置、23 一時記憶
管理装置、24 磁気ディスク装置、25 一時記憶装
置、31 端末装置、32 端末性能測定装置、33
変換方式選択装置。
1 memory management device, 2 pager, 3 main storage device,
4 data conversion device, 5 temporary storage device, 6 magnetic disk device, 11 data processor, 12 output device,
13 line performance measuring device, 14 line performance database, 15 data processor performance measuring device, 16 magnetic disk performance measuring device, 17 conversion method selecting device, 21
Network, 22 auxiliary storage device, 23 temporary storage management device, 24 magnetic disk device, 25 temporary storage device, 31 terminal device, 32 terminal performance measuring device, 33
Conversion method selection device.

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 ページ方式の仮想記憶システムにおい
て、主記憶装置と、少なくとも前記主記憶装置を管理す
る記憶管理手段と、データ転送に関する情報を保持する
データ転送情報保持手段と、データ変換に関する情報を
保持するデータ変換情報保持手段と、転送データに対し
てデータ変換を行なうデータ変換手段と、前記データ転
送情報保持手段に保持されているデータ転送に関する情
報を参照しページ単位のデータ転送を行なうとともに該
データ転送の際に前記データ変換情報保持手段に保持さ
れているデータ変換に関する情報に基づき前記データ変
換手段に対する所定のデータ変換の指示及び前記記憶管
理手段に対する管理指示を行なうページャを有すること
を特徴とする仮想記憶システム。
1. In a page-type virtual storage system, a main storage device, storage management means for managing at least the main storage device, data transfer information holding means for holding information on data transfer, and information on data conversion are stored. The data conversion information holding means for holding the data, the data conversion means for performing data conversion on the transfer data, and the data transfer information held in the data transfer information holding means are referred to for data transfer in page units, and When data is transferred, it has a pager for giving a predetermined data conversion instruction to the data conversion means and a management instruction to the storage management means based on the information regarding the data conversion held in the data conversion information holding means. Virtual memory system.
【請求項2】 前記ページャは、補助記憶装置または一
時記憶装置と前記主記憶装置の間、あるいは、前記主記
憶装置内のページング対象領域とページング対象外領域
との間でページ単位のデータ転送を行ない、データ転送
の際に、前記データ変換手段により転送データに対して
データ変換を行なうことを特徴とする請求項1に記載の
仮想記憶システム。
2. The pager transfers data in page units between an auxiliary storage device or a temporary storage device and the main storage device, or between a paging target area and a non-paging target area in the main storage device. 2. The virtual storage system according to claim 1, wherein the data conversion means performs data conversion on the transfer data during data transfer.
【請求項3】 前記ページャが前記主記憶装置内のペー
ジング対象領域とページング対象外領域との間でページ
単位のデータ転送を行なう場合に、前記記憶管理手段
は、前記データ変換情報保持手段が保持しているデータ
変換に関する情報に基づき前記主記憶装置内のページン
グ対象外領域にページアウトされている所定のページを
消去しないように管理可能であることを特徴とする請求
項2に記載の仮想記憶システム。
3. When the pager transfers data in page units between a paging target area and a non-paging target area in the main storage device, the storage management means is held by the data conversion information holding means. 3. The virtual memory according to claim 2, wherein the virtual memory can be managed so as not to erase a predetermined page that has been paged out to a non-paging area in the main memory based on information regarding data conversion being performed. system.
【請求項4】 前記ページャが前記主記憶装置と補助記
憶装置との間でページ単位のデータ転送を行なう場合
に、前記記憶管理手段は、前記主記憶装置内のデータが
前記データ変換手段で変換されずに補助記憶装置にペー
ジアウトされないように管理可能であることを特徴とす
る請求項2に記載の仮想記憶システム。
4. When the pager transfers data in page units between the main storage device and the auxiliary storage device, the storage management means converts the data in the main storage device by the data conversion means. The virtual storage system according to claim 2, wherein the virtual storage system can be managed so as not to be paged out to the auxiliary storage without being interrupted.
【請求項5】 前記データ変換手段は複数のデータ変換
処理を有し、前記ページャからの指示に従って前記複数
のデータ変換処理の中から1つまたは複数のデータ変換
処理を選択し、前記ページャによるデータ転送の際に、
転送データに対して選択されたデータ変換処理を施すこ
とを特徴とする請求項1ないし4のいずれか1つに記載
の仮想記憶システム。
5. The data conversion means has a plurality of data conversion processes, selects one or a plurality of data conversion processes from the plurality of data conversion processes according to an instruction from the pager, and outputs data by the pager. When transferring,
The virtual storage system according to any one of claims 1 to 4, wherein a selected data conversion process is performed on the transfer data.
【請求項6】 前記データ変換処理の選択は、所定の手
続きを実行した結果に基づいて行なうことを特徴とする
請求項5に記載の仮想記憶システム。
6. The virtual storage system according to claim 5, wherein the data conversion process is selected based on a result of executing a predetermined procedure.
【請求項7】 前記データ変換処理の選択は、ユーザが
指定するパラメータに基づいて行なうことを特徴とする
請求項5に記載の仮想記憶システム。
7. The virtual storage system according to claim 5, wherein the data conversion process is selected based on a parameter designated by a user.
【請求項8】 前記データ変換処理の選択は、システム
の状態やページの属性などの情報に基づいて行なうこと
を特徴とする請求項5に記載の仮想記憶システム。
8. The virtual storage system according to claim 5, wherein the selection of the data conversion processing is performed based on information such as a system status and page attributes.
【請求項9】 前記データ変換手段は、ユーザがあらか
じめ用意した所定のデータ変換手続きが登録可能である
ことを特徴とする請求項1ないし8のいずれか1つに記
載の仮想記憶システム。
9. The virtual storage system according to claim 1, wherein the data conversion unit can register a predetermined data conversion procedure prepared by a user in advance.
JP5326197A 1993-11-30 1993-11-30 Virtual storage system Expired - Lifetime JP2932919B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5326197A JP2932919B2 (en) 1993-11-30 1993-11-30 Virtual storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5326197A JP2932919B2 (en) 1993-11-30 1993-11-30 Virtual storage system

Publications (2)

Publication Number Publication Date
JPH07152643A true JPH07152643A (en) 1995-06-16
JP2932919B2 JP2932919B2 (en) 1999-08-09

Family

ID=18185103

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5326197A Expired - Lifetime JP2932919B2 (en) 1993-11-30 1993-11-30 Virtual storage system

Country Status (1)

Country Link
JP (1) JP2932919B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005158043A (en) * 2003-11-25 2005-06-16 Microsoft Corp Encryption of system paging file
JP2005243013A (en) * 2004-02-12 2005-09-08 Irdeto Access Bv Method and system for storing external data
US7743209B2 (en) 2006-10-03 2010-06-22 Hitachi, Ltd. Storage system for virtualizing control memory

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005158043A (en) * 2003-11-25 2005-06-16 Microsoft Corp Encryption of system paging file
JP2005243013A (en) * 2004-02-12 2005-09-08 Irdeto Access Bv Method and system for storing external data
US7743209B2 (en) 2006-10-03 2010-06-22 Hitachi, Ltd. Storage system for virtualizing control memory

Also Published As

Publication number Publication date
JP2932919B2 (en) 1999-08-09

Similar Documents

Publication Publication Date Title
JP2932920B2 (en) Information storage device
EP3657376B1 (en) Hybrid-cloud data storage method and apparatus, related device, and cloud system
US7596695B2 (en) Application-based data encryption system and method thereof
JP4226816B2 (en) Microprocessor
US7136488B2 (en) Microprocessor using asynchronous public key decryption processing
US6158004A (en) Information storage medium and security method thereof
US7278016B1 (en) Encryption/decryption of stored data using non-accessible, unique encryption key
US7266690B2 (en) Methods and systems for protecting information in paging operating systems
US20030133574A1 (en) Secure CPU and memory management unit with cryptographic extensions
US7818586B2 (en) System and method for data encryption keys and indicators
US20090323940A1 (en) Method and system for making information in a data set of a copy-on-write file system inaccessible
EP1536307B1 (en) Encryption of system paging file
JP2000004225A (en) Network system, transmission/reception method, transmitter, receiver and recording medium
JP2001501758A (en) How to get a contiguous memory buffer and build a page table
US20210319117A1 (en) Secure asset management system
US7114053B2 (en) Virtual-to-physical address conversion in a secure system
WO2021169121A1 (en) Method for switching between data storage schemes, device, and storage medium
CN105224882A (en) A kind of file encryption system based on bridge file system
EP0820017A2 (en) Secondary storage data protection apparatus placing encryption circuit in I/O subsystem
JP2002351742A (en) Data protecting device
JP2009064462A (en) Microprocessor
JP2932919B2 (en) Virtual storage system
JP2001103280A (en) Information processing method and its device
JP2002529815A (en) Secure memory management unit using multiple encryption algorithms
JPH11259366A (en) Device and method for protecting data in electronic data exchange system, and storage medium recorded with program for realizing the method

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20040301

Free format text: JAPANESE INTERMEDIATE CODE: A621

A131 Notification of reasons for refusal

Effective date: 20070814

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Effective date: 20080115

Free format text: JAPANESE INTERMEDIATE CODE: A02