JPS63271648A - Address control system for common region - Google Patents

Address control system for common region

Info

Publication number
JPS63271648A
JPS63271648A JP62107189A JP10718987A JPS63271648A JP S63271648 A JPS63271648 A JP S63271648A JP 62107189 A JP62107189 A JP 62107189A JP 10718987 A JP10718987 A JP 10718987A JP S63271648 A JPS63271648 A JP S63271648A
Authority
JP
Japan
Prior art keywords
address
common area
common
virtual storage
register
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
Application number
JP62107189A
Other languages
Japanese (ja)
Inventor
Kazunori Hiraishi
平石 壽徳
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP62107189A priority Critical patent/JPS63271648A/en
Publication of JPS63271648A publication Critical patent/JPS63271648A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To remove a common region from a common address region and to improve the utilization efficiency of a virtual storage space by providing common region among virtual storage spaces of a multiplex virtual storage system computer in a region determined at every virtual storage space. CONSTITUTION:An instruction control part 14 controls instructions of a processor and informs an address discrimination part 13 of a general register number as the operand of an instruction and the execution logic address of data in the case of a load instruction to a general register 11. The address discrimination part 13 discriminates whether or not the reported address is within the range of the region from the start address to the end address held in an address correction register 10. Then when the address is within the range, the common region display 12 of the operand provided corresponding to the general register 11 is set on. An address correction part 15 outputs an execution logic address with an address difference held in the register 10.

Description

【発明の詳細な説明】 〔概 要〕 多重仮想記憶方式の計算機の仮想記憶空間の間の共通領
域を、空間ごとに異なるアドレスに設けることを可能に
するアドレス制御方式である。
DETAILED DESCRIPTION OF THE INVENTION [Summary] This is an address control method that makes it possible to provide a common area between virtual memory spaces of a computer using a multiple virtual memory system at a different address for each space.

空間ごとに定めた共通領域のアドレス範囲と、所定の共
通領域とのアドレス差とをレジスタに保持し、汎用レジ
スタに共通領域からロードがあったことをアドレス範囲
から識別して表示しておき、その汎用レジスタが記憶ア
ドレスのベースに使われるときには、アドレス差によっ
て記憶アドレスを補正する。
The address range of the common area determined for each space and the address difference with the predetermined common area are held in a register, and the fact that a general-purpose register has been loaded from the common area is identified and displayed from the address range, When the general-purpose register is used as a base for a storage address, the storage address is corrected based on the address difference.

この方式により、共通領域のアドレスを空間ごとに定め
ることができ、記憶空間を効率よく利用することができ
る。
With this method, addresses of common areas can be determined for each space, and storage space can be used efficiently.

〔産業上の利用分野〕[Industrial application field]

本発明は、多重仮想記憶方式の計算機のアドレス制御に
係り、特に仮想記憶空間間の共通領域を空間ごとの異な
るアドレス領域に設けることを可能にするアドレス制御
方式に関する。
The present invention relates to address control in a computer using a multiple virtual memory system, and particularly to an address control system that allows common areas between virtual memory spaces to be provided in different address areas for each space.

複数の仮想記憶空間を許す、多重仮想記憶方式の計算機
において、異なる仮想記憶空間の間で共通内容の領域を
設け、この共ii1領域を空間間の通信等の手段にする
ことがしばしば必要になる。
In a computer using a multiple virtual memory system that allows multiple virtual memory spaces, it is often necessary to provide an area with common contents between different virtual memory spaces, and to use this common area as a means of communication between the spaces. .

〔従来の技術〕[Conventional technology]

第2図は、計算機の構成例を示すブロック図である。 FIG. 2 is a block diagram showing an example of the configuration of a computer.

処理装置1は複数個の汎用レジスタ、各種の制御レジス
タ、演算制御機構、及びアドレス変換機構等からなり、
主記憶装置2と接続して、その記憶領域にアクセスする
機能を持ち、主記憶装置2にロードされているプログラ
ムを実行する。
The processing device 1 includes a plurality of general-purpose registers, various control registers, an arithmetic control mechanism, an address conversion mechanism, etc.
It has the function of connecting to the main storage device 2 and accessing its storage area, and executes the program loaded in the main storage device 2.

又処理装置1は、例えば磁気ディスク記憶装置等からな
る外部記憶装置3と接続し、外部記憶装置3に格納する
プログラム及びデータから、所要の部分を主記憶装置2
にロードして処理する。
The processing device 1 is also connected to an external storage device 3 consisting of, for example, a magnetic disk storage device, and stores required portions of programs and data stored in the external storage device 3 in the main storage device 2.
and process it.

