JPH01187652A - Memory control system - Google Patents

Memory control system

Info

Publication number
JPH01187652A
JPH01187652A JP63010614A JP1061488A JPH01187652A JP H01187652 A JPH01187652 A JP H01187652A JP 63010614 A JP63010614 A JP 63010614A JP 1061488 A JP1061488 A JP 1061488A JP H01187652 A JPH01187652 A JP H01187652A
Authority
JP
Japan
Prior art keywords
storage device
virtual address
space
page
extended storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP63010614A
Other languages
Japanese (ja)
Inventor
Hiroo Miyadera
宮寺 博男
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63010614A priority Critical patent/JPH01187652A/en
Publication of JPH01187652A publication Critical patent/JPH01187652A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To effectively use an extended storage and to improve the performance of a system by determining an assignment to the extended storage by the combination of the two parameters of a virtual address range and a virtual address space. CONSTITUTION:The system consists of an arithmetic processing unit 30, a main storage device 31, an extended storage device 32, an external storage device 33. Here, by designating prior the virtual address range, the area common among the respective spaces can be assigned to the extended storage device 32. By designating the virtual address space and the virtual address range, the specific area of a specific space can be assigned to the extended storage device 32 and therefore, the data of a system common area of high use frequency, data/program related to a specific data base processing, etc., can be assigned to the extended storage device 32. Thus, the extended storage is effectively used and the performance of the whole system can be improved.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は多重仮想記憶方式をとるデータ処理装置のメモ
リ制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a memory control system for a data processing device that employs a multiple virtual memory system.

〔従来の技術〕[Conventional technology]

仮想記憶方式をとるデータ処理装置においては、ソフト
ウェアから見えるアドレス空間(仮想アドレス空間)は
ハードウェアの主記憶装置の容量から独立で、一般的な
データ処理装置では2ギガバイト(GB)の仮想アドレ
スを参照できるアーキテクチャとなって℃・る。
In a data processing device that uses a virtual memory method, the address space visible to the software (virtual address space) is independent of the capacity of the hardware's main memory, and a typical data processing device uses a virtual address of 2 gigabytes (GB). It becomes an architecture that can be referenced.

