JPH0351014B2 - - Google Patents

Info

Publication number
JPH0351014B2
JPH0351014B2 JP59189192A JP18919284A JPH0351014B2 JP H0351014 B2 JPH0351014 B2 JP H0351014B2 JP 59189192 A JP59189192 A JP 59189192A JP 18919284 A JP18919284 A JP 18919284A JP H0351014 B2 JPH0351014 B2 JP H0351014B2
Authority
JP
Japan
Prior art keywords
address
page
virtual
virtual address
page table
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 - Lifetime
Application number
JP59189192A
Other languages
Japanese (ja)
Other versions
JPS6182254A (en
Inventor
Kazunori Hiraishi
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP59189192A priority Critical patent/JPS6182254A/en
Publication of JPS6182254A publication Critical patent/JPS6182254A/en
Publication of JPH0351014B2 publication Critical patent/JPH0351014B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はページ・テーブル・アドレス変換処理
方式、特に仮想アドレスを実アドレスにアドレス
変換するために設けられたセグメント・テーブル
及びページ・テーブルを有するデータ処理装置に
おいて、当該ページ・テーブルが位置する仮想ア
ドレスを迅速に求めるページ・テーブル・アドレ
ス変換処理方式に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Industrial Application Field] The present invention has a page table address translation processing method, particularly a segment table and a page table provided for address translation from a virtual address to a real address. The present invention relates to a page table address conversion processing method for quickly determining the virtual address where the page table is located in a data processing device.

〔従来の技術と発明が解決しようとする問題点〕[Problems to be solved by conventional technology and invention]

各ジヨブ毎に独立した仮想空間(仮想記憶領
域)を割り当て、処理を実行する仮想記憶方式が
ある。第4図は当該仮想記憶方式の構成例を表わ
している。図中の符号101は与えられる仮想ア
ドレス、102はセグメント・テーブル、103
はページ・テーブル、104はTLB、105は
変換された結果の実ページを表わしている。
There is a virtual storage method that allocates an independent virtual space (virtual storage area) for each job and executes processing. FIG. 4 shows an example of the configuration of the virtual storage system. 101 in the figure is a given virtual address, 102 is a segment table, 103
is a page table, 104 is a TLB, and 105 is a real page as a result of conversion.

仮想アドレス101が与えられると、(i)当該ア
ドレス101内のインデツクスsにもとづいてセ
グメント・テーブル102の所定のエントリが索
引され、(ii)当該エントリの内容にもとづいて指示
されたページ・テーブル103内において、上記
アドレス101内のインデツクスpにもとづい
て、所定のエントリが索引され、(iii)当該エントリ
の内容と上記アドレス101内のページ内変位d
とによつて実ページ105が得られる。そして、
その結果の仮想アドレスと実アドレスとの対応関
係の情報がTLB104内にエントリされて以後
の変換のための早引きテーブルとして利用され
る。
When a virtual address 101 is given, (i) a predetermined entry in the segment table 102 is indexed based on the index s in the address 101, and (ii) a specified page table 103 is indexed based on the contents of the entry. , a predetermined entry is indexed based on the index p in the address 101, and (iii) the content of the entry and the intra-page displacement d in the address 101 are indexed.
A real page 105 is obtained by this. and,
The resulting information on the correspondence between the virtual address and the real address is entered into the TLB 104 and used as a quick lookup table for subsequent conversion.

当該方式では、仮想アドレスを主記憶上の実ア
ドレスに変換するために当該両者のアドレス関係
を記述したいわゆるセグメント・テーブルおよび
ページ・テーブルが用いられている。このような
データ処理装置において、現に着目している仮想
ページ(甲)をもとにして、当該仮想ページ
(甲)を管理しているページ・テーブル(乙)の
実アドレスや仮想アドレスを知りたい場合があ
る。
In this method, so-called segment tables and page tables that describe the address relationship between virtual addresses and real addresses on main memory are used to convert virtual addresses into real addresses on main memory. In such a data processing device, I want to know the real address and virtual address of the page table (B) that manages the virtual page (A) based on the virtual page (A) that I am currently focusing on. There are cases.