多重板想記tα方式の計算機の場合に、所要の処理を行
うプログラム及びデータからなる仮想記憶空間の所要の
ページを、外部記憶装置3に保持し、所要のページを外
部記憶装置3から主記憶装置2の実ページにロードする
In the case of a multi-board memory tα type computer, the required pages of the virtual storage space consisting of programs and data for performing the required processing are held in the external storage device 3, and the required pages are transferred from the external storage device 3 to the main memory. Load into the real page of device 2.

処理装置1では、プログラムの実行制御及びデータへの
アクセスにおいて、それらのプログラムの命令アドレス
又は命令のオペランドアドレスとして、仮想記憶空間の
論理アドレス(以下において実効論理アドレスという)
を生成する。
In the processing device 1, when controlling program execution and accessing data, a logical address in a virtual storage space (hereinafter referred to as an effective logical address) is used as an instruction address or an operand address of an instruction for the program.
generate.

実効論理アドレスは、一般に命令で指定される汎用レジ
スタの内容をベースのアドレスとし、これに命令で指定
される変位量を加えることによって生成される。
An effective logical address is generally generated by using the contents of a general-purpose register specified by an instruction as a base address and adding a displacement amount specified by the instruction to this address.

実効論理アドレスによって記憶領域へアクセスを実行す
るには、処理装置1のアドレス変換機構によって、この
実効論理アドレスを、実ページの実アドレスに変換する
アドレス変換を実行し、その実アドレスを使って主記憶
装置2への実際のアクセスを実行する。
To access a storage area using an effective logical address, the address conversion mechanism of the processing device 1 executes address conversion to convert this effective logical address into a real address of a real page, and then uses the real address to access the main memory. Perform actual access to device 2.

このようなアドレス変換のために、例えば仮想空間ごと
のアドレス変換テーブル群を主記憶装置2上に設け、1
つのセグメントテーブルと、セグメントテーブルの各項
のポインタで指示される1以上のページテーブルによっ
て構成する。
For such address conversion, for example, a group of address conversion tables for each virtual space is provided on the main storage device 2, and one
It consists of one segment table and one or more page tables pointed to by the pointer of each entry in the segment table.

ページテーブルの各項は各論理ページに対応し、実ペー
ジが割り当てられている場合にその実アドレスを指示す
るポインタを保持し、従って論理アドレスによってセグ
メントテーブル、ページテーブルを索引して、ページテ
ーブルの1項を決定することにより、その論理アドレス
で指定される仮想記憶領域の内容を保持する実ページの
アドレスを得ることができる。
Each entry in the page table corresponds to each logical page and holds a pointer to the real address of a real page if one is allocated. Therefore, by indexing the segment table and page table by the logical address, By determining the term, it is possible to obtain the address of the real page that holds the contents of the virtual storage area specified by the logical address.

複数の仮想記憶空間で共通領域を持つ場合には、第3図
に例示するように、仮想記憶空間A、B、C等の同じ論
理アドレスの領域を共通領域に割り当てて、それらの各
空間の論理アドレスで共通領域を指定した場合には、同
じ実ページ群を指示する実アドレスに変換されるように
、ページテーブルを管理する。
When multiple virtual storage spaces have a common area, as illustrated in Figure 3, areas with the same logical address in virtual storage spaces A, B, C, etc. are allocated to the common area, and each of those spaces is When a common area is specified by a logical address, the page table is managed so that it is converted into a real address that points to the same real page group.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

仮想記憶空間の間の共通領域は前記第3図に示すように
、同じ論理アドレス領域にとられるので、例えば仮想記
憶空間Cが共通領域を使用しない場合にも、例えば将来
必要になる可能性があれば図示のように共通領域がある
ものとして、その論理アドレス定数は他用途に使用しな
いようにしなければならないので、共通領域を使用しな
い状態でも、仮想記憶空間を有効に利用できない。
As shown in FIG. 3, the common area between the virtual storage spaces is allocated to the same logical address area, so even if virtual storage space C does not use the common area, there is a possibility that it will be needed in the future. If there is, there is a common area as shown in the figure, but the logical address constant must not be used for other purposes, so even if the common area is not used, the virtual storage space cannot be used effectively.

この問題を避けるために、例えばm1WQs仮想記憶空
間りのように共通領域を空間ごとに異なる論理アドレス
領域に置くようにすることは、前記ページテーブルの管
理によって容易にできるが、この場合には、例えばs1
w仮想記憶空間Aに合わせて共通領域に置かれ、共通領
域のデータを指示するようにしたアドレス定数を使用し
て、仮想記憶空間りで処理をすると、誤った記憶領域に
アクセスすることになるという問題がある。
In order to avoid this problem, it is easy to place common areas in different logical address areas for each space, such as the m1WQs virtual storage space, by managing the page table, but in this case, For example s1
w If you use an address constant that is placed in a common area according to virtual storage space A and points to data in the common area and perform processing in the virtual storage space, you will access the wrong storage area. There is a problem.

