JPS5919288A - Virtual storage control system - Google Patents

Virtual storage control system

Info

Publication number
JPS5919288A
JPS5919288A JP57127877A JP12787782A JPS5919288A JP S5919288 A JPS5919288 A JP S5919288A JP 57127877 A JP57127877 A JP 57127877A JP 12787782 A JP12787782 A JP 12787782A JP S5919288 A JPS5919288 A JP S5919288A
Authority
JP
Japan
Prior art keywords
address
segment
virtual address
type
virtual
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
JP57127877A
Other languages
Japanese (ja)
Other versions
JPH0320777B2 (en
Inventor
Masaharu Nozaki
野崎 正治
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Tokyo Shibaura Electric 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 Toshiba Corp, Tokyo Shibaura Electric Co Ltd filed Critical Toshiba Corp
Priority to JP57127877A priority Critical patent/JPS5919288A/en
Publication of JPS5919288A publication Critical patent/JPS5919288A/en
Publication of JPH0320777B2 publication Critical patent/JPH0320777B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To increase the number of segments possible for one virtual address space and to attain the presence of segments of a large size at the same time in a range of a limited virtual address length, by spliting the virtual address space into segments and pages. CONSTITUTION:The virtual address space consists of two kinds of large and small segments having different segment size, and when the virtual address VA is the 1st kind virtual address corresponding to the address in a small segment, a large segment number LSN designates a large segment, a small segment number SSN designates a small segment, a page number VPN designates the page, and a relative address is designated with an address OFFSET in the page. On the other hand, when the virtual address VA corresponds to the address in the large segment, the large segment number LSN designates the large segment, the link information between the small segment number SSN and the page number VPN designates an objective page and the address OFFSET in the page designates the relative address in the objective page.

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は仮想アドレス空間をセグメントとに一ノとに分
割し、この分割されたべ一ノをに一ノ枠単位で管理され
る実記憶装置に必要時に動的に配置する仮想記憶システ
ムに好適する仮想記憶制御方式に関する。
[Detailed Description of the Invention] [Technical Field of the Invention] The present invention divides a virtual address space into segments and divides the divided space into a real storage device that is managed in units of one frame. The present invention relates to a virtual memory control method suitable for a virtual memory system that dynamically allocates data when necessary.

〔発明の技術的背景とその問題点〕[Technical background of the invention and its problems]

一般にこの種の仮想記憶システムでは、仮想アドレス空
間は保護、所有、共有などにおいて論理的に同一の情報
の集まりであるセグメントに分割される。また各セグメ
ントは被−ノの集まりからなっている。このような仮想
アドレス空間のアドレス位置を示すものが仮想アドレス
である。仮想アドレスは第1図に示されるようにセグメ
ントを指定するセグメント番号SN、セグメント内のべ
一ノを指定するページ番号PN1およびペーノ内の相対
アドレス(すなわち変位)を指定するページ内アドレス
0FFSETからなっている。セグメント番号SNは仮
想アドレスの上位アドレスで示されておシ、そのビット
長によってセグメント数が決定される。一方、各セグメ
ントのサイズはページ番号PNとイー・ゾ内アドレス0
FFSETとの連結情報(セグメント内アドレスを指定
する情報)のビット長によって決定される。
Generally, in this type of virtual storage system, the virtual address space is divided into segments, which are collections of logically identical information in terms of protection, ownership, sharing, etc. Furthermore, each segment is made up of a collection of targets. A virtual address indicates an address position in such a virtual address space. As shown in Figure 1, a virtual address consists of a segment number SN that specifies a segment, a page number PN1 that specifies a node within the segment, and an intra-page address 0FFSET that specifies a relative address (i.e. displacement) within the segment. ing. The segment number SN is indicated by the upper address of the virtual address, and the number of segments is determined by its bit length. On the other hand, the size of each segment is the page number PN and address 0 in EZ
It is determined by the bit length of the connection information with FFSET (information specifying the intra-segment address).

ところで、仮想記憶システムでは、セグメントのサイズ
が大きいと都合が良い場合がある。
By the way, in a virtual storage system, it is sometimes advantageous to have a large segment size.

従来、限られた(一定の)ビット長の仮想アドレスで規
定される仮想アドレス空間でセグメントのサイズを大き
くするだめには、セグメント内アドレスを指定する情報
のフィールドのビット長を長く、すなわちセグメント番
号SNのフィールドのビット長を短くする必要があった
Conventionally, in order to increase the size of a segment in a virtual address space defined by a virtual address with a limited (constant) bit length, the bit length of the information field that specifies the address within the segment has to be increased, that is, the segment number It was necessary to shorten the bit length of the SN field.

この場合、一つの仮想アドレス空間がもっことのできる
セグメント数が少なくなる不都合が生じる。−!だ、セ
グメントのサイズが小さ七ても良いものの場合には、仮
想アドレス空間を有効に使用することができなくなる欠
点があった。
In this case, the disadvantage arises that the number of segments that can be accommodated in one virtual address space is reduced. -! However, if the segment size was even small, it had the disadvantage that the virtual address space could not be used effectively.

一方、一つの仮想アドレス空間がもっことのできるセグ
メント数が多いと都合が良い場合もある。このためには
、セグメント番号SNのフィールドのビット長を長く、
すなわちセグメント内アドレスを指定する情報のフィー
ルドのビット長を短くする必要があった。この場合、全
てのセグメントのサイズが小さくなる不都合が生じる。
On the other hand, there are cases in which it is advantageous if one virtual address space can accommodate a large number of segments. To do this, increase the bit length of the segment number SN field.
That is, it was necessary to shorten the bit length of the field of information specifying the intra-segment address. In this case, a disadvantage arises in that the size of all segments becomes small.

また、セグメントを管理するためのチーグルであるセグ
メントテーブルのサイズが大きくなり過ぎる欠点があっ
た。
Another drawback is that the size of the segment table, which is a cheagle for managing segments, becomes too large.

〔発明の目的〕[Purpose of the invention]

本発明は上記事情に鑑みてなされたものでその目的は、
限られた仮想アドレス長の範囲において、一つの仮想ア
ドレス空間がもっことのできるセグメントの個数を多く
でき、同時に大きなサイズのセグメントの存在も可能に
することができる仮想記憶制御方式を提供することにあ
る。
The present invention has been made in view of the above circumstances, and its purpose is to:
To provide a virtual memory control method that can increase the number of segments that one virtual address space can have within a limited virtual address length range and at the same time allow the existence of large-sized segments. be.

〔発明の概要〕[Summary of the invention]

本発明は、仮想アドレス空間がもつセグメントとしてセ
グメントサイズの大きい大セグメントと、セグメントサ
イズの小さい小セグメントとの両者が並存するようにし
ている。そこで本発明では、大セグメント番号フィール
ド、小セグメント番号フィールド、被−ジ番号フィール
ド、およびぜ−ジ内アドレスフィールドからなる仮想ア
ドレス構造を提案し、大セグメント番号フィールドによ
る大セグメントの指定および小セグメント番号フィール
ドと4−ノ番号フィールドと4−ノ内アドレスフィール
ドとの連結フィールドによるセグメント内アドレスの指
定と、大セグメント番号フィールドと小セグメント番号
フィールドとの連結フィールドによる小セグメントの指
定およびページ番号フィールドとページ内アドレスフィ
ールドとの連結フィールドによるセグメント内アドレス
の指定とが行なえるようKしている。
According to the present invention, both large segments with a large segment size and small segments with a small segment size coexist as segments in a virtual address space. Therefore, in the present invention, we propose a virtual address structure consisting of a large segment number field, a small segment number field, a target number field, and an address field in the middle. Specifying an intra-segment address using a concatenated field between a field, a 4-no number field, and a 4-no address field, specifying a small segment using a concatenated field between a large segment number field and a small segment number field, and specifying a page number field and a page. K is provided so that an intra-segment address can be specified by a concatenation field with an intra-segment address field.

このだめ本発明では、大セグメント番号に対応する大セ
グメントテーブルと、小セグメント番号に対応する小セ
グメントテーブルとを設けている。そして、仮想アドレ
スが小セグメント内の一アドレス位置を示すものか、或
いは大セグメント内の一アドレス位置を示すものかに無
関係に、仮想アドレスの大セグメント番号フィールドの
内容で大セグメントテーブルを参照するようにしている
。そして本発明では、大セグメントテーブルの各エン)
 IJに、対応する仮想アドレスが小セグメント内の一