この場合、従来では、前記仮想ページ(甲)の
仮想アドレスを与えてLRA(ロード・リアル・ア
ドレス)命令を実行するようにする。これによ
り、即ち第2図ロ図示LRA命令の実行(図示a)
により、当該仮想ページ(甲)の実アドレスを求
める上で前記ページ・テーブルのアドレスが第4
図に関連して説明した如く求められていることか
ら、当該ページ・テーブルの実アドレスはそれか
ら求められる(図示c)。そして、ページ・テー
ブル(乙)の仮想アドレスを求める必要がある場
合には、更に当該実アドレスに基づいて当該実ア
ドレスと仮想アドレスとの対応が用意されている
ページ・フレーム・テーブル(PFT)と呼ばれ
るテーブル(図示せず)を索引し、前記対応が用
意されている1つのエントリ、即ちページ・フレ
ーム・テーブル・エントリ(PFTE)を索引し
(図示d)、当該パージ・フレーム・テーブル・エ
ントリに格納されているVBN(Virtual Block
Number)を用いてページ・テーブル(乙)の仮
想アドレスを算出する(図示e)。即ち上述の第
4図と対応すると、より明瞭になる如く、前記
LRA命令が実行されるとき、例えば第3図図示
の如き仮想ページ(甲)の仮想アドレスの先頭の
12ビツトをセグメント番号として図示されていな
いセグメント・テーブルから該当するセグメン
ト・テーブル・エントリを求める。該セグメン
ト・テーブル・エントリによつて指示される当該
ページ・テーブルの先頭アドレス(実アドレス)
と例えば第3図図示ページ番号とに基づいて第2
図イ図示ページ・テーブル(PGTE)中の
RBN(Real Block Number)を求める。該
RBNに例えば第3図図示ページ内変位を加算等
して前記仮想ページ(甲)の実アドレスが求めら
れる。このような処理がLRA命令によつて実行
されることから、この過程において、ページ・テ
ーブルの実アドレスが求まる。そしてその後に、
前述した如くしてページ・テーブルの仮想アドレ
スが求められる。このように、複雑な処理によつ
てページ・テーブルの仮想アドレスを算出してい
るため、算出するために多くの処理ステツプが必
要となつてしまうと共に処理時間が長くなつてし
まうという問題点があつた。
In this case, conventionally, the virtual address of the virtual page (A) is given to execute the LRA (Load Real Address) instruction. As a result, the execution of the LRA command shown in Figure 2 (a)
Therefore, when determining the real address of the virtual page (A), the address of the page table is the fourth address.
The actual address of the page table is then determined (FIG. c), as is being determined as explained in connection with the figure. If it is necessary to obtain the virtual address of the page table (Part 2), the page frame table (PFT), which has a correspondence between the real address and virtual address based on the real address, is also used. indexes a table (not shown) called Purge Frame Table Entry (FIG. d), indexes one entry for which said correspondence is provided, namely the page frame table entry (PFTE) (d), and indexes the page frame table entry (PFTE) for which the corresponding purge frame table entry is provided. The stored VBN (Virtual Block)
The virtual address of the page table (Part 2) is calculated using the number (e) in the figure. That is, as will become clearer when corresponding to the above-mentioned FIG. 4, the above-mentioned
When the LRA instruction is executed, for example, at the beginning of the virtual address of the virtual page (A) as shown in Figure 3,
A corresponding segment table entry is obtained from a segment table (not shown) using 12 bits as a segment number. The start address (actual address) of the page table indicated by the segment table entry
and, for example, the page number shown in Figure 3.
In the illustrated page table (PGTE)
Find RBN (Real Block Number). Applicable
The real address of the virtual page (A) is obtained by adding, for example, the displacement within the page shown in FIG. 3 to the RBN. Since such processing is executed by the LRA instruction, the real address of the page table is determined during this process. And after that,
The virtual address of the page table is determined as described above. In this way, the virtual address of the page table is calculated through complex processing, which poses the problem of requiring many processing steps and lengthening the processing time. Ta.

