JPH0934788A - アドレス変換装置及びアドレス変換方法 - Google Patents

アドレス変換装置及びアドレス変換方法

Info

Publication number
JPH0934788A
JPH0934788A JP7184045A JP18404595A JPH0934788A JP H0934788 A JPH0934788 A JP H0934788A JP 7184045 A JP7184045 A JP 7184045A JP 18404595 A JP18404595 A JP 18404595A JP H0934788 A JPH0934788 A JP H0934788A
Authority
JP
Japan
Prior art keywords
address
physical
logical
reverse
entry
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.)
Withdrawn
Application number
JP7184045A
Other languages
English (en)
Inventor
Hiroshi Yamaguchi
弘 山口
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.)
Fuji Electric Co Ltd
Fuji Facom Corp
Original Assignee
Fuji Electric Co Ltd
Fuji Facom 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 Fuji Electric Co Ltd, Fuji Facom Corp filed Critical Fuji Electric Co Ltd
Priority to JP7184045A priority Critical patent/JPH0934788A/ja
Publication of JPH0934788A publication Critical patent/JPH0934788A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 物理アドレスを論理アドレスに容易に変換で
きるようにする。 【構成】 物理アドレスを論理アドレスに変換する逆ア
ドレス変換テーブル5aをアドレス変換装置2に備え、
アドレス変換装置2の逆アドレス変換テーブル5aを参
照することにより、物理アドレス空間4の物理アドレス
を論理アドレス空間6の論理アドレスに変換する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、アドレス変換装置及び
アドレス変換方法に関し、特に、仮想記憶方式における
物理アドレスを論理アドレスに変換するアドレス変換装
置及びアドレス変換方法に適用して好適なものである。
【0002】
【従来の技術】従来のアドレス変換装置において、主記
憶装置の物理アドレス空間を実際より多くあるように見
せかけ、主記憶装置の物理アドレス空間を効率的に使用
する仮想記憶方式を採用することが一般的に行われてい
る。すなわち、プログラムが記憶される領域として、主
記憶装置の物理アドレス空間の他にジョブを実行するた
めに仮想的に設けられた論理アドレス空間を備えてい
る。主記憶装置の物理アドレス空間は実アドレス空間と
も言われ、ジョブを実行するために仮想的に設けられた
論理アドレス空間は仮想アドレス空間とも言われる。そ
して、論理アドレス空間と物理アドレス空間とを関連づ
けるために、仮想記憶というメモリ管理方式があり、仮
想記憶方式には、単一仮想記憶方式と多重仮想記憶方式
とがある。
【0003】単一仮想記憶方式は、図16に示すよう
に、仮想的な記憶装置上に存在し、論理アドレスが割り
振られた論理アドレス空間14、アドレス変換テーブル
15、及び主記憶装置上に存在し、物理アドレスが割り
振られた物理アドレス空間16を備えている。そして、
1つの論理アドレス空間14には、複数のプログラム1
〜nが記憶されており、各プログラム1〜nの先頭アド
レスは異なっている。
【0004】一方、多重仮想記憶方式は、図17に示す
ように、仮想的な記憶装置上に存在し、論理アドレスが
割り振られた複数の論理アドレス空間17、各論理アド
レス空間17に対応して設けられた複数のアドレス変換
テーブル18、及び主記憶装置上に存在し、物理アドレ
スが割り振られた物理アドレス空間19を備えている。
そして、1つの論理アドレス空間17には、1つのプロ
グラム1〜nが記憶されており、各プログラム1〜nの
先頭アドレスは同一となっている。すなわち、各論理ア
ドレス空間17は独立し、他の論理アドレス空間17か
ら見えないようになっているので、各プログラム1〜n
は各論理アドレス空間17により保護され、各仮想アド
レス空間17には同一のアドレスが割り振られるように
なっている。
【0005】図16、図17の論理アドレス空間14、
17と物理アドレス空間16、19とは、図18に示す
ように、ページと呼ばれる固定長の領域に分割されてい
る。そして、一般的な計算機システムでは、1ページの
サイズは、4KB(キロ・バイト)であり、論理アドレ
ス空間の各論理ページ0〜nには先頭の論理ページ0か
ら順に論理ページ番号0〜nが付され、物理アドレス空
間内の各物理ページ0〜nには先頭の物理ページ0から
順に物理ページ番号0〜nが付されている。
【0006】また、図16、図17のアドレス変換テー
ブル15、18は、論理アドレスを物理アドレスに変換
するものであり、各論理ページ毎に1つのエントリを持
つ。1つのエントリは、図19に示すように、論理ペー
ジ番号に対応する物理ページ番号と、エントリに格納さ
れた物理ページ番号が有効であるかどうかを示すフラグ
などの制御情報からなる。
【0007】次に、従来のアドレス変換装置の動作につ
いて説明する。まず、図20のステップS71に示すよ
うに、計算機システムのCPUによりプログラムが実行
されてページアクセス処理が行われる場合、図16、図
17の論理アドレス空間14、17の論理アドレスが参
照される。論理アドレスの内容は、図21に示すよう
に、論理ページ番号と1ページのサイズに満たない部分
のオフセットからなる。
【0008】次に、ステップS72に示すように、論理
アドレスの内容から論理ページ番号を獲得する。次に、
ステップS73に示すように、図16、図17のアドレ
ス変換テーブル15、18を参照することにより、論理
ページ番号に対応するエントリを獲得する。
【0009】次に、ステップS74において、エントリ
の制御情報に含まれる有効ビットが“1”である場合、
ステップS76に進み、図21に示すように、獲得した
アドレス変換テーブル15、18のエントリの物理ペー
ジ番号を参照することにより、図16、図17の物理ア
ドレス空間16、19の物理ページ番号を得る。このア
ドレス変換テーブル15、18の物理ページ番号と、論
理アドレスのオフセットにより、物理アドレスを得るこ
とができ、物理アドレス空間上に記憶された実際のプロ
グラムの内容にアクセスできる。
【0010】一方、ステップS74において、エントリ
の制御情報に含まれる有効ビットが“0”である場合、
すなわち、プログラムが論理アドレスを参照し、論理ペ
ージ番号から物理ページ番号を獲得する過程で物理ペー
ジ番号が存在しない場合、ステップS75に進み、CP
Uがオペレーティングシステムに対してページフォルト
割り込みを上げるページフォルト処理が行われる。
【0011】このページフォルト処理では、まず、ステ
ップS81に示すように、ページフォルトを起こした論
理アドレスの内容から論理ページ番号を獲得する。次
に、ステップS82に示すように、図16、17のアド
レス変換テーブル15、18を参照することにより、論
理ページ番号に対応するエントリを獲得する。
【0012】次に、ステップS83に示すように、物理
アドレス空間16、19の空きの物理ページを獲得す
る。次に、ステップS84に示すように、ページフォル
トの原因となった論理ページ番号に対応するアドレス変
換テーブル15、18のエントリに、ステップS83で
獲得した物理ページの物理ページ番号を設定する。
【0013】次に、ステップS85に示すように、物理
ページ番号を設定したエントリの制御情報に含まれる有
効ビットを“1”にする。以上により、ページフォルト
を起こした論理ページに物理ページが割り当てられる。
このように、従来のアドレス変換装置では、プログラム
が論理アドレスを参照すると、CPUとオペレーティン
グシステムが、物理アドレスを自動的に算出する。
【0014】
【発明が解決しようとする課題】しかしながら、従来の
アドレス変換装置では、例えば、オペレーティングシス
テムがハードディスクなどの入出力装置とデータの入出
力を行う過程で、物理アドレスを論理アドレスに容易に
変換することができなかった。
【0015】すなわち、オペレーティングシステムを呼
び出して、プログラムの用意したバッファにデータを格
納するように入出力装置に要求を出す。この場合、オペ
レーティングシステムは、入出力装置がデータのやり取
りを行えるようにするために、プログラムの用意したバ
ッファの論理アドレスを入出力装置が理解することがで
きる物理アドレスに変換する。そして、物理アドレスに
よる入出力要求が入出力装置に行われる。その後、入出
力装置が動作を終えると、動作の終了を通知するため
に、入出力完了割り込みをオペレーティングシステムに
上げる。そして、入出力装置から割り込みが上がると、
オペレーティングシステムは、入出力装置の状態をチェ
ックし、正常に入出力が完了したかどうかを検査する。
ここで、異常終了した場合、エラーを起こしたことをプ
ログラムに伝えるとともに、エラーのトレースやロギン
グなどを行って、プログラムのデバッグに有効な情報を
利用者に伝える。
【0016】しかしながら、プログラムが理解できるよ
うに、エラーが発生したバッファの論理アドレスをトレ
ースやロギングなどの情報の中に付加する場合、オペレ
ーティングシステムの入出力完了割り込み処理の情報や
入出力装置の情報からでは、バッファの物理アドレスを
得ることはできても、論理アドレスを容易に得ることは
できない。すなわち、従来のアドレス変換装置では、物
理アドレスを論理アドレスに変換するためには、オペレ
ーティングシステムが管理している多くの資源を辿る必
要があるという問題があった。
【0017】そこで、本発明の目的は、物理アドレスを
論理アドレスに容易に変換することができるアドレス変
換装置及びアドレス変換方法を提供することである。
【0018】
【課題を解決するための手段】上述した課題を解決する
ために、請求項1の発明によれば、物理アドレスを論理
アドレスに変換する逆アドレス変換テーブルを備える。
【0019】また、請求項2の発明によれば、物理アド
レスに対応する論理アドレスの論理ページ番号を、逆ア
ドレス変換テーブルの各エントリに格納する。また、請
求項3の発明によれば、物理アドレスに対応する論理ア
ドレスの論理ページ番号と論理アドレスを利用している
プログラムの識別子とを、逆アドレス変換テーブルの各
エントリに格納する。
【0020】また、請求項4の発明によれば、エントリ
は、格納された論理ページ番号が有効であるかどうかを
示すフラグ情報を有する。また、請求項5の発明によれ
ば、複数の段階に分割した物理アドレス空間の各物理ペ
ージに対応して逆アドレス変換テーブルのエントリを備
える。
【0021】また、請求項6の発明によれば、物理アド
レスを論理アドレスに変換する逆アドレス変換テーブル
を参照することにより、物理アドレスを論理アドレスに
変換する。
【0022】また、請求項7の発明によれば、物理アド
レス空間を複数の段階に分割し、前記物理アドレス空間
の各物理ページに対応して各段階毎に備えられたエント
リを参照することにより、物理アドレスを論理アドレス
に変換する。
【0023】
【作用】請求項1の発明によれば、物理アドレスを論理
アドレスに変換する逆アドレス変換テーブルを備えるこ
とにより、物理アドレスから論理アドレスの変換を容易
に行うことができる。
【0024】また、請求項2の発明によれば、物理アド
レスに対応する論理アドレスの論理ページ番号を、逆ア
ドレス変換テーブルの各エントリに格納することによ
り、逆アドレス変換テーブルの1度の検索で論理ページ
番号を得ることができ、物理アドレスから論理アドレス
の変換を容易に行うことができる。
【0025】また、請求項3の発明によれば、物理アド
レスに対応する論理アドレスの論理ページ番号と論理ア
ドレスを利用しているプログラムの識別子とを、逆アド
レス変換テーブルの各エントリに格納するようにしたの
で、各プログラムに同じ論理アドレスを割り当てた場合
においても、プログラムの識別子を参照することによ
り、特定のプログラムに容易にアクセスできる。
【0026】また、請求項4の発明によれば、格納され
た論理ページ番号が有効であるかどうかを示すフラグ情
報を有するようにしたので、フラグ情報を参照すること
により、無効な論理ページ番号から論理アドレスを算出
する処理を行うことを省略できる。
【0027】また、請求項5の発明によれば、複数の段
階に分割した物理アドレス空間の各物理ページに対応し
て逆アドレス変換テーブルのエントリを備えることによ
り、不連続の物理アドレス空間に対応させて逆アドレス
変換テーブルを連続した領域に設けることができ、逆ア
ドレス変換テーブルを記憶するために必要な領域を少な
くすることができる。
【0028】また、請求項6の発明によれば、物理アド
レスを論理アドレスに変換する逆アドレス変換テーブル
を参照することにより、物理アドレスから論理アドレス
への変換を容易に行うことができる。
【0029】また、請求項7の発明によれば、物理アド
レス空間を複数の段階に分割し、前記物理アドレス空間
の各物理ページに対応して各段階毎に備えられたエント
リを参照することにより、物理アドレスを論理アドレス
に変換するようにしたので、不連続の物理アドレス空間
に対応させて逆アドレス変換テーブルを連続した領域に
設けることができ、逆アドレス変換テーブルを記憶する
ために必要な領域を少なくすることができる。
【0030】
【実施例】以下、本発明の第1実施例によるアドレス変
換装置を図面を参照しながら説明する。図1は、本発明
の第1実施例によるアドレス変換装置の概略構成を示す
ブロック図である。 図1において、物理アドレスが割
り振られた物理アドレス空間4を備える主記憶装置1
と、論理アドレスが割り振られた論理アドレス空間6を
備える処理装置3とは、逆アドレス変換テーブル5a及
びアドレス変換テーブル5bを備えるアドレス変換装置
2を介して接続されている。そして、物理アドレス空間
4は物理ページ0〜nに分割され、論理アドレス空間6
は、論理ページ0〜mに分割されている。この1ページ
のサイズは、例えば、4KB(キロ・バイト)に設定さ
れる。アドレス変換テーブル5bは、論理アドレスを物
理アドレスに変換するものであり、各論理ページ0〜m
毎に1つのエントリ0〜mを持っている。また、逆アド
レス変換テーブル5aは、物理アドレスを論理アドレス
に変換するものであり、各物理ページ0〜n毎に1つの
エントリ0〜nを持っている。そして、主記憶装置1の
物理ページ0〜nを示す物理ページ番号0〜nとアドレ
ス変換装置2のエントリ0〜nを示すインデックス0〜
nとはそれぞれ等しくなっている。1つのエントリ0〜
nは、図2に示すように、物理ページ0〜nに対応する
論理ページ番号0〜mと、エントリに格納された論理ペ
ージ番号が有効であるかどうかを示すフラグである有効
ビットからなる。この論理ページ番号0〜mは、逆アド
レス変換テーブル5aのインデックス0〜nに対応して
物理ページ0〜nを割り当てた場合の論理アドレスのペ
ージ番号0〜mを示している。なお、逆アドレス変換テ
ーブル5aは、論理アドレス空間6を備える処理装置3
により定められる論理アドレスが連続する場所に確保さ
れる。
【0031】以上の構成において、例えば、オペレーテ
ィングシステムの入出力割り込み処理ルーチンでエラー
が発生し、このエラーのデバッグ処理を行うため、エラ
ーを起こした物理アドレスを論理アドレスに変換する場
合、図4に示すように、図3の物理アドレス空間4の物
理アドレスが参照される。この物理アドレスの内容は、
物理ページ番号0〜nとオフセットからなる。そして、
図3に示すように、物理ページ番号0〜nに対応する逆
アドレス変換テーブル5aのインデックス0〜nを参照
することにより、論理アドレス空間6の論理ページ0〜
mに対応する論理ページ番号0〜mを得ることができ
る。その後、図4に示すように、この論理ページ番号0
〜mと物理アドレスのオフセットにより、論理アドレス
を容易に求めることができる。例えば、オペレーティン
グシステムが物理アドレスの00002345H番地を
獲得した場合、図3の逆アドレス変換テーブル5aを参
照することにより、論理アドレスは00005345H
であると容易にわかる。
【0032】なお、逆アドレス変換テーブル5aに必要
なエントリ数は、例えば、図1の主記憶装置1が16M
B(メガ・バイト)の記憶容量を持つ計算機システムで
ある場合、図5に示すように、4096の数のエントリ
が必要である。例えば、エントリのインデックスが0か
ら始まる場合、インデックスは0から4095までとな
り、図5の物理アドレス空間7の物理アドレスが100
00H番地のインデックスは、16となる。すなわち、
物理ページ番号とエントリのインデックスとは等しくな
る。
【0033】次に、本発明の第1実施例によるアドレス
変換装置の動作について説明する。ここで、物理アドレ
スから論理アドレスへのアドレス変換に先だって、図1
の逆アドレス変換テーブル5aに情報を設定するページ
フォルト処理が行われる。すなわち、ページフォルト割
り込みが発生して、オペレーティングシステムが、論理
ページに空き物理ページを割り当ててアドレス変換テー
ブル5bを作成する時に、その割り当てられた物理ペー
ジに対応する図1の逆アドレス変換テーブル5aを作成
する。
【0034】このページフォルト処理では、まず、図6
のステップS1に示すように、ページフォルトを起こし
た図1の処理装置3の論理アドレスの内容から論理ペー
ジ番号を獲得する。
【0035】次に、ステップS2に示すように、アドレ
ス変換テーブル5bを参照することにより、論理ページ
番号に対応するエントリを獲得する。次に、ステップS
3に示すように、主記憶装置1の物理アドレス空間4の
空きの物理ページを獲得する。
【0036】次に、ステップS4に示すように、ページ
フォルトの原因となった論理ページ番号に対応するアド
レス変換テーブル5bのエントリに、ステップS3で獲
得した物理ページの物理ページ番号を設定する。
【0037】次に、ステップS5に示すように、物理ペ
ージ番号を設定したアドレス変換テーブル5bのエント
リの制御情報に含まれる有効ビットを“1”にする。次
に、ステップS6に示すように、獲得した空き物理ペー
ジの物理ページ番号と同じインデックスを有する逆アド
レス変換テーブル5aのエントリを獲得する。
【0038】次に、ステップS7に示すように、逆アド
レス変換テーブル5aのエントリにページフォルトを起
こした論理アドレスの内容の論理ページ番号を設定す
る。次に、ステップS8に示すように、逆アドレス変換
テーブル5aのエントリの有効ビットを“1”にする。
【0039】次に、図6のページフォルト処理により作
成された逆アドレス変換テーブル5aに基づいて、物理
アドレスから論理アドレスへのアドレス変換処理が行わ
れる。
【0040】すなわち、図7のステップS11に示すよ
うに、図1の主記憶装置の物理アドレス空間4における
物理アドレスの内容から物理ページ番号を獲得する。次
に、ステップS12に示すように、アドレス変換装置2
の逆アドレス変換テーブル5aを参照することにより、
物理ページ番号に対応するエントリを獲得する。
【0041】次に、ステップS13に示すように、エン
トリの有効ビットが“1”である場合、ステップS14
に進み、獲得したエントリの論理ページ番号を参照する
ことにより、処理装置3の論理アドレス空間6における
論理ページ番号を得る。そして、ステップS15に示す
ように、逆アドレス変換テーブル5aの論理ページ番号
と、物理アドレスのオフセットにより、論理アドレスを
得ることができる。
【0042】一方、ステップS13において、エントリ
の有効ビットが“0”である場合、すなわち、物理ペー
ジ番号から論理ページ番号を獲得する過程で論理ページ
番号が存在しない場合、ステップS14、15の処理を
行わないようにして処理を終了する。
【0043】次に、本発明の第2実施例によるアドレス
変換装置を図面を参照しながら説明する。本発明の第2
実施例は、多重仮想記憶方式を用いたアドレス変換装置
の例である。
【0044】図1において、アドレス変換装置2に多重
仮想記憶方式を用いた場合、処理装置3の論理アドレス
空間6は複数の論理アドレス空間に分割され、その分割
された論理アドレス空間に対応してアドレス変換テーブ
ル5bが複数設けられる。そして、分割された各論理ア
ドレス空間には、1つのプログラムが格納され、各論理
アドレス空間に対して同じ論理アドレスが割り振られて
いる。
【0045】一方、逆アドレス変換テーブル5aの各エ
ントリ0〜nは、図8に示すように、物理ページ0〜n
に対応する論理ページ番号0〜mと、エントリに格納さ
れた論理ページ番号が有効であるかどうかを示すフラグ
である有効ビットと、現在実行中のプログラムを示す識
別子からなる。この論理ページ番号0〜mは、逆アドレ
ス変換テーブル5aのインデックス0〜nに対応して物
理ページ0〜nを割り当てた場合の論理アドレスのペー
ジ番号0〜mを示している。
【0046】以上の構成において、物理アドレスを論理
アドレスに変換する場合、図1の物理アドレス空間4の
物理アドレスが参照される。この物理アドレスの内容
は、物理ページ番号0〜nとオフセットからなる。そし
て、物理ページ番号0〜nに対応する逆アドレス変換テ
ーブル5aのインデックス0〜nを参照することによ
り、論理アドレス空間6の論理ページ0〜mに対応する
論理ページ番号0〜mを得ることができる。この論理ペ
ージ番号0〜mと物理アドレスのオフセットにより、論
理アドレスを容易に求めることができる。ここで、多重
仮想記憶方式の場合、1つのプログラムに対して1つの
論理アドレス空間が割り当てられ、各論理アドレス空間
には同じ論理アドレスが割り当てられているので、逆ア
ドレス変換テーブル5aに格納されたプログラムの識別
子を参照することにより、1つの論理アドレス空間を特
定する。なお、逆アドレス変換テーブル5aに必要なエ
ントリ数は、第1実施例の場合と同じである。
【0047】次に、本発明の第2実施例によるアドレス
変換装置の動作について説明する。ページフォルト処理
では、まず、図9のステップS21に示すように、ペー
ジフォルトを起こした図1の処理装置3の論理アドレス
の内容から論理ページ番号を獲得する。
【0048】次に、ステップS22に示すように、アド
レス変換テーブル5bを参照することにより、論理ペー
ジ番号に対応するエントリを獲得する。次に、ステップ
S23に示すように、主記憶装置1の物理アドレス空間
4の空きの物理ページを獲得する。
【0049】次に、ステップS24に示すように、ペー
ジフォルトの原因となった論理ページ番号に対応するア
ドレス変換テーブル5bのエントリに、ステップS3で
獲得した物理ページの物理ページ番号を設定する。
【0050】次に、ステップS25に示すように、物理
ページ番号を設定したアドレス変換テーブル5bのエン
トリの制御情報に含まれる有効ビットを“1”にする。
次に、ステップS26に示すように、獲得した空き物理
ページの物理ページ番号と同じインデックスを有する逆
アドレス変換テーブル5aのエントリを獲得する。
【0051】次に、ステップS27に示すように、ペー
ジフォルトを起こした論理アドレスの内容の論理ページ
番号を、逆アドレス変換テーブル5aのエントリに設定
する。
【0052】次に、ステップS28に示すように、逆ア
ドレス変換テーブル5aのエントリの有効ビットを
“1”にする。次に、ステップS29に示すように、現
在実行中のプログラムの識別子を逆アドレス変換テーブ
ル5aのエントリに設定する。この場合、ページフォル
トを起こした現在実行中のプログラムの識別子は、オペ
レーティングシステムにより容易に引き出すことができ
る。
【0053】次に、物理アドレスから論理アドレスへの
アドレス変換処理について説明する。まず、図10のス
テップS31に示すように、図1の主記憶装置の物理ア
ドレス空間4における物理アドレスの内容から物理ペー
ジ番号を獲得する。
【0054】次に、ステップS32に示すように、アド
レス変換装置2の逆アドレス変換テーブル5aを参照す
ることにより、物理ページ番号に対応するエントリを獲
得する。
【0055】次に、ステップS33に示すように、エン
トリの有効ビットが“1”である場合、ステップS34
に進み、獲得したエントリの論理ページ番号を参照する
ことにより、処理装置3の論理アドレス空間6における
論理ページ番号を得る。
【0056】次に、ステップS35に示すように、逆ア
ドレス変換テーブル5aの論理ページ番号と、物理アド
レスのオフセットにより、論理アドレスを得る。次に、
ステップS36に示すように、逆アドレス変換テーブル
5aのエントリからプログラムの識別子を獲得すること
により、1つの論理アドレス空間を特定する。
【0057】一方、ステップS33において、エントリ
の有効ビットが“0”である場合、すなわち、物理ペー
ジ番号から論理ページ番号を獲得する過程で論理ページ
番号が存在しない場合、ステップS34〜S36の処理
を行わないようにして処理を終了する。次に、本発明の
第3実施例によるアドレス変換装置を図面を参照しなが
ら説明する。本発明の第3実施例は、図1の逆アドレス
変換テーブル5aを複数段設けた場合のアドレス変換装
置の例である。
【0058】すなわち、図1の逆アドレス変換テーブル
5aは、論理アドレス空間6の論理ページ番号0〜mを
指定する最終段テーブルと、次段のテーブルを指定する
前段テーブルとを備える。最終段テーブルの各エントリ
0〜nは、単一仮想記憶の場合、図2に示すように、物
理ページ0〜nに対応する論理ページ番号0〜mと、エ
ントリに格納された論理ページ番号が有効であるかどう
かを示すフラグである有効ビットからなる。また、多重
仮想記憶の場合、図8に示すように、物理ページ0〜n
に対応する論理ページ番号0〜mと、エントリに格納さ
れた論理ページ番号が有効であるかどうかを示すフラグ
である有効ビットと、現在実行中のプログラムを示す識
別子からなる。なお、最終段テーブルに必要なエントリ
数は、逆変換する物理アドレス空間4のページ数分必要
である。
【0059】一方、前段テーブルの各エントリ0〜n
は、図11に示すように、次段の逆アドレス変換テーブ
ルの論理アドレス、すなわち、次段の逆アドレス変換テ
ーブルへのポインタと、2ビットで構成される最終段フ
ラグからなる。ここで、最終段フラグの値が“11”の
場合、次段の逆アドレス変換テーブルが最終段であるこ
とを示し、最終段フラグの値が“01”の場合、次段の
テーブルは最終段以外の逆アドレス変換テーブルである
ことを示し、最終段フラグの値が“00”の場合、この
逆アドレス変換テーブルのエントリは無効であることを
示す。なお、前段テーブルに必要なエントリ数は、計算
機システムにより任意である。
【0060】ここで、逆アドレス変換テーブルの段数
は、テーブルの段数を多くするとアドレスを逆変換する
時に手間がかかるので、2段程度が適当である。そし
て、2段で構成される逆アドレス変換テーブルの場合、
1段目の逆アドレス変換テーブルのエントリの分割数に
より、非連続な物理アドレス空間の先頭アドレスと領域
サイズのバウンダリが決定される。例えば、図12に示
すように、1段目の逆アドレス変換テーブル11を10
24個に分けた場合、先頭アドレスと領域サイズのバウ
ンダリは4MBとなる。
【0061】以上の構成において、図12に示すよう
に、非連続な物理アドレス空間10の物理アドレスを論
理アドレスに変換する場合、図13の物理アドレスが参
照される。ここで、図12は、物理アドレス空間10が
00000000H番地から16MB存在し、1000
0000H番地から4MB存在する場合で、逆アドレス
変換テーブルを2段構成にして、物理アドレス空間10
の00000000H番地から8MB、1000000
0H番地から4MBの物理アドレスを論理アドレスに変
換する例を示す。また、物理アドレスの内容は、図13
に示すように、物理ページ番号0〜nとオフセットから
なり、物理ページ番号0〜nは、10ビット構成の1段
目の逆アドレス変換テーブル11のインデックスと最終
段の逆アドレス変換テーブル12a、12b、12cの
インデックスとからなる。そして、物理ページ番号の1
段目の逆アドレス変換テーブル11のインデックスを参
照することにより、最終段の逆アドレス変換テーブル1
2a、12b、12cのいずれかを選択し、選択された
最終段の逆アドレス変換テーブル12a、12b、12
cにおいて、物理ページ番号の最終段の逆アドレス変換
テーブル12a、12b、12cのインデックスを参照
することにより、論理アドレス空間13の論理ページに
対応する論理ページ番号を得ることができる。この論理
ページ番号と物理アドレスのオフセットにより、論理ア
ドレスを容易に求めることができる。
【0062】次に、本発明の第3実施例によるアドレス
変換装置の動作について説明する。ページフォルト処理
では、まず、図14のステップS41に示すように、ペ
ージフォルトを起こした論理アドレスの内容から論理ペ
ージ番号を獲得する。
【0063】次に、ステップS42に示すように、アド
レス変換テーブルを参照することにより、論理ページ番
号に対応するエントリを獲得する。次に、ステップS4
3に示すように、物理アドレス空間の空きの物理ページ
を獲得する。
【0064】次に、ステップS44に示すように、ペー
ジフォルトの原因となった論理ページ番号に対応するア
ドレス変換テーブルのエントリに、ステップS43で獲
得した物理ページの物理ページ番号を設定する。
【0065】次に、ステップS45に示すように、物理
ページ番号を設定したアドレス変換テーブルのエントリ
の制御情報に含まれる有効ビットを“1”にする。次
に、ステップS46に示すように、ステップS43で獲
得した物理ページの物理ページ番号を、例えば、図13
に示すように、10ビットずつとなるように2つに分割
する。 次に、ステップS47に示すように、図12の
1段目の逆アドレス変換テーブル11のインデックスを
獲得する。ここで、1段目の逆アドレス変換テーブル1
1は、図12に示すように、計算機システムの立上がり
時に、既に作成されているものとした。
【0066】次に、ステップS48に示すように、1段
目の逆アドレス変換テーブル11のエントリの最終段フ
ラグを獲得する。次に、ステップS49に示すように、
ステップS48で獲得した最終段フラグの値が“11”
であるかどうかを判定する。そして、最終段フラグの値
が“11”、すなわち、次段の逆アドレス変換テーブル
が最終段の逆アドレス変換テーブル12a、12b、1
2cである場合、ステップS50に進み、最終段フラグ
の値が“11”でない場合、処理を終了する。
【0067】次に、ステップS50に示すように、図1
2の最終段の逆アドレス変換テーブル12のインデック
スを獲得する。次に、ステップS51に示すように、最
終段の逆アドレス変換テーブル12ののエントリを獲得
する。
【0068】次に、ステップS52に示すように、ペー
ジフォルトを起こした論理アドレスの内容の論理ページ
番号を、最終段の逆アドレス変換テーブル12のエント
リに設定する。
【0069】次に、ステップS53に示すように、最終
段の逆アドレス変換テーブル12のエントリの有効ビッ
トを“1”にする。なお、多重仮想記憶方式を用いた場
合、現在実行中のプログラムの識別子を逆アドレス変換
テーブル12のエントリに設定する処理が、追加して行
われる。
【0070】次に、物理アドレスから論理アドレスへの
アドレス変換処理について説明する。まず、図15のス
テップS61に示すように、物理アドレス空間における
物理アドレスの内容から物理ページ番号を獲得する。
【0071】次に、ステップS62に示すように、ステ
ップS61で獲得した物理ページの物理ページ番号を、
10ビットずつに分割する。次に、ステップS63に示
すように、ステップS61で獲得した物理ページ番号か
ら1段目の逆アドレス変換テーブル11のインデックス
を獲得する。
【0072】次に、ステップS64に示すように、1段
目の逆アドレス変換テーブル11のエントリの最終段フ
ラグを獲得する。次に、ステップS65に示すように、
ステップS64で獲得した最終段フラグの値が“1
1”、すなわち、次段の逆アドレス変換テーブルが最終
段の逆アドレス変換テーブル12a、12b、12cで
ある場合、ステップS66に進み、最終段フラグの値が
“11”でない場合、処理を終了する。
【0073】次に、ステップS66に示すように、ステ
ップS61で獲得した物理ページ番号から最終段の逆ア
ドレス変換テーブル12のインデックスを獲得する。次
に、ステップS67に示すように、最終段の逆アドレス
変換テーブル12のエントリを獲得する。
【0074】次に、ステップS68に示すように、ステ
ップS67で獲得したエントリの有効ビットが“1”で
ある場合、ステップS69に進み、有効ビットが“0”
である場合、処理を終了する。
【0075】次に、ステップS69に示すように、最終
段の逆アドレス変換テーブル12のエントリの論理ペー
ジ番号を獲得する。次に、ステップS70に示すよう
に、ステップS69で獲得した論理ページ番号と、物理
アドレスのオフセットにより、論理アドレスを得る。
【0076】なお、多重仮想記憶方式を用いた場合、逆
アドレス変換テーブル12のエントリから現在実行中の
プログラムの識別子を獲得することにより、1つの論理
アドレス空間を特定する処理が、追加して行われる。
【0077】また、上述した実施例では、図1の物理ア
ドレス空間4を主記憶装置1に設けた場合について説明
したが、物理アドレス空間4を主記憶装置1以外のもの
に設けた場合においても、本発明は適用可能である。例
えば、主記憶装置と特殊なレジスタ群とを有する計算機
システムにおいて、主記憶装置の最終アドレスと特殊な
レジスタ群の先頭アドレスが大きく離れていて、途中に
未実装の物理アドレス空間が存在する場合でも、逆アド
レス変換テーブルの領域を必要最小限の大きさに抑える
ことができる。
【0078】
【発明の効果】以上説明したように、請求項1の発明に
よれば、物理アドレスを論理アドレスに変換する逆アド
レス変換テーブルを備えることにより、物理アドレスか
ら論理アドレスの変換を容易に行うことができる。
【0079】また、請求項2の発明によれば、物理アド
レスに対応する論理アドレスの論理ページ番号を、逆ア
ドレス変換テーブルの各エントリに格納することによ
り、逆アドレス変換テーブルの1度の検索で論理ページ
番号を得ることができ、物理アドレスから論理アドレス
の変換を容易に行うことができる。
【0080】また、請求項3の発明によれば、論理アド
レスを利用しているプログラムの識別子を逆アドレス変
換テーブルの各エントリに格納することにより、各プロ
グラムに同じ論理アドレスを割り当てた場合において
も、特定のプログラムに容易にアクセスでき、プログラ
ムをデバッグなどを行う場合の効率を向上させることが
できる。
【0081】また、請求項4の発明によれば、フラグ情
報を参照することにより、無効な論理ページ番号から論
理アドレスを算出する処理を行うことを省略でき、物理
アドレスから論理アドレスへの変換処理を高速化するこ
とができる。
【0082】また、請求項5の発明によれば、不連続の
物理アドレス空間に対応させて逆アドレス変換テーブル
を設けることにより、全ての物理アドレス空間の物理ア
ドレスを論理アドレスに変換しない場合、逆アドレス変
換テーブルを記憶するために必要な領域を少なくするこ
とができる。
【0083】また、請求項6の発明によれば、物理アド
レスを論理アドレスに変換する逆アドレス変換テーブル
を参照することにより、物理アドレスから論理アドレス
への変換を容易に行うことができる。
【0084】また、請求項7の発明によれば、物理アド
レスから論理アドレスへの変換を、物理アドレス空間を
段階に分けて行うようにしたので、不連続の物理アドレ
ス空間に対応させて逆アドレス変換テーブルを設けるこ
とができ、逆アドレス変換テーブルを記憶するために必
要な領域を少なくすることができる。
【図面の簡単な説明】
【図1】本発明の第1実施例によるアドレス変換装置の
概略構成を示すブロック図である。
【図2】本発明の第1実施例による逆アドレス変換テー
ブルのフィールドの構成を示す図である。
【図3】本発明の第1実施例によるアドレス変換方法を
示す概念図である。
【図4】本発明の第1実施例によるアドレス変換の流れ
を示す概念図である。
【図5】本発明の第1実施例による逆アドレス変換テー
ブルのエントリ数を示す図である。
【図6】本発明の第1実施例によるアドレス変換テーブ
ルに情報を設定するときの動作を示すフローチャートで
ある。
【図7】本発明の第1実施例によるアドレス変換装置の
動作を示すフローチャートである。
【図8】本発明の第2実施例による逆アドレス変換テー
ブルのフィールドの構成を示す図である。
【図9】本発明の第2実施例によるアドレス変換テーブ
ルに情報を設定するときの動作を示すフローチャートで
ある。
【図10】本発明の第2実施例によるアドレス変換装置
の動作を示すフローチャートである。
【図11】本発明の第3実施例による最終段以外の逆ア
ドレス変換テーブルのフィールドの構成を示す図であ
る。
【図12】本発明の第3実施例によるアドレス変換方法
を示す概念図である。
【図13】本発明の第3実施例による物理アドレスのフ
ィールド構成を示す図である。
【図14】本発明の第3実施例によるアドレス変換テー
ブルに情報を設定するときの動作を示すフローチャート
である。
【図15】本発明の第3実施例によるアドレス変換装置
の動作を示すフローチャートである。
【図16】従来の単一仮想記憶方式におけるアドレス変
換方法を示す概念図である。
【図17】従来の多重仮想記憶方式におけるアドレス変
換方法を示す概念図である。
【図18】従来の論理アドレス空間又は物理アドレス空
間におけるページの概念を示す図である。
【図19】従来のアドレス変換テーブルのフィールドの
構成を示す図である。
【図20】従来のアドレス変換装置の動作を示すフロー
チャートである。
【図21】従来のアドレス変換方法を示す概念図であ
る。
【符号の説明】
1 主記憶装置 2 アドレス変換装置 3 処理装置 4、7、10 物理アドレス空間 5a、8 逆アドレス変換テーブル 5b アドレス変換テーブル 6、9、13 論理アドレス空間 11 1段目逆アドレス変換テーブル 12a、12b、12c 最終段逆アドレス変換テーブ

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 仮想記憶方式によるアドレス変換装置に
    おいて、物理アドレス(実アドレス)を論理アドレス
    (仮想アドレス)に変換する逆アドレス変換テーブルを
    備えることを特徴とするアドレス変換装置。
  2. 【請求項2】 前記逆アドレス変換テーブルは、物理ア
    ドレス空間の各物理ページに対応するエントリを備え、
    前記物理アドレスに対応する論理アドレスの論理ページ
    番号を、前記各エントリに格納することを特徴とする請
    求項1に記載のアドレス変換装置。
  3. 【請求項3】 前記逆アドレス変換テーブルは、物理ア
    ドレス空間の各物理ページに対応するエントリを備え、
    前記物理アドレスに対応する論理アドレスの論理ページ
    番号と前記論理アドレスを利用しているプログラムの識
    別子とを、前記エントリに格納することを特徴とする請
    求項1に記載のアドレス変換装置。
  4. 【請求項4】 前記エントリは、格納された論理ページ
    番号が有効であるかどうかを示すフラグ情報を有するこ
    とを特徴とする請求項2又は3に記載のアドレス変換装
    置。
  5. 【請求項5】 前記逆アドレス変換テーブルは、複数の
    段階に分割した物理アドレス空間の各物理ページに対応
    するエントリを各段階毎に備えることを特徴とする請求
    項1に記載のアドレス変換装置。
  6. 【請求項6】 仮想記憶方式によるアドレス変換方法に
    おいて、物理アドレスを論理アドレスに変換する逆アド
    レス変換テーブルを参照することにより、物理アドレス
    を論理アドレスに変換することを特徴とするアドレス変
    換方法。
  7. 【請求項7】 仮想記憶方式によるアドレス変換方法に
    おいて、物理アドレス空間を複数の段階に分割し、前記
    物理アドレス空間の各物理ページに対応して各段階毎に
    備えられたエントリを参照することにより、物理アドレ
    スを論理アドレスに変換することを特徴とするアドレス
    変換方法。
