JPS628244A - 仮想記憶制御方式 - Google Patents
仮想記憶制御方式Info
- Publication number
- JPS628244A JPS628244A JP60146376A JP14637685A JPS628244A JP S628244 A JPS628244 A JP S628244A JP 60146376 A JP60146376 A JP 60146376A JP 14637685 A JP14637685 A JP 14637685A JP S628244 A JPS628244 A JP S628244A
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- space
- enlargement
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概 要〕
計算機システムにおける、仮想記憶アドレスを実アドレ
スに変換するための仮想記憶制御方式である。仮想記憶
は一定の記憶容量の空間に分割された構成とする。この
記憶容量の整数倍の実記憶領域の記憶装置を設け、各仮
想記憶空間を、その空間識別子で定まる一定の実記憶領
域のみに割り当てる方式により、実記憶領域を拡張した
場合のアドレス変換に対処することができる。
スに変換するための仮想記憶制御方式である。仮想記憶
は一定の記憶容量の空間に分割された構成とする。この
記憶容量の整数倍の実記憶領域の記憶装置を設け、各仮
想記憶空間を、その空間識別子で定まる一定の実記憶領
域のみに割り当てる方式により、実記憶領域を拡張した
場合のアドレス変換に対処することができる。
本発明は、計算機システムにおける、仮想記憶アドレス
を実アドレスに変換するための仮想記憶制御方式に関す
る。
を実アドレスに変換するための仮想記憶制御方式に関す
る。
計算機システムの性能対価格比の向上等による、
□計算機利用領域の拡大に伴い、各計算機システムの
利用プログラムの大きさ、個数共に増大が著しい。
□計算機利用領域の拡大に伴い、各計算機システムの
利用プログラムの大きさ、個数共に増大が著しい。
このような傾向に対応して、公知の仮想記憶方
:式においては、複数の空間からなる、いわゆる多重仮
想記憶方式によって、プログラミング上の記憶領域を拡
大する方式が広く用いられている。
:式においては、複数の空間からなる、いわゆる多重仮
想記憶方式によって、プログラミング上の記憶領域を拡
大する方式が広く用いられている。
このように、仮想記憶領域が拡大されたシステムを、効
率良く稼動させるためには、実際の記憶装置の記憶領域
、即ち実記憶領域も、それに対応して適当に拡大しなけ
ればならない。
率良く稼動させるためには、実際の記憶装置の記憶領域
、即ち実記憶領域も、それに対応して適当に拡大しなけ
ればならない。
〔従来の技術と発明が解決しようとする問題点〕第2図
は、仮想記憶の一方式を説明する図である。図において
各ボックスは、それぞれ1つの仮想記憶空間1を示し、
各記憶空間は、例えば空間識別子O11〜nで識別され
る。
は、仮想記憶の一方式を説明する図である。図において
各ボックスは、それぞれ1つの仮想記憶空間1を示し、
各記憶空間は、例えば空間識別子O11〜nで識別され
る。
各記憶空間1は、例えば16 MB(メガバイト)の容
量を有し、従って、各空間内の相対アドレスは24ビツ
ト構成のアドレスによって指定することができる。
量を有し、従って、各空間内の相対アドレスは24ビツ
ト構成のアドレスによって指定することができる。
各記憶空間は、各ジョブに割り当てられるが、例えば図
示のように共用域2.3を有し、共用域2.3はシステ
ムの制御プログラム、制御プロツク、及びシステムで共
用されるプログラム等を記憶する領域として、全記憶空
間に共通の同一の内容を保持する領域とする。ジョブ域
4は各記憶空間固有の領域である。。
示のように共用域2.3を有し、共用域2.3はシステ
ムの制御プログラム、制御プロツク、及びシステムで共
用されるプログラム等を記憶する領域として、全記憶空
間に共通の同一の内容を保持する領域とする。ジョブ域
4は各記憶空間固有の領域である。。
第3図は、アドレス変換機構の一構成例を示すブロック
図である。
図である。
ある記憶空間を割り当てられているジョブに実行制御を
渡すとき、システム制御プログラムは、空間レジスタ1
0にその記憶空間の°空間識別子を設定する。又、制御
レジスタ11には、システムで定めるセグメントテーブ
ル領域の先頭実アドレスが設定されている。
渡すとき、システム制御プログラムは、空間レジスタ1
0にその記憶空間の°空間識別子を設定する。又、制御
レジスタ11には、システムで定めるセグメントテーブ
ル領域の先頭実アドレスが設定されている。
実行されるプログラムによって発生され、レジスタ12
に設定される仮想アドレスは、記憶空間内の相対アドレ
スを表示する、例えば24ビツトのアドレスである。
に設定される仮想アドレスは、記憶空間内の相対アドレ
スを表示する、例えば24ビツトのアドレスである。
仮想アドレスの構成は、例えば上位の8ビツト(ビット
0〜7)がセグメント番号、次の5ビツト(ビット8〜
12)がページ番号であって、この13ビツト (ビッ
トθ〜12)が2KB(キロバイト)のページのページ
アドレスを構成し、残りの11とット (ビット13〜
23)がページ内変位を指定するものとする。
0〜7)がセグメント番号、次の5ビツト(ビット8〜
12)がページ番号であって、この13ビツト (ビッ
トθ〜12)が2KB(キロバイト)のページのページ
アドレスを構成し、残りの11とット (ビット13〜
23)がページ内変位を指定するものとする。
記憶装置にアクセスする場合には、仮想アドレスを実ア
ドレスに変換して、記憶装置のアドレスを指定する。こ
のためにシステム制御プログラムは、公知のように所要
のセグメントテーブル13及びページテーブル14を記
憶装置上に構成する。
ドレスに変換して、記憶装置のアドレスを指定する。こ
のためにシステム制御プログラムは、公知のように所要
のセグメントテーブル13及びページテーブル14を記
憶装置上に構成する。
本例において、セグメントテーブル13は、制御レジス
タ11の先頭実アドレスで指定される記憶領域に保持さ
れ、各記憶空間のセグメントテーブルは、例えば該先頭
アドレスに、空間識別子×1024の変位を加えたアド
レスを先頭とする、1024バイトの領域とし、この場
合各空間のセグメントテーブルには、各セグメントに対
する各4バイトの項14が256項設けられる。
タ11の先頭実アドレスで指定される記憶領域に保持さ
れ、各記憶空間のセグメントテーブルは、例えば該先頭
アドレスに、空間識別子×1024の変位を加えたアド
レスを先頭とする、1024バイトの領域とし、この場
合各空間のセグメントテーブルには、各セグメントに対
する各4バイトの項14が256項設けられる。
セグメントテーブルの各項14にはページテーブル先頭
アドレスと制御情報の欄があり、該制御情報には、咳項
の有効性を表示する■ビットと、前記の共用域2.3に
属するセグメントであることを表示するCビットを含む
。
アドレスと制御情報の欄があり、該制御情報には、咳項
の有効性を表示する■ビットと、前記の共用域2.3に
属するセグメントであることを表示するCビットを含む
。
該制御情報中のIビットが1の場合には、その項14の
ページテーブル先頭アドレスはページテーブルI5の先
頭を指す。こ\で、一般にセグメントテーブルの各項は
、それぞれ異なるページテーブルを指示するが、Cビッ
トが1の場合には、各セグメントテーブルの対応する各
項が、すべて同一、のページテーブルを指している。
ページテーブル先頭アドレスはページテーブルI5の先
頭を指す。こ\で、一般にセグメントテーブルの各項は
、それぞれ異なるページテーブルを指示するが、Cビッ
トが1の場合には、各セグメントテーブルの対応する各
項が、すべて同一、のページテーブルを指している。
各ページテーブル15は、公知のように各項が仮想記憶
空間の各ページに対応し、該ページのコピーが置かれて
いる記憶装置の実アドレスを示すテーブルであり、本例
において、最大32ページの2KBページの実ページア
ドレスを指定する構成を有する。
空間の各ページに対応し、該ページのコピーが置かれて
いる記憶装置の実アドレスを示すテーブルであり、本例
において、最大32ページの2KBページの実ページア
ドレスを指定する構成を有する。
アドレス変換は、空間レジスタ10の空間識別子によっ
て、該空間のセグメントテーブルの先頭アドレスを決定
し、そのセグメントテーブル内の1項14をレジスタ1
2のビット0〜7のセグメント番号によって灰定し、項
14によって指定されるページテーブル15内の1項を
、レジスタ12のページ番号によって決定することによ
って、レジスタ12のビット0〜12のページアドレス
が、ページテーブルの該項に保持される実ページアドレ
スに変換される。
て、該空間のセグメントテーブルの先頭アドレスを決定
し、そのセグメントテーブル内の1項14をレジスタ1
2のビット0〜7のセグメント番号によって灰定し、項
14によって指定されるページテーブル15内の1項を
、レジスタ12のページ番号によって決定することによ
って、レジスタ12のビット0〜12のページアドレス
が、ページテーブルの該項に保持される実ページアドレ
スに変換される。
実ページアドレスをレジスタ16のビット0〜12にセ
ットし、ビット13〜23にレジスタ12のページ内変
位をセットすることにより、レジスタ16に実アドレス
を得る。
ットし、ビット13〜23にレジスタ12のページ内変
位をセットすることにより、レジスタ16に実アドレス
を得る。
公知のように、このようにして得られた実アドレスは、
TLB等と呼ばれる、いわゆるアドレス変換バッファ1
7に記憶して、レジスタ12のページアドレスから直接
索引することにより、アドレス変換を高速化することが
行われる。
TLB等と呼ばれる、いわゆるアドレス変換バッファ1
7に記憶して、レジスタ12のページアドレスから直接
索引することにより、アドレス変換を高速化することが
行われる。
例えば、アドレス変換バッファ17の各項には、変換出
力された実ページアドレスと、そのときの空間レジスタ
lOにある空間識別子が記憶され、アドレス変換におい
て、ページアドレスによって読み出した項の空間識別子
が、その時の空間レジスタ10の空間識別子と一致すれ
ば、そこに保持されている実ページアドレスを変換結果
として使用する。
力された実ページアドレスと、そのときの空間レジスタ
lOにある空間識別子が記憶され、アドレス変換におい
て、ページアドレスによって読み出した項の空間識別子
が、その時の空間レジスタ10の空間識別子と一致すれ
ば、そこに保持されている実ページアドレスを変換結果
として使用する。
なお、アドレス変換バッファ17の各項には、前記と同
一の意味のCビットを有し、アドレス変換の際、Cビッ
トが1であれば、空間識別子の不一致に関わらず、その
実ページアドレスを有効とする。
一の意味のCビットを有し、アドレス変換の際、Cビッ
トが1であれば、空間識別子の不一致に関わらず、その
実ページアドレスを有効とする。
このようなアドレス変換バッファ17によって実アドレ
スが決定した場合は、前記説明のセグメントテーブル及
びページテーブルへのアクセスは実行されずに、アドレ
ス変換バッファ17から得られた実ページアドレスがレ
ジスタ16にセントされ、以後は前記と同様に制御され
る。
スが決定した場合は、前記説明のセグメントテーブル及
びページテーブルへのアクセスは実行されずに、アドレ
ス変換バッファ17から得られた実ページアドレスがレ
ジスタ16にセントされ、以後は前記と同様に制御され
る。
以上の構成により、複数の記憶空間を有する構成に拡張
された仮想アドレスの変換が行われるが、もしこれに対
応して記憶装置を16MBより大きくし、従って24ビ
ツトを越えるビット数の実アドレスが必要になる構成を
実現しようとする場合には、セグメントテーブル13、
ページテーブル15及びアドレス変換バッファ17等に
保持する各実アドレスのビット幅がすべて拡張されるこ
とになって、一般にそれらの構造の変更を要するので、
変更の影響範囲が大きくなり、実記憶領域を拡張する場
合の障害となっていた。
された仮想アドレスの変換が行われるが、もしこれに対
応して記憶装置を16MBより大きくし、従って24ビ
ツトを越えるビット数の実アドレスが必要になる構成を
実現しようとする場合には、セグメントテーブル13、
ページテーブル15及びアドレス変換バッファ17等に
保持する各実アドレスのビット幅がすべて拡張されるこ
とになって、一般にそれらの構造の変更を要するので、
変更の影響範囲が大きくなり、実記憶領域を拡張する場
合の障害となっていた。
第1図は、本発明の構成を示すブロック図である。
図において、20は拡張アドレスレジスタ、21は拡張
アドレス発生部である。
アドレス発生部である。
システム制御プログラムの、記憶装置の領域割当機能は
、記憶装置の領域を先頭アドレスから順次、16MBの
領域に分割し、各仮想記憶空間に対しては6、その空間
識別子によって定まる特定の16MB領域のみを割り当
てるものとする。
、記憶装置の領域を先頭アドレスから順次、16MBの
領域に分割し、各仮想記憶空間に対しては6、その空間
識別子によって定まる特定の16MB領域のみを割り当
てるものとする。
このようにして、各ページテーブル及びアドレス変換バ
ッファの各項には、実ページアドレスとして、上記16
M B 領域内の相対アドレスを記憶しておく。
ッファの各項には、実ページアドレスとして、上記16
M B 領域内の相対アドレスを記憶しておく。
アドレス変換は従来と同様にして実行され、レジスタ1
6に実ページアドレス以下の実アドレスを得る。
6に実ページアドレス以下の実アドレスを得る。
同時に、拡張アドレス発生部21は、空間レジスタ10
の空間識別子から、−意に定まる所定の拡張アドレスを
発生して、拡張アドレスレジスタ20にセットし、図示
のように、レジスタ16の上位に、拡張アドレスレジス
タ20を連結したものを、拡張した実アドレスとして、
記憶装置アクセスに使用する。
の空間識別子から、−意に定まる所定の拡張アドレスを
発生して、拡張アドレスレジスタ20にセットし、図示
のように、レジスタ16の上位に、拡張アドレスレジス
タ20を連結したものを、拡張した実アドレスとして、
記憶装置アクセスに使用する。
拡張アドレス発生部21は、セグメントテーブル
1又はアドレス変換テーブルのCビットによって、
アクセス先が共用域であることを検出した場合には、空
間レジスタ10の内容に関わらず、一定のアドレス値(
例えば0)を発生して、拡張レジスタ20にセットする
。
1又はアドレス変換テーブルのCビットによって、
アクセス先が共用域であることを検出した場合には、空
間レジスタ10の内容に関わらず、一定のアドレス値(
例えば0)を発生して、拡張レジスタ20にセットする
。
以上により、実記憶領域の拡張が容易に実現できる。
第1図において、セグメントテーブル13、ページテー
ブル14、アドレス変換バッファ17等は、前記の従来
例と同様の構成で、同様の制御によってアドレス変換が
実行される。但し、セグメントテーブル13、ページテ
ーブル15等は、例えば記憶装置の先頭の16 M B
9X域に設定するものとし、従ってアドレス変換処理
過程における記憶装置へのアクセスにおいては、拡張ア
ドレスレジスタを0としてアクセスする。
ブル14、アドレス変換バッファ17等は、前記の従来
例と同様の構成で、同様の制御によってアドレス変換が
実行される。但し、セグメントテーブル13、ページテ
ーブル15等は、例えば記憶装置の先頭の16 M B
9X域に設定するものとし、従ってアドレス変換処理
過程における記憶装置へのアクセスにおいては、拡張ア
ドレスレジスタを0としてアクセスする。
システム制御プログラムの、記憶装置の領域割当機能は
、記憶装置の領域を先頭アドレスから順次、16MBご
との領域に分割して管理し、各仮想記憶空間に対しては
、その空間識別子によって定まる特定の16MBe1域
のみを割り当てる。
、記憶装置の領域を先頭アドレスから順次、16MBご
との領域に分割して管理し、各仮想記憶空間に対しては
、その空間識別子によって定まる特定の16MBe1域
のみを割り当てる。
例えば空間識別子の下位ビットを、この16MB11域
の指真に使用するものとし、例えば空間識別子を8ビツ
トとして、その下位4ビツトをこれに当てる。このビッ
ト数はシステムごとに設定できるようにしてもよい。
の指真に使用するものとし、例えば空間識別子を8ビツ
トとして、その下位4ビツトをこれに当てる。このビッ
ト数はシステムごとに設定できるようにしてもよい。
システム制御プログラムは、このようにして設定される
割当領域の制限を考慮して、記憶装置の全領域ができる
だけ一様に使用されるように、仮想記憶空間の空間識別
子の番号を割り当てる。
割当領域の制限を考慮して、記憶装置の全領域ができる
だけ一様に使用されるように、仮想記憶空間の空間識別
子の番号を割り当てる。
このようにして、16MB51域のアドレスは、空間識
別子から一意に決定するようにするので、各 。
別子から一意に決定するようにするので、各 。
ページテーブル及びアドレス変換バッファの各項には、
実ページアドレスとして、上記16MB?J域内の相対
アドレスのみを記憶しておけばよく、従って従来と同じ
ビット数で表すことができる。
実ページアドレスとして、上記16MB?J域内の相対
アドレスのみを記憶しておけばよく、従って従来と同じ
ビット数で表すことができる。
アドレス変換は従来と同様にして実行され、レジスタ1
6に実ページアドレス以下の実アドレスを得るが、同時
に拡張アドレス発生部21は、空間レジスタ10の空間
識別子から、例えばその下位4ビツトを抽出して構成し
た拡張アドレスを、拡張アドレスレジスフ20にセット
する。
6に実ページアドレス以下の実アドレスを得るが、同時
に拡張アドレス発生部21は、空間レジスタ10の空間
識別子から、例えばその下位4ビツトを抽出して構成し
た拡張アドレスを、拡張アドレスレジスフ20にセット
する。
図示のように、レジスタ16の上位に、拡張アドレスレ
ジスタ20を連結したものを、拡張した実アドレスとし
て、記憶装置アクセスに使用する。
ジスタ20を連結したものを、拡張した実アドレスとし
て、記憶装置アクセスに使用する。
拡張アドレス発生部21は、セグメントテーブル13又
はアドレス変換テーブル17のCビットの値をラッチ2
2に保持し、・拡張アドレスレジスタ20の入力ゲート
を制御して、その値が1の場合(共用域を示す)には、
空間レジスタ10の内容に関わらず、一定のアドレス値
(例えば0)を拡張レジスタ20にセットする。
はアドレス変換テーブル17のCビットの値をラッチ2
2に保持し、・拡張アドレスレジスタ20の入力ゲート
を制御して、その値が1の場合(共用域を示す)には、
空間レジスタ10の内容に関わらず、一定のアドレス値
(例えば0)を拡張レジスタ20にセットする。
以上の構成により、アドレス変換機構を大幅に変更する
必要なしに、実記憶領域の拡張に対処することができる
。
必要なしに、実記憶領域の拡張に対処することができる
。
以上の説明から明らかなように、本発明によれば、仮想
記憶方式の計算機システムにおいて、実記憶領域の拡張
が、比較的容易に実施できるので、計算機システムの利
用分野を拡大するという著しい工業的効果がある。
記憶方式の計算機システムにおいて、実記憶領域の拡張
が、比較的容易に実施できるので、計算機システムの利
用分野を拡大するという著しい工業的効果がある。
第1図は本発明の実施例構成ブロック図、第2図は仮想
記憶の一方式例説明図、 第3図は従来のアドレス変換機構の一構成例ブロック図
である。 図において、 lは記憶空間、 2.3は共用域、4はジョブ域
、 10は空間レジスタ、11は制御にジスタ、
12.16はレジスタ、13はセグメントテーブル
、 15はページテーブル、 17はアドレス変換バッファ、 20は拡張アドレスレジスタ、 21は拡張アドレス発生部
記憶の一方式例説明図、 第3図は従来のアドレス変換機構の一構成例ブロック図
である。 図において、 lは記憶空間、 2.3は共用域、4はジョブ域
、 10は空間レジスタ、11は制御にジスタ、
12.16はレジスタ、13はセグメントテーブル
、 15はページテーブル、 17はアドレス変換バッファ、 20は拡張アドレスレジスタ、 21は拡張アドレス発生部
Claims (1)
- 【特許請求の範囲】 所定の容量を有する複数の記憶空間に分割され、該記憶
空間の空間識別子と、該記憶空間内の相対アドレスとに
よって構成された仮想アドレスを、該所定容量の整数倍
の記憶領域を有し、該仮想アドレスによって指定される
データを保持する記憶装置の実アドレスに変換するに際
し、 該相対アドレス(12)を、該実アドレスの一部を構成
する部分アドレス(16)に変換するアドレス変換手段
(13、15、17)、 及び、該部分アドレス(16)に、該空間識別子の所定
の関数として定まるアドレス(20)を連結して、部分
アドレスを拡張する手段(21)を有することを特徴と
する仮想記憶制御方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60146376A JPS628244A (ja) | 1985-07-03 | 1985-07-03 | 仮想記憶制御方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60146376A JPS628244A (ja) | 1985-07-03 | 1985-07-03 | 仮想記憶制御方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS628244A true JPS628244A (ja) | 1987-01-16 |
Family
ID=15406313
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60146376A Pending JPS628244A (ja) | 1985-07-03 | 1985-07-03 | 仮想記憶制御方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS628244A (ja) |
-
1985
- 1985-07-03 JP JP60146376A patent/JPS628244A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4218743A (en) | Address translation apparatus | |
| US4279014A (en) | Arrangement for converting virtual addresses into physical addresses in a data processing system | |
| GB2165975A (en) | Dynamically allocated local/global storage system | |
| JPH04320553A (ja) | アドレス変換機構 | |
| KR960018907A (ko) | 가상 기억장치 변환을 효율적으로 공용하기 위한 장치 및 방법 | |
| JPS6376034A (ja) | 多重アドレス空間制御方式 | |
| US5749093A (en) | Enhanced information processing system using cache memory indication during DMA accessing | |
| US5107417A (en) | Address translating method for translating virtual address to real address with specified address register to allow bypass of translation steps | |
| JPS62164148A (ja) | デ−タ処理システム | |
| JPH07281948A (ja) | メモリ制御装置 | |
| JP2000276405A (ja) | アドレス変換装置及びこのアドレス変換装置を有するコンピュータシステム | |
| JPS628244A (ja) | 仮想記憶制御方式 | |
| JPS5844263B2 (ja) | 記憶制御回路 | |
| JPS5953634B2 (ja) | 計算機システム | |
| EP0533190A2 (en) | Data processing system with address translation function for different page sizes | |
| JP2612173B2 (ja) | 仮想計算機 | |
| JPS5821352B2 (ja) | バツフア・メモリ制御方式 | |
| JP2635310B2 (ja) | アドレス変換装置 | |
| KR860000792B1 (ko) | 가상 기억 제어장치 | |
| JPH0517583B2 (ja) | ||
| JP2000357123A (ja) | メモリアクセス制御システム | |
| JPH01140342A (ja) | 仮想計算機システム | |
| JPH01287760A (ja) | 仮想記憶制御装置 | |
| JPS646492B2 (ja) | ||
| JPS59201288A (ja) | アドレス変換方式 |