〔問題点を解決するための手段〕[Means for solving problems]

本発明は、前記問題点を解決するために、シス
テム共通領域内のページ・テーブルが位置する仮
想アドレス情報を格納するアドレス変換テーブル
を設けると共に、該アドレス変換テーブル・エン
トリによつて指定されるページ・テーブルの仮想
アドレスを直接ポイントするようにしている。換
言すると、第4図に示したセグメント・テーブル
102の夫々のエントリには該当するページ・テ
ーブル103の実アドレスが格納されているもの
であるが、本発明においては、上記セグメント・
テーブル102に対比するものとして当該セグメ
ント・テーブル102と同等のレベル位置に、ア
ドレス変換テーブルをもうけ、当該アドレス変換
テーブルの夫々のエントリには該当するページ・
テーブル103の仮想アドレス(実アドレスでは
なくその代わりに)を格納しておくようにする。
そして更にこのとき、各空間固有領域内について
のページ・テーブルを夫々同一仮想アドレスに設
けることにより、前記アドレス変換テーブルを空
間が異なつても単一のもので足りるようにしてい
る。そのため、本発明のページ・テーブル・アド
レス変換処理方式は、仮想アドレスを実アドレス
に変換する変換情報を格納したセグメント・テー
ブル及びページ・テーブルを有するデータ処理装
置において、 前記仮想アドレスを実アドレスに変換するため
のページ・テーブルが位置する仮想アドレス情報
を格納するアドレス変換テーブルを設け、 かつシステム共通領域のものに該当するペー
ジ・テーブルをシステム共通領域内に設けると共
に各空間個有領域内のものに該当するページ・テ
ーブルを夫々空間個有領域内の同一の仮想アドレ
スに設け、 前記アドレス変換テーブルを索引して与えられ
た仮想アドレスから上記夫々のページ・テーブル
が位置する仮想アドレスを算出するようにした ことを特徴と。
In order to solve the above-mentioned problems, the present invention provides an address translation table that stores virtual address information where a page table in a system common area is located, and also provides a page specified by the address translation table entry. - Directly points to the virtual address of the table. In other words, each entry in the segment table 102 shown in FIG. 4 stores the real address of the corresponding page table 103, but in the present invention, the segment
As a comparison with the table 102, an address translation table is provided at the same level as the segment table 102, and each entry in the address translation table has a corresponding page number.
A virtual address (instead of a real address) of the table 103 is stored.
Furthermore, at this time, page tables for each space-specific area are provided at the same virtual address, so that a single address translation table is sufficient even if the spaces are different. Therefore, the page table address conversion processing method of the present invention converts the virtual address to a real address in a data processing device having a segment table and a page table that store conversion information for converting a virtual address to a real address. An address translation table is provided to store the virtual address information where the page table for Each corresponding page table is provided at the same virtual address in the space-specific area, and the virtual address at which each of the above page tables is located is calculated from the given virtual address by indexing the address conversion table. Characterized by what I did.

〔実施例〕〔Example〕

以下図面を参照しつつ本発明の実施例を詳細に
説明する。
Embodiments of the present invention will be described in detail below with reference to the drawings.

第1図は本発明の1実施例構成図を示す。 FIG. 1 shows a configuration diagram of one embodiment of the present invention.

図中、1はシステム共通領域、2,2−0ない
し2−nは空間固有領域、3はアドレス変換テー
ブル、4,5−0ないし5−nはページ・テーブ
ルを表す。
In the figure, 1 represents a system common area, 2, 2-0 to 2-n represent a space specific area, 3 represents an address conversion table, and 4, 5-0 to 5-n represent a page table.

