JPS5925303B2 - Multiple virtual memory control method in multiple virtual computer system - Google Patents
Multiple virtual memory control method in multiple virtual computer systemInfo
- Publication number
- JPS5925303B2 JPS5925303B2 JP55064838A JP6483880A JPS5925303B2 JP S5925303 B2 JPS5925303 B2 JP S5925303B2 JP 55064838 A JP55064838 A JP 55064838A JP 6483880 A JP6483880 A JP 6483880A JP S5925303 B2 JPS5925303 B2 JP S5925303B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- tlb
- multiple virtual
- space
- address
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1036—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
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)
Description
【発明の詳細な説明】
本発明は、多重仮想空間処理方式を採る多重仮想計算機
システムに関し、特に多重仮想空間に対応して論理アド
レスと実アドレスとの対応ずけを行なうと共に一且対応
ずけが行なわれた結果を対照表上に格納しておくデータ
処理システムにおいて、各仮想空間に対して共通な共通
領域を指示する共通領域指示記憶手段をもうけておき、
該共通領域に当る論理アドレスと実アドレスとの対応結
果を上記対照表上に格納するに当つて仮想空間の相違に
拘らず共通に登録せしめるようにし、対照表の利用効率
を向上せしめるようにした多重仮想空間処理データ処理
システAに関するものである。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a multiple virtual computer system that employs a multiple virtual space processing method, and in particular, to a system that performs correspondence between logical addresses and real addresses in response to multiple virtual spaces, and also provides a method for making correspondence between logical addresses and real addresses. In a data processing system in which the results of the processing are stored in a comparison table, a common area specifying storage means for specifying a common area common to each virtual space is provided,
When storing the correspondence results between logical addresses and real addresses corresponding to the common area on the above comparison table, they are commonly registered regardless of the difference in virtual space, thereby improving the utilization efficiency of the comparison table. This relates to a multiple virtual space processing data processing system A.
最近のデータ処理システムにおいては、いわゆる仮想記
憶方式を採用することが一般的になつている。そして該
仮想記憶方式においても、ただ1個のアドレス空間で構
成されている単一仮想記憶方式から、複数個のアドレス
空間で構成されている多重仮想記憶方式へと移行する傾
向にある。多重仮想記憶方式では、1つの仮想空間内に
1つのジョブのみしか存在せず、同時に動作するジョブ
の数(ジョブの多重度)に応じてその数だけの仮想空間
が用意される。このような仮想空間を使用する方式は、
1つの空間内には唯1個のジョブのみが割当てられてお
り他のジョブの動作状況による影響を受けないという長
所をもつている。また空間の多重度を向上するに当つて
も、ハードウニアのアーキテクチャからくる制限を受け
ない利点をもつている。この場合、各ジョブに共通な領
域即ち制御プログラム、制御プログラムで使用される制
御テーブルその他共通サブルーチンなどの為の領域は各
仮想空間毎におくようにされる。このような領域を共通
領域と称する。上記の如き多重仮想記憶方式の場合でも
、単一の仮想空間の場合と同様に、仮想空間のアドレス
’ と主記憶装置上の実アドレスとの対応ずけを行なう
処理が各仮想空間毎に行なわれる。In recent data processing systems, it has become common to employ a so-called virtual storage method. There is also a trend in virtual memory systems, from a single virtual memory system consisting of only one address space to a multiple virtual memory system consisting of a plurality of address spaces. In the multiple virtual storage system, only one job exists in one virtual space, and as many virtual spaces are prepared according to the number of jobs that operate simultaneously (job multiplicity). The method of using such virtual space is
It has the advantage that only one job is assigned to one space and is not affected by the operating status of other jobs. It also has the advantage of not being limited by the hardware architecture when it comes to increasing spatial multiplicity. In this case, an area common to each job, that is, an area for the control program, control tables used in the control program, and common subroutines, is provided for each virtual space. Such an area is called a common area. Even in the case of the multiple virtual memory method described above, the process of associating addresses in the virtual space with real addresses on the main memory is performed for each virtual space, just as in the case of a single virtual space. It will be done.
そして該対応ずけの結果は例えばトランスレーション゜
ルツクアサイド バッファ(TLB)と呼ばれる高速記
憶装置即ち対照表上に格納され、処理を進めるj に当
つては該対照表を索引して論理アドレスと実アドレスと
の対応を行なうようにされる。しかし、上述の如く各仮
想空間毎に用意される共通領域内では、仮想空間が異な
つても、論理アドレスと実アドレスとの対応は常に一定
となる。このため当該領域についても仮想空間が異なる
毎に上記対照表TLB上に異なつた対応を格納せしめよ
うとすると、対照表TLBの利用効率が低下することに
なる。The results of this matching are stored in a high-speed storage device called a translation lookaside buffer (TLB), that is, a comparison table, and when processing is to proceed, the comparison table is indexed to determine the logical address and real address. It will be made to correspond to the above. However, as described above, within the common area prepared for each virtual space, the correspondence between logical addresses and real addresses is always constant even if the virtual spaces are different. For this reason, if it is attempted to store different correspondences in the comparison table TLB each time the virtual space differs for this area, the utilization efficiency of the comparison table TLB will decrease.
従つて本願の目的の一つは、複数の仮想空間で共通な領
域についてはTLBへの格納を1エントリ一のみに行な
い複数の仮想空間に対してそのエントリ一を共通に使用
できるようにすることにある。Therefore, one of the purposes of the present application is to store areas common to multiple virtual spaces in the TLB in only one entry, so that entry 1 can be commonly used for multiple virtual spaces. It is in.
さらに最近は多重仮想計算機の概念が採用され始めてい
る。Furthermore, recently, the concept of multiple virtual machines has begun to be adopted.
これは1つのハードウエアシステム上に複数のオペレー
テイングシステム(以下0Sと称す)を流すことによつ
て、仮想的に複数の異なる計算機が存在する如くに処理
を進める方式である。そして当然ながら各仮想計算機が
(即ち各0Sが)夫々仮想記憶方式を採用することにな
るため、TLBの制御も複数となつてぎている。本発明
の他の目的は多重仮想計算機システムにおいて、効率の
良いTLB制御を実現させることにある。以下図面によ
り詳説する。第1図および第2図は多重仮想空間に対処
する処理を行なうデータ処理システムにおける多重仮想
記憶の構造を概念的に説明する説明図であり、図中、1
−0ないし1−nは夫々仮想空間、2一0ないし2−n
は夫々セグメント・テーブル、3一00,3−10,・
・・・・・ 3−10,3−11,・・・・・・,3−
NO,3−Nl,・・・・・・,4−0,4−1,・・
・・・・,5−0,5−1,・・・・・・は夫々ページ
・テーブルを表わしている。This is a method of running multiple operating systems (hereinafter referred to as OS) on one hardware system to proceed with processing as if a plurality of different computers virtually existed. Naturally, since each virtual machine (that is, each OS) adopts a virtual storage method, the control of the TLB is also extended to multiple systems. Another object of the present invention is to realize efficient TLB control in a multiple virtual machine system. This will be explained in detail below with reference to the drawings. 1 and 2 are explanatory diagrams conceptually explaining the structure of multiple virtual storage in a data processing system that performs processing for multiple virtual spaces.
-0 to 1-n are virtual spaces, 210 to 2-n, respectively.
are segment tables, 3-00, 3-10, .
・・・・・・ 3-10, 3-11, ・・・・・・, 3-
NO, 3-Nl,..., 4-0, 4-1,...
. . , 5-0, 5-1, . . . represent page tables, respectively.
即ち第1図に示す如く各ジヨブに対応した複数個の仮想
空間1−0ないし1−nが割当てられる。その数は、主
としてオペレーテイング・システムによつて制限され、
現在では1500個程度の多重空間を扱うことが可能と
なつている。各仮想空間1−0ないし1−nは、2つの
共通領域、領域Aと領域Bと、個別ユーザ領域と呼ばれ
る領域Cとをそなえており、上記領域AとBとは各仮想
空間1−0ないし1−nに対して共通に用意される。各
仮想空間毎に当該仮想空間のアドレスと主記憶装置上の
実空間のアドレスとの関係を対応ずけるためには、第2
図に示す如くセグメント・テーブル2−0ないし2−n
とページ・テーブル3一00,3−01,・・・・・・
,3−10,3−11,・・・・・・,3−NO,3−
Nl,・・・・・・,4−0,4−1,・・・・・・,
5−0,5−1,・・・・・・とが用意される。That is, as shown in FIG. 1, a plurality of virtual spaces 1-0 to 1-n are allocated to each job. The number is primarily limited by the operating system;
Currently, it is possible to handle about 1500 multiplexed spaces. Each virtual space 1-0 to 1-n has two common areas, area A and area B, and an area C called an individual user area. Commonly prepared for 1 to 1 to n. In order to match the relationship between the address of the virtual space and the address of the real space on the main memory for each virtual space, the second
As shown in the figure, segment tables 2-0 to 2-n
and page table 3-00, 3-01,...
,3-10,3-11,...,3-NO,3-
Nl,...,4-0,4-1,...,
5-0, 5-1, . . . are prepared.
各セグメント・テーブル2−0ないし2−nは夫々1つ
1つの仮想空間1−0ないし1−nに対応している。そ
して複数個の仮想空間の中で1つの仮想空間を指定した
り識別するには、セグメントテーブルの先頭アドレスを
指定するようにされる。該先頭アドレスを指定するため
には例えばセグメント・ベース レジスタ(SBR)と
呼ばれるレジスタが利用される。ある1つの仮想空間に
対応して、論理アドレスから実アドレスを求める処理は
次の如く行なわれると考えてよい。Each segment table 2-0 to 2-n corresponds to one virtual space 1-0 to 1-n, respectively. To designate or identify one virtual space among a plurality of virtual spaces, the first address of the segment table is designated. In order to specify the start address, for example, a register called a segment base register (SBR) is used. The process of determining a real address from a logical address for a certain virtual space can be considered to be performed as follows.
即ち、上記1つの仮想空間例えば1−1に対応するセグ
メント・ベース・レジスタSBRの内容と与えられた論
理アドレスの1部ビツトとにもとずいて、第2図図示の
セグメント・テーブル2−1上の1つの番地がアクセス
される。そして該セグメント・テーブル2−1の当該番
地の内容と上記論理アドレスの他の1部ビツトとにもと
ずいて1つのページ・テーブル例えば3−11上の1つ
の番地がアクセスされる。そして該ページ テーブル3
−11の当該番地の内容と上記論理アドレスの残りのビ
ツトとにもとずいて実アドレスが決定される。該決定さ
れた論理アドレスと実アドレスとの対応結果は、上述の
対照表TLB上に格納される。そして以後の処理におい
ては、先ず該対照表TLBを索引して論理アドレスと実
アドレスとの対応を調べて実アドレスを決定してゆくよ
うにされる。勿論、該対照表TLB上に上記論理アドレ
スと実アドレスとの対応が格納されていなかつた場合に
は、改めて上記セグメント・テーブル2やページ・テー
ブル3,4,5などを用いて実アドレスを決定し、その
結果を対照表TLB上に格納する。このとき対照表TL
Bの記憶容量に制限があるため、例えば当該時点で最も
最近使用されなかつた1つの対応結果を対照表TLB上
から追出し、新しい対応結果を格納するようにされる。
ところで、多重仮想空間方式では、同じ論理アドレスで
あつても仮想空間が異なれば実アドレスとの対応も異な
つてしまう。That is, based on the contents of the segment base register SBR corresponding to one virtual space, for example 1-1, and a partial bit of a given logical address, the segment table 2-1 shown in FIG. One address above is accessed. Then, one address on one page table, for example, 3-11, is accessed based on the contents of the address in the segment table 2-1 and the other bits of the logical address. and the page table 3
The real address is determined based on the contents of the address of -11 and the remaining bits of the logical address. The result of the correspondence between the determined logical address and real address is stored on the above-mentioned comparison table TLB. In subsequent processing, the comparison table TLB is first indexed to check the correspondence between logical addresses and real addresses to determine the real address. Of course, if the correspondence between the logical address and the real address is not stored in the comparison table TLB, the real address is determined again using the segment table 2, page tables 3, 4, 5, etc. and stores the result on the comparison table TLB. At this time, the comparison table TL
Since the storage capacity of B is limited, for example, one correspondence result that has not been used most recently at that point in time is removed from the comparison table TLB, and a new correspondence result is stored.
By the way, in the multiple virtual space system, even if the logical address is the same, if the virtual space is different, the correspondence with the real address will be different.
(共通領域では同じであるが。)そのため使用する空間
が切換わるたびに、TLBの古い内容をすべて無効にし
てから新たな空間についての論理/実対応を格納しない
と、前の空間における対応関係との間で混同を生じる恐
れがある。しかしながら動的に空間を切換えて処理を進
めていくことが望まれているのに、上記の如く空間切換
のたびにTLBをすべて無効にしていたのではTLBの
使用効率が上がらない。そこでTLBに格納する情報に
空間を識別する情報(以下空間1Dと称す)を追加し、
目的とするものと同じ論理/実対応が格納されていても
その空間Dが現在走行中のプログラムの空間Dと一致し
ていなければそれを使用しない、という制御をすること
が行なわれている。また1つの仮想空間は1つのセグメ
ントテーブルに対応しており、前記の如く、仮想空間は
数百〜千数百も存在するため、それらを区別する空間D
のビツト数も10ビツト前後必要ということになる。(Although they are the same in the common area.) Therefore, every time the space to be used changes, all the old contents of the TLB must be invalidated before storing the logical/actual correspondence for the new space. There is a risk of confusion between the two. However, although it is desired to proceed with processing by dynamically switching spaces, if all TLBs are invalidated every time a space is switched as described above, the efficiency of TLB usage will not increase. Therefore, information that identifies the space (hereinafter referred to as space 1D) is added to the information stored in the TLB,
Even if the same logical/actual correspondence as the target is stored, if the space D does not match the space D of the currently running program, it will not be used. Also, one virtual space corresponds to one segment table, and as mentioned above, there are hundreds to thousands of virtual spaces, so the space D that distinguishes them is
This means that around 10 bits are required.
しかし、一般に同時に並行して(実際には時分割的に)
用いられる仮想空間の数は高々数十個であるので、以下
のような工夫が行なわれている。即ち、当面使用される
いくつかの仮想空間はついて夫々の対応セグメントテー
ブルの先頭アドレス(セグメント・テーブル・オリジン
一STOと称す)を登録し、夫々について一連のID番
号を付すためのSTOスタツクを設け、このSTO一T
Dを空間1Dとして利用するものである。さてこのよう
なTLB及びSTOスタツクを用いて、アドレス変換を
行なう場合、前述の第一の目的即ち共通領域に関するT
LBへの格納は1回のみ行なえば、仮想空間が異なつて
も共通にそれを利用できるためには、次のようにすれば
よい。TLB中に1ビツトのフラグビツトを設け、共通
領域に関する論理/実対応の場合には例えば゛1”を立
てるようにする。そして該ビツトが゛1″゛のときは空
間D(STO−D)の一致、不一致によらずに論理アド
レスの一致がとれさえすれば、それを利用するものとす
ればよい。また仮想計算機方式においても1つの仮想計
算機が1つの仮想空間に対応するものとすれば、特に問
題はない。空間Dを仮想計算機Dとしてそのまま利用す
ればよい。しかしながら各仮想計算機が夫々多重仮想空
間方式を採る場合が当然考えられる。この場合、1つの
仮想計算機における共通領域と他の仮想計算機における
共通領域とは区別する必要がある。何故ならば、各仮想
計算機は夫々別個の0Sによつて独立に制御されており
、また共通領域の大きさや位置も夫々異なる可能性があ
るからである。従つてこれに対処するには空間1Dとは
別に仮想計算機1DもTLB中に格納するようにする力
\又は共通領域といえども各仮想空間毎に夫々TLBに
格納するようにするかせねばならず、前者ではTLBの
容量が大きくなり、制御も複雑となる欠点があり、後者
はTLB使用効率の低下をもたらす欠点がある。However, generally simultaneously and in parallel (in fact, time-sharingly)
Since the number of virtual spaces used is several dozen at most, the following measures have been taken. That is, for several virtual spaces that will be used for the time being, an STO stack is provided for registering the start address of the corresponding segment table (referred to as segment table origin - STO) and assigning a series of ID numbers to each virtual space. , this STO-T
D is used as space 1D. Now, when performing address translation using such a TLB and STO stack, the first purpose mentioned above, that is, the TLB and STO stack related to the common area.
In order to store data in the LB only once and to be able to use it in common even if the virtual spaces are different, the following can be done. A 1-bit flag bit is provided in the TLB, and in the case of logical/real correspondence regarding the common area, it is set to, for example, ``1''.When the bit is ``1'', the flag bit of space D (STO-D) is set. As long as the logical addresses match, regardless of whether they match or do not match, it can be used. Also, in the virtual computer method, there is no particular problem as long as one virtual computer corresponds to one virtual space. Space D may be used as is as virtual computer D. However, it is natural that each virtual computer may adopt a multiple virtual space method. In this case, it is necessary to distinguish between a common area in one virtual computer and a common area in other virtual computers. This is because each virtual machine is independently controlled by a separate OS, and the size and position of the common area may also be different. Therefore, in order to deal with this, it is necessary to store the virtual machine 1D in the TLB in addition to the space 1D, or store it in the TLB for each virtual space even if it is a common area. The former has the disadvantage that the capacity of the TLB becomes large and the control becomes complicated, while the latter has the disadvantage of reducing TLB usage efficiency.
本発明ではこのような欠点を解決するため、上記共通領
域についてSTO−1Dの一致をとらない点に着目し、
その場合にのみSTO−1Dの代りに仮想計算機1D(
以下M−1Dと称す)を格納するようにしたものである
。In order to solve such drawbacks, the present invention focuses on the point that STO-1D does not match in the common area,
Only in that case, instead of STO-1D, virtual computer 1D (
(hereinafter referred to as M-1D).
以下第3図によつて本発明の一実施例を詳設する。図中
、11は論理アドレスレジスタであり、その内容の一部
112によりTLBl2を索引する。An embodiment of the present invention will be explained in detail below with reference to FIG. In the figure, 11 is a logical address register, and a part 112 of its contents is used to index TLB12.
その結果得られる出力のうちの一部121と論理アドレ
スレジスタ11の一部111とを比較器18で比較して
一致していれば、該出力の他の一部122が目的とする
実アドレスである。但し、多重仮想空間方式であるので
、空間1Dも確認する必要がある。A part 121 of the resulting output and a part 111 of the logical address register 11 are compared by the comparator 18, and if they match, the other part 122 of the output is the target real address. be. However, since it is a multiple virtual space system, it is also necessary to check the space 1D.
そこでTLBl2の出力の1D124と現在走行中のプ
ログラムにおける空間1Dを示すSTO−1Dレジスタ
15の内容とを比較器19にて比較し、一致していれば
ANDゲート20で先の比較結果とアンドがとれるため
ゲート21が開き、実アドレスレジスタ13の内容が使
用可能とされる。但し、STO−IDレジスタ15との
ID比較が行なわれるのはTLB中の共通領域指示フラ
グビツト123が゛ゝ゛O゛″のときのみである。この
フラグビツト123が゛1”″のときは、マルチプレク
サ16によつてVM−Dレジスタ14が選択されてTL
BからのIDl24と比較される。また比較器18又は
19のいずれかで不一致となつたときは、前記の如く主
記憶中に設けられたセグメント・テーブル及びページ・
テーブルを用いて実アドレスを求め、その結果をTLB
へ格納する。その際使用すべきセグメント・テーブルの
アドレスSTOはSTOスタツク17により求める。即
ちSTO−1Dレジスタ15の内容と一致するSTO−
1Dを有するSTOを、STOスタツク17の中から探
して、それにより主記憶中のセグメントテーブルをアク
セスする。また共通領域か否かは各セグメント・テーブ
ル中にその表示を設けておけば、セグメント・テーブル
索引時にその表示を読んで、TLBのフラグビツト12
3にそれを格納すればよい。またTLBl2への格納時
には、該フラグビツト123に格納する内容によつて同
時にマルチプレクサ16を切換えて、VM−1DかST
O−1Dかのいずれ力:をTLB(7)IDl24とし
て一諸に格納する。尚、STO−1Dは各セグメント・
テーブルを区別するためのものであり、STOスタツク
17を用いて対応づけが管理され、空間が切換わる毎に
レジスタ15へ再設定が行なわれる。Therefore, the comparator 19 compares the output 1D124 of TLBl2 with the contents of the STO-1D register 15 indicating the space 1D in the currently running program, and if they match, the AND gate 20 performs an AND operation with the previous comparison result. As a result, the gate 21 is opened and the contents of the real address register 13 are made available. However, the ID comparison with the STO-ID register 15 is performed only when the common area designation flag bit 123 in the TLB is "O". When this flag bit 123 is "1", the multiplexer 16 VM-D register 14 is selected by TL
It is compared with IDl24 from B. Also, if there is a mismatch in either the comparator 18 or 19, the segment table and page
Find the real address using the table and send the result to TLB
Store in. The address STO of the segment table to be used at this time is obtained from the STO stack 17. That is, the STO- which matches the contents of the STO-1D register 15
1D in the STO stack 17 and thereby access the segment table in main memory. In addition, if an indication is provided in each segment table to determine whether it is a common area or not, the indication can be read when indexing the segment table and the flag bit 12 of the TLB can be read.
You can store it in 3. Furthermore, when storing to TLB12, the multiplexer 16 is simultaneously switched depending on the contents stored in the flag bit 123, and the data is stored in either VM-1D or ST.
The force of O-1D is stored together as TLB (7) IDl24. In addition, STO-1D has each segment
This is for distinguishing tables, and the correspondence is managed using the STO stack 17, and the register 15 is reset each time the space is switched.
一方VM一1Dは各仮想計算機(即ち0S)を区別する
ものであり、0Sが切換わる毎にレジスタ14へ再設定
される。またSTOスタツク17に登録されていない新
たなセグメントテーブルを利用したいときは、旧STO
のいずれか1つを追い出して新たなSTOを登録すると
ともに、該旧STOの11)と同じIDを有するTLB
エントリを無効にする(但し、フラグビツト123が゛
1”のところはVM−1Dなので無効化は不要)。以上
の如く本発明ではTLB中に共通領域指示フラグ123
を設けるとともに、2種のID即ちVM−1DとSTO
−1Dを設け、上記フラグ123が共通領域を指示する
ときにはVM−1Dを用い、それ以外はSTO−1Dを
用いることにより、TLBの利用効率を低下することな
く、またTLBの容量を増すことなく、多重仮想空間方
式をとる多重仮想計算機方式を可能とすることができる
。On the other hand, VM-1D distinguishes each virtual machine (ie, 0S), and is reset to the register 14 every time the 0S is switched. Also, if you want to use a new segment table that is not registered in STO stack 17, use the old STO stack 17.
11) of the old STO, and register a new STO by expelling one of them, and registering a TLB with the same ID as 11) of the old STO.
Invalidate the entry (however, since the flag bit 123 is "1", it is VM-1, so invalidation is not necessary).As described above, in the present invention, the common area designation flag 123 is set in the TLB.
and two types of IDs, namely VM-1D and STO.
-1D is provided, and VM-1D is used when the flag 123 indicates a common area, and STO-1D is used at other times, without reducing TLB utilization efficiency or increasing TLB capacity. , it is possible to enable a multiple virtual computer system that adopts a multiple virtual space system.
第1図及び第2図は多重仮想空間方式の概念的説明図、
第3図は本発明の一実施例構成プロツク図である。
図中、11は論理アドレスレジスタ、12はTLBll
3は実アドレスレジスタ、14は仮想計算機1D、15
はSTO−1D、16はマルチプレクサ、17はSTO
スタツク、18,19は比較器、123は共通領域指示
フラグである。Figures 1 and 2 are conceptual explanatory diagrams of the multiple virtual space system;
FIG. 3 is a block diagram of one embodiment of the present invention. In the figure, 11 is a logical address register, 12 is TLBll
3 is a real address register, 14 is a virtual machine 1D, 15
is STO-1D, 16 is multiplexer, 17 is STO
Stack, 18 and 19 are comparators, and 123 is a common area designation flag.
Claims (1)
スレーション・ルック・アサイド・バッファ(TLB)
を有するデータ処理システムにおいて、上記TLB中に
共通領域指示フラグビット及び識別子(ID)情報ビッ
トを設け、上記フラグビットが共通領域を指示する場合
は上記ID情報ビットに仮想計算機IDを格納し、上記
フラグビットが共通領域を指示しない場合は上記ID情
報ビットに仮想記憶空間IDを格納するとともに、現在
走行中のプラグラムに関する仮想計算機ID及び仮想記
憶空間IDを表示するレジスタを設け、上記TLBの索
引に当たつては上記フラグビットの値に応じて、上記仮
想計算機IDと上記仮想記憶空間IDのいずれか一方の
ID値を比較してアドレス変換を行なうことを特徴とす
る多重仮想計算機システムにおける多重仮想記憶制御方
式。1 Translation look aside buffer (TLB) that stores the correspondence between logical addresses and real addresses
In a data processing system having a common area designation flag bit and an identifier (ID) information bit in the TLB, when the flag bit designates a common area, a virtual machine ID is stored in the ID information bit, and the If the flag bit does not indicate a common area, the virtual storage space ID is stored in the ID information bit, and a register is provided to display the virtual computer ID and virtual storage space ID of the currently running program. In a multiple virtual machine system, address conversion is performed by comparing the ID value of either the virtual machine ID or the virtual storage space ID, depending on the value of the flag bit. Memory control method.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP55064838A JPS5925303B2 (en) | 1980-05-16 | 1980-05-16 | Multiple virtual memory control method in multiple virtual computer system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP55064838A JPS5925303B2 (en) | 1980-05-16 | 1980-05-16 | Multiple virtual memory control method in multiple virtual computer system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS56163570A JPS56163570A (en) | 1981-12-16 |
| JPS5925303B2 true JPS5925303B2 (en) | 1984-06-16 |
Family
ID=13269771
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP55064838A Expired JPS5925303B2 (en) | 1980-05-16 | 1980-05-16 | Multiple virtual memory control method in multiple virtual computer system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5925303B2 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61101855A (en) * | 1984-10-24 | 1986-05-20 | Fujitsu Ltd | Tlb controlling system in multiple virtual memory system |
| JPH0754473B2 (en) * | 1987-08-04 | 1995-06-07 | 富士通株式会社 | Inter-CPU communication instruction execution method on virtual machine |
| JPH01255945A (en) * | 1988-04-06 | 1989-10-12 | Hitachi Ltd | Address converter in virtual computer |
| US20070266199A1 (en) * | 2004-09-07 | 2007-11-15 | Freescale Semiconductor, Inc. | Virtual Address Cache and Method for Sharing Data Stored in a Virtual Address Cache |
-
1980
- 1980-05-16 JP JP55064838A patent/JPS5925303B2/en not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS56163570A (en) | 1981-12-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4145738A (en) | Plural virtual address space processing system | |
| JP2825550B2 (en) | Multiple virtual space address control method and computer system | |
| CA1226372A (en) | Address translation control system | |
| US6173369B1 (en) | Computer system for processing multiple requests and out of order returns using a request queue | |
| US5475827A (en) | Dynamic look-aside table for multiple size pages | |
| US4835734A (en) | Address translation apparatus | |
| US20050188157A1 (en) | Memory mapping to reduce cache conflicts in multiprocessor sytems | |
| JPH01228039A (en) | Computer system | |
| JPH077363B2 (en) | Access device and method | |
| US7493464B2 (en) | Sparse matrix | |
| US5437016A (en) | Apparatus and method for translating logical addresses for virtual machines | |
| US5129071A (en) | Address translation apparatus in virtual machine system using a space identifier field for discriminating datoff (dynamic address translation off) virtual machines | |
| US5924127A (en) | Address translation buffer system and method for invalidating address translation buffer, the address translation buffer partitioned into zones according to a computer attribute | |
| US5319761A (en) | Directory look-aside table for a virtual storage system including means for minimizing synonym entries | |
| JPS5925303B2 (en) | Multiple virtual memory control method in multiple virtual computer system | |
| EP0175398A2 (en) | Data processing system comprising a memory access controller which is provided for combining descriptor bits of different descriptors associated with virtual addresses | |
| JPH06139149A (en) | Multiple virtual space controller | |
| US4984150A (en) | Virtual memory control management system | |
| CN118069373B (en) | Electronic component, electronic device and memory management method | |
| JP2000276405A (en) | Address translator and computer system having the address translator | |
| KR930009092B1 (en) | Apparatus and method for a page frame replacement in a data processing system having virtual memory addressing | |
| JPS5953634B2 (en) | computer system | |
| JPH01228038A (en) | Access/register conversion mechanism | |
| US7130857B2 (en) | Method for accessing a memory unit in which sequences of notes are stored, corresponding memory unit and corresponding program | |
| US7181587B1 (en) | Mapping an arbitrary number of contiguous memory pages at an arbitrary alignment |