JPS62100851A - 仮想記憶装置における領域管理方法 - Google Patents
仮想記憶装置における領域管理方法Info
- Publication number
- JPS62100851A JPS62100851A JP60239360A JP23936085A JPS62100851A JP S62100851 A JPS62100851 A JP S62100851A JP 60239360 A JP60239360 A JP 60239360A JP 23936085 A JP23936085 A JP 23936085A JP S62100851 A JPS62100851 A JP S62100851A
- Authority
- JP
- Japan
- Prior art keywords
- area
- boundary
- page
- segment
- real
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/109—Address translation for multiple virtual address spaces, e.g. segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/656—Address space sharing
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
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は、仮想記憶装置に関し、特に、複数の仮想記憶
空間におけるシステム共通領域とジョブ個有領域の管理
に関する。
空間におけるシステム共通領域とジョブ個有領域の管理
に関する。
仮想記憶装置は、仮想記憶空間上の仮想アドレスを実記
憶装置上の物理的位置に対応する実アドレスに変換する
アドレス変換機構によって実現される。このアドレス変
換機構はアドレス変換テーブルを備え、このアドレス変
換テーブルは仮想アドレスに基づいて索引され、索出さ
れたエントリが、その索出の基礎となった仮想アドレス
に対応する実アドレスの基準点を示す。
憶装置上の物理的位置に対応する実アドレスに変換する
アドレス変換機構によって実現される。このアドレス変
換機構はアドレス変換テーブルを備え、このアドレス変
換テーブルは仮想アドレスに基づいて索引され、索出さ
れたエントリが、その索出の基礎となった仮想アドレス
に対応する実アドレスの基準点を示す。
現在広く採用されている2レベルのページング方式によ
る仮想記憶装置において、仮想記憶空間はセグメントと
呼ばれる一定サイズの領域に分割され、各セグメントは
更にページと呼ばれる一定す・イズの領域に分割される
。これに合わせて、実記憶空間もページに分割され、仮
想記憶空間への実記憶空間の対応付け、すなわち割当て
は、ページを単位として行なわれる。従来の代表的な値
として、1ページは4にバイトの大きさであり、1セグ
メントは64にバイト(16ページ)の大きさである。
る仮想記憶装置において、仮想記憶空間はセグメントと
呼ばれる一定サイズの領域に分割され、各セグメントは
更にページと呼ばれる一定す・イズの領域に分割される
。これに合わせて、実記憶空間もページに分割され、仮
想記憶空間への実記憶空間の対応付け、すなわち割当て
は、ページを単位として行なわれる。従来の代表的な値
として、1ページは4にバイトの大きさであり、1セグ
メントは64にバイト(16ページ)の大きさである。
仮想記憶空間の前記のような分割に呼応して、アドレス
変換テーブルは、セグメントテーブルとページテーブル
からなる。仮想アドレス中のセグメント番号はセグメン
トテーブルの一つのエントリを指定し、指定されたエン
トリは対応するセグメントのだめのページテーブルを指
定する。仮想アドレス中のページ番号は前記のようにし
て指定されたページテーブルの一つのエントリを指定し
、指定されたエントリは対応する仮想ページに割当てら
れた実ページのアドレスを与える。
変換テーブルは、セグメントテーブルとページテーブル
からなる。仮想アドレス中のセグメント番号はセグメン
トテーブルの一つのエントリを指定し、指定されたエン
トリは対応するセグメントのだめのページテーブルを指
定する。仮想アドレス中のページ番号は前記のようにし
て指定されたページテーブルの一つのエントリを指定し
、指定されたエントリは対応する仮想ページに割当てら
れた実ページのアドレスを与える。
一つの実記憶装置上に複数の仮想記憶空間を形成し、各
ジョブに一つの仮想記憶空間を割当てることができる。
ジョブに一つの仮想記憶空間を割当てることができる。
その場合には、各仮想記憶空間ごとにセグメントテーブ
ルが用意され、そして、各セグメントテーブルは原則と
して独自のページテーブルを持つ。ところで、前記のよ
うな場合に、仮想記憶空間は、ジョブ個有領域とシステ
ム共通したがって、この領域への実記憶領域の割当ては
自由である。他方、システム共通領域は、複数の仮想記
憶空間に共通な情報のためのもの(例えば、共通データ
及びO8等共用プログラムの収容、ジョブ間通信、その
他のための領域)であり、しだがって、諸仮想記憶空間
のこの領域の同じ仮想アドレスは同一の実アドレスに変
換される必要がある。
ルが用意され、そして、各セグメントテーブルは原則と
して独自のページテーブルを持つ。ところで、前記のよ
うな場合に、仮想記憶空間は、ジョブ個有領域とシステ
ム共通したがって、この領域への実記憶領域の割当ては
自由である。他方、システム共通領域は、複数の仮想記
憶空間に共通な情報のためのもの(例えば、共通データ
及びO8等共用プログラムの収容、ジョブ間通信、その
他のための領域)であり、しだがって、諸仮想記憶空間
のこの領域の同じ仮想アドレスは同一の実アドレスに変
換される必要がある。
従来、システム共通領域とジョブ個有領域の間の境界は
、セグメント境界と一致していた。その原因は、システ
ム共通領域については同じページテーブルを指定するよ
うに、全仮想記憶空間のセグメントテーブルが設定され
ることにある。このようなページテーブルの共用は、シ
ステム共通領域内の同一仮想アドレスは同−実アドレス
に変換されねばならないという、前述の要請に起因する
。
、セグメント境界と一致していた。その原因は、システ
ム共通領域については同じページテーブルを指定するよ
うに、全仮想記憶空間のセグメントテーブルが設定され
ることにある。このようなページテーブルの共用は、シ
ステム共通領域内の同一仮想アドレスは同−実アドレス
に変換されねばならないという、前述の要請に起因する
。
この要請は、システム共通領域のためのページテーブル
の内容が、全仮想記憶空間について常に同一でなければ
ならないことを意味する。前記のようなページテーブル
の共用は、前記の要請に応じるために採用されたもので
ある。このような機構の下では、一つのセグメントの一
部をシステム共通領域として使用し、他の部分をジョブ
個有領域として使用するようなことは、困難である。そ
れは、システム共通領域を含むセグメント内のページに
対応するどの実ページも、共用ページテーブルを介して
、すべての仮想記憶空間、すなわちすべてのジョブによ
り共用されるからである。その結果、境界にあるシステ
ム共通領域のセグメント内にシステム共通領域として使
われないページがあっても、それをジョブ個有領域とし
て使うことはできず、遊休領域が生じることがある。
の内容が、全仮想記憶空間について常に同一でなければ
ならないことを意味する。前記のようなページテーブル
の共用は、前記の要請に応じるために採用されたもので
ある。このような機構の下では、一つのセグメントの一
部をシステム共通領域として使用し、他の部分をジョブ
個有領域として使用するようなことは、困難である。そ
れは、システム共通領域を含むセグメント内のページに
対応するどの実ページも、共用ページテーブルを介して
、すべての仮想記憶空間、すなわちすべてのジョブによ
り共用されるからである。その結果、境界にあるシステ
ム共通領域のセグメント内にシステム共通領域として使
われないページがあっても、それをジョブ個有領域とし
て使うことはできず、遊休領域が生じることがある。
第2図は、前述の、共用ページテーブルによるシステム
共通領域に対するアドレス変換過程を、模式的に示す。
共通領域に対するアドレス変換過程を、模式的に示す。
3個の仮想記憶空間があるとし、各仮想記憶空間のセグ
メントテーブル5GTI−1゜5GT2−i、8GT3
−1のエントリS装置−1,5GTE2−1,5GTE
3−1は、システム共通領域を含むセグメントに対応し
、同じページテーブルPGT−1を指す。ページテーブ
ルPGT−1の各エントリは、対応する仮想ページが割
当てられているか否か、及びその仮想ページに対する実
ページの割当てかあるか否かを表示し、実ページの割当
てがあるときけ、その実ページRPG−1を指す。これ
らの状況は通常動的に変化し、それに応じて、ページテ
ーブルPGT−1の内容は更新される。図示のPGT−
1中、斜線を施した部分はシステム共通領域として実際
に使用されているページに対応する部分であり、その余
の部分は遊休ページに対応する部分である。
メントテーブル5GTI−1゜5GT2−i、8GT3
−1のエントリS装置−1,5GTE2−1,5GTE
3−1は、システム共通領域を含むセグメントに対応し
、同じページテーブルPGT−1を指す。ページテーブ
ルPGT−1の各エントリは、対応する仮想ページが割
当てられているか否か、及びその仮想ページに対する実
ページの割当てかあるか否かを表示し、実ページの割当
てがあるときけ、その実ページRPG−1を指す。これ
らの状況は通常動的に変化し、それに応じて、ページテ
ーブルPGT−1の内容は更新される。図示のPGT−
1中、斜線を施した部分はシステム共通領域として実際
に使用されているページに対応する部分であり、その余
の部分は遊休ページに対応する部分である。
従来の仮想記憶装置は、セグメントサイズが比較的小さ
いため、前記のような遊休ページの数も限られており、
従って、さしたる問題はなかった。
いため、前記のような遊休ページの数も限られており、
従って、さしたる問題はなかった。
しかし、仮想記憶空間が拡がり、それにつれてセグメン
トサイズが大きくなると、遊休ページの数は時として非
常に多いものとなる。例えば、セグメントサイズが64
にバイト(16ページ)であれば、遊休ページはたかだ
か15個である。しかし、1Mパイ) (256ページ
)の大きさのセグメントを2048個持つ2Gバイトの
仮想記憶空間においては、遊休ページは最悪255個に
達する。
トサイズが大きくなると、遊休ページの数は時として非
常に多いものとなる。例えば、セグメントサイズが64
にバイト(16ページ)であれば、遊休ページはたかだ
か15個である。しかし、1Mパイ) (256ページ
)の大きさのセグメントを2048個持つ2Gバイトの
仮想記憶空間においては、遊休ページは最悪255個に
達する。
これはもはや無視し難い無駄であり、特に、従来ヨブ個
有領域が甚しく圧迫されることになる。
有領域が甚しく圧迫されることになる。
本発明の目的は、仮想記憶空間上の−っのセグメントを
、システム共通領域とジョブ個有領域に自由に分けて使
用することを可能にし、それによって、仮想記憶空間の
利用効率を改善することにある。
、システム共通領域とジョブ個有領域に自由に分けて使
用することを可能にし、それによって、仮想記憶空間の
利用効率を改善することにある。
本発明は、システム共通領域とジョブ個有領域の間の領
域境界を1セグメント境界とは無関係に、任意のページ
境界に設定し、このように設定された領域境界を含むセ
グメント(以下境界セグメントという)については、各
仮想記憶空間ごとにそれぞれのページテーブルを用意す
る。コレニより、境界セグメント内でシステム共通領域
として使用されない仮想ページは、ジョブ個有領域とし
て、それぞれのジョブに自由に使用させることができる
。
域境界を1セグメント境界とは無関係に、任意のページ
境界に設定し、このように設定された領域境界を含むセ
グメント(以下境界セグメントという)については、各
仮想記憶空間ごとにそれぞれのページテーブルを用意す
る。コレニより、境界セグメント内でシステム共通領域
として使用されない仮想ページは、ジョブ個有領域とし
て、それぞれのジョブに自由に使用させることができる
。
境界セグメント内のシステム共通領域に属する仮想ペー
ジには、実ページを固定的に割当てるのが有利である。
ジには、実ページを固定的に割当てるのが有利である。
これにより、システム共通領域に対する複数のページテ
ーブルを一斉洗更新する必要がなくなる。しかし、これ
らの仮想ページも。
ーブルを一斉洗更新する必要がなくなる。しかし、これ
らの仮想ページも。
仮想記憶領域の動的な割当ての対象にすることはできる
。
。
第1図は、本発明により境界セグメントに対して用意さ
れたアドレス変換テーブルと、それを用いたアドレス変
換の過程を模式的に示す。3個の仮想記憶空間があるも
のとし、各仮想記憶空間のためのセグメントテーブル5
GT1−2,5GT2−2,5GT3−2の境界セグメ
ントに対応するエントリS装置−2,5GTE2−2,
5GTE3−2に対して、それぞれ別個のページテーブ
ルPGTI−2,PGT2−2.PGT3−2が用意さ
れる。換言すれば、前記の各エントリは、これら別個の
ページテーブルを指す。これらのページテーブルにおい
て、斜線部分PGTC1−2゜PGTC2−2,PGT
C3−2はシステム共通領域に対応し、これらの部分に
おける同じ位置にあるエントリは同一の実ページ、例え
ばRPGC−2を指す。したがって、これらのページテ
ーブルの部分の内容は互に同一である。各ページテーブ
ルのその余の部分PGTJI−2,PGTJ2−2゜P
GTJ3−2は、各仮想記憶空間ごとに異なる内容を持
つことができ、しまたがって、それぞれ異なる実ページ
、例えばRP()J 1 2 、 RPGJ 2 2
。
れたアドレス変換テーブルと、それを用いたアドレス変
換の過程を模式的に示す。3個の仮想記憶空間があるも
のとし、各仮想記憶空間のためのセグメントテーブル5
GT1−2,5GT2−2,5GT3−2の境界セグメ
ントに対応するエントリS装置−2,5GTE2−2,
5GTE3−2に対して、それぞれ別個のページテーブ
ルPGTI−2,PGT2−2.PGT3−2が用意さ
れる。換言すれば、前記の各エントリは、これら別個の
ページテーブルを指す。これらのページテーブルにおい
て、斜線部分PGTC1−2゜PGTC2−2,PGT
C3−2はシステム共通領域に対応し、これらの部分に
おける同じ位置にあるエントリは同一の実ページ、例え
ばRPGC−2を指す。したがって、これらのページテ
ーブルの部分の内容は互に同一である。各ページテーブ
ルのその余の部分PGTJI−2,PGTJ2−2゜P
GTJ3−2は、各仮想記憶空間ごとに異なる内容を持
つことができ、しまたがって、それぞれ異なる実ページ
、例えばRP()J 1 2 、 RPGJ 2 2
。
RPGJ3−2を指すことができる。すなわち、これら
の部分はジョブ個有領域として使用できる。
の部分はジョブ個有領域として使用できる。
システム共通領域とジョブ個有領域の間の境界BCJI
−2,BCJ2−2.BCJ3−2は、セグメント境界
とは無関係に、任意のページ境界に設定される。
−2,BCJ2−2.BCJ3−2は、セグメント境界
とは無関係に、任意のページ境界に設定される。
境界セグメント内のシステム共通領域において、仮想ペ
ージへの実ページの割当てが変更されれば、すべてのペ
ージテーブルPGTI−2,P()T2−2.PGT3
−3の対応するエントリを一斉に更新しなければならな
い。これは少なからぬオーバヘッドを生じる。これを避
けるために、境界セグメント内のシステム共通領域につ
いては、全仮想ページに実ページを固定的に割当てる。
ージへの実ページの割当てが変更されれば、すべてのペ
ージテーブルPGTI−2,P()T2−2.PGT3
−3の対応するエントリを一斉に更新しなければならな
い。これは少なからぬオーバヘッドを生じる。これを避
けるために、境界セグメント内のシステム共通領域につ
いては、全仮想ページに実ページを固定的に割当てる。
すなわち、この領域は実ページの動的割当ての対象から
除外する。
除外する。
第3図は、境界セグメントと、それに対応するページテ
ーブルと、システム共通領域に割当てられた実ページと
の関係を示す。仮想記憶空間VSP−3の境界セグメン
トBSG−3のためのページテーブルPGT−3におい
て、システム共通領域ノヘージVPGC1−3〜VPG
CL−3に対応するエントリPTCI−3〜PTCL−
3は、それぞれ実ページR,PGC1−3〜RPGCL
−3を指し、これらのエントリの実ページ割当てビット
P V M −3はKO”にセットされて、実ページが
割当てられていることを示している。これ以外の領域ノ
ヘージVPGJI−3〜VPGJL−3Vi、ジョブ個
有領域として自由に使うことができ、それらに対応する
エントリPTJI−3〜PTJL−3は、適当に割当て
られた他の実ページを指すか、又は実ページの割当てか
ないかである、実ページの割当てがないページのエント
リのPVM−3ビツトは1”にセットされる。PGB−
3はシステム共通領域とジョブ個有領域の境界であり、
5GBI−3と5GB2−3はセグメント境界である。
ーブルと、システム共通領域に割当てられた実ページと
の関係を示す。仮想記憶空間VSP−3の境界セグメン
トBSG−3のためのページテーブルPGT−3におい
て、システム共通領域ノヘージVPGC1−3〜VPG
CL−3に対応するエントリPTCI−3〜PTCL−
3は、それぞれ実ページR,PGC1−3〜RPGCL
−3を指し、これらのエントリの実ページ割当てビット
P V M −3はKO”にセットされて、実ページが
割当てられていることを示している。これ以外の領域ノ
ヘージVPGJI−3〜VPGJL−3Vi、ジョブ個
有領域として自由に使うことができ、それらに対応する
エントリPTJI−3〜PTJL−3は、適当に割当て
られた他の実ページを指すか、又は実ページの割当てか
ないかである、実ページの割当てがないページのエント
リのPVM−3ビツトは1”にセットされる。PGB−
3はシステム共通領域とジョブ個有領域の境界であり、
5GBI−3と5GB2−3はセグメント境界である。
境界セグメント内のシステム共通領域に割当てられた実
ペ−ジRPGC1−3〜RPGCL−3には、実記憶保
護キーRPK1−3〜RPKL−3が備えられる。これ
らの実記憶保護キーは、これらの実ページへのアクセス
要求を発したプログラムに与えられたキーと比較され、
一致しないプログラムによる読出し及び書込みを阻止し
、それにより、システム共通領域の内容がプログラムの
誤りゃ悪意に↓り破壊又は悪用されるのを防止する。
ペ−ジRPGC1−3〜RPGCL−3には、実記憶保
護キーRPK1−3〜RPKL−3が備えられる。これ
らの実記憶保護キーは、これらの実ページへのアクセス
要求を発したプログラムに与えられたキーと比較され、
一致しないプログラムによる読出し及び書込みを阻止し
、それにより、システム共通領域の内容がプログラムの
誤りゃ悪意に↓り破壊又は悪用されるのを防止する。
−本実施例では、境界セグメント内のシステム共通領域
は、実ページの割当てについては前述のように固定され
るが、ジョブへの仮想記憶領域の動的な割当てと解放の
対象にはなる。すなわち、システム共通領域の割当て要
求に対して境界セグメント内のシステム共通領域を割当
てて、必要がなくなった時には割当を解除することがで
きるようにする。そのために、システム共通領域の割当
て要求に対して境界セグメント内のシステム共通領域を
割当てる時に、予めこのシステム共通領域に割当てられ
ていた実ページの実記憶保護キーを、割当て要求を発し
たプログラムによる読出し及び書込みが可能となるよう
に、設定し直す。もちろん、キーの異なる他のプログラ
ムによる読出しと書込みは、依然として不可である。そ
して、割当てを解除する時は、実記憶保護キーを、解除
されたプログラムによる読出し及び書込みができないよ
うに、再度設定し直す。第4図は、システム共通領域の
割当てに伴なう実記憶保護キーの設定の処理のフローを
示す。
は、実ページの割当てについては前述のように固定され
るが、ジョブへの仮想記憶領域の動的な割当てと解放の
対象にはなる。すなわち、システム共通領域の割当て要
求に対して境界セグメント内のシステム共通領域を割当
てて、必要がなくなった時には割当を解除することがで
きるようにする。そのために、システム共通領域の割当
て要求に対して境界セグメント内のシステム共通領域を
割当てる時に、予めこのシステム共通領域に割当てられ
ていた実ページの実記憶保護キーを、割当て要求を発し
たプログラムによる読出し及び書込みが可能となるよう
に、設定し直す。もちろん、キーの異なる他のプログラ
ムによる読出しと書込みは、依然として不可である。そ
して、割当てを解除する時は、実記憶保護キーを、解除
されたプログラムによる読出し及び書込みができないよ
うに、再度設定し直す。第4図は、システム共通領域の
割当てに伴なう実記憶保護キーの設定の処理のフローを
示す。
なお、第4図ないし第6図はPAD (Problem
Analysis Dlagram )として知られる
形式により表現されているので、PADについて簡単に
説明する。PADば、3種のボックスの相互接続により
処理の流れを表現する、一種のフローチャートである。
Analysis Dlagram )として知られる
形式により表現されているので、PADについて簡単に
説明する。PADば、3種のボックスの相互接続により
処理の流れを表現する、一種のフローチャートである。
単純矩形のボックスは、普通のシーケンシャルな処理単
位を表わし、矩形の右端に切込みのあるボックスは、そ
の中に表示された選択条件の成否に従って、右上又は右
下の角に接続されたボックスのいずれか一方の処理が行
なわれることを表わし、矩形の右端部に縦線があるボッ
クスは、右方に接続されたボックスの処理の反覆実行を
表わす。全体的な処理の流れは、上方から下方へ進行す
る。例えば、第4図は、まず、システム共通領域の割当
て処理を行ない、次いで、割当てた仮想ページのそれぞ
れについて、それが境界セグメント内の仮想ページであ
れば実記憶保護キーを設定するという処理を繰返すこと
を表わす。
位を表わし、矩形の右端に切込みのあるボックスは、そ
の中に表示された選択条件の成否に従って、右上又は右
下の角に接続されたボックスのいずれか一方の処理が行
なわれることを表わし、矩形の右端部に縦線があるボッ
クスは、右方に接続されたボックスの処理の反覆実行を
表わす。全体的な処理の流れは、上方から下方へ進行す
る。例えば、第4図は、まず、システム共通領域の割当
て処理を行ない、次いで、割当てた仮想ページのそれぞ
れについて、それが境界セグメント内の仮想ページであ
れば実記憶保護キーを設定するという処理を繰返すこと
を表わす。
システム共通領域とジョブ個有領域の境界を、本発明に
よりセグメント境界と無関係にページ境界に設定するか
、それとも従来のようにセグメント境界に一致さ、せる
かを、システム構成時又は始動時(IPL時)に選択で
きるようにすることができる。ページ境界に設定するこ
とが選択されても、設定された領域境界としてのページ
境界がたまだまセグメント境界と一致した場合には、従
来どおりの扱いでよい。この選択に応じて処理を行なう
ために、システム始動時における初期設定処理中に、ど
ちらが選択されているかを調べて、ページ境界に設定す
ることが選択されていれば、更に、領域境界としてのペ
ージ境界がセグメント境界と一致するか否かを調べ、一
致しなければ、境界セグメント内のシステム共通領域へ
の実ページの割当て等の処理を行なうとともに、O8の
制御テーブル中に、ページ境界に設定することが選択さ
れたことを示すビットを立てる。そして、以後における
仮想記憶装置の管理については、前記のピットを参照し
て処理の選択が行なわれる。以上の処理のフローを第5
図及び第6図に示す。図中「C3BR,Jは領域境界を
本発明によりページ境界に設定するモードを表わす。
よりセグメント境界と無関係にページ境界に設定するか
、それとも従来のようにセグメント境界に一致さ、せる
かを、システム構成時又は始動時(IPL時)に選択で
きるようにすることができる。ページ境界に設定するこ
とが選択されても、設定された領域境界としてのページ
境界がたまだまセグメント境界と一致した場合には、従
来どおりの扱いでよい。この選択に応じて処理を行なう
ために、システム始動時における初期設定処理中に、ど
ちらが選択されているかを調べて、ページ境界に設定す
ることが選択されていれば、更に、領域境界としてのペ
ージ境界がセグメント境界と一致するか否かを調べ、一
致しなければ、境界セグメント内のシステム共通領域へ
の実ページの割当て等の処理を行なうとともに、O8の
制御テーブル中に、ページ境界に設定することが選択さ
れたことを示すビットを立てる。そして、以後における
仮想記憶装置の管理については、前記のピットを参照し
て処理の選択が行なわれる。以上の処理のフローを第5
図及び第6図に示す。図中「C3BR,Jは領域境界を
本発明によりページ境界に設定するモードを表わす。
本実施例では、境界セグメント内のシステム共通領域へ
の実ページの割当てが固定されるため、この領域ではペ
ージフォルトが起こらず、したがって、スワップ等によ
る処理の遅延も生じない。
の実ページの割当てが固定されるため、この領域ではペ
ージフォルトが起こらず、したがって、スワップ等によ
る処理の遅延も生じない。
そのだめ、頻繁に使用されるプログラムやデータ、側光
ば、言語プロセッサ、ファイルインデクス等をこの領域
に常駐させることにより、処理効率をの対象になってい
るため、従来方式との互換性が高い。更に、システム共
通領域とジョブ個有領域の境界を、従来通りセグメント
境界にするか、それともセグメント境界と無関係にペー
ジ境界にするかを、IPL時のパラメータ設定で容易に
行なうことができ、しだがって、システムの柔軟な運用
が可能である。
ば、言語プロセッサ、ファイルインデクス等をこの領域
に常駐させることにより、処理効率をの対象になってい
るため、従来方式との互換性が高い。更に、システム共
通領域とジョブ個有領域の境界を、従来通りセグメント
境界にするか、それともセグメント境界と無関係にペー
ジ境界にするかを、IPL時のパラメータ設定で容易に
行なうことができ、しだがって、システムの柔軟な運用
が可能である。
本発明によれば、仮想記憶空間上のシステム共通領域と
ジョブ個有領域の間の境界を任意のページ境界に設定す
ることができる。したがって、従来技術では生じたはず
の遊休ページを各ジョブにその個有領域として割当てる
ことができ、仮想記憶空間の利用効率を改善することが
できる。このことは、また、ジョブ個有領域の拡張を意
味し、既成のアプリケーションプログラムの拡張を容易
にする。セグメントサイズが大きいほど、本発明の効果
も大きい。
ジョブ個有領域の間の境界を任意のページ境界に設定す
ることができる。したがって、従来技術では生じたはず
の遊休ページを各ジョブにその個有領域として割当てる
ことができ、仮想記憶空間の利用効率を改善することが
できる。このことは、また、ジョブ個有領域の拡張を意
味し、既成のアプリケーションプログラムの拡張を容易
にする。セグメントサイズが大きいほど、本発明の効果
も大きい。
第1図は本発明による境界セグメントに対するアドレス
変換機構の模式図、第2図は境界セグメントに相当する
セグメントに対する従来のアドレス変換機構の模式図、
第3図は本発明による境界セグメントとページテーブル
と実ページの関係を示す模式図、第4図ないし第6図は
本発明の一実施例における処理のフローチャートである
。 5GTI−2〜5GT3−2・・・セグメントテーブル
、PGTI−2〜PGT3−2・・・境界セグメントに
対応するページテーブル、PGTCI−2〜PGTC3
−2・・・システム共通領域のページに対応するページ
テーブルエン) 1,1. PGTJ 1−2〜PGT
%3−2・・・ジョブ個有領域のページに対応するペー
ジテーブルエントリ、RPGC−2・・・システム共通
領域のページに割当てられた実ページ、RPGJI−2
〜RPGJ3−2・・・ジョブ個有領域のページに割当
てられた実ページ。
変換機構の模式図、第2図は境界セグメントに相当する
セグメントに対する従来のアドレス変換機構の模式図、
第3図は本発明による境界セグメントとページテーブル
と実ページの関係を示す模式図、第4図ないし第6図は
本発明の一実施例における処理のフローチャートである
。 5GTI−2〜5GT3−2・・・セグメントテーブル
、PGTI−2〜PGT3−2・・・境界セグメントに
対応するページテーブル、PGTCI−2〜PGTC3
−2・・・システム共通領域のページに対応するページ
テーブルエン) 1,1. PGTJ 1−2〜PGT
%3−2・・・ジョブ個有領域のページに対応するペー
ジテーブルエントリ、RPGC−2・・・システム共通
領域のページに割当てられた実ページ、RPGJI−2
〜RPGJ3−2・・・ジョブ個有領域のページに割当
てられた実ページ。
Claims (1)
- 【特許請求の範囲】 1、一定サイズの実ページに分割された実アドレス空間
を持つ記憶装置と、複数の仮想記憶空間上の仮想アドレ
スを実アドレスに変換するアドレス変換機構とを有し、
各前記仮想記憶空間は、一定数の仮想ページからなるセ
グメントに分割されるとともに、システム共通領域とジ
ョブ個有領域を含み、前記アドレス変換機構は、各前記
仮想記憶空間の仮想ページを実ページに対応づける複数
のページテーブルと、各前記仮想記憶空間ごとに用意さ
れて各仮想記憶空間のセグメントを前記ページテーブル
に対応づけるセグメントテーブルとを有する仮想記憶装
置において、システム共通領域とジョブ個有領域の間の
領域境界をセグメント境界と無関係にページ境界に設定
するステップと、前記領域境界を中間に含む境界セグメ
ントに対応するページテーブルを各前記仮想記憶空間ご
とに用意するステップとを有する、領域管理方法。 2、特許請求の範囲1において、前記境界セグメント内
のシステム共通領域への実ページの割当てが固定された
、領域管理方法。 3、特許請求の範囲2において、前記境界セグメント内
のシステム共通領域が仮想記憶領域の動的な割当ての対
象になる、領域管理方法。 4、特許請求の範囲3において、前記境界セグメント内
のシステム共通領域に固定的に割当てられた実ページは
実記憶保護キーを持ち、前記保護キーは、前記システム
共通領域の動的な割当てに際して、対応する仮想ページ
が割当てられたプログラムにアクセスを許すように設定
され、前記割当ての解除に際して前記アクセスを許さな
いように設定される、領域管理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60239360A JPH0658649B2 (ja) | 1985-10-28 | 1985-10-28 | 仮想記憶装置における領域管理方法 |
US06/924,028 US4991082A (en) | 1985-10-28 | 1986-10-28 | Virtual storage system and method permitting setting of the boundary between a common area and a private area at a page boundary |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60239360A JPH0658649B2 (ja) | 1985-10-28 | 1985-10-28 | 仮想記憶装置における領域管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62100851A true JPS62100851A (ja) | 1987-05-11 |
JPH0658649B2 JPH0658649B2 (ja) | 1994-08-03 |
Family
ID=17043598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60239360A Expired - Lifetime JPH0658649B2 (ja) | 1985-10-28 | 1985-10-28 | 仮想記憶装置における領域管理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US4991082A (ja) |
JP (1) | JPH0658649B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7055015B2 (en) | 2002-02-25 | 2006-05-30 | Ricoh Company, Ltd. | Information processing apparatus in which processes can reduce overhead of memory access and efficiently share memory |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5123101A (en) * | 1986-11-12 | 1992-06-16 | Xerox Corporation | Multiple address space mapping technique for shared memory wherein a processor operates a fault handling routine upon a translator miss |
US5724540A (en) * | 1988-03-28 | 1998-03-03 | Hitachi, Ltd. | Memory system having a column address counter and a page address counter |
US5159677A (en) * | 1988-11-21 | 1992-10-27 | International Business Machines Corp. | Method and system for storing data in and retrieving data from a non-main storage virtual data space |
JP2858795B2 (ja) * | 1989-07-14 | 1999-02-17 | 株式会社日立製作所 | 実記憶割り当て方法 |
JP2734466B2 (ja) * | 1991-05-02 | 1998-03-30 | 三菱電機株式会社 | マイクロコンピュータ |
JP2675961B2 (ja) * | 1992-05-20 | 1997-11-12 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 実記憶のページをロックするための方法 |
US5911152A (en) * | 1995-09-05 | 1999-06-08 | Compaq Computer Corporation | Computer system and method for storing data in a buffer which crosses page boundaries utilizing beginning and ending buffer pointers |
US5873120A (en) * | 1996-05-03 | 1999-02-16 | Digital Equipment Corporation | Variable split virtual address space allocation with multi-system compatibility |
US6061773A (en) * | 1996-05-03 | 2000-05-09 | Digital Equipment Corporation | Virtual memory system with page table space separating a private space and a shared space in a virtual memory |
US5913231A (en) * | 1997-03-31 | 1999-06-15 | International Business Machines Corporation | Method and system for high speed memory address forwarding mechanism |
US6804766B1 (en) | 1997-11-12 | 2004-10-12 | Hewlett-Packard Development Company, L.P. | Method for managing pages of a designated memory object according to selected memory management policies |
US6085296A (en) * | 1997-11-12 | 2000-07-04 | Digital Equipment Corporation | Sharing memory pages and page tables among computer processes |
US6289432B1 (en) | 1998-03-25 | 2001-09-11 | International Business Machines Corporation | Sharing segments of storage by enabling the sharing of page tables |
US6233668B1 (en) | 1999-10-27 | 2001-05-15 | Compaq Computer Corporation | Concurrent page tables |
US7426625B2 (en) * | 2004-03-31 | 2008-09-16 | International Business Machines Corporation | Data processing system and computer program product for support of system memory addresses with holes |
US9053053B2 (en) * | 2010-11-29 | 2015-06-09 | International Business Machines Corporation | Efficiently determining identical pieces of memory used by virtual machines |
US9201678B2 (en) | 2010-11-29 | 2015-12-01 | International Business Machines Corporation | Placing a virtual machine on a target hypervisor |
US9823869B2 (en) * | 2014-01-08 | 2017-11-21 | Nvidia Corporation | System and method of protecting data in dynamically-allocated regions of memory |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3412382A (en) * | 1965-11-26 | 1968-11-19 | Massachusetts Inst Technology | Shared-access data processing system |
NL6806735A (ja) * | 1968-05-11 | 1969-11-13 | ||
FR2230258A5 (ja) * | 1973-05-16 | 1974-12-13 | Honeywell Bull Soc Ind | |
FR122199A (ja) * | 1973-12-17 | |||
JPS52149444A (en) * | 1976-06-08 | 1977-12-12 | Fujitsu Ltd | Multiplex virtual space processing data processing system |
US4084226A (en) * | 1976-09-24 | 1978-04-11 | Sperry Rand Corporation | Virtual address translator |
US4253145A (en) * | 1978-12-26 | 1981-02-24 | Honeywell Information Systems Inc. | Hardware virtualizer for supporting recursive virtual computer systems on a host computer system |
US4456954A (en) * | 1981-06-15 | 1984-06-26 | International Business Machines Corporation | Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations |
US4439830A (en) * | 1981-11-09 | 1984-03-27 | Control Data Corporation | Computer system key and lock protection mechanism |
US4581702A (en) * | 1983-01-10 | 1986-04-08 | International Business Machines Corporation | Critical system protection |
-
1985
- 1985-10-28 JP JP60239360A patent/JPH0658649B2/ja not_active Expired - Lifetime
-
1986
- 1986-10-28 US US06/924,028 patent/US4991082A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7055015B2 (en) | 2002-02-25 | 2006-05-30 | Ricoh Company, Ltd. | Information processing apparatus in which processes can reduce overhead of memory access and efficiently share memory |
Also Published As
Publication number | Publication date |
---|---|
JPH0658649B2 (ja) | 1994-08-03 |
US4991082A (en) | 1991-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS62100851A (ja) | 仮想記憶装置における領域管理方法 | |
EP0238158B1 (en) | Copy-on-write segment sharing in a virtual memory, virtual machine data processing system | |
CA2152752C (en) | Multiprocessor system for locally managing address translation table | |
US6275917B1 (en) | High-speed address translation system | |
US6021462A (en) | Methods and apparatus for system memory efficient disk access to a raid system using stripe control information | |
US5819061A (en) | Method and apparatus for dynamic storage reconfiguration in a partitioned environment | |
JPH0552540B2 (ja) | ||
US5749093A (en) | Enhanced information processing system using cache memory indication during DMA accessing | |
US4654791A (en) | Input/output paging mechanism in a data processor | |
EP0175398A2 (en) | Data processing system comprising a memory access controller which is provided for combining descriptor bits of different descriptors associated with virtual addresses | |
JP3808058B2 (ja) | 複数のホストが圧縮データを記憶するメモリ・セクタの集合を共用できるようにするための装置 | |
KR890017640A (ko) | 파일시스템 | |
GB2221066A (en) | Address translation for I/O controller | |
Motobayashi et al. | The HITAC5020 time sharing system | |
JPH0548500B2 (ja) | ||
JPS6149703B2 (ja) | ||
JPH04344549A (ja) | 計算機システムにおけるページ割り当て方式 | |
JP2003248620A (ja) | 動的メモリ管理方法及び動的メモリ管理情報処理装置 | |
JP3456727B2 (ja) | データ処理装置 | |
JPS62163154A (ja) | 仮想論理ボリユ−ム方式 | |
JP2001022640A (ja) | メモリ管理方法 | |
JPH0521256B2 (ja) | ||
JPH026094B2 (ja) | ||
CN118210622A (zh) | 一种内存分配方法及计算设备 | |
JPH09212465A (ja) | メモリ割り当て装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |