JPS63124150A - Address converting system - Google Patents
Address converting systemInfo
- Publication number
- JPS63124150A JPS63124150A JP61269633A JP26963386A JPS63124150A JP S63124150 A JPS63124150 A JP S63124150A JP 61269633 A JP61269633 A JP 61269633A JP 26963386 A JP26963386 A JP 26963386A JP S63124150 A JPS63124150 A JP S63124150A
- Authority
- JP
- Japan
- Prior art keywords
- address
- descriptor
- space
- field
- flag
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 19
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はアドレス変換方式に係り、特に仮想アドレス空
間の一部を共有するのに好適なアドレス変換方式に関す
る。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an address translation method, and particularly to an address translation method suitable for sharing a portion of a virtual address space.
仮想アドレス空間の一部を共有する方法としては、特開
昭49−73338に記載のように論理アドレスをユー
ザ空間とシステム空間に分離し、システム空間は複数の
ユーザ空間に対して共通にアクセス可能とする方法があ
る。このやり方として一般には論理アドレスの上位1〜
2ビット程度を用いて、例えばアドレスの大きい方をシ
ステム空間。As a method of sharing a part of the virtual address space, as described in JP-A-49-73338, the logical address is separated into a user space and a system space, and the system space can be commonly accessed by multiple user spaces. There is a way to do this. Generally speaking, this method is from the top 1 of logical addresses to
Using about 2 bits, for example, the larger address is used as system space.
小さい方をユーザ空間とするような方法がとられる。こ
の方法はわかりやすく実用性も高いが、特定のユーザ間
だけでデータを共有しようとする場合や、あるアドレス
の範囲内の一部のデータのみ共有にしたいというような
きめ細かい制御には適合しない。A method is adopted in which the smaller one is used as the user space. Although this method is easy to understand and highly practical, it is not suitable for fine-grained control, such as when you want to share data only between specific users, or when you want to share only some data within a certain address range.
一方他の方法としては、同一の物理アドレスを複数のデ
ィスクリプタが指定する方法がある。これは一般によく
使われる方法であるが、主メモリ上のデータをファイル
に転送したり、戻したりするいわゆるデマンドページン
グ方式のメモリ管理を行なう場合には細心の注意が必要
である。それは変換テーブルのディスクリプタによって
主メモリの状態を管理している場合が多いので管理部分
が分散してしまうこと、また複数のディスクリプタに対
して同時に主メモリの状態を反映させる必要があるため
である。On the other hand, as another method, there is a method in which multiple descriptors specify the same physical address. Although this is a commonly used method, extreme care must be taken when performing memory management using the so-called demand paging method, in which data in main memory is transferred to and returned from a file. This is because the state of the main memory is often managed by the descriptor of the conversion table, so the management part is distributed, and the state of the main memory must be reflected on multiple descriptors at the same time.
上記のように従来技術は一部のデータを一部のユーザ間
で共有しようとするようなきめ紺かい制御を行なうこと
が困難である。また、このような共有のし方を実現しよ
うとすると、複数のディスクリプタによる共有状況につ
いて充分注意を払って管理する必要があった。As described above, in the conventional technology, it is difficult to perform fine-grained control such as sharing some data among some users. Furthermore, in order to realize such a sharing method, it is necessary to pay sufficient attention to the sharing status of multiple descriptors and manage them.
本発明の目的は、上記の問題点を解決し仮想アドレス空
間の共有をきめ細かくしかも矛盾なく管理しつるアドレ
ス変換方式を提供することにある。SUMMARY OF THE INVENTION An object of the present invention is to provide an address translation method that solves the above-mentioned problems and manages sharing of a virtual address space in detail and without contradiction.
[問題点を解決するための手段〕
上記目的はアドレス変換テーブルのディスクリプタ内に
変換テーブルの引直しを行なうことを示すフラグ又はコ
ードを持ち、必要によってはさらに引直しを行なう時に
用いる変換テーブルあるいは論理アドレスを指定する手
段を持つことによって実現できる。[Means for solving the problem] The above purpose is to have a flag or code in the descriptor of the address translation table that indicates that the translation table is to be redrawn, and if necessary, a conversion table or logic used for further redrawing. This can be achieved by having a means to specify an address.
変換テーブルのディスクリプタ毎に引直しを行なうかど
うかのフラグを持つ、もし引直しをフラグが要求してい
れば改めて引直しすべき仮想アドレス空間および論理ア
ドレスによってアドレス変換を実行する。この結果引直
し元のアドレスは引直し先のアドレスと同一のメモリエ
リアを共有することができる。また共有の単位がディス
クリプタで指定される範囲なのできめ細かく共有を制御
でき、さらに引直し元のディスクリプタには主メモリ管
理に関する情報が入らないので、管理上の矛盾も生じな
い。Each descriptor in the translation table has a flag indicating whether or not to perform redirection. If the flag requests redirection, address conversion is executed using the virtual address space and logical address to be redirected. As a result, the redirection source address can share the same memory area as the redirection destination address. Furthermore, since the unit of sharing is the range specified by the descriptor, sharing can be controlled in detail, and since the redrawing source descriptor does not contain information regarding main memory management, no management conflicts occur.
以下本発明の詳細な説明する。 The present invention will be explained in detail below.
第1図は仮想空間におけるセグメントの共有の例を示し
ている。第1図(a)は空間Stと空間S2およびその
間におけるセグメントの共有関係を示す。各空間の縦方
向は論理アドレスの方向である。この例はアドレス変換
テーブルによって8つのセグメントに分割した例である
。空間S1のセグメント2と3は空間S2のセグメント
(2)と(3)によって別空間別アドレスで共有される
。FIG. 1 shows an example of segment sharing in virtual space. FIG. 1(a) shows the space St and the space S2 and the sharing relationship of segments between them. The vertical direction of each space is the direction of the logical address. In this example, the data is divided into eight segments using an address translation table. Segments 2 and 3 of space S1 are shared by segments (2) and (3) of space S2 using different space addresses.
また空間S1のセグメント5は同一空間Sl内のセグメ
ント(5)により同−空間別アドレスで共有される。さ
らに空間Szのセグメント7は空間S1のセグメント(
7)によって別空間同−アドレスで共有される。このよ
うに共有のし方にはいろいろなケースがある。同図(b
)はこのような空間構造における変換テーブルと主メモ
リおよびファイルの関係を示す。変換テーブルT1.T
zのディスクリプタ1〜12は主メモリMのアドレスを
指定するかまたはファイルF上にその内容があることを
示す。一方引直しを指定しているディスクリプタa=d
は、引直しに用いる変換テーブルおよび論理アドレスを
指定する。同1iijl(c)はディスクリプタの一例
である。■はディスクリプタが有効か無効かを示す、
Typeはディスクリプタの種類を示す。例えば0”は
通常のディスクリプタであり次のAddrで物理アドレ
スを指定する。Furthermore, segment 5 of space S1 is shared by segment (5) in the same space S1 at the same space-separate address. Furthermore, segment 7 of space Sz is segment (
7), the same address is shared in a separate space. There are various ways of sharing in this way. The same figure (b
) shows the relationship between the conversion table, main memory, and files in such a spatial structure. Conversion table T1. T
Descriptors 1-12 of z specify addresses in main memory M or indicate that the contents are on file F. On the other hand, descriptor a=d that specifies redrawing
specifies the translation table and logical address to be used for redirection. 1iijl(c) is an example of a descriptor. ■ indicates whether the descriptor is valid or invalid,
Type indicates the type of descriptor. For example, 0'' is a normal descriptor, and the next Addr specifies a physical address.
また”1″は引直しを示しAc1drで引直しの論理ア
ドレスを指定する。あるいは、引直しの種類をここで指
定することも可能である。例えば別空間同−アドレス、
別空間別アドレス、同−空間別アドレス、などである。Further, "1" indicates redrawing, and Ac1dr specifies the logical address for redrawing. Alternatively, it is also possible to specify the type of redrawing here. For example, same address in different space,
These include addresses for different spaces, addresses for different spaces, and the like.
Profはアクセス保護条件を示す。〜印はさらにその
他の情報がつく場合もあることを示している。Prof indicates access protection conditions. ~ indicates that other information may be added.
第2図はシステム空間SSとユーザ空間USI。Figure 2 shows system space SS and user space USI.
US2を持ち、ユーザ空間が多重化されているようなシ
ステムにおいて、システム空間がユーザ空間をアクセス
できるようにする方法を示している。In a system having US2 and in which the user space is multiplexed, a method is shown in which the system space can access the user space.
この場合システム空間とユーザ空間は例えばプロセッサ
内の特権モードフラグによって区別される。In this case, system space and user space are distinguished, for example, by a privileged mode flag within the processor.
そこで特権モードにおいてユーザの空間を読出したいと
いうような場合、システム空間用の変換テーブルSST
においてユーザ空間をアクセスしたいディスクリプタに
はタイプフィルドルドTFを1”にセットしておく。な
お、この場合はアクセスされた論理アドレスを使ってユ
ーザ空間で引直しを行なうことを指定するものとする。Therefore, if you want to read the user space in privileged mode, use the conversion table SST for system space.
For the descriptor whose user space is to be accessed, the type field TF is set to 1''.In this case, it is assumed that the accessed logical address is used to specify that redirection be performed in the user space.
するとユーザ空間がユーザ1からユーザ2へさらに他の
ユーザ空間に切換わったとしても、その時割当てられて
いるユーザ空間をアクセスすることができる。Then, even if the user space is switched from user 1 to user 2 to another user space, the user space assigned at that time can be accessed.
第3図は特定ユーザ間でデータ共有を行なう場合を示す
。(a)は空間の構造を示す。ユーザの共有空間C1と
02がシステム空間中に割当てられており各々論理アド
レスAとBでアクセスできるものとする。これに対しユ
ーザ1と2はC1と02を、ユーザ3はC1のみ共有す
るものとする。FIG. 3 shows a case where data is shared between specific users. (a) shows the structure of space. It is assumed that user shared spaces C1 and 02 are allocated in the system space and can be accessed by logical addresses A and B, respectively. On the other hand, it is assumed that users 1 and 2 share C1 and 02, and user 3 shares only C1.
また同一の共有エリアに対する論理アドレスはユーザ毎
に異なる。このようなケースは(b)の示すテーブルに
よって実現できる。すなわちユーザテーブル内のタイプ
フィールドを例えばl#2jjとセットすることにより
システム空間の引直しを示す。またその時のアドレスフ
ィールドにはシステム空間上での論理アドレスであるA
あるいはBを入れておく。Further, the logical address for the same shared area differs for each user. Such a case can be realized by the table shown in (b). That is, by setting the type field in the user table to, for example, l#2jj, the redrawing of the system space is indicated. Also, the address field at that time is A, which is a logical address on the system space.
Or put B in it.
第4図(a)は本発明を実現するためのディスクリプタ
の例である。タイプフィールド(Type)は引直しを
するかどうかを示すフラグRA、引直しの時の空間を指
定するフラグUS、引直し先の保護情報を使うかどうか
を指定するフラグPMから成る。アドレスフィールド(
Addr)はRAフラグに応じて論理アドレスか物理ア
ドレスが入る。FIG. 4(a) is an example of a descriptor for implementing the present invention. The type field (Type) consists of a flag RA indicating whether redrawing is to be performed, a flag US specifying the space at the time of redrawing, and a flag PM specifying whether or not to use the protection information of the redrawing destination. address field (
Addr) contains either a logical address or a physical address depending on the RA flag.
保護フィールド(Pvot)は読出しくR)、書入み(
W)、実行(E)に関する保護条件が入る。同図(b)
にはタイプフィールドの値とディスクリプタの機能Fと
の関係をまとめて示す。ここで、保護の項における○印
は「有効」、x印は「無効」を示す。The protected field (Pvot) can be read (R) and written (
W), protection conditions regarding execution (E) are entered. Same figure (b)
shows the relationship between the value of the type field and the function F of the descriptor. Here, in the protection section, a circle mark indicates "valid" and an x mark indicates "invalid".
第5図はアドレス変換のフローの一例を示す。FIG. 5 shows an example of the flow of address translation.
本図では保護フィールドのフエツクは示していない。図
のようにディスクリプタを読込んだ後引直しをするかど
うかをタイプフィールドを見て判定する。引直しであれ
ば、アドレスフィールドを論理アドレスとして再度アド
レス変換を行なうことになる。引直しでなければアドレ
スフィールドを物理アドレスとして主メモリのアクセス
に入る。This figure does not show the protective field flaws. As shown in the figure, the type field is used to determine whether or not to redraw the descriptor after reading it. In the case of redrawing, address conversion is performed again using the address field as a logical address. If it is not redrawing, the main memory is accessed using the address field as a physical address.
以上述べたように、本発明によれば空間の共有をきめ細
かく制御でき、しかも共有光のアドレスが主メモリから
ファイルへの追出し、あるいはファイルからの取込みな
どで変化してもディスクリプタ上の記述を何ら変更する
ことなく対応できる。As described above, according to the present invention, it is possible to precisely control the sharing of space, and even if the address of the shared light changes due to ejection from main memory to a file, or import from a file, the description on the descriptor is not changed in any way. This can be done without any changes.
第1図は本発明の一実施例の概念図、第2図はシステム
空間からユーザ空間を見る場合の実施例を示す説明図、
第3図はユーザ空間同士のデータ共有例を示す説明図、
第4図はディスクリプタの一例を示す説明図、第5図は
アドレス変換のC11eu−例を示すフロー図である。
■・・・有効フラグ、Type・・・タイプフィールド
、 Addr・・・アドレスフィールド、Prot・・
・アクセス保護フイZ/ 図
(α)
ψ閉1 q賓2
(し)
テーカレ1 メインメモ
、す第 2 口
(α)
E=X%QFJ’l l ”j””F+il
l−丁’ZRIシスラム空M吊
1−サ゛−空^j吊変fiテープ・1しtLjIJ!チ
アル
第 3 口
<a>
シλうth?j!閏 ニ
ー+r2^1(b)
5151−’1M弔ニー”j” tIvlFp+ 7碌
チー7”+L/神−アJし
第 4 m
(α)FIG. 1 is a conceptual diagram of an embodiment of the present invention, and FIG. 2 is an explanatory diagram showing an embodiment in which user space is viewed from system space.
FIG. 3 is an explanatory diagram showing an example of data sharing between user spaces,
FIG. 4 is an explanatory diagram showing an example of a descriptor, and FIG. 5 is a flow diagram showing an example of address conversion C11eu. ■...Valid flag, Type...Type field, Addr...Address field, Prot...
・Access protection file Z/ Diagram (α) ψ Close 1 q Guest 2 (shi) Take care 1 Main memo, Su 2nd mouth (α) E=X%QFJ'l l "j""F+il
l-Ding'ZRI Sysram Sky M Hanging
1-Sa゛-Empty^j hanging change fi tape・1shitLjIJ! Chial 3rd mouth<a> shiλuth? j! Leap knee + r2^1 (b) 5151-'1M funeral knee "j" tIvlFp+ 7碌chi7"+L/God-AJshi 4th m (α)
Claims (1)
換テーブルを有して論理アドレスから物理アドレスへの
変換を行なうアドレス変換方式において、変換テーブル
のディスクリプタ内に少くとも変換テーブルの引直しを
行なうことを示すことのできるフラグ又はコードを有す
るアドレス変換方式。 2、ディスクリプタ内にさらに引直しの時に用いる論理
アドレスの少くとも1部分を有する第1項記載のアドレ
ス変換方式。 3、ディスクリプタ内にどの変換テーブルを用いて引直
しを行なうかを直接または間接に示す手段を有する第1
項、第2項記載のアドレス変換方式。 4、ディスクリプタ内にアクセス保護フィールドを持ち
、引直しを指定するディスクリプタと引直し先のディス
クリプタの各アクセス保護フィールドの両者が共にアク
セスを許可している時のみアクセス可能であるようにア
クセス保護を行なうことを特徴とする第1項乃至第3項
記載のアドレス変換方式。 5、ディスクリプタ内にアクセス保護フィールドを持ち
、引直し元のディスクリプタのアクセス保護フィールド
によつてのみアクセス保護を行なうか、引直し元と引直
し先の両者のアクセス保護フィールドが共に許可してい
る時のみアクセス可能であるようにアクセス保護を行な
うかを選択可能であることを特徴とする第1項乃至第3
項記載のアドレス変換方式。[Claims] 1. In an address translation method that has an address translation table that defines one or more virtual address spaces and performs translation from a logical address to a physical address, at least a translation table is included in a descriptor of the translation table. An address translation method that has a flag or code that can indicate that redirection is to be performed. 2. The address conversion method according to item 1, wherein the descriptor further includes at least a portion of a logical address used for redrawing. 3. A first device having a means for directly or indirectly indicating in the descriptor which conversion table is used for redrawing.
2. Address conversion method described in Section 2. 4. Have an access protection field in the descriptor, and perform access protection so that access is possible only when both the access protection fields of the descriptor that specifies redirection and the descriptor to which redirection is to be redirected both permit access. The address conversion method according to any one of items 1 to 3, characterized in that: 5. When the descriptor has an access protection field and access protection is performed only by the access protection field of the redrawing source descriptor, or when the access protection fields of both the redrawing source and the redrawing destination permit it. Items 1 to 3, characterized in that it is possible to select whether to perform access protection so that only the user can access
Address translation method described in section.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61269633A JPS63124150A (en) | 1986-11-14 | 1986-11-14 | Address converting system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61269633A JPS63124150A (en) | 1986-11-14 | 1986-11-14 | Address converting system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63124150A true JPS63124150A (en) | 1988-05-27 |
Family
ID=17475068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61269633A Pending JPS63124150A (en) | 1986-11-14 | 1986-11-14 | Address converting system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63124150A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0701029A2 (en) | 1994-08-22 | 1996-03-13 | Japanic Corporation | Raw sewage disposal apparatus |
-
1986
- 1986-11-14 JP JP61269633A patent/JPS63124150A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0701029A2 (en) | 1994-08-22 | 1996-03-13 | Japanic Corporation | Raw sewage disposal apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2275970C (en) | Object and method for providing efficient multi-user access to shared operating system kernal code using instancing | |
EP0208428B1 (en) | Direct input/output in a virtual memory system | |
US6681239B1 (en) | Computer system having shared address space among multiple virtual address spaces | |
US5893148A (en) | System and method for allocating cache memory storage space | |
JPS62165249A (en) | Automatic enlargement of segment size in page segmenting virtual memory data processing system | |
JPH0330897B2 (en) | ||
JPS62165250A (en) | Virtual memory | |
JPS60221851A (en) | Data processor and memory access controller used therefor | |
EP0169018A2 (en) | Computer memory system | |
EP0509722B1 (en) | Data transfer system | |
US5875487A (en) | System and method for providing efficient shared memory in a virtual memory system | |
JP3629507B2 (en) | System and method for providing shared memory using shared virtual segment identification in a computer system | |
US4672538A (en) | Method of dynamically changing formation of addresses in memory of a data processing system | |
JPS63124150A (en) | Address converting system | |
US6067601A (en) | Cache memory based instruction execution | |
JPH03240134A (en) | Method of executing synchronous communication between execution environment by data processing system adopting object directional memory protective mechanism | |
JP3456727B2 (en) | Data processing device | |
EP0179350A2 (en) | Data processing system | |
JPS6152757A (en) | Data processing system | |
JP2587221B2 (en) | Virtual memory control method in compiler | |
JPH02116940A (en) | Page shared system using indirect pointer | |
Ozcelebi et al. | Memory management (part 2) Virtual memory | |
JPS6019810B2 (en) | Buffer memory control method | |
JPH01273153A (en) | Virtual storage control system | |
Murdocca et al. | Memory hierarchy |