〔問題点を解決するための手段〕[Means for solving problems]

第1図は、本発明の構成を示すブロック図である。 FIG. 1 is a block diagram showing the configuration of the present invention.

図は計算機の処理装置の構成を示し、10は共通領域の
開始アドレス、終了アドレス、基準アドレスとのアドレ
ス差を保持するアドレス補正レジスタ、11は汎用レジ
スタ、12は各汎用レジスタ11に対応する共通領域表
示、13は命令制御部14から通知される情報とアドレ
ス補正レジスタ10を参照して共通領域からのロードを
識別し、該当汎用レジスタの共通領域表示12を設定す
るアドレス識別部、15は命令制御部14からの実効論
理アドレスを、アドレス補正レジスタ10のアドレス差
により補正するアドレス補正部である。
The figure shows the configuration of a processing unit of a computer, where 10 is an address correction register that holds the start address, end address, and address difference from the reference address of the common area, 11 is a general-purpose register, and 12 is a common register corresponding to each general-purpose register 11. 13 is an address identification unit that refers to the information notified from the instruction control unit 14 and the address correction register 10 to identify a load from a common area and sets the common area display 12 of the corresponding general-purpose register; 15 is an instruction This is an address correction section that corrects the effective logical address from the control section 14 based on the address difference in the address correction register 10.

〔作 用〕[For production]

プログラムを実行する場合に、そのプログラムの仮想記
憶空間の共通領域の開始アドレス、終了アドレス、及び
所定の基準アドレスと開始アドレスとのアドレス差をア
ドレス補正レジスタ10に設定しておく。
When a program is executed, the start address and end address of the common area of the virtual storage space of the program, and the address difference between the predetermined reference address and the start address are set in the address correction register 10.

命令制御部14は処理装置における命令の実行を制御し
、汎用レジスタ11へのロード命令の場合に、その命令
を実行すると共に、命令のオペランドとなる汎用レジス
タ番号及びデータの実効論理アドレスをアドレス識別部
13に通知する。
The instruction control unit 14 controls the execution of instructions in the processing device, and in the case of a load instruction to the general-purpose register 11, executes the instruction and also identifies the general-purpose register number that is the operand of the instruction and the effective logical address of the data. Notify Department 13.

アドレス識別部13は、通知されたアドレスが、アドレ
ス補正レジスタ10に保持する開始アドレスから終了ア
ドレスまでの領域の範囲内か識別し、範囲内の場合には
、オペランドの汎用レジスタ11と対応して設けられる
共通領域表示12をオンに設゛定する。
The address identification unit 13 identifies whether the notified address is within the range from the start address to the end address held in the address correction register 10, and if it is within the range, it is The provided common area display 12 is set to ON.

又、命令制御部14は命令のオペランドのデータの実効
論理アドレスと、そのアドレスを生成するベースとして
命令に指定されている汎用レジスタ番号をアドレス補正
部15に通知し、アドレス補正部15はその汎用レジス
タに対応する共通領域表示12がオンであれば、アドレ
ス補正レジスタエ0に保持するアドレス差によって実効
論理アドレスを補正して出力する。
Further, the instruction control unit 14 notifies the address correction unit 15 of the effective logical address of the operand data of the instruction and the general-purpose register number specified in the instruction as the base for generating the address, and the address correction unit 15 If the common area display 12 corresponding to the register is on, the effective logical address is corrected based on the address difference held in the address correction register 0 and output.

以上の制御方式により、共通領域を各仮想記憶空間ごと
に定める領域に設けることが可能になるので、常に共通
領域を共通のアドレスの領域に残す必要が無くなり、空
間を有効に利用できる。
With the above control method, it is possible to provide a common area in an area defined for each virtual storage space, so there is no need to always leave a common area in an area with a common address, and the space can be used effectively.

〔実施例〕〔Example〕

多重仮想記憶方式の計算機でプログラムを実行する場合
には、公知のように管理プログラムによって、処理装置
1の所定の制御レジスタにセグメントテーブルの先頭の
実アドレスを設定することにより、そのプログラムの仮
想記憶空間を特定する等の制御を行うが、例えばその際
に本発明により、第1図のアドレス補正レジスタ10の
設定も行うものとする。
When a program is executed on a computer using multiple virtual memory, the program's virtual memory is stored by setting the real address of the start of the segment table in a predetermined control register of the processing device 1 using a management program, as is well known. Controls such as specifying the space are performed, and at that time, for example, according to the present invention, the address correction register 10 shown in FIG. 1 is also set.

