JP3453761B2 - アドレス変換方式 - Google Patents

アドレス変換方式

Info

Publication number
JP3453761B2
JP3453761B2 JP16324991A JP16324991A JP3453761B2 JP 3453761 B2 JP3453761 B2 JP 3453761B2 JP 16324991 A JP16324991 A JP 16324991A JP 16324991 A JP16324991 A JP 16324991A JP 3453761 B2 JP3453761 B2 JP 3453761B2
Authority
JP
Japan
Prior art keywords
module
block
address
entry
address space
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 - Fee Related
Application number
JP16324991A
Other languages
English (en)
Other versions
JPH0512125A (ja
Inventor
聡 川久保
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP16324991A priority Critical patent/JP3453761B2/ja
Publication of JPH0512125A publication Critical patent/JPH0512125A/ja
Application granted granted Critical
Publication of JP3453761B2 publication Critical patent/JP3453761B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明はアドレス変換方式、特に
情報処理システムの仮想記憶方式のためのアドレス変換
方式に関する。 【0002】 【従来の技術】従来、この種のアドレス変換方式は、仮
想アドレス空間上のブロックのブロック番号と、これに
対応する実アドレス空間上のブロックのブロック番号と
をアドレスエントリとして保持するアドレス変換情報管
理手段と、アドレス変換情報管理手段にアドレスエント
リを追加し、また入力された仮想アドレス空間上のブロ
ックのブロック番号によりアドレス変換情報管理手段か
らこのブロック番号を含むアドレスエントリを検索し、
該当するアドレスエントリの有無を判定して、該当する
アドレスエントリが存在する場合はそのエントリに対し
て情報の読出し、または書込みを行うアドレス変換制御
手段と、アドレス変換制御手段より読出されたアドレス
エントリの実アドレス空間上のブロックのブロック番号
と仮想アドレスから実アドレスを求める実アドレス演算
手段とを有している。 【0003】 【発明が解決しようとする課題】上述した従来のアドレ
ス変換方式では、アドレス変換情報管理手段で仮想アド
レス空間上のブロックのブロック番号と、これに対応す
る実アドレス空間上のブロックのブロック番号を保持す
るのみであるので、仮想アドレス空間上の同一ブロック
を複数のプロセスが共有していても、その状態をアドレ
ス変換情報管理手段で保持していないので、他のプロセ
スが共有されているブロックを必要としている場合で
も、共有しているプロセスの一つが終了したときに共有
ブロックが開放され、そのブロックのアドレス変換情報
がアドレス変換情報管理手段から失われてしまう場合が
ある。このため、複数のプロセスが全く同一のモジュー
ルを必要とする場合でも、仮想アドレス空間に同一のモ
ジュールをそれを必要とするプロセスの数だけ割り当て
る必要があり、アドレス空間を必要以上に消費するとい
う問題点がある。 【0004】 【課題を解決するための手段】本発明のアドレス変換方
式は、固定された長さのブロックごとに区切られた仮想
アドレス空間に格納されているある一つのソフトウェア
モジュールに対して、そのモジュール名とその開始ブロ
ック番号とこのソフトウェアモジュールを共有するプロ
セス数とこのモジュールが占有するブロック数とを一つ
のモジュールエントリとし、前記仮想アドレス空間に格
納されている個々のソフトウェアモジュールに対応する
モジュールエントリを保持するモジュール情報管理手段
と、このモジュール情報管理手段に対して、プロセスの
起動により新たに仮想アドレス空間に割り当てるソフト
ウェアモジュールが発生すると、ソフトウェアモジュー
ル名によりこのモジュール名が含まれているモジュール
エントリを検索し、該当するモジュールエントリの有無
を判定し、該当するモジュールエントリが存在する場合
はそのモジュールエントリを読み出すと共に、前記共有
プロセス数を増加し書込みを行ない、該当するモジュー
ルエントリが存在しない場合は必要なブロックが確保さ
れてから、共有プロセス数を1とし前記モジュールエン
トリを追加するモジュール情報制御手段と、前記仮想ア
ドレス空間上のブロックのブロック番号とこれに対応す
る前記仮想アドレス空間上のブロックに等しい大きさの
実アドレス空間上のブロックのブロック番号と前記仮想
アドレス空間上のブロックを共有しているプロセスの数
とを一つのアドレスエントリとし、このアドレスエント
リを前記仮想アドレスが有する仮想アドレス空間上のブ
ロックの数に対応して保持するアドレス変換情報管理手
段と、このアドレス変換情報管理手段に対して、前記必
要なブロックが確保された場合は、対応するブロックの
ドレスエントリを追加し、これに1た共有プロセ
ス数を転写し、前記該当するモジュールエントリが存在
しその共有プロセス数を増加した場合は、増加した共有
プロセス数を受け対応するアドレスエントリの共有プロ
セス数に転写し、中央処理装置から入力された仮想アド
レス空間上のブロックのブロック番号によりこのアドレ
ス変換情報管理手段からこのブロック番号を含むアドレ
スエントリを検索し、該当するアドレスエントリを読み
アドレス変換制御手段と、このアドレス変換制御手
段により読出されたアドレスエントリの実アドレス空間
上のブロックのブロック番号と仮想アドレスとから実ア
ドレスを求める実アドレス演算手段と、仮想アドレス空
間上の各ブロックの使用履歴を保持し、実アドレス空間
上のブロックが全て占有された場合に、前記アドレス変
換情報管理手段が保持するブロックを共有するプロセス
の数の情報および前記使用履歴により、実アドレス空間
から退避または除去するブロックを選択するブロック判
別手段とを有することにより構成され、前記モジュール
情報制御手段は、中央処理装置より、プロセスが終了し
不要となったソフトウェアモジュール名を受け、対応す
るモジュールエントリの共有プロセス数を減少し、この
結果が0になればそのモジュールエントリを削除し、前
記アドレス変換制御手段は、モジュールエントリの共有
プロセス数を受け、対応するアドレスエントリの共有プ
ロセス数に転写することを特徴とする。 【0005】 【実施例】次に、本発明について図面を参照して説明す
る。 【0006】図1は本発明の一実施例の機能ブロック図
である。図1のブロック図は退避ブロック判別手段1、
アドレス変換情報管理手段2、アドレス変換情報制御手
段3、実アドレス演算手段4、モジュール情報管理手段
5、およびモジュール情報制御手段6が共通バス8を介
して中央処理装置9に接続されており、さらに実アドレ
ス演算手段4から実アドレス出力線7がでている。 【0007】図2は図1のブロック図の動作を説明する
ための図で、アドレス変換情報管理手段2は図2のアド
レス変換情報101に示すように仮想アドレス空間上の
ブロックのブック番号と、これに対応する実アドレス空
間上のブロックのブロック番号と、仮想アドレス空間上
のブロックを共有しているプロセスの数とを一つのアド
レスエントリとした形式のデータを仮想アドレス空間上
のブロックの数に対応して保持している。モジュール情
報管理手段5は図2のモジュール情報105に示すよう
にソフトウェアモジュール名と、その開始ブロック番号
と、そのモジュールが占有するブロック数とを一つのモ
ジュールエントリデータとして、仮想アドレス空間に格
納されている個々のソフトウェアのモジュールに対応し
て保持している。 【0008】中央処理装置9があるプロセスを起動し、
ソフトウェアモジュールA107を仮想アドレス空間に
割当てる必要が発生した場合を考える。中央処理装置9
は共通バス8を介して、モジュール情報制御手段6にモ
ジュール名を入力して、モジュール情報管理手段5が有
するモジュール情報105を検索させる。モジュールA
107が仮想アドレス空間に割当てられていない場合
は、モジュール情報105にモジュールA107のモジ
ュールエントリが登録されていない。この場合、中央処
理装置9はアドレス変換制御手段3を介してアドレス情
報管理手段2を検索し、モジュールA107が必要とす
る数の連続したブロックの確保が可能かをチェックす
る。可能であれば中央処理装置9はモジュール情報制御
手段6を介してモジュール情報管理手段5にモジュール
エントリを追加し、このモジュールエントリにモジュー
ル名と先に確保したブロックの開始ブロック番号とモジ
ュールが占有しているブロック数とを登録する。このと
き、モジュールAを使用しているプロセスは一つである
ので、このモジュールエントリ中のプロセスの共有数を
1とする。また中央処理装置9はこのプロセスの共有数
を、アドレス変換制御手段3を介して、アドレス情報管
理手段2のこのモジュールに対応する全アドレスエント
リのブロックの共有数に転写する。転写すべき範囲はモ
ジュール情報管理手段5のこのモジュールエントリ中の
ブロック開始番号とブロック数とから容易に求めること
ができる。一方、モージュールA107が既に仮想アド
レス空間に割当てられている場合は、モジュール情報1
05にモジュールA107のモジュールエントリが登録
されている。このときは、モジュールA107を共有す
ればよいので新たに仮想アドレス空間上にブロックを確
保する必要はない。中央処理装置9はモジュール情報制
御手段6を介してモジュール情報管理手段5中の、モシ
ュールA107のエントリ中のプロセスの共有数を1増
加させ、さらに、このプロセスの共有数をアドレス変換
制御手段3を介してアドレス情報管理手段2のこのモジ
ュールに対応する全アドレスエントリのブロックの共有
数に転写する。 【0009】中央処理装置9はモジュールA107の内
容を仮想アドレス100を用いて参照する。本実施例で
は仮想アドレス100を図2に示すように、上位の部分
で仮想アドレス空間上のブロックを指定するブロック番
号とし、下位の部分をブロック中の語を指定するオフセ
ットとしている。 【0010】中央処理装置9は仮想アドレス100を共
通バス8を介してアドレス変換制御手段3に入力する。
アドレス変換制御手段3は入力された仮想アドレスの上
位のブロック番号によりアドレス変換情報管理手段2か
らこのブロック番号を含むアドレスエントリを検索す
る。アドレスエントリ中に実アドレス空間103上の実
ブロック番号が存在すれば、このブロックは実アドレス
空間に割付けられているので、アドレス変換制御手段3
はこのエントリから対応する実アドレス空間103上の
ブロックの番号を取出し、実アドレス演算手段4に転送
する。実アドレス演算手段4はこのブロック番号を上位
とし、仮想アドレス100中のオフセットを下位として
実アドレス102を求め、実アドレス出力線7から出力
する。中央処理装置9はこの実アドレス102を用いて
実アドレス空間上のモジュールA107の内容を参照す
る。一方、アドレスエントリ中に実アドレス空間103
上の実ブロック番号が存在しない場合で、実アドレス空
間103上のすべてのブロックが仮想アドレス空間に割
当てられていない場合は、中央処理装置9は適切な実ア
ドレス空間103上のブロックを割当て、その実ブロッ
ク番号をアドレス変換情報管理手段2中の対応するアド
レスエントリに登録する。もし実アドレス空間103上
のすべてのブロックか仮想アドレス空間の何れかのブロ
ックに割当てられている場合は、上記ブロックの何れか
を除去するか補助記憶装置等に退避する必要がある。こ
のとき中央処理装置9は、退避ブロック判別手段1に除
去または退避するブロックを問合わせる。退避ブロック
判別手段1は、仮想アドレス空間上の各ブロックの使用
履歴を保持している。退避ブロック判別手段1は、この
使用履歴とアドレス変換情報管理手段2が保持するアド
レスエントリ中のブロックを共有するプロセス数とか
ら、最もブロックの共有数が少なくかつ最も古くから使
われていないブロックを選択し、中央処理装置9に通知
する。またプロセスの終了等によりソフトウェアのモジ
ュールA107が不要になった場合には、中央処理装置
9はモジュール情報制御手段6を介してモジュール情報
管理手段5を検索し、モジュールA107のエントリ中
のプロセスの共有数を1減少させる。この結果、プロセ
スの共有数が0になれば、仮想アドレス空間に割当てる
必要がなくなるので、モジュール情報管理手段5よりこ
のモジュールのモジュールエントリを削除させる。 【0011】一方、上記の操作の後、プロセスの共有数
が1以上の場合は、このプロセスの共有数をアドレス変
換制御手段3を介して、アドレス情報管理手段2のこの
モジュールに対応する全アドレスエントリのブロックの
共有数に転写する。 【0012】 【発明の効果】以上説明したように本発明は、アドレス
変換管理情報に仮想アドレス空間上のブロックを共有す
るプロセスの共有数を保持しているので、あるブロック
を使用しているプロセスが存在しているのに、そのブロ
ックが除去されてしまうという事態を防ぐことができ
る。従って、複数のプロセスにより同一のソフトウェア
モジュールが共有可能となり、記憶領域を節約でき、ま
た共有するプロセスが最も少ないブロックを退避、除去
できるので、補助記憶装置に対する実プロックの読出
し、書込みが減少するという効果がある。
【図面の簡単な説明】 【図1】本発明の一実施例の機能ブロック図である。 【図2】図1の実施例の動作を説明するための図であ
る。 【符号の説明】 1 退避ブロック判別手段 2 アドレス変換情報管理手段 3 アドレス変換制御手段 4 実アドレス演算手段 5 モジュール情報管理手段 6 モジュール情報制御手段 7 実アドレス出力線 8 共通バス 9 中央処理装置
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 9/46 - 9/54 G06F 12/08 - 12/12

Claims (1)

  1. (57)【特許請求の範囲】 【請求項1】 固定された長さのブロックごとに区切ら
    れた仮想アドレス空間に格納されているある一つのソフ
    トウェアモジュールに対して、そのモジュール名とその
    開始ブロック番号とこのソフトウェアモジュールを共有
    するプロセス数とこのモジュールが占有するブロック数
    とを一つのモジュールエントリとし、前記仮想アドレス
    空間に格納されている個々のソフトウェアモジュールに
    対応するモジュールエントリを保持するモジュール情報
    管理手段と、このモジュール情報管理手段に対して、プ
    ロセスの起動により新たに仮想アドレス空間に割り当て
    るソフトウェアモジュールが発生すると、ソフトウェア
    モジュール名によりこのモジュール名が含まれているモ
    ジュールエントリを検索し、該当するモジュールエント
    リの有無を判定し、該当するモジュールエントリが存在
    する場合はそのモジュールエントリを読み出すと共に、
    前記共有プロセス数を増加し書込みを行ない、該当する
    モジュールエントリが存在しない場合は、必要なブロッ
    クが確保されてから、共有プロセス数を1とし前記モジ
    ュールエントリを追加するモジュール情報制御手段と、
    前記仮想アドレス空間上のブロックのブロック番号とこ
    れに対応する前記仮想アドレス空間上のブロックに等し
    い大きさの実アドレス空間上のブロックのブロック番号
    と前記仮想アドレス空間上のブロックを共有しているプ
    ロセスの数とを一つのアドレスエントリとし、このアド
    レスエントリを前記仮想アドレスが有する仮想アドレス
    空間上のブロックの数に対応して保持するアドレス変換
    情報管理手段と、このアドレス変換情報管理手段に対し
    て、前記必要なブロックが確保された場合は、対応する
    ブロックのアドレスエントリを追加し、これに1
    共有プロセス数を転写し、前記該当するモジュールエン
    トリが存在しその共有プロセス数を増加した場合は、増
    加した共有プロセス数を受け対応するアドレスエントリ
    の共有プロセス数に転写し、中央処理装置から入力され
    た仮想アドレス空間上のブロックのブロック番号により
    このアドレス変換情報管理手段からこのブロック番号を
    含むアドレスエントリを検索し、該当するアドレスエン
    リを読み出アドレス変換制御手段と、このアドレス
    変換制御手段により読出されたアドレスエントリの実ア
    ドレス空間上のブロックのブロック番号と仮想アドレス
    とから実アドレスを求める実アドレス演算手段と、仮想
    アドレス空間上の各ブロックの使用履歴を保持し、実ア
    ドレス空間上のブロックが全て占有された場合に、前記
    アドレス変換情報管理手段が保持するブロックを共有す
    るプロセスの数の情報および前記使用履歴により、実ア
    ドレス空間から退避または除去するブロックを選択する
    ブロック判別手段とを有し、前記モジュール情報制御手
    段は、中央処理装置より、プロセスが終了し不要となっ
    たソフトウェアモジュール名を受け、対応するモジュー
    ルエントリの共有プロセス数を減少し、この結果が0に
    なればそのモジュールエントリを削除し、前記アドレス
    変換制御手段はモジュールエントリの共有プロセス数を
    受け、対応するアドレスエントリの共有プロセス数に転
    写することを特徴とするアドレス変換方式。
JP16324991A 1991-07-04 1991-07-04 アドレス変換方式 Expired - Fee Related JP3453761B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16324991A JP3453761B2 (ja) 1991-07-04 1991-07-04 アドレス変換方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16324991A JP3453761B2 (ja) 1991-07-04 1991-07-04 アドレス変換方式

Publications (2)

Publication Number Publication Date
JPH0512125A JPH0512125A (ja) 1993-01-22
JP3453761B2 true JP3453761B2 (ja) 2003-10-06

Family

ID=15770195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16324991A Expired - Fee Related JP3453761B2 (ja) 1991-07-04 1991-07-04 アドレス変換方式

Country Status (1)

Country Link
JP (1) JP3453761B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3706167B2 (ja) * 1995-02-16 2005-10-12 株式会社ルネサステクノロジ 半導体ディスク装置
JP4331325B2 (ja) * 1999-06-08 2009-09-16 パナソニック株式会社 メモリ管理装置
US6981125B2 (en) * 2003-04-22 2005-12-27 International Business Machines Corporation Method and apparatus for managing shared virtual storage in an information handling system
GB0504325D0 (en) * 2005-03-02 2005-04-06 Symbian Software Ltd Real time paged computing device and method of operation
JP5091655B2 (ja) * 2007-12-21 2012-12-05 株式会社日立製作所 計算機仮想化装置、そのプログラム、及びその方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61138338A (ja) * 1984-12-10 1986-06-25 Fujitsu Ltd プロセス起動処理方式
JPS6314255A (ja) * 1986-07-04 1988-01-21 Nec Corp 仮想記憶の割当て制御方式

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Maurice J.Bach著,坂本文,外2名訳,UNIXカーネルの設計,共立出版株式会社,1990年10月 5日,初版,P.147−156

Also Published As

Publication number Publication date
JPH0512125A (ja) 1993-01-22

Similar Documents

Publication Publication Date Title
US3778776A (en) Electronic computer comprising a plurality of general purpose registers and having a dynamic relocation capability
JP2774862B2 (ja) Dma制御装置および情報処理装置
JPH10154102A (ja) 多重階層のキャッシュ・メモリを有する情報処理システムにおけるデータ・コヒーレンシを強化する装置および方法
JPH04314163A (ja) バッファ管理方式
KR0175983B1 (ko) 데이타 처리 시스템
CN115168259A (zh) 一种数据存取方法、装置、设备和计算机可读存储介质
JP3453761B2 (ja) アドレス変換方式
JP3253357B2 (ja) 連結テーブル内の格納データへの高効率アクセス方法
JPH11232213A (ja) 入出力装置におけるデータ転送方式
JP2587586B2 (ja) データ転送方法
GB2221066A (en) Address translation for I/O controller
CN117389685B (zh) 虚拟机热迁移标脏方法及其装置、后端设备、芯片
US5933856A (en) System and method for processing of memory data and communication system comprising such system
JPH05233510A (ja) 文字データ管理方法
JPH05158793A (ja) 並列キャッシュメモリ
JP3256558B2 (ja) 電子計算機におけるアドレス変換方式
JPH04348442A (ja) アドレス変換装置
JPH10301940A (ja) 情報処理装置及びその方法
JPS5922977B2 (ja) 入出力装置によるペ−ジメモリ呼び出し方法
JPH0833869B2 (ja) データ処理装置
CN117667764A (zh) 内存管理方法、装置、电子设备及存储介质
JPH01283653A (ja) メモリプール管理方式
JP2000122968A (ja) 入出力キャッシュメモリ及びその制御方法
JPS6124734B2 (ja)
JPH04182845A (ja) 入出力バスのキャッシュ・タグ検索方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030624

LAPS Cancellation because of no payment of annual fees