アドレス位置を示す仮想アドレス(これを第1種仮想ア
ドレスと称する)であるか、或いは大セグメント内の−
アドレス位置を示す仮想アドレス(これを第2種仮想ア
ドレスと称する)であるかを示す種別情報を用意すると
共に、当該種別情報で第1種仮想アドレスであることが
示されているエントリには対応する小セグメントテーブ
ルの起点情報を用意し、これに対し第2種仮想アドレス
であることが示されているエン) IJには対応するペ
ージテーブルの起点情報を用意している。
To avoid this, the present invention provides a large segment table corresponding to large segment numbers and a small segment table corresponding to small segment numbers. Then, regardless of whether the virtual address indicates one address position within a small segment or one address position within a large segment, the large segment table is referenced by the contents of the large segment number field of the virtual address. I have to. And in the present invention, each en) of the large segment table
IJ indicates whether the corresponding virtual address is a virtual address indicating an address position within a small segment (this is called a type 1 virtual address), or - within a large segment.
In addition to preparing type information indicating whether the address is a virtual address indicating the address location (this is referred to as a type 2 virtual address), it is also supported for entries whose type information indicates that it is a type 1 virtual address. The starting point information of the small segment table is prepared, and the starting point information of the corresponding page table is prepared for the en) IJ indicating that it is a type 2 virtual address.

