JPH09171500A - Pointer address converter of interprocessor data sharing control table - Google Patents

Pointer address converter of interprocessor data sharing control table

Info

Publication number
JPH09171500A
JPH09171500A JP33148295A JP33148295A JPH09171500A JP H09171500 A JPH09171500 A JP H09171500A JP 33148295 A JP33148295 A JP 33148295A JP 33148295 A JP33148295 A JP 33148295A JP H09171500 A JPH09171500 A JP H09171500A
Authority
JP
Japan
Prior art keywords
control
pool area
data
block
pool
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
JP33148295A
Other languages
Japanese (ja)
Inventor
Michio Tandai
美智夫 丹代
Yoshiaki Niimura
義章 新村
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.)
Hitachi Software Engineering Co Ltd
Hitachi Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
Hitachi 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 Hitachi Software Engineering Co Ltd, Hitachi Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP33148295A priority Critical patent/JPH09171500A/en
Publication of JPH09171500A publication Critical patent/JPH09171500A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PROBLEM TO BE SOLVED: To enable the data block control between plural processors by making a device have a constitution that the pool area that each processor locally has is shared via an external sharing storage part. SOLUTION: Each processor secures memories 21, 21 for pool area and initializes a control block 23, a data block 24 and a pool control table 22. For the control processing part 30 of an external sharing storage part, the definition information on a pool area is notified and the securing of a pool area 2 is requested. In the address conversion processing part 31 within the control part of sharing storage device, the control of an address conversion object location is performed based on the control block length imparted as definition information and pointer positional information. When an interprocessor data sharing processing is further performed, each processor performs the exclusive control specific to the pool area by the unit of a reference/update processing. Therefore, not only a data block but also a control block can be shared by a CPU 10 and a CPU 10.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、プロセサ間でのデ
ータ共用に利用する。特に、複数のデータを格納する領
域内の各データに対してLRU等のアルゴリズムを使用
して管理する制御ブロックを持つプログラムについて
は、プロセサ間でのデータ共用に有効な方式である。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention is used for sharing data between processors. In particular, a program having a control block for managing each data in an area for storing a plurality of data using an algorithm such as LRU is an effective method for sharing data between processors.

【0002】本発明は、プロセサ間外部共有記憶部にお
いて、ブロック長、ブロック数、制御ブロック長、制御
ブロック内のポインタ位置を格納するプール管理テーブ
ルと制御ブロックならびにデータブロックを配置し、各
プロセサの主記憶上のプール領域(プール管理テーブ
ル、制御ブロック、データブロックをまとめた領域)と
のアクセスにおいてポインタ部の内容を主記憶上のプー
ル領域アドレスに対応して相対的に変換する仕掛けを設
けることにより、プロセサ間でのデータ共用をLRU等
のデータブロック管理アルゴリズムに基づき行えるよう
にするものである。
According to the present invention, a pool management table for storing a block length, a number of blocks, a control block length, and a pointer position within a control block, a control block and a data block are arranged in an external shared memory between processors, and each processor is provided with a pool management table. Providing a mechanism for relatively converting the contents of the pointer portion in correspondence with the pool area address in main memory when accessing the pool area (pool management table, control block, data block area) in main memory This enables data sharing between processors based on a data block management algorithm such as LRU.

【0003】[0003]

【従来の技術】従来、プロセサ内部でジョブ間共用に使
用するプール領域を持つデータ共用処理において、プロ
セサ間データ共用を実現しようとする場合、外部共有記
憶部にはデータブロックのみを配置し、更新処理時は外
部共有記憶部のデータブロックを更新し、他のプロセサ
に対しては当該データブロックが最新になったことを通
知する。
2. Description of the Related Art Conventionally, in a data sharing process having a pool area used for sharing jobs between processors, when trying to realize data sharing between processors, only a data block is arranged and updated in an external shared storage section. During processing, the data block in the external shared storage unit is updated, and other processors are notified that the data block has become the latest.

【0004】このとき他プロセサはプロセサ内部のプー
ル領域内に同一データブロックが存在すれば当該データ
ブロック対応の制御ブロックを無効化するか、外部共有
記憶部内の最新データブロックを取得しなければならな
い。参照処理においては外部共有記憶部上のデータが最
新となった通知がなければ、プロセサ内部のプール領域
内の該当データブロックをそのまま使用することができ
るが、プロセサ内部のプール領域になければ外部共有記
憶部、ディスクの順に検索しデータを取得することにな
る。
At this time, if the same data block exists in the pool area inside the processor, the other processor must invalidate the control block corresponding to the data block or acquire the latest data block in the external shared storage unit. In the reference process, if there is no notification that the data in the external shared storage is the latest, the corresponding data block in the pool area inside the processor can be used as it is, but if it is not in the pool area inside the processor, external sharing is possible. The storage unit and the disk are searched in order to acquire the data.

