JPH07152642A - Data area expansion system - Google Patents
Data area expansion systemInfo
- Publication number
- JPH07152642A JPH07152642A JP5297853A JP29785393A JPH07152642A JP H07152642 A JPH07152642 A JP H07152642A JP 5297853 A JP5297853 A JP 5297853A JP 29785393 A JP29785393 A JP 29785393A JP H07152642 A JPH07152642 A JP H07152642A
- Authority
- JP
- Japan
- Prior art keywords
- block
- basic memory
- storage device
- external storage
- blocks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Stored Programmes (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、データ領域を大量に使
用するプログラムの製造において、基本メモリの他に外
部記憶装置を利用してデータ領域を拡張するデータ領域
拡張方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data area expansion method for expanding a data area by utilizing an external storage device in addition to a basic memory in manufacturing a program which uses a large amount of data area.
【0002】[0002]
【従来の技術】従来、データ領域を大量に使用するプロ
グラムの製造においては、基本メモリの記憶容量に制約
があるため、その容量を超過したブロックは外部記憶装
置へ展開される。そして、外部記憶装置に展開されたブ
ロックへアクセスする場合、ワークエリアを使用して基
本メモリ上のブロックと、該アクセスブロックとの入れ
替えつまりスワップが行われる。2. Description of the Related Art Conventionally, in manufacturing a program that uses a large amount of data area, since the storage capacity of a basic memory is limited, blocks exceeding that capacity are expanded to an external storage device. Then, when accessing a block expanded in the external storage device, the work area is used to replace or swap the block on the basic memory with the access block.
【0003】[0003]
【発明が解決しようとする課題】上記した従来技術で
は、外部記憶装置のブロックと基本メモリ上のブロック
をスワップするために、基本メモリ上の不用なブロック
をワークエリアへ退避し(退避処理)、外部記憶装置か
ら必要なブロックを基本メモリへ読み込み(読み込み処
理)、そしてワークエリアに退避された基本メモリのブ
ロックを外部記憶装置へ格納する(格納処理)、という
処理が必要であった。In the above-mentioned conventional technique, in order to swap the block of the external storage device and the block of the basic memory, an unnecessary block in the basic memory is saved in the work area (saving processing). It is necessary to read necessary blocks from the external storage device into the basic memory (reading process) and store the blocks of the basic memory saved in the work area in the external storage device (storing process).
【0004】このように、スワッピング時にブロック入
出力処理が3回発生し、オーバヘッドが増大するという
問題がある。また、基本メモリ上の不用なブロックに対
して更新処理されていない場合のブロック入出力処理に
ついても、その処理回数の削減について考慮されずに、
上記したように3回のブロック入出力が発生し、プログ
ラム性能の向上が望めないという問題があった。As described above, there is a problem that the block input / output processing occurs three times during the swapping and the overhead increases. Also, regarding the block input / output processing when the unnecessary blocks on the basic memory are not updated, the reduction of the number of times of processing is not considered,
As described above, block input / output occurs three times, and there is a problem in that improvement in program performance cannot be expected.
【0005】本発明の目的は、外部記憶装置に展開され
たブロックへアクセスする際に発生するブロック入出力
処理の回数を減らし、プログラム性能を向上させたデー
タ領域拡張方式を提供することにある。It is an object of the present invention to provide a data area expansion system in which the number of block input / output processes that occur when accessing a block expanded in an external storage device is reduced and the program performance is improved.
【0006】[0006]
【課題を解決するための手段】前記目的を達成するため
に、本発明では、基本メモリの他に外部記憶装置を利用
してプログラムのデータ領域を拡張するデータ領域拡張
方式において、基本メモリの記憶容量を超えるブロック
を外部記憶装置に格納すると共に、該基本メモリ内のブ
ロックと同一のブロックを前記外部記憶装置に格納し、
前記基本メモリ内の第1のブロックと前記外部記憶装置
内の第2のブロックとをスワップするとき、該第1のブ
ロックが更新されていない場合は、該第2のブロックを
前記基本メモリに読み込み、該第1のブロックが更新さ
れている場合は、該第1のブロックを前記外部記憶装置
内の対応するブロック位置に退避し、その後、前記第2
のブロックを前記基本メモリに読み込むことを特徴とし
ている。In order to achieve the above object, according to the present invention, in a data area expansion system for expanding a data area of a program by utilizing an external storage device in addition to the basic memory, the storage of the basic memory is performed. A block exceeding the capacity is stored in an external storage device, and the same block as the block in the basic memory is stored in the external storage device,
When the first block in the basic memory and the second block in the external storage device are swapped, if the first block has not been updated, the second block is read into the basic memory. , If the first block has been updated, the first block is saved to a corresponding block position in the external storage device, and then the second block is stored.
Is read into the basic memory.
【0007】[0007]
【作用】外部記憶装置には、基本メモリに記憶されてい
るブロックの他に、基本メモリの記憶容量を超えたブロ
ックを格納する。ブロック管理テーブルは、ブロックの
格納位置、更新状態を管理する。基本メモリの第1のブ
ロックと外部記憶装置の第2のブロックとをスワップす
るとき、第1のブロックのブロック管理テーブルを参照
する。第1のブロックが更新されていない場合は、第2
のブロックを基本メモリに読み込む。第1のブロックが
更新されている場合は、第1のブロックを外部記憶装置
に退避してから第2のブロックを基本メモリに読み込
む。このように、基本メモリを超過したブロックの他
に、基本メモリ内のブロックも外部記憶装置に展開して
いるので、外部記憶装置上のブロックへアクセスすると
き、基本メモリ上の不用ブロックをワークエリアへ退避
する処理が必要なくなり、直接、基本メモリのブロック
が外部記憶装置へ格納される。また、ブロック管理テー
ブルを参照することによって、基本メモリ上のブロック
が更新されたか否かを判別することができるので、スワ
ップ時に、ブロックが更新されていなければ基本メモリ
のブロックを外部記憶装置へ退避する処理が省略され、
ブロック入出力回数を減らすことができる。In the external storage device, in addition to the blocks stored in the basic memory, blocks exceeding the storage capacity of the basic memory are stored. The block management table manages the storage location and update status of blocks. When swapping the first block of the basic memory and the second block of the external storage device, the block management table of the first block is referred to. If the first block has not been updated, the second
Read the block of into the basic memory. When the first block has been updated, the first block is saved in the external storage device and then the second block is read into the basic memory. In this way, in addition to the blocks that exceed the basic memory, the blocks in the basic memory are also expanded in the external storage device, so when accessing the blocks in the external storage device, the unused blocks in the basic memory are stored in the work area. A block of the basic memory is directly stored in the external storage device, because the process of saving to is unnecessary. Also, by referring to the block management table, it is possible to determine whether or not the block on the basic memory has been updated. Therefore, if the block is not updated at the time of swap, the block of the basic memory is saved to the external storage device. Processing is omitted,
The number of block input / output can be reduced.
【0008】[0008]
【実施例】以下、本発明の一実施例を図面を用いて具体
的に説明する。図1は、本発明の基本原理を説明する図
であり、基本メモリと外部記憶装置へのブロック展開を
示している。図1において、1は、基本メモリと外部記
憶装置へ展開されている各ブロックの場所、状態を管理
するブロック管理テーブル、2は、主記憶装置上の基本
メモリ、3は、ディスクなどの外部記憶装置である。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be specifically described below with reference to the drawings. FIG. 1 is a diagram for explaining the basic principle of the present invention, showing a block expansion into a basic memory and an external storage device. In FIG. 1, reference numeral 1 is a block management table for managing the locations and states of each block expanded in a basic memory and an external storage device, 2 is a basic memory on the main storage device, and 3 is an external storage device such as a disk. It is a device.
【0009】データはブロック単位で処理され、基本メ
モリ2の記憶容量は、説明を簡単にするため、2ブロッ
クとする。いま、処理すべきブロックが5ブロック(A
からE)からなり、基本メモリ2の記憶容量を超える大
きさとなった場合、基本メモリ2には、処理ブロックA
とBが格納され、基本メモリ2を超えたブロックC、
D、Eは外部記憶装置3に展開される。Data is processed in block units, and the storage capacity of the basic memory 2 is set to 2 blocks for the sake of simplicity. Currently, there are 5 blocks to be processed (A
To E), and when the size exceeds the storage capacity of the basic memory 2, the processing block A is stored in the basic memory 2.
And B are stored and the block C exceeds the basic memory 2,
D and E are expanded in the external storage device 3.
【0010】そして、更に基本メモリ2上のブロック
A、Bについても、同一のブロックA、Bが外部記憶装
置3に展開される。基本メモリ2、外部記憶装置3に展
開された各ブロックは、ブロック管理テーブル1によっ
て、展開されている場所、状態が管理される。Further, with respect to the blocks A and B on the basic memory 2, the same blocks A and B are expanded in the external storage device 3. Each block expanded in the basic memory 2 and the external storage device 3 is managed by the block management table 1 in the expanded position and state.
【0011】図2は、本発明のシステム構成図であり、
1、2、3はそれぞれ前述したブロック管理テーブル、
基本メモリ、外部記憶装置であり、4は、ブロック管理
テーブル1を参照してブロックの入出力を制御する、C
PUに設けられたブロック入出力制御部である。FIG. 2 is a system configuration diagram of the present invention.
1, 2, and 3 are the block management tables described above,
A basic memory and an external storage device, 4 refers to the block management table 1 to control the input / output of the block, C
It is a block input / output control unit provided in the PU.
【0012】図3は、ブロック管理テーブル1の構成を
示す。該テーブルには、全てのブロックについて、基本
メモリ上にブロックが存在するか否かを示す、基本メモ
リ存在フラグ11と、基本メモリ上のブロックが更新さ
れたか否かを示す、基本メモリ更新フラグ12と、基本
メモリ上の位置13と、外部記憶装置上の位置14が書
き込まれている。FIG. 3 shows the configuration of the block management table 1. In the table, for all blocks, a basic memory existence flag 11 indicating whether a block exists in the basic memory and a basic memory update flag 12 indicating whether a block in the basic memory has been updated. , Position 13 on the basic memory, and position 14 on the external storage device are written.
【0013】図4は、基本メモリ上の不用ブロックと外
部記憶装置上のブロック(必要ブロック)とをスワップ
するときの、本発明の処理フローチャートを示す。ブロ
ック入出力制御部4は、ブロック管理テーブル1の基本
メモリ存在フラグ11を参照し、必要ブロックが基本メ
モリ2上に存在するか否かを判定する(ステップ10
1)。FIG. 4 shows a processing flowchart of the present invention when swapping an unnecessary block on the basic memory and a block (necessary block) on the external storage device. The block input / output control unit 4 refers to the basic memory existence flag 11 of the block management table 1 and determines whether or not the necessary block exists in the basic memory 2 (step 10).
1).
【0014】必要ブロックが基本メモリ2上に存在する
場合は処理を終了し、存在しない場合、ブロック入出力
制御部4は、基本メモリ2上の不用ブロックを検索する
(ステップ102)。なお、不用ブロックの選択方法と
しては、例えばLRU、FIFOなどの公知の手法を用
いればよい。If the required block exists in the basic memory 2, the processing is terminated, and if it does not exist, the block input / output control unit 4 searches for an unused block in the basic memory 2 (step 102). A known method such as LRU or FIFO may be used as a method of selecting an unnecessary block.
【0015】次いで、ブロック入出力制御部4は、ブロ
ック管理テーブル1の基本メモリ更新フラグ12を参照
して、不用ブロックが更新されているか否かを判定する
(ステップ103)。不用ブロックが更新されている場
合、不用ブロックを外部記憶装置3へ退避し(ステップ
104)、更新されていない場合は退避しない。そし
て、外部記憶装置3から必要ブロックを、基本メモリ2
に読み込む(ステップ105)。Next, the block input / output control unit 4 refers to the basic memory update flag 12 of the block management table 1 to determine whether or not the unused block has been updated (step 103). If the unused block has been updated, the unused block is saved to the external storage device 3 (step 104), and if it has not been updated, it is not saved. Then, the necessary blocks are transferred from the external storage device 3 to the basic memory 2
(Step 105).
【0016】本実施例のブロック入出力回数について、
図5、6を参照して説明する。図5は、基本メモリ上の
ブロックが更新されている例を示す。基本メモリ2上に
ブロックA、Bがあり、ブロックBがブロックB’に更
新されている場合は、外部記憶装置3の古い内容のブロ
ックBと置き換える必要がある。従って、外部記憶装置
3へ新しい内容のブロックB’を退避し(退避処理)、
外部記憶装置3から必要ブロックCを、基本メモリ2へ
読み込む(読み込み処理)ので、この結果、本発明では
ブロック入出力処理が2回発生する。Regarding the number of block inputs / outputs in this embodiment,
This will be described with reference to FIGS. FIG. 5 shows an example in which a block on the basic memory is updated. If there are blocks A and B on the basic memory 2 and the block B has been updated to the block B ′, it is necessary to replace it with the block B having the old content in the external storage device 3. Therefore, the block B ′ having new contents is saved in the external storage device 3 (saving process),
Since the necessary block C is read from the external storage device 3 into the basic memory 2 (reading process), as a result, the block input / output process occurs twice in the present invention.
【0017】図6は、基本メモリ上のブロックが更新さ
れていない場合の例を示す。基本メモリ2上のブロック
A、Bが更新されていない場合は、該ブロックA、Bと
同様のブロックが外部記憶装置3上に存在するので、退
避する必要がない。従って、外部記憶装置3から必要ブ
ロックCを、基本メモリ2へ読み込む処理のみが必要に
なり、この結果、本発明では、ブロック入出力処理が1
回で済むことになる。FIG. 6 shows an example in which a block on the basic memory has not been updated. If the blocks A and B on the basic memory 2 have not been updated, the blocks similar to the blocks A and B are present on the external storage device 3, so there is no need to save them. Therefore, only the process of reading the required block C from the external storage device 3 into the basic memory 2 is required. As a result, in the present invention, the block input / output process is 1
It only needs to be done once.
【0018】本実施例によれば、全ブロックを外部記憶
装置へ展開することにより、ブロック入出力回数を1回
または2回に減らすことができる。According to this embodiment, the number of block input / output operations can be reduced to once or twice by expanding all blocks in the external storage device.
【0019】[0019]
【発明の効果】以上、説明したように、本発明によれ
ば、基本メモリの記憶容量を超えるブロックを外部記憶
装置に格納すると共に、基本メモリ内のブロックと同一
のブロックを外部記憶装置に格納しているので、基本メ
モリ内のブロックが更新されていない場合は、外部記憶
装置への退避処理が必要なくなり、ブロック入出力回数
を従来のものに比べて減らすことができ、プログラム性
能を大幅に向上させることが可能となる。As described above, according to the present invention, a block exceeding the storage capacity of the basic memory is stored in the external storage device, and the same block as the block in the basic memory is stored in the external storage device. Therefore, if the block in the basic memory is not updated, the save processing to the external storage device is not required, the number of block input / output can be reduced compared to the conventional one, and the program performance can be significantly improved. It is possible to improve.
【図1】本発明の基本原理を説明する図である。FIG. 1 is a diagram illustrating a basic principle of the present invention.
【図2】本発明のシステム構成図である。FIG. 2 is a system configuration diagram of the present invention.
【図3】ブロック管理テーブルの構成を示す。FIG. 3 shows a configuration of a block management table.
【図4】基本メモリ上の不用ブロックと外部記憶装置上
のブロックとをスワップするときの、本発明の処理フロ
ーチャートを示す。FIG. 4 shows a processing flowchart of the present invention when swapping an unnecessary block on a basic memory and a block on an external storage device.
【図5】基本メモリ上のブロックが更新されている場合
の本発明の動作を説明する図である。FIG. 5 is a diagram illustrating an operation of the present invention when a block on a basic memory is updated.
【図6】基本メモリ上のブロックが更新されていない場
合の本発明の動作を説明する図である。FIG. 6 is a diagram illustrating an operation of the present invention when a block on the basic memory is not updated.
1 ブロック管理テーブル 2 基本メモリ 3 外部記憶装置 4 ブロック入出力制御部 1 block management table 2 basic memory 3 external storage device 4 block input / output control unit
Claims (1)
てプログラムのデータ領域を拡張するデータ領域拡張方
式において、基本メモリの記憶容量を超えるブロックを
外部記憶装置に格納すると共に、該基本メモリ内のブロ
ックと同一のブロックを前記外部記憶装置に格納し、前
記基本メモリ内の第1のブロックと前記外部記憶装置内
の第2のブロックとをスワップするとき、該第1のブロ
ックが更新されていない場合は、該第2のブロックを前
記基本メモリに読み込み、該第1のブロックが更新され
ている場合は、該第1のブロックを前記外部記憶装置内
の対応するブロック位置に退避し、その後、前記第2の
ブロックを前記基本メモリに読み込むことを特徴とする
データ領域拡張方式。1. In a data area expansion method for expanding a data area of a program by using an external storage device in addition to the basic memory, a block exceeding the storage capacity of the basic memory is stored in the external storage device and the basic memory is used. When the same block as the block in the external storage device is stored in the external storage device and the first block in the basic memory and the second block in the external storage device are swapped, the first block is updated. If not, the second block is read into the basic memory, and if the first block is updated, the first block is saved to a corresponding block position in the external storage device, After that, the data area expansion method is characterized in that the second block is read into the basic memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5297853A JPH07152642A (en) | 1993-11-29 | 1993-11-29 | Data area expansion system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5297853A JPH07152642A (en) | 1993-11-29 | 1993-11-29 | Data area expansion system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07152642A true JPH07152642A (en) | 1995-06-16 |
Family
ID=17852003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5297853A Pending JPH07152642A (en) | 1993-11-29 | 1993-11-29 | Data area expansion system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07152642A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6233664B1 (en) | 1998-06-19 | 2001-05-15 | Samsung Electronics Co., Ltd. | Apparatus and method for swapping contents between main memory and auxiliary memory and web video phone adopting the apparatus |
CN100435102C (en) * | 2005-01-19 | 2008-11-19 | 威盛电子股份有限公司 | Method and system for swapping code in a digital signal processor |
-
1993
- 1993-11-29 JP JP5297853A patent/JPH07152642A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6233664B1 (en) | 1998-06-19 | 2001-05-15 | Samsung Electronics Co., Ltd. | Apparatus and method for swapping contents between main memory and auxiliary memory and web video phone adopting the apparatus |
CN100435102C (en) * | 2005-01-19 | 2008-11-19 | 威盛电子股份有限公司 | Method and system for swapping code in a digital signal processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6658549B2 (en) | Method and system allowing a single entity to manage memory comprising compressed and uncompressed data | |
US20060004984A1 (en) | Virtual memory management system | |
US6473842B1 (en) | Virtual memory managing system for managing swap-outs by page units and a batch swap-out by task units | |
US6081871A (en) | Cache system configurable for serial or parallel access depending on hit rate | |
JPH07152642A (en) | Data area expansion system | |
KR20010024958A (en) | Access control device and access method | |
EP0787326B1 (en) | System and method for processing of memory data and communication system comprising such system | |
JPH01303547A (en) | Control system for information memory | |
JPH05120131A (en) | Storage managing system in computer | |
JPH0421222B2 (en) | ||
JP2002149593A (en) | Hierarchical bus system | |
KR910000590B1 (en) | Mirror disk ram system of computer | |
JPH0652056A (en) | Cache memory system | |
JP3772003B2 (en) | Memory management system and data management method | |
JPH1055308A (en) | Cache memory | |
JPS6049949B2 (en) | address history device | |
JP2002259209A (en) | Arithmetic processing system | |
JP3076199B2 (en) | Buffer access control circuit | |
JPS6269321A (en) | Process switching system | |
JPH10105466A (en) | Cache memory control method for disk device | |
JPH10133948A (en) | Cache memory device | |
JPS6380349A (en) | High speed page input/output system | |
JPH0485641A (en) | Virtual storage management system | |
JPS63234336A (en) | Information processor | |
JPH02213962A (en) | Cache memory control system for disk cache |