上記小セグメントテーブルは上記小セグメントテーブル
の起点情報と仮想アドレスの小セグメント番号フィール
ドの内容とにより参照されるようになっており、各エン
) IJには対応する被−ノテーブルの起点情報が用意
されている。したがって本発明では、仮想アドレスを実
アドレスに変換するためには、仮想アドレスの種別によ
り大セグメントテーブル→小セグメントテーブル→啄−
ノテーブルの参照ルートと、大セグメントテーブル→ペ
ーゾテーブルの参照ルートとのいずれかのルートを経る
必要があるうこのルートを指定するものが前記種別情報
である。
The above small segment table is referenced by the start point information of the above small segment table and the contents of the small segment number field of the virtual address, and each En) IJ has the start point information of the corresponding target table. has been done. Therefore, in the present invention, in order to convert a virtual address to a real address, the following steps are required: large segment table → small segment table →
The type information specifies the route that needs to go through either the reference route of the note table or the reference route of the large segment table → Peso table.

〔発明の実施例〕[Embodiments of the invention]

以下、本発明の一実施例を図面を参照して説明する。第
2図は本発明が適用される仮止記憶システムの構成を示
すもので10.10・・・はプロセッサ、20.20・
・・は入出力チャネル(以下、CHと称する)である。
Hereinafter, one embodiment of the present invention will be described with reference to the drawings. FIG. 2 shows the configuration of a temporary storage system to which the present invention is applied, in which 10.10... is a processor, 20.20...
... are input/output channels (hereinafter referred to as CH).

本実施例においてこれらプロセッサ10.10・・・、
CH2O,20・・・が取り扱うアドレスは仮想アドレ
スVAである。仮想アドレスVAは、第3図に示されて
いるように大セグメント番号L S N、小セグメント
番号ssN、−s−ノ番号V P N、および被−ノ内
アドレス0FFSETから構成されている。本実施例で
は仮想アドレス空間を大セグメントと称するセグメント
に分割し、更にこれら大セグメントのうちの所望のセグ
メントを小セグメントと称するセグメントに分割してい
る。すなわち仮想アドレス空間はセグメントサイズの異
なる2種のセグメント(大セグメント、小セグメント)
の集壕りからなっている。仮想アドレスVAが小セグメ
ント内のアドレスに対応する第1種仮想アドレスの場合
、大セグメント番号LSNは大セグメントを指定し、小
セグメント番号SSNは(当該指定された大セグメント
内の)小セグメントを指定するようになっている。
In this embodiment, these processors 10.10...,
The address handled by CH2O, 20, . . . is a virtual address VA. As shown in FIG. 3, the virtual address VA is composed of a large segment number LSN, a small segment number ssN, a -s-number VPN, and an internal address 0FFSET. In this embodiment, the virtual address space is divided into segments called large segments, and desired segments among these large segments are further divided into segments called small segments. In other words, the virtual address space has two types of segments with different segment sizes (large segment and small segment).
It consists of a collection of trenches. If the virtual address VA is a type 1 virtual address that corresponds to an address within a small segment, the large segment number LSN specifies the large segment, and the small segment number SSN specifies the small segment (within the specified large segment). It is supposed to be done.

すなわち、第4図に示されるように大セグメント番号L
SNと小セグメント番号SSNとの連結情報によって目
的セグメントを指定するようになっている。そして、啄
−ノ番号VPNでペーノカ指定され、ページ内アドレス
0FFSETで当該ページにおける相対アドレスが指定
される。
That is, as shown in FIG.
The target segment is specified by concatenated information between the SN and the small segment number SSN. Then, the page number VPN is used to specify a page number, and the intra-page address 0FFSET is used to specify a relative address in the page.

一方、仮想アドレスVAが大セグメント内のアドレスに
対応する(第2種仮想アドレスの)場合、第5図に示さ
れるように大セグメント番号LSNは大セグメント(目
的セグメント)を指定し、小セグメント番号SSNとペ
ージ番号VPNとの連結情報が(当該指定されたセグメ
ント内の)目的ページを指定するようになっている。そ
して、4−ノ内アドレス0FFSETで目的ページにお
ける相対アドレスが指定される。
On the other hand, when the virtual address VA corresponds to an address within a large segment (a second type virtual address), the large segment number LSN specifies the large segment (target segment) and the small segment number The concatenation information between the SSN and the page number VPN specifies the destination page (within the specified segment). Then, the relative address in the target page is specified by the address 0FFSET in 4-.