第1図において、仮想記憶領域には図示の如く
システム共通領域1および空間固有領域2が設け
られている。そして、システム共通領域1には、
当該領域のアドレスを管理するページ・テーブル
4が設けられている。また、各空間固有領域2−
0ないし2−nには、夫々同一仮想アドレスの位
置にページ・テーブル5−0ないし5−nが夫々
設けられており、システム共通領域1内に設けた
単一のアドレス変換テーブル3によつて夫々ポイ
ントされるよう構成されている。
In FIG. 1, the virtual storage area is provided with a system common area 1 and a space specific area 2 as shown. And in system common area 1,
A page table 4 is provided to manage addresses of the area. In addition, each spatial specific area 2-
0 to 2-n, page tables 5-0 to 5-n are provided at the same virtual address position, respectively, and the single address translation table 3 provided in the system common area 1 It is structured so that points are given for each.

図中アドレス変換テーブル3は、前述した如く
システム共通領域1内に設けられており、仮想ア
ドレス中の上位ビツト例えば第3図図示0ないし
11ビツトからなるセグメント番号に基づいて生成
された値によつて、例えば第1図図示仮想アドレ
ス0ないしnに対応する形でアドレス変換テーブ
ル・エントリがポイントされるようにされてい
る。換言すれば当該アドレス変換テーブル3は、
いわゆるセグメント・テーブルと同じ大きさを持
ち、従来から用意されているセグメント・テーブ
ルのセグメント・テーブル・エントリがページ・
テーブルの実アドレスをポイントすると同様に、
ポイントされる。そして、各エントリは夫々の仮
想記憶領域のセグメントを管理するページ・テー
ブルの位置を示す仮想アドレスを保持している。
詳述すると、システム共通領域1に対応するエン
トリ群例えば第1図図示セグメント(l+1)な
いしセグメントnからなるエントリ群に対して
は、システム共通領域1を管理するページ・テー
ブル群の仮想アドレスを夫々設定し、空間固有領
域2に対応するエントリ群例えば第1図図示セグ
メント0ないしセグメントlからなるエントリ群
に対しては、空間固有領域2を管理するページ・
テーブル群の仮想アドレスを夫々設定する。
The address conversion table 3 in the figure is provided in the system common area 1 as described above, and the upper bits in the virtual address, for example 0 to 3 as shown in FIG.
A value generated based on an 11-bit segment number points to an address translation table entry corresponding to, for example, virtual addresses 0 to n shown in FIG. In other words, the address conversion table 3 is
The segment table entry of the conventionally prepared segment table has the same size as the so-called segment table.
As well as pointing to the real address of the table,
Points will be given. Each entry holds a virtual address indicating the location of the page table that manages the segment of the respective virtual storage area.
Specifically, for the entry group corresponding to the system common area 1, for example, the entry group consisting of segment (l+1) to segment n shown in FIG. For the entry group corresponding to the space-specific area 2, for example, the entry group consisting of segments 0 to 1 shown in FIG.
Set virtual addresses for each table group.

また、システム共通領域1内に設けたページ・
テーブル4の各エントリおよび空間固有領域2−
0ないし2−n内に設けたページ・テーブル5−
0ないし5−nの各エントリには、言うまでもな
く従来と同様に夫々所定の仮想アドレスを実アド
レスに変換する情報が保持されている。
In addition, pages and
Each entry in Table 4 and space-specific area 2-
Page table 5- provided in 0 to 2-n
Needless to say, each entry from 0 to 5-n holds information for converting a predetermined virtual address into a real address, as in the prior art.

次にページ・テーブル4等に必要な記憶領域が
確保される手順について説明する。
Next, a procedure for securing the necessary storage area for the page table 4 and the like will be explained.