第2図に従来の仮想記憶方式をとるデータ処理装置の概
念図を示す。第2図において、20は演算処理装置、2
1は主記憶装置(実メモIJ ) 、22は外部記憶装
置である。記憶装置は主記憶装[21と外部記憶装置2
2の階層構造をなし、演算処理装置20で実行するのに
必要なプログラムやデータはページ単位に外部記憶装置
22から主記憶装置21に取シ込まれ(ページイン)、
必要でないプログラムやデータは同様にページ単位で主
記憶装置21から外部記憶装置22にはきだされる(ペ
ージアウト)。つまり、実際に演算処理装置20に接続
されている主記憶装置21の容量がプログラムやデータ
のアドレス空間(仮想アドレス空間)の最大値よシ小さ
(ても、ソフトウェアからは、最大容量の仮想アドレス
空間があるものとして扱われる。
FIG. 2 shows a conceptual diagram of a data processing device that uses a conventional virtual storage method. In FIG. 2, 20 is an arithmetic processing unit;
1 is a main storage device (actual memory IJ), and 22 is an external storage device. The storage devices are main storage device [21 and external storage device 2]
The programs and data necessary for execution by the arithmetic processing unit 20 are imported page by page from the external storage device 22 to the main storage device 21 (page-in).
Unnecessary programs and data are similarly output from the main storage device 21 to the external storage device 22 in page units (page out). In other words, even if the capacity of the main storage device 21 actually connected to the arithmetic processing unit 20 is smaller than the maximum value of the address space (virtual address space) for programs and data (even if the capacity of the main storage device 21 actually connected to the arithmetic processing unit 20 is It is treated as if there is space.

この仮想記憶方式の考えをさらに進め、各使用者ごとに
最大仮想アドレス空間を与える多重仮想記憶方式をとる
情報処理システムが普及しはじめ、例えばTSSシステ
ムなどにおいては大きな効果を示している。この場合、
問題となるのは、TSS端末が増加するにつれ、主記憶
装置と外部記憶装置との間でのページイン/ページアウ
トが増加し、大きなオーバヘッドとなることである。特
にデータベースの検索においては、以下の理由により性
能低下が著しく、大きな問題となっている。
Information processing systems that further advance the idea of this virtual memory method and employ a multiple virtual memory method that provides a maximum virtual address space for each user have begun to spread, and have shown great effectiveness in, for example, TSS systems. in this case,
The problem is that as the number of TSS terminals increases, page-in/page-out between the main storage and external storage increases, resulting in a large overhead. In particular, when searching a database, the performance deteriorates significantly due to the following reasons, which is a big problem.

最近のデータベースはエンドユーザ向きな使い易いデー
タベースが普及し、データ構造も従来の定形業務を前提
とした構造型なものから、非定形な間合せ業務も可能な
無構造型(テーブル形式)になっている。これらのデー
タベースでは、従来よりもデータ全検索する範囲が広(
なシ、外部ファイル上に存在するデータベースを主記憶
装置に読込む頻度も多くなり、大きな性能上のネックと
なっている。
Recently, easy-to-use databases suitable for end users have become popular, and the data structure has changed from the conventional structured type based on regular work to an unstructured type (table format) that can also handle non-standard makeshift work. ing. With these databases, the scope for searching all data is wider than before (
However, the frequency with which databases residing on external files are read into the main storage device has increased, creating a major performance bottleneck.

一方、LSI製造技術の進歩は目覚ましく、近年大容量
のメモリが比較的安価に実現でき、主記憶装置の大容量
化とともに、大容量記憶装置(拡張記憶装置)が使われ
始めている。この拡張記憶装置は、例えば、主記憶装置
との間で高速なデータ転送を行なえるもので、直接演算
処理装置からアクセスして演算するような装置(主記憶
装置)とは異なるものである。
On the other hand, advances in LSI manufacturing technology have been remarkable, and in recent years, large-capacity memories have become relatively inexpensive, and with the increase in the capacity of main storage devices, large-capacity storage devices (expansion storage devices) have begun to be used. This extended storage device is capable of high-speed data transfer with, for example, a main storage device, and is different from a device (main storage device) that is directly accessed from an arithmetic processing unit to perform calculations.

上記の拡張記憶装置をページン、グ装置として使用する
ことによシステム共通の性能向上をはかることができる
。また、上記の様なデータベースの処理を特に高速に処
理したい場合には、データベースの置かれている空間の
みを拡張記憶に割当てる方式が考えられる。特開昭60
−126749号公報は特定の仮想アドレス空間のみを
拡張されたMS領域に割当て、特定空間に対するアクセ
スの空間単位(空間ID)によシ拡張記憶に割当てるか
どうかを決める方式では下記の問題が発生する。
By using the above extended storage device as a paging device, it is possible to improve the performance common to the system. Furthermore, if it is desired to particularly speed up the processing of the database as described above, a method can be considered in which only the space where the database is located is allocated to extended storage. Tokukai 1986
- Publication No. 126749 allocates only a specific virtual address space to the expanded MS area, and the following problem occurs with the method of determining whether or not to allocate to extended storage based on the space unit (space ID) of access to the specific space. .

■ 各空間に共通にある共通領域に対して、拡張記憶へ
のアサインが難かしくなる。
■ It becomes difficult to assign extended memory to a common area common to each space.

■ 空間IDで指定すると、1つの単位が2GBであり
、拡張記憶の容量(数〜数十GB)に比較して、単位が
大きすぎる。空間の数が制限される。
(1) When specified using a space ID, one unit is 2 GB, which is too large compared to the capacity of extended storage (several to several tens of GB). The number of spaces is limited.

■ ある空間の一部分の領域の使用頻度が高く、これを
拡張記憶にアサインすれば性能向上が大きく期待できる
が、空間全体を拡張記憶にアサインすると、無駄が大き
すぎる。
■ A portion of a certain space is frequently used, and if it is assigned to extended storage, performance can be greatly improved, but assigning the entire space to extended storage is too wasteful.

これらの理由から、使用頻度の高いデータベースやシス
テム共通のデータであっても、拡張記憶にアサイ/でき
なくなることもあり、拡張記憶の有効利用がはかれない
ことになる。
For these reasons, even frequently used databases or data common to systems may not be able to be assigned to extended storage, making it impossible to effectively utilize extended storage.

本発明の目的は、多重仮想記憶方式をとるデータ処理装
置において、上記データベースのような特定データ、ア
プリケーションの処理を高速化するとともに、拡張記憶
を使用頻度の高いプログラム/データにアサインし、有
効利用をはかυ、シ上記目的は、拡張記憶へのアサイン
を、仮想アドレス範囲、仮想アドレス空間の2つのノシ
ラメータの組合せによって決定する方式によシ達成され
る0 〔作用〕 仮想アドレスの範囲を優先して指定することにより、各
空間共通の領域を拡張記憶装置にアサインできる。また
、仮想アドレス空間(空間ID)と仮想アドレス範囲を
指定することによシ、特定空間の特定領域を拡張記憶装
置にアサインできるので、システム共通領域などの使用
頻度の高いデータと、特定のデータベース処理に関連し
たデータ/プログラム等を拡張記憶装置にアサインする
ことにより拡張記it有効に具用してシステム全体の°
性能向上をはかれるとともに、特定のデータベース/ア
プリケーションを高速化できる。
An object of the present invention is to speed up the processing of specific data and applications such as the above-mentioned database in a data processing device that employs a multiple virtual memory method, and to allocate extended memory to frequently used programs/data for effective use. The above purpose is achieved by a method in which the assignment to extended memory is determined by a combination of two parameters: the virtual address range and the virtual address space. [Operation] Gives priority to the virtual address range. By specifying this, an area common to each space can be assigned to the extended storage device. In addition, by specifying the virtual address space (space ID) and virtual address range, you can assign a specific area of a specific space to the extended storage device, so you can easily store frequently used data such as system common areas and specific databases. By assigning data/programs, etc. related to processing to the extended storage device, extended storage can be effectively used and the overall system performance can be improved.
It can improve performance and speed up certain databases/applications.

〔実施例〕 第3図は1本発明の一実施例のシステム構成図である。〔Example〕 FIG. 3 is a system configuration diagram of an embodiment of the present invention.

第3図において、30は演算処理装置、51は主記憶装
置(MS)、32は拡張記憶装置、36は外部記憶装置
である。
In FIG. 3, 30 is an arithmetic processing unit, 51 is a main memory (MS), 32 is an extended storage device, and 36 is an external storage device.

第4図は多重仮想記憶方式をサポートする仮想空間の構
成例を示したもので、領域40 、.12は、システム
共通領域、領域43は、拡張システム共通領域(16M
B以上の共通領域)であシ、各空間に共通な共通領域で
ある。領域41はジョブ固有領域、領域42は拡張ジョ
ブ固有領域(16MB以上の領域)であシ、各ユーザに
割り当てられた領域である。本発明では、第4図の斜線
で示した部分(領域)を拡張記憶装置32上に割り当て
、そのデータ/プログラムをあらかじめ該拡張記憶装置
32上に格納しておき、必要に応じて該拡張l装置32
と主記憶装置31の間でページイン/ページアウトして
用いるのである。
FIG. 4 shows an example of the configuration of a virtual space that supports the multiple virtual memory system, with areas 40, . 12 is a system common area, and area 43 is an extended system common area (16M
This is a common area common to each space. The area 41 is a job-specific area, and the area 42 is an extended job-specific area (an area of 16 MB or more), which is allocated to each user. In the present invention, the shaded portion (area) in FIG. device 32
It is used by performing page-in/page-out between the main storage device 31 and the main storage device 31.

第5図は本発明を実施したときの処理の流れを示すもの
であ)、ページフォールト(必要となる仮想記憶上のペ
ージが、MS上にない場合に発生する)発生時の処理を
示したものである。
Figure 5 shows the flow of processing when implementing the present invention), and shows the processing when a page fault (occurs when the required page in virtual memory is not available on the MS) occurs. It is something.

プログラム実行時、ページフォールトが発生すると、該
ページフォールトの発生したページの仮想アドレスと仮
想空間番号(ID)を調べる(ステップ51)次にペー
ジフォールトの発生したページの仮想アドレスが、あら
かじめ登録しである領域の範囲にあるD・どうかを調べ
る(ステップ52)。
When a page fault occurs during program execution, check the virtual address and virtual space number (ID) of the page where the page fault occurred (step 51).Next, the virtual address of the page where the page fault occurred is registered in advance. It is checked whether D is within a certain area (step 52).

そして、もし範囲内であればステップ56の処理へ進む
。もし範囲外であれば、当該ページの仮想空間番号があ
らかじめ登録しである仮想空間番号と一致するかを調べ
る(ステップ57)。そして、もし一致していない場合
、従来のページフォールト処理と同様に、外部記憶装置
56から必要となるページをMS31に読み込む動作を
行なう(ステップ60)。一方、ページフォールトの発
生した仮想空間番号と前以って登録しておいた仮想空間
番号が一致している場合は、当該ページの仮想アドレス
が、あらかじめ登録しである領域の範囲にあるかどうか
を調べる(ステップ58)。そして、もし範囲外であれ
ば、従来のページフォールト処理(ステップ60)を行
なう。もし範囲内であれば、拡張記憶32の検索を行な
い(ステップ53)、拡張記憶32に必要となるページ
が格納されているかどうかを調べる(ステップ54)。
If it is within the range, the process proceeds to step 56. If it is outside the range, it is checked whether the virtual space number of the page matches a pre-registered virtual space number (step 57). If they do not match, the required page is read into the MS 31 from the external storage device 56, as in conventional page fault processing (step 60). On the other hand, if the virtual space number where the page fault occurred matches the previously registered virtual space number, check whether the virtual address of the page is within the range of the previously registered area. (step 58). If it is outside the range, conventional page fault processing (step 60) is performed. If it is within the range, the expanded storage 32 is searched (step 53), and it is determined whether the required page is stored in the expanded storage 32 (step 54).

そして、必要となるページが拡張記憶32にある場合は
、拡張記憶32から必要ページをMS31に読み込み(
ステップ55)、ページフォールトが発生したプログラ
ムへもどる処理を行なう(ステップ56)。必要となる
ページが拡張記憶52にない場合、外部記憶装置33か
ら拡張記l 52へ必要ページを読み込んだ後(ステッ
プ59)、ステップ55の処理へ進む。なお、拡張記憶
32から必要ページをMS31に読み込む時(ページイ
ン)、不要なページをMS31から拡張記憶32へはき
だす(ページアウト)必要があるが、このページアウト
時、不要データは拡張記tM52に残しておいてもよい
し、外部記憶装置33まで戻してもよい0 第1図は、第5図におけるステップ51 、52 。
If the required page is in the extended memory 32, the required page is read from the extended memory 32 into the MS 31 (
Step 55), the program returns to the program where the page fault has occurred (Step 56). If the necessary page is not in the extended memory 52, the necessary page is read from the external storage device 33 into the extended memory 52 (step 59), and then the process proceeds to step 55. Note that when reading necessary pages from the extended memory 32 into the MS31 (page-in), it is necessary to eject unnecessary pages from the MS31 to the extended memory 32 (page-out), but at this page-out, unnecessary data is transferred to the extended memory tM52. You may leave it as is, or you may return it to the external storage device 33. FIG. 1 shows steps 51 and 52 in FIG.

57.58の処理全ハードウェアで実現する場合の実施
例である。第1図において、拡張記憶に割り当てて使用
する仮想記憶領域アドレスは、データ@ 80 、81
 、82 、83 、84を通ってレジスタ617 、
8 、80 、81に前以って登録しておく。レジスタ
6には各空間で共通的に使用する領域の開始アドレスを
登録し、レジスタ7には上記領域の終了アドレスを登録
しておく。一般に、領域は複数指定可能である。レジス
タ8には、仮想空間番号。
This is an example in which the processing of 57.58 is realized using all hardware. In FIG. 1, the virtual storage area addresses allocated and used in extended storage are data@80, 81
, 82 , 83 , 84 to register 617 ,
8, 80, and 81 in advance. In register 6, a start address of an area commonly used in each space is registered, and in register 7, an end address of the area is registered. Generally, multiple areas can be specified. Register 8 contains the virtual space number.

(ID)を登録し、レジスタ80には、上記仮想空間番
号に対応して拡張記憶装置62にアサインする領域の開
始アドレスを登録し、レジスタ81にページフォールト
発生時、ページフォールト発生信号線6とタイミング信
号線4のアンド条件がアンドゲート5でとられ、ページ
フォールトが発生した仮想アドレスが、データIa1を
通ってレジスタ77にセットされ、仮想空間番号(ID
)が、データ線2を通ってレジスタ78にセットされる
(ID), the register 80 registers the start address of the area to be assigned to the expanded storage device 62 corresponding to the virtual space number, and the register 81 registers the page fault occurrence signal line 6 when a page fault occurs. The AND condition of the timing signal line 4 is taken by the AND gate 5, and the virtual address where the page fault has occurred is set in the register 77 through the data Ia1, and the virtual space number (ID
) is set in register 78 through data line 2.

レジスタ6.7とレジスタ77が比較回路70で比較さ
れ、レジスタ77の内容が指定された仮想アドレスの領
域にあるかがチエツクされる。
Register 6.7 and register 77 are compared by comparison circuit 70, and it is checked whether the contents of register 77 are in the designated virtual address area.

マタ、レジスタ8とレジスタ78が比較回路71で比較
され、レジスタ78の内容が指定された仮想空間番号で
あるかがチエツクされる。もし、−致していればレジス
タ77とレジスタ80,81力比較回路72で比較され
、レジスタ77の内容が指定され仮想アドレスの領域に
あるかがチエツクされる。
Then, register 8 and register 78 are compared by comparison circuit 71, and it is checked whether the contents of register 78 are the designated virtual space number. If they match, the register 77 and the registers 80 and 81 are compared in the comparison circuit 72, and it is checked whether the contents of the register 77 are in the specified virtual address area.

比較回路70と比較回路72の結果がオアゲート75を
通り、タイミング信号線76によってラッチ74にセッ
トされる。ラッチ74の内容は信号線75″f!:介し
て第5図の判定処理に利用される。
The results of comparison circuit 70 and comparison circuit 72 pass through OR gate 75 and are set in latch 74 by timing signal line 76 . The contents of the latch 74 are used in the determination process shown in FIG. 5 via a signal line 75''f!:.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、特定の領域、特定の空間と特定の領域
を高速拡張記憶装置に割り当てることができるので、 拡張記憶装置を有効に利用して、システム全体の性能向
上をはかるとともに、特定のデータベース処理/アプリ
ケージ1ンを高速化できる効果がある。
According to the present invention, it is possible to allocate a specific area, a specific space, and a specific area to a high-speed expanded storage device, so that the expanded storage device can be effectively used to improve the performance of the entire system, and also to improve the performance of the entire system. This has the effect of speeding up database processing/application processing.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例を示す図、第2図は仮想記憶
方式をとるデータ処理装置の概念図、第3図は本発明の
システム構成の概念図、第4図は多重仮想空間の構成例
を示す図、第5図は本発明による処理フローを示す図で
ある。 50・・・演算処理装置、  51・・・主記憶装置、
32・・・拡張記憶装置、  53・・・外部記憶装置
。 代理人弁理士 小  川  勝  男 第1帛 第50 発4圀
Figure 1 is a diagram showing an embodiment of the present invention, Figure 2 is a conceptual diagram of a data processing device that uses a virtual storage method, Figure 3 is a conceptual diagram of the system configuration of the present invention, and Figure 4 is a multiple virtual space. FIG. 5 is a diagram showing a processing flow according to the present invention. 50... Arithmetic processing unit, 51... Main storage device,
32...Extended storage device, 53...External storage device. Representative patent attorney Katsutoshi Ogawa 1st volume 50th division 4th district

Claims (1)

【特許請求の範囲】[Claims] 1、多重仮想記憶方式をとるデータ処理装置において、
主記憶装置と外部記憶装置の間に高速記憶装置を設置し
て、該高速記憶装置に少なくとも1つの仮想記憶領域を
割り当て、プログラム実行時、ページフオールトが発生
すると、該ページフオールトが発生したページが前記高
速記憶装置に割り当てられているかどうか調べ、割り当
てられていれば、必要データを前記高速記憶装置から前
記主記憶装置へ読み込むことを特徴とするメモリ制御方
式。
1. In a data processing device that uses a multiple virtual memory method,
A high-speed storage device is installed between the main storage device and the external storage device, at least one virtual storage area is allocated to the high-speed storage device, and when a page fault occurs when a program is executed, the page fault occurs. A memory control method characterized by checking whether a page is allocated to the high-speed storage device, and if so, reading necessary data from the high-speed storage device to the main storage device.
JP63010614A 1988-01-22 1988-01-22 Memory control system Pending JPH01187652A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63010614A JPH01187652A (en) 1988-01-22 1988-01-22 Memory control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63010614A JPH01187652A (en) 1988-01-22 1988-01-22 Memory control system

Publications (1)

Publication Number Publication Date
JPH01187652A true JPH01187652A (en) 1989-07-27

Family

ID=11755116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63010614A Pending JPH01187652A (en) 1988-01-22 1988-01-22 Memory control system

Country Status (1)

Country Link
JP (1) JPH01187652A (en)

Similar Documents

Publication Publication Date Title
US6226710B1 (en) Content addressable memory (CAM) engine
US4170039A (en) Virtual address translation speed up technique
US4737909A (en) Cache memory address apparatus
JPH08212136A (en) Method and apparatus for efficient sharing of virtual memoryconversion processing
US6754771B2 (en) System for selectively transferring application data between storage devices in a computer system utilizing dynamic memory allocation
CN112506823A (en) FPGA data reading and writing method, device, equipment and readable storage medium
US3701107A (en) Computer with probability means to transfer pages from large memory to fast memory
JP2000276405A (en) Address conversion device and computer system having this device
JPH01187652A (en) Memory control system
JPS5816263B2 (en) General information
JPS60126749A (en) Memory control system
JPS6046456B2 (en) data access device
JPH0863397A (en) Method for controlling disk cache
JPS5821352B2 (en) Buffer memory control method
KR920005296B1 (en) Information processing device
JPS60191342A (en) File control processing system
JPS63163939A (en) Control method for cache memory
JPS62182849A (en) Data control system
JP3204098B2 (en) Dynamic address decode cache control method
JPH01140342A (en) Virtual computer system
JPS62197845A (en) Address conversion system
JPH06208502A (en) Memory control method
JPS62284443A (en) Blank area retrieving and controlling system
JPH02220155A (en) Magnetic disk controller
JPH037980B2 (en)