30はメモリ装置(以下、MEMと称する)である。M
 E M 、Vθには大セグメントテーブル(以下、L
STと称する)31、小セグメントテーブル(以下、S
STと称する)s2.a2゜・・・、およびページテー
ブル(以下、PTと称する)33.33・・・が置かれ
ている。LST 31は大セグメント(小セグメントか
らなる大セグメントも含む)に対応したエントリを有し
ている。これらエントリのフォーマットは、対応する大
セグメントが小セグメントの集まりであるか、或いは大
セグメント単体であるかによって異なっている。前者の
場合のエントリ内容は第6図に示されるように、5ST
32.32・・・の一つの起点アドレスを示す小セグメ
ントテーブル起点アドレス情報(第1種アドレス変換情
報)SSTOと、セグメント管理情報とからなっている
。セグメント管理情報にはメモリアクセス保護のだめの
保護情報のほかに、仮想アドレスVAの種別を示す種別
情報Tが含まれている。種別情報Tは仮想アドレスVA
が第1種仮想アドレスである場合にT=’“0″とされ
、同じく第2種仮想アドレスである場合にはT −” 
1 ”とされる。
30 is a memory device (hereinafter referred to as MEM). M
A large segment table (hereinafter referred to as L) is used for E M and Vθ.
(referred to as ST) 31, small segment table (hereinafter referred to as S
(referred to as ST) s2. a2°... and page tables (hereinafter referred to as PT) 33, 33... are placed. The LST 31 has entries corresponding to large segments (including large segments made up of small segments). The format of these entries differs depending on whether the corresponding large segment is a collection of small segments or a single large segment. In the former case, the entry contents are 5ST, as shown in Figure 6.
It consists of small segment table starting point address information (first type address conversion information) SSTO indicating one starting point address of 32, 32, . . . and segment management information. In addition to protection information for memory access protection, the segment management information includes type information T indicating the type of virtual address VA. Type information T is virtual address VA
If is a type 1 virtual address, T = '0'', and if it is a type 2 virtual address, T -''
1”.

したがって第6図における種別情報Tは”0″である。Therefore, the type information T in FIG. 6 is "0".

一方、後者の場合のエントリ内容は第7図に示されるよ
うに、PrB6,33・・・の一つの起点アドレスを示
すペーノテーブル起点アドレス情報(第2種アドレス変
換情報)PTOと、セグメント管理情報とからなってい
る。この場合、セグメント管理情報に含まれている種別
情報Tは°l″′とされている。
On the other hand, the entry contents in the latter case are, as shown in FIG. It consists of information. In this case, the type information T included in the segment management information is °l'''.

再び第2図を参照すると40はペーノング装置、50は
M E M 、3 oに接続されるメモリ制御装置、6
0はグロセツサ10.10・・・、CH2O。
Referring again to FIG. 2, 40 is a Penning device, 50 is a memory control device connected to MEM, 3o, and 6
0 is Grossetassa 10.10..., CH2O.

20・・、およびメモリ制御装置50などを結合するだ
めの7ステムバスである。メモリ制御装置50は通常の
メモリ制御機能のほかに、次のような機能を有する。す
なわちメモリ制御装置50はノ0ロセノサ10.10・
・、CH2O,20・・などから7ステムパス60上に
送出された仮想アドレスVAを実アドレスRAに変換し
てM E M 、? 0をアクセスするためのアドレス
変換機能を有している。メモリ制御装置50において、
51はンステムパス60を介して転送される仮想アドレ
スVAが置数される仮想アドレス変換機構(以下、VA
Rと称する)、52はM E M 、? 0上に置かれ
ているL S T 、? 1の起点アドレス情報が置数
される大セグメントテーブル起点アドレス変換機構(以
下、5TORと称す)である。53はMEMJ(7に出
力するだめの実アドレスRAが置数される実アドレスレ
ノスタ(以下、RARと称する)、54はアドレス変換
部である。アドレス変換部54は仮想アドレスVAを実
アドレスRAに変換するだめのアドレス変換機構の中心
をなすものである。このアドレス変換部54を中心とす
るアドレス変換動作を第8図、第、9図を参照して説明
する。
20..., a memory control device 50, etc., are connected to each other. The memory control device 50 has the following functions in addition to normal memory control functions. That is, the memory control device 50 is 0.10.
, CH2O, 20, etc. on the 7-stem path 60 is converted into a real address RA and MEM,? It has an address translation function for accessing 0. In the memory control device 50,
Reference numeral 51 denotes a virtual address translation mechanism (hereinafter referred to as VA
), 52 is M E M , ? L S T , which is placed on 0? This is a large segment table starting point address translation mechanism (hereinafter referred to as 5TOR) in which starting point address information of 1 is set. 53 is a real address renoster (hereinafter referred to as RAR) in which the real address RA to be outputted is set in MEMJ (7), and 54 is an address conversion unit.The address conversion unit 54 converts the virtual address VA into the real address RA. It forms the center of the address translation mechanism for converting into . Address translation operation centered on this address translation unit 54 will be explained with reference to FIGS. 8, 9.

第8図は仮想アドレスVAが(小セグメント内の一アド
レスを示す)第1種仮想アドレスの場合におけるアドレ
ス変換部54によるアドレス変換機能を模式的に示す機
能構成図である。
FIG. 8 is a functional configuration diagram schematically showing the address translation function of the address translation unit 54 when the virtual address VA is a first type virtual address (indicating one address within a small segment).

MEM30に対するメモリアクセスのためにンステムパ
ス60上に送出された仮想アドレスVAはVAR,57
に置数される。しかしてアドレス変換部54の制御によ
り、5TOR52の内容およびVAR5Jに置数されて
いる仮想アドレスVA中の大セグメント番号LSNに基
づいてLST31の対応するエントリの内容が読み出さ
れる。そして、当該エントリに含まれているセグメント
管理情報中の種別情報Tがパ0”であるか1″であるか
の判定が行なわれる。第8図のようにT=”0”の場合
、アドレス変換部54は上記仮想アドレスVAが第1種
仮想アドレスであるものと判断し、上記エントリに含ま
れている第1種アドレス変換情報(T=”O”のこの例
では、小セグメントテーブル起点アドレス情報5STO
となっている)で指定されている5ST32における、
仮想アドレスVA中の小セグメント番号SSNに対応す
るエン) l)を参照する。
The virtual address VA sent out on the system path 60 for memory access to the MEM 30 is VAR,57
The number is placed in . Under the control of the address translation unit 54, the contents of the corresponding entry in the LST 31 are read out based on the contents of the 5TOR 52 and the large segment number LSN in the virtual address VA set in the VAR 5J. Then, it is determined whether the type information T in the segment management information included in the entry is 0'' or 1''. When T=“0” as shown in FIG. 8, the address conversion unit 54 determines that the virtual address VA is a type 1 virtual address, and the type 1 address conversion information ( In this example of T="O", the small segment table starting point address information 5STO
) in 5ST32 specified by
Refer to the en) l) corresponding to the small segment number SSN in the virtual address VA.

そして、アドレス変換部54は当該エントリ内のセグメ
ント管理情報によりアクセス保護チェックを行なうと共
に、当該エントリに含まれている4−ノテーブル起点ア
ドレス情報PTOで指定されているP T 33におけ
る、仮想アドレスVA中の4−ソ番号VPNに対応する
エントリを参照する。PrB6の上記対応するエントリ
には目的とする被−ノのに一ノフレーム番号PFNが書
かれており、とのPF’Nと仮想アドレスVA中のべ一
ノ内アドレスOF”FSETとの連結情報が実アドレス
RAとしてRAR53に置数される。これが、仮想アド
レスVAが第1種仮想アドレスである場合におけるアド
レス変換である。したがって、この場合の仮想アドレス
VAは、その大セグメント番号LSNと小セグメント番
号SSNとで目的セグメント(小セグメント)を指定し
、ページ番号VPNと4−ノ内アドレス0FFSETと
でセグメントアドレスを示しているように解釈(これを
小セグメント解釈と称する)されたことになる。
Then, the address translation unit 54 performs an access protection check based on the segment management information in the entry, and also converts the virtual address VA in P T 33 specified by the 4-note table starting point address information PTO included in the entry. Refer to the entry corresponding to the 4-so number VPN. In the above corresponding entry of PrB6, the frame number PFN of the target target node is written, and the connection information between PF'N and the frame address OF"FSET in the virtual address VA. is placed in the RAR 53 as the real address RA. This is the address conversion when the virtual address VA is a type 1 virtual address. Therefore, the virtual address VA in this case is a combination of its large segment number LSN and small segment. The target segment (small segment) is specified by the number SSN, and the page number VPN and the 4-internal address 0FFSET are interpreted as indicating the segment address (this is called small segment interpretation).

第9図は仮想アドレスVAが(小セグメントを含1ない
大セグメント、すなわち大セグメント単体内の一アドレ
スを示す)第2種仮想アドレスの場合におけるアドレス
変換部54によるアドレス変換機能を模式的に示す機能
構成図である。S T On 52 の内容およびVA
R57に置数されている仮想アドレスVA中の大セグメ
ント番号LSHに基づいてLST 、? 7の対応する
エントリの内容が読み出され、Tが0′であるか°゛1
#であるかの判定が行なわれることは前述した場合と同
様である。第9図のようにT=”1”の場合、アドレス
変換部54は上記仮想アドレスVAが第2種仮想アドレ
スであるものと判断し、上記エントリに含まれているセ
グメント管理情報によりアクセス保護チェックを行なう
FIG. 9 schematically shows the address translation function by the address translation unit 54 when the virtual address VA is a type 2 virtual address (indicating an address within a large segment that does not include any small segments, that is, one address within a single large segment). It is a functional configuration diagram. Contents and VA of ST On 52
Based on the large segment number LSH in the virtual address VA placed in R57, LST, ? The contents of the corresponding entry of 7 are read and whether T is 0' or °゛1
The determination as to whether # is made is the same as in the case described above. When T=“1” as shown in FIG. 9, the address translation unit 54 determines that the virtual address VA is a type 2 virtual address, and performs an access protection check based on the segment management information included in the entry. Do the following.

また、アドレス変換部54は、上記エントリに含壕れて
いる第1種アドレス変換情報(T=”1”のこの例でi
t、−s−ノテーブル起点アドレス情報PTOとなって
いる)で指定されているPrB6における、仮想アドレ
スVA中の小セグメント番号SSNとべ一ノ番号VPN
との連結情報に対応するエントリを参照する。PrB6
の上記対応するエントリには前述したように目的とする
ページの4−ノフレーム番号PFNが書かれており、と
のPFNと仮想アドレスVA中の被−ノ内アドレス0F
FSETとの連結情報が実アドレスRAとしてRAR5
,?に置数される。
The address translation unit 54 also converts the first type address translation information (i in this example where T=“1”) included in the entry
t, -s- table starting point address information PTO) in PrB6, the small segment number SSN in the virtual address VA and the small segment number VPN
Refer to the entry corresponding to the connection information. PrB6
As mentioned above, the 4-frame number PFN of the target page is written in the corresponding entry above, and the PFN of and the target internal address 0F in the virtual address VA.
Connection information with FSET is RAR5 as real address RA
,? The number is placed in .

これが、仮想アドレスvAが第2種仮想アドレスである
場合におけるアドレス変換である。したがって、この場
合の仮想アドレスVAは、その大セグメント番号LSN
で目的セグメント(大セグメント)を指定し、小セグメ
ント番号SSNと被−ノ番号VPNとページ内アドレス
□FF5ETとでセグメントアドレスを示しているよう
に解釈(これを大セグメント解釈と称する)されたこと
になる。
This is address translation when the virtual address vA is the second type virtual address. Therefore, the virtual address VA in this case is its large segment number LSN
The target segment (large segment) is specified with , and the small segment number SSN, target number VPN, and in-page address FF5ET are interpreted as indicating the segment address (this is called large segment interpretation). become.

このように本実施例によれば、仮想アドレス空間を従来
のように同一サイズのセグメントに等分割するのではな
く、大きなサイズの任意数のセグメント(大セグメント
)と小さなサイズの任意数のセグメント(小セグメント
)とに分割した場合において、大セグメント解釈と小セ
グメント解釈の2通りの解釈の並存を可能とすることが
できる。したがって本実施例によれば、(小セグメント
解釈により)1仮想アドレス空間当りのセグメント数を
多くし々から、(大セグメント解釈により)大きなセグ
メントサイズのセグメントの存在をも同時に可能とする
ことができる。このため、−仮想アドレス空間がもつこ
とのできるセグメントの数を多くするためにセグメント
番号SN(第1図参照)を単純に長くする従来方式に比
べ、小さ・なサイズのセグメントが必要以上に多くなる
恐れがなくなり、セグメントテーブル(LST31,5
ST32゜32・・・)のサイズが大きくならずに済む
In this way, according to this embodiment, the virtual address space is not equally divided into segments of the same size as in the past, but an arbitrary number of large-sized segments (large segments) and an arbitrary number of small-sized segments ( In this case, two interpretations, large segment interpretation and small segment interpretation, can coexist. Therefore, according to this embodiment, it is possible to simultaneously increase the number of segments per virtual address space (by small segment interpretation) and to allow the existence of segments with large segment sizes (by large segment interpretation). . For this reason, compared to the conventional method of simply lengthening the segment number SN (see Figure 1) to increase the number of segments that a virtual address space can have, the number of small-sized segments is larger than necessary. The segment table (LST31,5
ST32°32...) does not need to increase in size.

なお、前記実施例では、小セグメント解釈時に従来方式
よりも1回多いテーブル参照が行なわれるため、アドレ
ス変換時間が長くなる恐れがあるが、アドレス変換バッ
ファ(連想レジスタとも称される)が設けられ、ヒツト
時にはアドレス変換・ぐソファ内の変換対を用いてアド
レス変換を行なう方式が採用されるシステムであれば、
」−述のような恐れは解消される。
Note that in the above embodiment, the table is referenced one more time than in the conventional method when interpreting a small segment, so there is a risk that the address translation time will be longer; however, an address translation buffer (also called an associative register) is provided. , if the system adopts a method that performs address translation using a conversion pair in the address conversion/gusso when there is a hit,
” - Fears such as those mentioned above will be eliminated.

ところで、必要とする大セグメントおよび小セグメント
のサイズ、並びに個数はタスクによって決定される。し
たがって、L S T 、? 1等をタスク単位で用意
しておくと便利である。なお、前記実施例ではアドレス
変換機構の中心部をメモリ制御装置50に設けた場合に
ついて説明したが、本発明の硬旨によれば、プロセッサ
1θ。
Incidentally, the size and number of required large segments and small segments are determined by the task. Therefore, L S T ,? It is convenient to prepare the first prize for each task. Incidentally, in the embodiment described above, a case has been described in which the central part of the address translation mechanism is provided in the memory control device 50, but according to the essence of the present invention, the processor 1θ.

10・・・やCH2θ、20・・・にそれぞれ別々に設
けるようにしてもよい。この場合、プロセッサ10.1
0・・・やCH2O,20・・・からシステム・ぐス6
0上に送出されるアドレスは実アドレスとなる。
10..., CH2θ, 20... may be provided separately. In this case, processor 10.1
0..., CH2O, 20... to system gas 6
The address sent on 0 becomes the real address.

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

以上詳述したように本発明の仮想記憶制御方式によれば
、限られた仮想アドレス長の範囲において、一つの仮想
アドレス空間がもつことのできるセグメントの個数を多
くでき、同時に大きなサイズのセグメントの存在も可能
にすることができる。
As detailed above, according to the virtual memory control method of the present invention, it is possible to increase the number of segments that one virtual address space can have within a limited virtual address length range, and at the same time, it is possible to increase the number of segments that one virtual address space can have within a limited virtual address length range. Existence can also be made possible.

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

第1図は従来の仮想アドレスのフォーマットを示す図、
第2図は本発明が適用される仮想記憶システムの一実施
例を示すブロック図、第3図は上記実施例で適用される
仮想アドレスのフォーマットを示す図、第4図および第
5図は上記仮想アドレスの2種類の解釈の仕方を示す図
、第6図および第7図は大セグメントテーブルにセグメ
ント解釈におけるアドレス変換機能を模式的に示す機能
構成図である。 31・・・大セグメントテーブル(LST)、32゜3
2・・・小セグメントテーブル、33.33・・・ペー
ジテーブル、54・・・アドレス変換部。 出願人代理人 弁理士 鈴 江 武 彦第8図 第91A
Figure 1 is a diagram showing the format of a conventional virtual address.
FIG. 2 is a block diagram showing an embodiment of the virtual storage system to which the present invention is applied, FIG. 3 is a diagram showing the format of the virtual address applied in the above embodiment, and FIGS. 4 and 5 are the above 6 and 7 are functional configuration diagrams schematically showing address translation functions in segment interpretation in large segment tables. 31...Large segment table (LST), 32°3
2...Small segment table, 33.33...Page table, 54...Address translation section. Applicant's agent Patent attorney Takehiko Suzue Figure 8 Figure 91A

Claims (1)

【特許請求の範囲】 各セグメントテーブルエントリに仮想アドレスの種別を
示す種別情報および第1種アドレス変換情報を有する大
セグメントテーブルと、各セグメントテーブルエントリ
に第2種アドレス変換情報を有する小セグメントテーブ
ルと、各ぜ−ノテーブルエントリに第3種アドレス変換
情報を有するベーノテーブルと、大セグメント番号フィ
ールド、小セグメント番号フィールド、ぜ−ノ番号フィ
ールド、およびに−ジ内アドレスフィールドを有する仮
想アドレス中の太セグメント番号フィールドの内容を用
いて上記大セグメントテーブルの対応するセグメントテ
ーブルエン) IJを参照し、当該エントリ中の上記種
別情報に基づいて該当する仮想アドレスが第1種仮想ア
ドレスであるか第2種仮想アドレスであるかを判断する
手段と、上記仮想アドレスが上記第1種仮想アドレスで
ある場合に、上記セグメントテーブルエンl−IJ中の
上記第1種アト。 レス変換情報および上記仮想アドレス中の小セグメント
番号フィールドの内容に基づいて上記小セグメントチー
グルの対応するセグメントテーブルエン) IJを参照
する手段と、この手段によって参照されるセグメントテ
ーブルエントリ中の上記第2種アドレス変換情報および
上記仮想アドレス中の4−ノ番号フィールドの内容に基
づいて」−記に一ノテーブルの対応するベーソテーブル
エントリを参照し、当該エントリ中の一ヒ記第3種アド
レス変換情報と上記仮想アドレス中のべ一ノ内アドレス
フィールドの内容とにより実アドレスを得る手段と、上
記仮想アドレスが上記第2種仮想アドレスである場合に
、上記大セグメントテーブルの対応するセグメントエン
) IJ中の上記第1種アドレス変換情報、および上記
仮想アドレス中の小セグメント番号フィールドの内容と
4−ノ番号フィールドの内容との連結情報に基づいて上
記に一ノテーブルの対応するページテーブルエン) I
Jを参照し、当該エン) IJ中の上記第3種アドレス
変換情報と上記仮想アドレス中のページ内アドレスフィ
ール□ドの内容とにより実アドレスを得る手段とを具備
することを特徴とする仮想記憶制御方式。
[Scope of Claims] A large segment table having type information indicating the type of virtual address and type 1 address conversion information in each segment table entry, and a small segment table having type 2 address conversion information in each segment table entry. , a beno table having type 3 address translation information in each Zeno table entry, and a virtual address having a large segment number field, a small segment number field, a Zeno number field, and an internal address field. Using the contents of the thick segment number field, refer to the corresponding segment table entry (IJ) in the large segment table and determine whether the corresponding virtual address is a type 1 virtual address or a type 2 virtual address based on the type information in the entry. means for determining whether the virtual address is a virtual address of the first type; and if the virtual address is the first virtual address, the first type at in the segment table I-IJ; a corresponding segment table entry) of said small segment Cheagle based on the address translation information and the contents of the small segment number field in said virtual address; Based on the type address conversion information and the contents of the 4-No. number field in the above virtual address, refer to the corresponding Baso table entry in the 1-no table and convert the 1-hi No. 3 type address translation in the entry. means for obtaining a real address based on the information and the contents of the address field in the table in the virtual address, and when the virtual address is the second type virtual address, a corresponding segment entry in the large segment table) IJ Based on the first type address conversion information in the virtual address and the concatenation information between the contents of the small segment number field and the contents of the 4-number field in the virtual address, the corresponding page table of the 1-no table is created.
a means for obtaining a real address from the third type address conversion information in the IJ and the contents of the in-page address field in the virtual address. control method.
JP57127877A 1982-07-22 1982-07-22 Virtual storage control system Granted JPS5919288A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57127877A JPS5919288A (en) 1982-07-22 1982-07-22 Virtual storage control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57127877A JPS5919288A (en) 1982-07-22 1982-07-22 Virtual storage control system

Publications (2)

Publication Number Publication Date
JPS5919288A true JPS5919288A (en) 1984-01-31
JPH0320777B2 JPH0320777B2 (en) 1991-03-20

Family

ID=14970847

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57127877A Granted JPS5919288A (en) 1982-07-22 1982-07-22 Virtual storage control system

Country Status (1)

Country Link
JP (1) JPS5919288A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60204048A (en) * 1984-03-28 1985-10-15 Hitachi Ltd Virtual storing system
JPS621048A (en) * 1985-06-04 1987-01-07 Nec Corp Virtual storage system
JPS62237547A (en) * 1986-04-09 1987-10-17 Hitachi Ltd Address conversion system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60204048A (en) * 1984-03-28 1985-10-15 Hitachi Ltd Virtual storing system
JPH0353659B2 (en) * 1984-03-28 1991-08-15 Hitachi Ltd
JPS621048A (en) * 1985-06-04 1987-01-07 Nec Corp Virtual storage system
JPS62237547A (en) * 1986-04-09 1987-10-17 Hitachi Ltd Address conversion system
JPH0552540B2 (en) * 1986-04-09 1993-08-05 Hitachi Ltd

Also Published As

Publication number Publication date
JPH0320777B2 (en) 1991-03-20

Similar Documents

Publication Publication Date Title
JP2625385B2 (en) Multiprocessor system
US5987565A (en) Method and apparatus for virtual disk simulation
US7356667B2 (en) Method and apparatus for performing address translation in a computer system
KR910010328A (en) Disk Array Controller With Parity Capability
KR880011678A (en) Memory access control unit
US7890673B2 (en) System and method for accessing non processor-addressable memory
JP2774862B2 (en) DMA control device and information processing device
KR960029963A (en) Method and system for reducing instruction dispatch latency of processor
KR850001572A (en) Data Processing System for Computer Layer Control
JPS5919288A (en) Virtual storage control system
US4654791A (en) Input/output paging mechanism in a data processor
CN111913893A (en) Mapping method and device for reserved memory, equipment and storage medium
JP2650136B2 (en) Data processing device
US20060085569A1 (en) Method for minimizing the translation overhead for large I/O transfers
JP2689336B2 (en) Address translation device for adapter in computer system
GB2280765A (en) Multitasking data processing apparatus with different bus widths
JP3256558B2 (en) Address translation method for electronic computers
JPS63245743A (en) Memory access system
JPS6349807B2 (en)
JP3343460B2 (en) HDLC frame processing device
JPS63163946A (en) Data transfer device
Peng et al. A generic data exchange scheme between FITS format and C structures
KR960015248A (en) How to Transfer Data Between System Memory and Data Buffer RAM
JPH01310463A (en) Buffer storage
JPS61112261A (en) Data chained scan system