即ち、その仮想記憶空間の制御情報として保持されてい
る、共通領域の開始アドレス、終了アドレス(何れも論
理アドレス)、及び所定の基準アドレスと開始アドレス
とのアドレス差をアドレス補正レジスタ10に設定して
おく。
That is, the start address and end address (both logical addresses) of the common area, which are held as control information of the virtual storage space, and the address difference between the predetermined reference address and the start address are set in the address correction register 10. I'll keep it.

こ\で基準アドレスは、共通領域のプログラミングにお
いて、共通領域の設置記憶領域として予定した領域の開
始アドレスとして定める。アドレス差は仮想記憶空間ご
との共通領域の開始アドレスから基準アドレスを減じた
値とし、従って一般に負の値をとることができる。
Here, the reference address is determined as the start address of the area scheduled as the installation storage area of the common area in the programming of the common area. The address difference is a value obtained by subtracting the reference address from the start address of the common area for each virtual storage space, and therefore can generally take a negative value.

処理装置の命令制御部14は命令の実行を制御し、仮想
記憶空間に記憶するデータを読み出して何れかの汎用レ
ジスタ11へ設定するロード命令の場合に、通常のよう
にその命令の実行を制御すると共に、命令のオペランド
に指定されているロード先汎用レジスタ11の汎用レジ
スタ番号と、ロードするデータの読出し先の実効論理ア
ドレスをアドレス識別部13に通知する。
The instruction control unit 14 of the processing device controls the execution of instructions, and in the case of a load instruction that reads data stored in the virtual storage space and sets it in any general-purpose register 11, the instruction control unit 14 controls the execution of the instruction as usual. At the same time, it notifies the address identification unit 13 of the general-purpose register number of the load destination general-purpose register 11 specified in the operand of the instruction and the effective logical address of the read destination of the data to be loaded.

アドレス識別部13は、通知されたアドレスが、アドレ
ス補正レジスタ10に保持する開始アドレスから終了ア
ドレスまでの範囲内か識別し、範囲内の場合には、オペ
ランドの汎用レジスタ11と対応して設けられる共通領
域表示12をオンにし、範囲外の場合には共通領域表示
12をオフにする。
The address identification unit 13 identifies whether the notified address is within the range from the start address to the end address held in the address correction register 10, and if it is within the range, is provided corresponding to the general-purpose register 11 of the operand. The common area display 12 is turned on, and when it is outside the range, the common area display 12 is turned off.

又、命令制御部14はいわゆるロード命令、ストア命令
等、記憶領域のオペランドへのアクセスを要する命令の
実行制御で生成する、オペランドデータの実効論理アド
レスと、そのアドレスを生成するベースのアドレスを保
持する汎用レジスタ11として命令に指定されている汎
用レジスタ番号とをアドレス補正部15に通知する。
Further, the instruction control unit 14 holds effective logical addresses of operand data generated by execution control of instructions that require access to operands in storage areas, such as so-called load instructions and store instructions, and the base address for generating the addresses. The general-purpose register number specified in the instruction as the general-purpose register 11 to be used is notified to the address correction unit 15.

アドレス補正部15は、すべての共通領域表示12の出
力を読むように接続され、通知された汎用レジスフ番号
に対応する共通領域表示12がオンの場合には、アドレ
ス補正レジスタ10に保持するアト゛レス差を、命令制
御部14から受は取る実効論理アドレスに加算すること
によってアドレスを補正し、結果のアドレスを実効論理
アドレスとして出力する。
The address correction unit 15 is connected to read the outputs of all the common area displays 12, and when the common area display 12 corresponding to the notified general-purpose register number is on, the address correction unit 15 stores the address difference held in the address correction register 10. is added to the effective logical address received from the instruction control unit 14 to correct the address, and the resulting address is output as the effective logical address.

従って、この補正した実効論理アドレスをアドレス変換
してアクセスを実行することにより、基準アドレスの領
域を予定したアドレス定数を使用して、基準アドレスと
異なる領域に設けた共通領域のデータに7クセスするこ
とが可能になる。
Therefore, by converting this corrected effective logical address and executing an access, data in a common area provided in an area different from the reference address can be accessed 7 times using an address constant scheduled for the area of the reference address. becomes possible.

〔発明の効果〕〔Effect of the invention〕