【0005】[0005]

【発明が解決しようとする課題】従来の技術において、
以下の問題があった。
SUMMARY OF THE INVENTION In the prior art,
There were the following problems.

【0006】各プロセサ内においてはLRU等のデータ
ブロック管理アルゴリズムは行われているが、複数のプ
ロセサ間でのデータブロック管理はおこなえていない。
Although a data block management algorithm such as LRU is carried out in each processor, data block management between a plurality of processors is not carried out.

【0007】このため、更新要求のないデータブロック
については外部共有記憶部から使用頻度が高くても追い
出される可能性は高くなってしまう。
For this reason, a data block for which an update request has not been issued is likely to be evicted from the external shared storage unit even if it is frequently used.

【0008】[0008]

【課題を解決するための手段】本発明は、データブロッ
ク管理アルゴリズムを複数のプロセサ間で行えるように
するために、各プロセサがローカルに持つプール領域を
外部共有記憶部を介して共有するようにする。しかし、
このためには、各プロセサが持つプール領域が配置され
た主記憶上のアドレスに一致性がないことが問題とな
る。
According to the present invention, in order to allow a data block management algorithm to be executed among a plurality of processors, a pool area which each processor has locally is shared via an external shared storage unit. To do. But,
For this purpose, there is a problem that the addresses on the main memory where the pool areas of the processors are located do not match.

【0009】このため、各プロセサで共有するプール領
域内のポインタ部のアドレスを主記憶と外部共有記憶部
との間で変換することによりプール領域全体のプロセサ
間共用を行うことを特徴とする。
Therefore, the processor is characterized in that the entire pool area is shared by the processors by converting the address of the pointer section in the pool area shared by each processor between the main memory and the external shared memory section.

【0010】プール領域は、データブロックとデータブ
ロックを管理する制御ブロック並びにデータブロック
数、データブロック長、制御ブロック長、制御ブロック
内のポインタ部位置情報を持つプール管理テーブルから
成り、1つのメモリ領域として確保され、かつ、外部共
有記憶部上に配置される。外部共有記憶部上では制御ブ
ロック内のポインタ部はプール領域の先頭を0とした相
対アドレスに変換されて配置される。各プロセサが主記
憶上のプール領域を参照・更新する場合、外部共有記憶
部からプール領域の更新部分を主記憶上にポインタ部の
アドレスを変換して取り込みデータ検索処理を行うとと
もにデータ管理アルゴリズムに基づいて制御ブロック内
のポインタ更新を行う。ポインタ更新により変更した内
容は、ポインタ部のアドレス変換を行い外部共有記憶部
に反映する。
The pool area comprises a data block, a control block for managing the data block, and a pool management table having the number of data blocks, the data block length, the control block length, and pointer position information in the control block. And is arranged on the external shared storage unit. On the external shared storage unit, the pointer portion in the control block is arranged after being converted into a relative address with the head of the pool area as 0. When each processor references / updates the pool area on the main memory, the updated part of the pool area is converted from the external shared memory to the main memory by converting the address of the pointer part to perform the data retrieval processing and the data management algorithm. Based on this, the pointer in the control block is updated. The contents changed by updating the pointer are converted into the address of the pointer part and reflected in the external shared storage part.

【0011】[0011]

【発明の実施の形態】本発明の一実施例について図面を
参照して詳細に説明する。図1はプロセサ間メモリ共用
におけるシステム構成図である。図2はプール領域内の
内部構造の一例を示す図である。図2において制御テー
ブル内に存在するポインタアドレス部が、外部共有記憶
部上では、プール領域内の相対アドレスとなり、各プロ
セサ上においては主記憶上のメモリアドレスとなる。図
2の制御ブロックは固定長でありかつプール管理テーブ
ル領域に隣接していなければならない。プール管理テー
ブル内のポインタ位置情報領域PIは制御ブロック内の
ポインタ位置を管理する領域であり、複数のポインタを
管理することが可能である。制御ブロック群の論理的な
先頭・終端ポインタについてはアドレス変換の対象外と
なるが、論理的な先頭・終端ポインタ格納領域を制御ブ
ロックと同一のテーブル形式で作成する、若しくは、相
対ポインタで覚える等で対処できる。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a system configuration diagram in memory sharing between processors. FIG. 2 is a diagram showing an example of the internal structure in the pool area. In FIG. 2, the pointer address part existing in the control table becomes a relative address in the pool area on the external shared storage part, and becomes a memory address on the main memory on each processor. The control block in FIG. 2 has a fixed length and must be adjacent to the pool management table area. The pointer position information area PI in the pool management table is an area for managing the pointer position in the control block, and is capable of managing a plurality of pointers. The logical start / end pointers of the control block group are not subject to address conversion, but the logical start / end pointer storage area is created in the same table format as the control block, or remembered by relative pointers, etc. Can be dealt with.