第1図図示構成からなるシステムが起動された
当初、前述したシステム共通領域1を管理するペ
ージ・テーブル4に必要な記憶領域を優先的に固
定した形で確保しておく。また、同様に空間固有
領域2−0ないし2−nを管理するページ・テー
ブル5−0ないし5−nに必要な記憶領域を空間
創成時に夫々優先的に全ての空間固有領域2内で
同一の仮想アドレスを持つように固定的に確保し
ておく。更に、前記確保したページ・テーブル4
およびページ・テーブル5−0ないし5−nをポ
イントする仮想アドレスを索引するためのアドレ
ス変換テーブル3をシステム共通領域1内に作成
する。そして、ページ・テーブル4およびペー
ジ・テーブル5−0ないし5−nに対する実ペー
ジは、当該ページ・テーブルによつて管理する仮
想記憶領域に対する最初の領域を確保する要求が
あつた時点で夫々割り当てる。
When the system having the configuration shown in FIG. 1 is initially started, the storage area necessary for the page table 4 that manages the system common area 1 described above is secured in a preferential and fixed manner. Similarly, when creating a space, the storage areas required for the page tables 5-0 to 5-n that manage the space-specific areas 2-0 to 2-n are given priority in all space-specific areas 2. Fixedly secure it so that it has a virtual address. Furthermore, the secured page table 4
And an address translation table 3 for indexing virtual addresses pointing to page tables 5-0 to 5-n is created in the system common area 1. Then, real pages for page table 4 and page tables 5-0 to 5-n are allocated, respectively, when a request is made to reserve the first area for the virtual storage area managed by the page table.

以上の如く記憶領域を確保した後、仮想ページ
(甲)の仮想アドレスから当該仮想ページを管理
するページ・テーブル(乙)の仮想アドレスを求
める場合には、当該仮想ページ(甲)の仮想アド
レスからセグメント番号を求め、該セグメント番
号に対応するアドレス変換テーブル・エントリを
求めればよい。これにより、ページ・テーブル
(乙)をポイントしている仮想アドレスを得られ
る。更に、ページ・テーブル(乙)の実アドレス
を求めたい場合には、前記得た仮想アドレスに対
して前述したLRA命令を実行する。これにより、
ページ・テーブルをポイントする実アドレスが得
られる。
After securing the storage area as described above, when obtaining the virtual address of the page table (B) that manages the virtual page from the virtual address of the virtual page (A), use the virtual address of the virtual page (A) to obtain the virtual address of the page table (B) that manages the virtual page. It is sufficient to obtain the segment number and obtain the address translation table entry corresponding to the segment number. This will give you the virtual address pointing to the page table (B). Furthermore, when it is desired to obtain the real address of the page table (B), the above-mentioned LRA instruction is executed for the obtained virtual address. This results in
You get a real address pointing to a page table.

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

以上説明した如く、本発明によれば、システム
共通領域内にページ・テーブルが位置する仮想ア
ドレス情報を格納するアドレス変換テーブルを設
けると共に、該アドレス変換テーブル・エントリ
によつて指定されるページ・テーブルの仮想アド
レスを直接ポイントし得る構成を採用しているた
め、ページ・テーブルをポイントする仮想アドレ
スを迅速に算出することができる。また、各空間
固有領域内に配置するページ・テーブルを夫々同
一仮想アドレスに設けてあるため、空間が異なつ
ても単一の前記アドレス変換テーブルで足りる。
As explained above, according to the present invention, an address translation table that stores virtual address information in which a page table is located in a system common area is provided, and a page table specified by the address translation table entry is provided. Since the virtual address of the page table can be directly pointed to, the virtual address pointing to the page table can be quickly calculated. Furthermore, since the page tables placed in each space-specific area are provided at the same virtual address, a single address conversion table is sufficient even if the spaces are different.

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

第1図は本発明の1実施例構成図、第2図は従
来のページ・テーブル・アドレス変換処理方式の
動作を説明する説明図、第3図はアドレス表現を
説明する説明図、第4図は従来公知の仮想記憶方
式の構成例を示す。 図中、1はシステム共通領域、2,2−0ない
し2−nは空間固有領域、3はアドレス変換テー
ブル、4,5−0ないし5−nはページ・テーブ
ルを表す。
FIG. 1 is a configuration diagram of one embodiment of the present invention, FIG. 2 is an explanatory diagram illustrating the operation of a conventional page table address conversion processing method, FIG. 3 is an explanatory diagram illustrating address expression, and FIG. 4 shows an example of the configuration of a conventionally known virtual storage system. In the figure, 1 represents a system common area, 2, 2-0 to 2-n represent a space specific area, 3 represents an address conversion table, and 4, 5-0 to 5-n represent a page table.

