JPH05334192A - Cpuアドレス変換方式 - Google Patents
Cpuアドレス変換方式Info
- Publication number
- JPH05334192A JPH05334192A JP4164364A JP16436492A JPH05334192A JP H05334192 A JPH05334192 A JP H05334192A JP 4164364 A JP4164364 A JP 4164364A JP 16436492 A JP16436492 A JP 16436492A JP H05334192 A JPH05334192 A JP H05334192A
- Authority
- JP
- Japan
- Prior art keywords
- address
- segment
- register
- linear
- offset
- 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
- 230000011218 segmentation Effects 0.000 claims abstract description 16
- 238000012986 modification Methods 0.000 claims abstract description 8
- 230000004048 modification Effects 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims description 27
- 230000007246 mechanism Effects 0.000 claims description 17
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 230000007704 transition Effects 0.000 claims 2
- 238000007726 management method Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 3
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 複数のメモリ管理方式に対応して作成された
プログラム資産の有効活用を図る。 【構成】 異なるメモリ管理方式へ移行したときその方
式内で他の方式における論理アドレスが正しく変換され
るように一部の値を予め変換して、異なるメモリ管理方
式のプログラムが実メモリ上のデータを論理アドレスを
用いて受渡しする際にアドレス指定を変更するのみでプ
ログラムによる処理を実行することなく参照する。これ
によって、自プログラムでないメモリ管理方式への依存
度が低くなり、処理のオーバヘッドをプログラム側で消
去できる。
プログラム資産の有効活用を図る。 【構成】 異なるメモリ管理方式へ移行したときその方
式内で他の方式における論理アドレスが正しく変換され
るように一部の値を予め変換して、異なるメモリ管理方
式のプログラムが実メモリ上のデータを論理アドレスを
用いて受渡しする際にアドレス指定を変更するのみでプ
ログラムによる処理を実行することなく参照する。これ
によって、自プログラムでないメモリ管理方式への依存
度が低くなり、処理のオーバヘッドをプログラム側で消
去できる。
Description
【0001】
【産業上の利用分野】本発明は、コンピュータなどに利
用し、複数の方式を切り替えてメモリ管理を実行する際
のCPUアドレス変換方式に関する。
用し、複数の方式を切り替えてメモリ管理を実行する際
のCPUアドレス変換方式に関する。
【0002】
【従来の技術】従来のCPUアドレス変換方式では、セ
グメンテーションやページング中の一方式のみを実現し
ている。又はいくつかの方式の切り替えを出来るように
している。このような従来のCPUアドレス変換方式
は、ページング機構とセグメンテーション機構とを有し
ており、さらにセグメント指示値がアドレス空間に線形
対応するメモリ管理方式を実現する実アドレス仮想化機
構を備える場合がある。これらの機構を有することによ
り、動的なメモリ管理方式の切り替えが出来る。
グメンテーションやページング中の一方式のみを実現し
ている。又はいくつかの方式の切り替えを出来るように
している。このような従来のCPUアドレス変換方式
は、ページング機構とセグメンテーション機構とを有し
ており、さらにセグメント指示値がアドレス空間に線形
対応するメモリ管理方式を実現する実アドレス仮想化機
構を備える場合がある。これらの機構を有することによ
り、動的なメモリ管理方式の切り替えが出来る。
【0003】セグメンテーション・ページング方式を動
作させる場合、セグメンテーション機構とページング機
構とを同時に選択する。そして、CPU内のセグメント
指示レジスタを有効にしてメモリ上のセグメント情報ブ
ロックへのポインタが格納され、ブロック内情報に応じ
て管理アドレスをリニアアドレスに変換し、さらにペー
ジテーブルにより物理アドレスに変換する。
作させる場合、セグメンテーション機構とページング機
構とを同時に選択する。そして、CPU内のセグメント
指示レジスタを有効にしてメモリ上のセグメント情報ブ
ロックへのポインタが格納され、ブロック内情報に応じ
て管理アドレスをリニアアドレスに変換し、さらにペー
ジテーブルにより物理アドレスに変換する。
【0004】また、ページング方式のみの動作をさせる
場合、セグメンテーション機構及びセグメントレジスタ
を無効にする。又はセグメンテーション機構を選択し、
全セグメントがリニアアドレス空間全体を指すようにし
て論理アドレスとリニアアドレスを一致させ、ページン
グ機構によりページテーブを参照してリニアアドレスを
物理アドレスに変換している。
場合、セグメンテーション機構及びセグメントレジスタ
を無効にする。又はセグメンテーション機構を選択し、
全セグメントがリニアアドレス空間全体を指すようにし
て論理アドレスとリニアアドレスを一致させ、ページン
グ機構によりページテーブを参照してリニアアドレスを
物理アドレスに変換している。
【0005】また、実アドレス仮想化機構では、セグメ
ント指示レジスタの内容はそのままリニアアドレス又は
物理アドレスに線形変換している。
ント指示レジスタの内容はそのままリニアアドレス又は
物理アドレスに線形変換している。
【0006】
【発明が解決しようとする課題】このように従来例のC
PUアドレス変換方式では、動的なメモリ管理方式の切
り替えに際して論理アドレスの意味が変化し、特にセグ
メント指示レジスタに格納される値の変換方式が変化す
る。したがって、異なるメモリ管理方式のプログラム間
で実メモリ上のデータを論理アドレスを用いて受渡しす
る場合、同一のリニアアドレス空間を共有していても、
プログラム側での論理アドレス変換処理が必要となる。
さらに、場合によってはセグメント情報ブロックの生成
処理まで必要となり、自プログラムでないメモリ管理方
式への依存度が大きく、また、処理自体がオーバヘッド
になるという問題があった。
PUアドレス変換方式では、動的なメモリ管理方式の切
り替えに際して論理アドレスの意味が変化し、特にセグ
メント指示レジスタに格納される値の変換方式が変化す
る。したがって、異なるメモリ管理方式のプログラム間
で実メモリ上のデータを論理アドレスを用いて受渡しす
る場合、同一のリニアアドレス空間を共有していても、
プログラム側での論理アドレス変換処理が必要となる。
さらに、場合によってはセグメント情報ブロックの生成
処理まで必要となり、自プログラムでないメモリ管理方
式への依存度が大きく、また、処理自体がオーバヘッド
になるという問題があった。
【0007】本発明は、このような従来の技術における
問題を解決するものであり、複数のメモリ管理方式に対
応して作成されたプログラム資産の有効活用が出来るC
PUアドレス変換方式の提供を目的とする。
問題を解決するものであり、複数のメモリ管理方式に対
応して作成されたプログラム資産の有効活用が出来るC
PUアドレス変換方式の提供を目的とする。
【0008】
【課題を解決するための手段】上記目的を達成するため
に、本発明のCPUアドレス変換方式は、セグメンテー
ション機構が選択されている場合にセグメント情報ブロ
ックへのポインタを表わし、選択されない状態へ遷移し
た場合には対応するブロック内のベースアドレスを表わ
してベースド修飾に利用するセグメントレジスタと、セ
グメンテーション機構が選択されている場合にプログラ
ムがリニアアドレスをオフセットとして利用するリニア
アドレス全空間対応の専用セグメント指示子と、実アド
レス仮想化機構が選択されている場合にそのモードでの
セグメント指示レジスタとして利用され、リニアアドレ
スと線形対応する値を含み、選択されない状態へ遷移し
た場合には線形変換した後の値を表わしてベースド修飾
に利用する仮想モード・セグメントレジスタとを備えて
いる。
に、本発明のCPUアドレス変換方式は、セグメンテー
ション機構が選択されている場合にセグメント情報ブロ
ックへのポインタを表わし、選択されない状態へ遷移し
た場合には対応するブロック内のベースアドレスを表わ
してベースド修飾に利用するセグメントレジスタと、セ
グメンテーション機構が選択されている場合にプログラ
ムがリニアアドレスをオフセットとして利用するリニア
アドレス全空間対応の専用セグメント指示子と、実アド
レス仮想化機構が選択されている場合にそのモードでの
セグメント指示レジスタとして利用され、リニアアドレ
スと線形対応する値を含み、選択されない状態へ遷移し
た場合には線形変換した後の値を表わしてベースド修飾
に利用する仮想モード・セグメントレジスタとを備えて
いる。
【0009】
【作用】このような上記本発明のCPUアドレス変換方
式にあって、従来からのセグメント指示はセグメントレ
ジスタの指定により、セグメンテーション機構を通じて
セグメント情報ブロックの中のベースアドレスが利用さ
れる。
式にあって、従来からのセグメント指示はセグメントレ
ジスタの指定により、セグメンテーション機構を通じて
セグメント情報ブロックの中のベースアドレスが利用さ
れる。
【0010】また、ページング方式のリニアアドレスを
利用する場合は、専用セグメント指示子を指定すること
により、リニアアドレスをオフセットに仮想化すること
ができる。実アドレス仮想化状態の論理アドレスは、セ
グメント値としての仮想セグメントレジスタをオフセッ
トのベースド修飾にし、セグメントは、リニアアドレス
用専用セグメント指示子を指定することにより仮想化す
る。
利用する場合は、専用セグメント指示子を指定すること
により、リニアアドレスをオフセットに仮想化すること
ができる。実アドレス仮想化状態の論理アドレスは、セ
グメント値としての仮想セグメントレジスタをオフセッ
トのベースド修飾にし、セグメントは、リニアアドレス
用専用セグメント指示子を指定することにより仮想化す
る。
【0011】ページング方式では、他の方式でのセグメ
ント値のセグメントレジスタ又は仮想セグメントレジス
タをベースド修飾レジスタとして指定することにより、
オフセットとともにリニアアドレスに仮想化する。
ント値のセグメントレジスタ又は仮想セグメントレジス
タをベースド修飾レジスタとして指定することにより、
オフセットとともにリニアアドレスに仮想化する。
【0012】実アドレス仮想化状態にあって、セグメン
テーション・ページング方式でのセグメントレジスタ指
定はベースド修飾用レジスタにし、セグメント指定はリ
ニアアドレス専用セグメント指示子を利用して仮想化さ
れ、ページング方式のリニアアドレスは、セグメント指
定にリニアアドレス専用セグメント指示子を用いた上で
オフセットとして仮想化する。
テーション・ページング方式でのセグメントレジスタ指
定はベースド修飾用レジスタにし、セグメント指定はリ
ニアアドレス専用セグメント指示子を利用して仮想化さ
れ、ページング方式のリニアアドレスは、セグメント指
定にリニアアドレス専用セグメント指示子を用いた上で
オフセットとして仮想化する。
【0013】
【実施例】次に、本発明のCPUアドレス変換方式の実
施例を図面に基づいて説明する。図1、図2、図3は実
施例における各処理内容を示している。図1、図2、図
3において、この例は、CPU1と、セグメント情報ブ
ロック2と、ページテーブル3とを有している。CPU
1は、セグメントレジスタ11とリニアアドレス専用セ
グメント指示子が論理アドレスとして指定されたときに
参照されるリニアアドレス対応セグメント情報12と、
仮想セグメントレジスタ13を備えている。
施例を図面に基づいて説明する。図1、図2、図3は実
施例における各処理内容を示している。図1、図2、図
3において、この例は、CPU1と、セグメント情報ブ
ロック2と、ページテーブル3とを有している。CPU
1は、セグメントレジスタ11とリニアアドレス専用セ
グメント指示子が論理アドレスとして指定されたときに
参照されるリニアアドレス対応セグメント情報12と、
仮想セグメントレジスタ13を備えている。
【0014】次に、この実施例の構成における処理につ
いて説明する。図1に示すセグメンテーション・ページ
ング方式の実行時において、プログラムは通常セグメン
ト指定にセグメントレジスタ11を利用している。CP
U1はセグメントとオフセットが指定されるとセグメン
トレジスタ11が指すセグメント情報ブロック2を参照
してベースアドレスを読み出し、有効オフセットを加え
てリニアアドレスとし、ページテーブル3を参照して物
理アドレスへと変換する。そして、セグメンテーション
・ページング方式から他の方式へ移行する場合、CPU
1はセグメントレジスタ11内の情報を退避し、セグメ
ント情報ブロック2内部のベースアドレス値に書き換え
を行う。他の方式では、グメントレジスタ11はオフセ
ットをベースド修飾レジスタとして利用できるようにな
り、正常にアドレスが変換される。
いて説明する。図1に示すセグメンテーション・ページ
ング方式の実行時において、プログラムは通常セグメン
ト指定にセグメントレジスタ11を利用している。CP
U1はセグメントとオフセットが指定されるとセグメン
トレジスタ11が指すセグメント情報ブロック2を参照
してベースアドレスを読み出し、有効オフセットを加え
てリニアアドレスとし、ページテーブル3を参照して物
理アドレスへと変換する。そして、セグメンテーション
・ページング方式から他の方式へ移行する場合、CPU
1はセグメントレジスタ11内の情報を退避し、セグメ
ント情報ブロック2内部のベースアドレス値に書き換え
を行う。他の方式では、グメントレジスタ11はオフセ
ットをベースド修飾レジスタとして利用できるようにな
り、正常にアドレスが変換される。
【0015】次に、図2に示すページング方式の実行時
において、論理アドレスはリニアアドレスと等しく、C
PU1は有効リニアアドレスをそのままページテーブル
3に対応させて物理アドレスに変換する。他の方式へ移
行した場合、リニアアドレスはリニアアドレス空間全体
を表わすセグメント内オフセットと見ることが出来るた
めセグメントのベースアドレスがリニアアドレス空間の
先頭を示すようなリニアアドレス対応セグメント情報1
2をリニアアドレス専用セグメント指示子を利用してセ
グメントとして指定する。この指定によりリニアアドレ
スをオフセットとして利用して正常にアドレスが変換さ
れる。
において、論理アドレスはリニアアドレスと等しく、C
PU1は有効リニアアドレスをそのままページテーブル
3に対応させて物理アドレスに変換する。他の方式へ移
行した場合、リニアアドレスはリニアアドレス空間全体
を表わすセグメント内オフセットと見ることが出来るた
めセグメントのベースアドレスがリニアアドレス空間の
先頭を示すようなリニアアドレス対応セグメント情報1
2をリニアアドレス専用セグメント指示子を利用してセ
グメントとして指定する。この指定によりリニアアドレ
スをオフセットとして利用して正常にアドレスが変換さ
れる。
【0016】図3に示す実アドレス仮想化状態では、通
常の論理アドレスのセグメント値を線形変換してセグメ
ントベースアドレスにし、オフセットを加えてリニアア
ドレスとしてページテーブル3で物理アドレスに変換す
る。このセグメント値を格納する仮想セグメントレジス
タ13は、他のメモリ管理方式へ移行した場合にCPU
1により内容が退避されて線形変換後の値に置き換えら
れる。他の方式では仮想セグメントレジスタ13がリニ
アアドレスと同意の値を持ち、上記アドレス指定方式に
より正しくアドレスが変換される。
常の論理アドレスのセグメント値を線形変換してセグメ
ントベースアドレスにし、オフセットを加えてリニアア
ドレスとしてページテーブル3で物理アドレスに変換す
る。このセグメント値を格納する仮想セグメントレジス
タ13は、他のメモリ管理方式へ移行した場合にCPU
1により内容が退避されて線形変換後の値に置き換えら
れる。他の方式では仮想セグメントレジスタ13がリニ
アアドレスと同意の値を持ち、上記アドレス指定方式に
より正しくアドレスが変換される。
【0017】
【発明の効果】以上のように、本発明のCPUアドレス
変換方式は、異なるメモリ管理方式へ移行した場合、そ
の方式内で他の方式における論理アドレスが正しく変換
されるように一部の値を予め変換するようにしているた
め、複数のメモリ管理方式に対応して作成されたプログ
ラム資産の有効活用が出来るという効果を有する。すな
わち、異なるメモリ管理方式のプログラムが実メモリ上
のデータを論理アドレスを用いて受渡しする際にアドレ
ス指定を変えるだけでプログラムによる処理を実行する
ことなく参照できるようになる。したがって、自プログ
ラムでないメモリ管理方式への依存度が低く、処理のオ
ーバヘッドをプログラム側で消去できる。
変換方式は、異なるメモリ管理方式へ移行した場合、そ
の方式内で他の方式における論理アドレスが正しく変換
されるように一部の値を予め変換するようにしているた
め、複数のメモリ管理方式に対応して作成されたプログ
ラム資産の有効活用が出来るという効果を有する。すな
わち、異なるメモリ管理方式のプログラムが実メモリ上
のデータを論理アドレスを用いて受渡しする際にアドレ
ス指定を変えるだけでプログラムによる処理を実行する
ことなく参照できるようになる。したがって、自プログ
ラムでないメモリ管理方式への依存度が低く、処理のオ
ーバヘッドをプログラム側で消去できる。
【図1】本発明のCPUアドレス変換方式の実施例にお
けるセグメンテーション・ページング方式実行時におけ
る処理内容を示すブロック図である。
けるセグメンテーション・ページング方式実行時におけ
る処理内容を示すブロック図である。
【図2】実施例におけるページング方式実行時の処理内
容を示すブロック図である。
容を示すブロック図である。
【図3】実施例における実アドレス仮想化状態の処理内
容を示すブロック図である。
容を示すブロック図である。
1 CPU 2 セグメント情報ブロック 3 ページテーブル 11 セグメントレジスタ 12 リニアアドレス対応セグメント情報 13 仮想セグメントレジスタ
Claims (1)
- 【請求項1】 セグメンテーション機構が選択されてい
る場合にセグメント情報ブロックへのポインタを表わ
し、選択されない状態へ遷移した場合には対応するブロ
ック内のベースアドレスを表わしてベースド修飾に利用
するセグメントレジスタと、 セグメンテーション機構が選択されている場合にプログ
ラムがリニアアドレスをオフセットとして利用するリニ
アアドレス全空間対応の専用セグメント指示子と、 実アドレス仮想化機構が選択されている場合にそのモー
ドでのセグメント指示レジスタとして利用され、リニア
アドレスと線形対応する値を含み、選択されない状態へ
遷移した場合には線形変換した後の値を表わしてベース
ド修飾に利用する仮想モード・セグメントレジスタと、 を備えることを特徴とするCPUアドレス変換方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4164364A JPH05334192A (ja) | 1992-05-29 | 1992-05-29 | Cpuアドレス変換方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4164364A JPH05334192A (ja) | 1992-05-29 | 1992-05-29 | Cpuアドレス変換方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05334192A true JPH05334192A (ja) | 1993-12-17 |
Family
ID=15791744
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4164364A Pending JPH05334192A (ja) | 1992-05-29 | 1992-05-29 | Cpuアドレス変換方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH05334192A (ja) |
-
1992
- 1992-05-29 JP JP4164364A patent/JPH05334192A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4951195A (en) | Condition code graph analysis for simulating a CPU processor | |
| US5301302A (en) | Memory mapping and special write detection in a system and method for simulating a CPU processor | |
| US5167023A (en) | Translating a dynamic transfer control instruction address in a simulated CPU processor | |
| US10318407B2 (en) | Allocating a debug instruction set based on the current operating state in a multi-instruction-set data processing apparatus | |
| US4347565A (en) | Address control system for software simulation | |
| US5815686A (en) | Method and apparatus for address space translation using a TLB | |
| US7725677B1 (en) | Method and apparatus for improving segmented memory addressing | |
| US20030149963A1 (en) | Condition code flag emulation for program code conversion | |
| JPH05257803A (ja) | 仮想記憶空間管理方法及びアドレス計算装置 | |
| JP2015084260A (ja) | プロセッサ及びシステム | |
| JPH0532772B2 (ja) | ||
| US6606697B1 (en) | Information processing apparatus and memory control method | |
| JP2011523741A (ja) | ホストデータ処理装置内におけるデバイスエミュレーションのサポート | |
| EP0327198B1 (en) | Processor simulation | |
| JPH07120318B2 (ja) | アクセス及び欠陥論理信号を用いて主メモリユニットを保護する装置及び方法 | |
| JPH05334192A (ja) | Cpuアドレス変換方式 | |
| US7536498B2 (en) | Method and apparatus for address mapping | |
| US6243798B1 (en) | Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction | |
| JP2798275B2 (ja) | 仮想記憶アドレス空間アクセス制御方式 | |
| JPH05250263A (ja) | 仮想プロセッサ方式及び不揮発化記憶方式 | |
| JPS6273346A (ja) | アドレス変換装置 | |
| JPH0447853B2 (ja) | ||
| JPH07141252A (ja) | データ処理装置 | |
| JPS589452B2 (ja) | フア−ムウエアホウシキ | |
| JPH04340143A (ja) | ディジタル計算機 |