【0012】各プロセサはプール領域用のメモリ21,
21を確保し、制御ブロック23とデータブロック24
並びにプール管理テーブル22の初期化を行う。また、
外部共有記憶部の制御処理部30に対しては、プール領
域の定義情報を通知しプール領域21の確保要求をす
る。外部共有記憶装置の制御部内のアドレス変換処理部
31では、定義情報として与えられた制御ブロック長C
L、ポインタ位置情報PI〜PIに基づきアドレス変換
対象位置の管理を行う。
Each processor has a memory 21 for pool area,
21 are secured, and the control block 23 and the data block 24
In addition, the pool management table 22 is initialized. Also,
The control processing unit 30 of the external shared storage unit is notified of the definition information of the pool area and requests the pool area 21 to be reserved. In the address translation processing unit 31 in the control unit of the external shared storage device, the control block length C given as the definition information is given.
The address translation target position is managed based on L and pointer position information PI to PI.

【0013】プロセサ間のデータ共用処理を行う場合、
参照・更新処理の単位で各プロセサは当該プール領域に
固有な排他制御を行う。
When performing data sharing processing between processors,
Each processor performs exclusive control unique to the pool area in units of reference / update processing.

【0014】CPU10でメモリ上のプール領域21内
の制御テーブル23並びにデータブロック24の更新を
行うと、外部共有記憶部の制御処理部30は、プール領
域の更新部分についてポインタ部PNのアドレス変換を
行ったのち外部共有記憶部のプール領域に反映する。
When the CPU 10 updates the control table 23 and the data block 24 in the pool area 21 on the memory, the control processing section 30 of the external shared storage section converts the address of the pointer section PN for the updated section of the pool area. After that, it is reflected in the pool area of the external shared storage unit.

【0015】CPU10がメモリ上のプール領域21を
参照する場合、CPU10にて更新された部分であれ
ば、外部共有記憶部の制御処理部30は外部共有記憶部
内のプール領域21よりCPU10のプール領域に対し
ポインタ部PNのアドレス変換をしたのち複写する。
When the CPU 10 refers to the pool area 21 on the memory, if it is the part updated by the CPU 10, the control processing unit 30 of the external shared storage unit will be in the pool area of the CPU 10 from the pool area 21 in the external shared storage unit. Then, the address of the pointer portion PN is converted and then copied.

【0016】CPU10がメモリ上のプール領域21を
参照する場合、CPU10にて更新がされていなけれ
ば、外部共有記憶部20より取り込むことはせずそのま
まデータ検索処理が行われる。
When the CPU 10 refers to the pool area 21 on the memory, if it has not been updated by the CPU 10, the data is not retrieved from the external shared storage unit 20 and the data retrieval processing is performed as it is.

【0017】以上説明したようにCPU10とCPU1
0とでデータブロックのみでなく制御ブロックも共有で
きることになり、データブロックをプロセサ間でデータ
ブロック管理アルゴリズムにより管理できる。
As described above, the CPU 10 and the CPU 1
With 0, not only the data block but also the control block can be shared, and the data block can be managed between the processors by the data block management algorithm.

【0018】[0018]

【発明の効果】本発明は、これまでプロセサ内のジョブ
間でデータセットの一部のデータをプール領域にて再利
用バッファとして共用する手法を、プロセサ間でのデー
タ共用に置き換えてデータの管理アルゴリズムをそのま
ま行える。
As described above, the present invention replaces the method of sharing a part of the data of a data set as a reuse buffer in the pool area between jobs in the processor so far with the data sharing between the processors and managing the data. The algorithm can be used as it is.

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

【図1】プロセサ間メモリ共用におけるシステム構成図
である。
FIG. 1 is a system configuration diagram in memory sharing between processors.

【図2】プール領域内の内部構造を示す図である。FIG. 2 is a diagram showing an internal structure in a pool area.

【符号の説明】[Explanation of symbols]