Claims (1)

【特許請求の範囲】 1 仮想アドレスを実アドレスに変換する変換情
報を格納したセグメント・テーブル及びページ・
テーブルを有するデータ処理装置において、 前記仮想アドレスを実アドレスに変換するため
のページ・テーブルが位置する仮想アドレス情報
を格納するアドレス変換テーブルを設け、 かつシステム共通領域のものに該当するペー
ジ・テーブルをシステム共通領域内に設けると共
に各空間個有領域内のものに該当するページ・テ
ーブルを夫々空間個有領域内の同一の仮想アドレ
スに設け、 前記アドレス変換テーブルを索引して与えられ
た仮想アドレスから上記夫々のページ・テーブル
が位置する仮想アドレスを算出するようにした ことを特徴とするページ・テーブル・アドレス変
換処理方式。
[Claims] 1. Segment table and page table storing conversion information for converting virtual addresses to real addresses.
In a data processing device having a table, an address conversion table is provided for storing virtual address information in which a page table for converting the virtual address to a real address is located, and a page table corresponding to a system common area is provided. Page tables are provided in the system common area and corresponding to those in each space-specific area, respectively, at the same virtual address in the space-specific area, and from the virtual address given by indexing the address conversion table. A page table address conversion processing method characterized in that a virtual address at which each of the above page tables is located is calculated.
JP59189192A 1984-09-10 1984-09-10 Page table address conversion processing system Granted JPS6182254A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59189192A JPS6182254A (en) 1984-09-10 1984-09-10 Page table address conversion processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59189192A JPS6182254A (en) 1984-09-10 1984-09-10 Page table address conversion processing system

Publications (2)

Publication Number Publication Date
JPS6182254A JPS6182254A (en) 1986-04-25
JPH0351014B2 true JPH0351014B2 (en) 1991-08-05

Family

ID=16237050

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59189192A Granted JPS6182254A (en) 1984-09-10 1984-09-10 Page table address conversion processing system

Country Status (1)

Country Link
JP (1) JPS6182254A (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS601658B2 (en) * 1980-07-04 1985-01-16 富士通株式会社 Address conversion control method
JPS5760450A (en) * 1980-09-30 1982-04-12 Nec Corp Information processing equipment
JPS58159283A (en) * 1982-03-16 1983-09-21 Hitachi Ltd address translation device

Also Published As

Publication number Publication date
JPS6182254A (en) 1986-04-25

Similar Documents

Publication Publication Date Title
US5313611A (en) Method and apparatus for maintaining a lookup table for storing function values
US4279014A (en) Arrangement for converting virtual addresses into physical addresses in a data processing system
US4945499A (en) Graphic display system
JPH0357046A (en) Access control system for virtual storage address space
JPH0351014B2 (en)
JPS63172343A (en) Instruction prefetch method
JP3456727B2 (en) Data processing device
JP2500736B2 (en) IPL processing device
JP2507399B2 (en) Database equipment
JPS63181032A (en) Module reading and processing system
JPS59231788A (en) Electronic computer
JPS6226550A (en) Saving system to external storage device for program under execution
JPS61837A (en) Program overlay loading system
JPS61275947A (en) Address converter
JPS6331816B2 (en)
JPH0498516A (en) Disk accessing system
JPS5817993B2 (en) information processing equipment
JPH04360252A (en) Address conversion system for virtual storage in computer
JPH01154264A (en) Dynamic channel address translation method in virtual computer system
JPS6273346A (en) address translation device
JPS62284444A (en) Memory data converter
JPS58196680A (en) Address converting system for virtual machine system
JPH022175B2 (en)
JPS6167158A (en) Address converting mechanism for electronic computer
JPH04157544A (en) High multiprocess control method