以上の説明から明らかなように本発明によれば、多重仮
想記憶方式の計算機の仮想記憶空間間共通領域を各仮想
記憶空間ごとに定める領域に設けることが可能になり、
仮想記憶空間を利用性が改善されるという著しい工業的
効果がある。
As is clear from the above description, according to the present invention, it is possible to provide a common area between virtual storage spaces of a computer using a multiple virtual storage system in an area defined for each virtual storage space,
There is a significant industrial effect in that the availability of virtual memory space is improved.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の構成を示すブロック図、第2図は計算
機の構成例ブロック図、 第3図は共通領域の説明図 である。 図において、 1は処理装置、     2は主記憶装置、3は外部記
憶装置、 10はアドレス補正レジスタ、 11は汎用レジスタ、  12は共通領域表示、13は
アドレス識別部、 14は命令制御部、本発明の構成を
示すブロック図 第1図 計算機の構成例ブロック図 第2図 共通領域の説明図 第3図
FIG. 1 is a block diagram showing the configuration of the present invention, FIG. 2 is a block diagram of an example configuration of a computer, and FIG. 3 is an explanatory diagram of a common area. In the figure, 1 is a processing unit, 2 is a main storage device, 3 is an external storage device, 10 is an address correction register, 11 is a general-purpose register, 12 is a common area display, 13 is an address identification unit, 14 is an instruction control unit, and a main storage unit. Figure 1: Block diagram showing the configuration of the invention Figure 1: Block diagram of an example of the configuration of a computer Figure 2: Explanatory diagram of the common area Figure 3:

Claims (1)

【特許請求の範囲】 複数の仮想記憶空間に共通する記憶内容を保持する共通
領域を有する多重仮想記憶方式の計算機において、 該各仮想記憶空間のプログラムを実行する場合に、該仮
想記憶空間の該共通領域のアドレス範囲を示すアドレス
範囲値と、該共通領域のアドレスと所定のアドレスとの
差とを保持する手段(10)、該アドレス範囲値で示す
記憶領域から汎用レジスタ(11)にデータがロードさ
れたことを識別して、該汎用レジスタごとに表示する手
段(12、13)、及び、該表示(12)のある該汎用
レジスタ(11)を記憶アドレスのベースとして使用す
る場合に、該記憶アドレスを前記差の値によって補正す
る手段(15)を設けたことを特徴とする共通領域アド
レス制御方式。
[Claims] In a computer using a multiple virtual memory system that has a common area that holds storage contents common to a plurality of virtual memory spaces, when a program in each virtual memory space is executed, Means (10) for holding an address range value indicating the address range of the common area and the difference between the address of the common area and a predetermined address, and a means (10) for storing data from the storage area indicated by the address range value to the general purpose register (11). means (12, 13) for identifying and displaying for each general-purpose register that it has been loaded; A common area address control system characterized by comprising means (15) for correcting a storage address by the value of the difference.
JP62107189A 1987-04-30 1987-04-30 Address control system for common region Pending JPS63271648A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62107189A JPS63271648A (en) 1987-04-30 1987-04-30 Address control system for common region

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62107189A JPS63271648A (en) 1987-04-30 1987-04-30 Address control system for common region

Publications (1)

Publication Number Publication Date
JPS63271648A true JPS63271648A (en) 1988-11-09

Family

ID=14452725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62107189A Pending JPS63271648A (en) 1987-04-30 1987-04-30 Address control system for common region

Country Status (1)

Country Link
JP (1) JPS63271648A (en)

Similar Documents

Publication Publication Date Title
US4591971A (en) Method and apparatus for parallel processing of digital signals using multiple independent signal processors
JPH03233630A (en) Information processor
JPS63271648A (en) Address control system for common region
US4816992A (en) Method of operating a data processing system in response to an interrupt
EP0427558A2 (en) Task switching system
JPH082727Y2 (en) Programmable sequencer
JP2581298B2 (en) Memory access right information supply mechanism
JPH01233628A (en) Memory address conversion control circuit
JPH03141444A (en) Data processor
JP2847863B2 (en) Microprocessor interrupt control method
JPS60214040A (en) Data processor
JP2743947B2 (en) Micro program control method
JPS60169946A (en) Task control system
JPS6391740A (en) Stack control system
JPS60214039A (en) Data processor
JPH0823852B2 (en) I / O processor
JPH02173828A (en) Interruption process system
JPS5839342B2 (en) Multi-processor system NIOKEL
JPS62295138A (en) Address forming system
JPS62145327A (en) Merging system for common subroutine
JPH0531170B2 (en)
JPS62204338A (en) Lisp language processing system
JPH0290228A (en) Microprocessor
JPS63155338A (en) Control system for record of program executing history
JPS6284334A (en) Information processing system