10,10…CPU、 20…外部共有
記憶部、21…外部共有記憶部内のプール領域、21,
21…CPU内のプール領域、 22…プール管理テー
ブル、23…制御ブロック、 24…デ
ータブロック、BL…データブロックのブロック長、
N…制御ブロックの数、CL…制御ブロックのブロック
長、M…制御ブロック内に存在するポインタ領域の個
数、PI〜PI…制御ブロック内に存在するポインタ領
域の位置、PN…制御ブロック内に存在するポインタ領
域(1制御ブロック内にM個存在する)。
10, 10 ... CPU, 20 ... External shared storage unit, 21 ... Pool area in external shared storage unit 21,
21 ... Pool area in CPU, 22 ... Pool management table, 23 ... Control block, 24 ... Data block, BL ... Block length of data block,
N ... number of control blocks, CL ... block length of control block, M ... number of pointer areas existing in control block, PI ... PI ... position of pointer area existing in control block, PN ... existing in control block Pointer area (M number exists in one control block).

───────────────────────────────────────────────────── フロントページの続き (72)発明者 新村 義章 神奈川県横浜市戸塚区戸塚町5030番地 株 式会社日立製作所ソフトウェア開発本部内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Yoshiaki Shinmura 5030 Totsuka-cho, Totsuka-ku, Yokohama-shi, Kanagawa Prefecture Hitachi Ltd. Software Development Division

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数のプロセサと、これらのプロセサより
パスを介して共有される外部共有記憶部を備えたシステ
ムにおいて、主記憶上に確保したデータとデータを管理
する制御ブロック(以下プール領域と記述する)を外部
共有記憶部を介してプロセサ間で共有することを可能と
した制御ブロックポインタのアドレス変換装置。
1. In a system including a plurality of processors and an external shared storage unit shared by these processors via paths, data secured on a main memory and a control block (hereinafter referred to as a pool area) A control block pointer address conversion device that enables sharing (description) between processors via an external shared storage unit.
JP33148295A 1995-12-20 1995-12-20 Pointer address converter of interprocessor data sharing control table Pending JPH09171500A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33148295A JPH09171500A (en) 1995-12-20 1995-12-20 Pointer address converter of interprocessor data sharing control table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33148295A JPH09171500A (en) 1995-12-20 1995-12-20 Pointer address converter of interprocessor data sharing control table

Publications (1)

Publication Number Publication Date
JPH09171500A true JPH09171500A (en) 1997-06-30

Family

ID=18244146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33148295A Pending JPH09171500A (en) 1995-12-20 1995-12-20 Pointer address converter of interprocessor data sharing control table

Country Status (1)

Country Link
JP (1) JPH09171500A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7564976B2 (en) 2004-03-02 2009-07-21 International Business Machines Corporation System and method for performing security operations on network data
US8468337B2 (en) 2004-03-02 2013-06-18 International Business Machines Corporation Secure data transfer over a network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7564976B2 (en) 2004-03-02 2009-07-21 International Business Machines Corporation System and method for performing security operations on network data
US8468337B2 (en) 2004-03-02 2013-06-18 International Business Machines Corporation Secure data transfer over a network

Similar Documents

Publication Publication Date Title
JP2819982B2 (en) Multiprocessor system with cache match guarantee function that can specify range
JP3399501B2 (en) Explicit coherence using split-phase control
US5946711A (en) System for locking data in a shared cache
JP2662603B2 (en) Method and apparatus for filtering invalidation requests
EP0817059B1 (en) Auxiliary translation lookaside buffer for assisting in accessing data in remote address spaces
US5251308A (en) Shared memory multiprocessor with data hiding and post-store
US5692149A (en) Block replacement method in cache only memory architecture multiprocessor
JP3264319B2 (en) Bus bridge
EP0062165A2 (en) Multiprocessors including private and shared caches
US20050172099A1 (en) Method and apparatus for memory management in a multi-processor computer system
US20010010068A1 (en) State-based allocation and replacement for improved hit ratio in directory caches
JPH05127995A (en) Method for securing consistency between pages which are in common with local cache
JP2000250812A (en) Memory cache system and managing method therefor
JPH05233458A (en) Memory managing unit for computer system
JP2004505346A (en) Cache coherency system and method for multiprocessor architecture
JPH05210637A (en) Method of simultaneously controlling access
JPH0762836B2 (en) Data access management apparatus and method
US7093080B2 (en) Method and apparatus for coherent memory structure of heterogeneous processor systems
JPH0635953A (en) Mutual inquiry method for scalar/vector composite system and device thereof
EP0480858A2 (en) Hardware primary directory lock
EP1224553B1 (en) Multi-processor system and method of accessing data therein
US5761724A (en) Write-invalidate cache system for a split transaction bus based shared memory multiprocessor
JP3103581B2 (en) Multiprocessor system
US6298419B1 (en) Protocol for software distributed shared memory with memory scaling
US5619691A (en) File sharing method and system for multiprocessor system