JP7184045A 1995-07-20 1995-07-20 アドレス変換装置及びアドレス変換方法 Withdrawn JPH0934788A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7184045A JPH0934788A (ja) 1995-07-20 1995-07-20 アドレス変換装置及びアドレス変換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7184045A JPH0934788A (ja) 1995-07-20 1995-07-20 アドレス変換装置及びアドレス変換方法

Publications (1)

Publication Number Publication Date
JPH0934788A true JPH0934788A (ja) 1997-02-07

Family

ID=16146406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7184045A Withdrawn JPH0934788A (ja) 1995-07-20 1995-07-20 アドレス変換装置及びアドレス変換方法

Country Status (1)

Country Link
JP (1) JPH0934788A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007519102A (ja) * 2003-12-24 2007-07-12 インテル・コーポレーション グラフィックスメモリ・スイッチ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007519102A (ja) * 2003-12-24 2007-07-12 インテル・コーポレーション グラフィックスメモリ・スイッチ

Similar Documents

Publication Publication Date Title
US4992936A (en) Address translation method and apparatus therefor
CN111090628A (zh) 一种数据处理方法、装置、存储介质及电子设备
US5307494A (en) File name length augmentation method
JP2003114816A (ja) コンピュータメモリにインデックスを記憶するデータ構造
JP3731859B2 (ja) ハンドヘルド装置のデータ記憶およびデータ取出しのための方法および装置
JP2768503B2 (ja) 仮想記憶アドレス空間アクセス制御方式
US5519860A (en) Central processor index sort followed by direct record sort and write by an intelligent control unit
JPH02244274A (ja) テキストからのキーワード抽出方法および装置
JPH0934788A (ja) アドレス変換装置及びアドレス変換方法
CN111026890A (zh) 基于索引表的图片数据存储方法、系统、装置和存储介质
JPS6273347A (ja) アドレス変換装置
CN120086275B (zh) 数据查询系统、方法、装置、电子设备、介质及产品
US20020124164A1 (en) Method for starting computer system
JP2507399B2 (ja) デ―タベ―ス装置
JPH07219823A (ja) 情報処理装置
JPS5837884A (ja) アドレス変換方式
CN116932428A (zh) 用于内存管理单元的透传数据的方法以及内存管理单元
JPS59140566A (ja) 情報処理装置
CN114676289A (zh) 前缀树的处理方法、装置、终端及存储介质
JPS589452B2 (ja) フア−ムウエアホウシキ
JP2728151B2 (ja) プログラマブルコントローラ
JP2635310B2 (ja) アドレス変換装置
JPS63282543A (ja) 仮想アドレス変換方式
JPH02254550A (ja) 情報記憶装置および情報処理装置
JPS59191649A (ja) プログラムの生成方式

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20021001