JPH0619763B2 - Access method between nodes in computer system - Google Patents
Access method between nodes in computer systemInfo
- Publication number
- JPH0619763B2 JPH0619763B2 JP60247147A JP24714785A JPH0619763B2 JP H0619763 B2 JPH0619763 B2 JP H0619763B2 JP 60247147 A JP60247147 A JP 60247147A JP 24714785 A JP24714785 A JP 24714785A JP H0619763 B2 JPH0619763 B2 JP H0619763B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- nodes
- node
- page
- execution
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 128
- 230000008569 process Effects 0.000 claims description 107
- 230000015654 memory Effects 0.000 claims description 35
- 238000012545 processing Methods 0.000 claims description 30
- 238000006243 chemical reaction Methods 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 16
- 238000012546 transfer Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
Description
【発明の詳細な説明】 「産業上の利用分野」 本発明は、2以上のコンピュータ相互の間を高速の通信
回線で接続したコンピュータシステムにおけるノード間
のアクセス方法に関する。The present invention relates to an access method between nodes in a computer system in which two or more computers are connected by a high-speed communication line.
「従来の技術」 コンピュータを使用したシステムには、大型コンピュー
タを使用し、これに多数の端末機を接続したいわゆる集
中管理システムと、独立したコンピュータを各所に設置
して、これらをそれぞれの部門で独自に使用するいわゆ
る分散管理システムとがある。分散管理システムは、対
話機能やコストあるいは効率の面で利点が多い。パーソ
ナルユーズのコンピュータが低価格化し広く普及した今
日、このようなシステムの採用の増加傾向が著しい。"Prior art" A large computer is used for the system using a computer, and a so-called centralized management system in which a large number of terminals are connected to this and independent computers are installed in various places, and these are installed in each department. There is a so-called distributed management system that is used independently. The distributed management system has many advantages in terms of interactive function, cost, and efficiency. With the low price and widespread use of personal-use computers, there is a marked increase in the adoption of such systems.
そして、分散管理された各コンピュータを通信回線で接
続すれば、各コンピュータ間でいわゆる資源の共有を行
うことができ、集中管理システムの利点もあわせ持つこ
とができる。このようなシステムを以下、コンピュータ
ネットワークシステムと呼んで説明を進める。By connecting the computers that are distributed and managed by a communication line, so-called resources can be shared between the computers, and the advantages of the centralized management system can also be provided. Hereinafter, such a system will be referred to as a computer network system for the description.
このコンピュータネットワークシステムにおいて、通信
回線に接続された各コンピュータは、ノードと呼ばれて
いる。これらの各ノード間の交信にあたって、通信回線
上で信号の衝突が生じないよう、種々の通信方式が開発
されている。In this computer network system, each computer connected to a communication line is called a node. In communication between these nodes, various communication systems have been developed to prevent signal collision on the communication line.
例えば、リング状の通信回線中を伝播する信号のフレー
ム中に、送信権を持つノードを特定するトークンと呼ば
れる識別符号を挿入する。こうして、送信権を持つノー
ドのみがこの通信回線に信号を送り出すことができるよ
うにし、信号の衝突を防止している。この方式によっ
て、比較的高速にノード間でのデータの授受を行うこと
ができる。For example, an identification code called a token for identifying a node having a transmission right is inserted in a frame of a signal propagating in a ring-shaped communication line. Thus, only the node having the transmission right can send a signal to this communication line, thereby preventing the signal collision. By this method, data can be exchanged between nodes at a relatively high speed.
このようなシステムでは、あるノードが他のノードの記
憶装置に格納されたデータファイルやプログラムファイ
ルを使用したいと希望する場合、他のノードにそのプロ
グラムファイル等の転送を要求し、これを自己のノード
の記憶装置に再格納して、その後これを使用した処理を
実行することができる。これによって、必要なファイル
すべてを、自己のノードの記憶装置に常時格納しておく
必要がなくなり、いわゆる資源の共有が行われる。In such a system, when a node desires to use a data file or program file stored in the storage device of another node, it requests the other node to transfer the program file, etc. It can be stored again in the storage device of the node and the processing using it can be executed thereafter. As a result, it becomes unnecessary to always store all the necessary files in the storage device of its own node, and so-called resource sharing is performed.
こういったコンピュータネットワークシステムにおい
て、ファイルの転送作業は例えば次のような手順で実行
される。In such a computer network system, file transfer work is executed by the following procedure, for example.
まず、第1のノードがプログラムファイルやデータファ
イルを特定する名称(ノード名、ファイル名)を指定
し、その転送要求を通信回線に送り出す。そのファイル
を保有する第2のノードの中央演算ユニットは、そのフ
ァイルを格納したデバイスに対して、データの転送指令
を行う。First, the first node specifies a name (node name, file name) that identifies a program file or a data file, and sends the transfer request to the communication line. The central processing unit of the second node holding the file issues a data transfer command to the device storing the file.
具体的には、中央演算ユニットは、そのデバイスに含ま
れる目的のファイルのアドレスを調べ、これを読み出
し、通信回線を通じて順に第1のノードに転送する動作
を行う。Specifically, the central processing unit performs an operation of checking the address of the target file included in the device, reading the address, and sequentially transferring the read address to the first node through the communication line.
「発明が解決しようとする問題点」 このように従来のコンピュータネットワークシステムに
おいては、資源の共有とはいっても、他ノードのデバイ
スに格納されたファイルの使用は、それを直接アクセス
できるわけでなく、いったんそのノードの中央演算ユニ
ットに対して、そのファイルの転送作業を依頼するとい
う形態がとられていた。“Problems to be Solved by the Invention” In the conventional computer network system as described above, even though the resource is shared, the use of the file stored in the device of another node does not mean that the file can be directly accessed. Once, the central processing unit of the node was requested to transfer the file.
従って、このデータ転送処理中は、依頼を受けた側のノ
ードの中央演算ユニットが専有され、そのノード自身の
仕事が妨げられてしまうという難点があった。Therefore, during this data transfer process, the central processing unit of the node on the request side is monopolized, and the task of the node itself is hindered.
もちろん、ファイルの先頭アドレスの検索のみを中央演
算ユニットが行い、その後はデバイスが自動的にデータ
転送作業を行うという、いわゆるDMA(ダイレクトメ
モリアクセス)という手法もある。Of course, there is also a so-called DMA (Direct Memory Access) method in which the central processing unit performs only the search of the head address of the file and then the device automatically performs the data transfer operation.
しかし、いずれにしても、ファイル単位で、データ転送
作業を行うと、回線専有時間が増加し待機時間が多く、
対話処理機構が損なわれるという難点があった。However, in any case, when data transfer work is performed in file units, line occupation time increases and waiting time increases,
There was a drawback that the dialogue processing mechanism was damaged.
また、ファイルの転送を要求する側についても、そのフ
ァイルを一時格納するための十分な容量のメモリを確保
する必要がある。しかし、大きなプログラムや大量のデ
ータを扱う作業ではしばしばメモリ容量が不足し、作業
が不能となったり、また、あらかじめ作業を細分化する
べくプログラムを書き直したり、種々の煩雑な工夫を強
いられることになる。Also, on the side requesting the transfer of the file, it is necessary to secure a memory having a sufficient capacity for temporarily storing the file. However, when working with a large program or a large amount of data, the memory capacity is often insufficient, which makes the work impossible. Become.
このように読み出しや書き込みが行われるファイルは、
必ずしもいわゆるデータ記憶用のディスクメモリにある
とは限らない。主メモリやディスプレイユニットの画像
メモリ等の中にもファイルが存在し、同様にして書き込
み、読み出しが行われ得る。本発明ではこういったファ
イルを有するデバイスを総称して以下リソースと呼ぶこ
とにする。すなわち、1つしかファイルを有しないリソ
ースもあれば、多数のファイルを有するデバイスもあ
る。Files that are read and written in this way are
It is not always in a so-called disk memory for data storage. The file exists also in the main memory, the image memory of the display unit, or the like, and writing and reading can be performed in the same manner. In the present invention, devices having such files will be generically referred to as resources hereinafter. That is, some resources have only one file and some devices have multiple files.
一方、コンピュータネットワークシステムでは、例えば
多量のファイルを用いて複雑な演算を行うプログラムが
ある場合、そのファイルを保有しかつそのプログラムの
実行に適した特殊なハードウエアを有するノードに対し
て、必要な命令を転送して演算処理を依頼し、実行結果
を受けとるということも行われる。On the other hand, in a computer network system, for example, when there is a program that performs a complicated operation using a large number of files, it is necessary for a node that holds the file and has special hardware suitable for executing the program. It is also performed to transfer instructions, request arithmetic processing, and receive execution results.
これは従来、いわゆるリモートジョブエントリーシステ
ムとして知られており、例えばデータベースの検索等に
活用されている。しかし、このような演算の実行依頼処
理を、任意のノードの中央演算ユニットが、処理しよう
とするプロセスの一部に随時組み入れ、その実行場所を
コントロールしていくことは、従来容易ではなかった。This is conventionally known as a so-called remote job entry system and is utilized, for example, for searching a database. However, it has not been easy for a central processing unit of an arbitrary node to incorporate such an execution request processing into a part of a process to be processed at any time and control the execution place thereof.
本発明は以上のような従来のコンピュータネットワーク
システムの欠点を解決するためになされたもので、通信
回線に接続されたノードが他のノードのリソース中のフ
ァイルを自己のノードのものに対すると同程度に高速で
プロセスすることができるコンピュータシステムにおけ
るノード間のアクセス方法を提供するものである。The present invention has been made to solve the drawbacks of the conventional computer network system as described above, and a node connected to a communication line can transfer files in the resources of other nodes to the same extent as those of its own node. An access method between nodes in a computer system that can process at high speed is provided.
「発明の概要」 本発明の適用対象であるコンピュータネットワークシス
テムは、通信回線に複数のノードが接続された構成をと
っている。このシステムにおいて、各ノードは、中央演
算ユニットおよびこれによって制御されるリソースを有
している。このリソースとはプログラムファイルやデー
タファイル等を格納した記憶装置のみならずディスプレ
イユニットの画像メモリ等も総称する用語である。"Outline of the Invention" A computer network system to which the present invention is applied has a configuration in which a plurality of nodes are connected to a communication line. In this system, each node has a central processing unit and the resources controlled by it. This resource is a general term for not only a storage device storing a program file, a data file, etc. but also an image memory of a display unit and the like.
さて、上記いずれかのノードの中央演算ユニットが、所
定のプログラムを実行しようとする場合、その実行用メ
モリにプログラムやデータの転送を行うことが必要とな
る。通常データの転送処理は、最小単位のデータ群の転
送を繰り返して行われる。本発明においてその最小単位
をページと呼び、実際のプロセスの実行に必要なプログ
ラムファイルやデータファイルをオブジェクトと呼ぶこ
とにする。そして、システムのあらゆるリソースに含ま
れるすべてのオブジェクトをページ単位に区切り、それ
ぞれのページを所定の物理アドレスによって一意的に特
定しておく。Now, when the central processing unit of any one of the above-mentioned nodes tries to execute a predetermined program, it is necessary to transfer the program or data to the execution memory. The normal data transfer process is performed by repeatedly transferring the minimum unit data group. In the present invention, the minimum unit is called a page, and a program file or a data file required for executing an actual process is called an object. Then, all objects included in all resources of the system are divided into page units, and each page is uniquely specified by a predetermined physical address.
所定のプロセスの生成段階では、実行すべきプロセスを
構成するオブジェクトを、例えばセグメント単位で実行
順に割り付けするいわゆるマッピングを行う。1セグメ
ントとは、一定数のページを集合した単位である。この
ときプロセスを構成するすべてのセグメントに、アドレ
スを付しておく。このアドレスをプロセスセグメントア
ドレスと呼ぶ。At the generation stage of a predetermined process, so-called mapping is performed in which objects constituting a process to be executed are allocated in the order of execution in segment units, for example. One segment is a unit in which a fixed number of pages are collected. At this time, addresses are assigned to all the segments that make up the process. This address is called a process segment address.
一方、オブジェクトもそれぞれ所定数のセグメントの集
合体であり、換言すれば、そのセグメント数の一定数倍
のページの集合体である。On the other hand, each object is also an aggregate of a predetermined number of segments, in other words, an aggregate of pages having a certain number of times the number of segments.
オブジェクトをプロセスに組み込む作業では、オブジェ
クトはファイル名で呼ばれる。本発明のシステムでは、
各ノードが、自己のノードのリソースに含まれているオ
ブジェクトについて、これを構成する各ページに物理ア
ドレスを付し、このファイル名と物理アドレスとを対応
させるテーブルを保有している。この物理アドレスをオ
ブジェクトページアドレスと呼ぶ。In the process of incorporating an object into a process, the object is called by filename. In the system of the present invention,
Each node has a table in which the physical addresses of the objects included in the resources of its own node are assigned to the pages that form the objects, and the file names and the physical addresses are associated with each other. This physical address is called an object page address.
そこで、プロセスの生成過程で、自己のノードのリソー
スに含まれるオブジェクトについて、そのセグメントご
とに、セグメントの最初のページの物理アドレスをリス
トアップする。また、同様にして、他のノードのオブジ
ェクトについても、プロセスの実行前にそれを問い合わ
せて同様のリストアップをしておく。Therefore, in the process of generating the process, the physical address of the first page of the segment is listed for each segment of the object included in the resource of the own node. Similarly, for the objects of other nodes, inquire about them before executing the process and make a similar list.
こうして、プロセスの生成段階では、プロセスのすべて
のプロセスセグメントアドレスと、オブジェクトの各オ
ブジェクトページアドレスとを、相互に対応づけてアド
レス変換することのできる変換テーブルを作成してしま
う。プロセスの実行中は、そのつどこの変換テーブルを
参照して、その結果得られたオブジェクトページアドレ
スを用いて、全てのノードのオブジェクトの各ページを
直接アクセスする。Thus, in the generation stage of the process, a conversion table is created in which all the process segment addresses of the process and the object page addresses of the objects are associated with each other and can be translated. During execution of the process, each conversion table is referred to and each page of the objects of all nodes is directly accessed using the object page address obtained as a result.
これによって、システムの他のノードに含まれる全ての
リソースを、ページ単位で、自己のノードに含まれるリ
ソースと同様に高速でアクセスしてプロセスを実行して
いくことができる。As a result, all resources included in other nodes of the system can be accessed in page units at the same high speed as the resources included in the own node to execute the process.
またプロセスの実行中そのプロセスの任意の部分につい
て、他のノードすなわち第2のノードに対して、そのプ
ロセスの実行に必要な、先に作成した変換テーブルの一
部または全部を含む、所定のデータを転送して、その後
のプロセスの実行主体を切り換えるようにすることもで
きる。Also, during the execution of the process, for any part of the process, given data to other nodes, that is, the second nodes, including some or all of the conversion table created previously necessary for executing the process. Can be transferred so that the execution subject of the subsequent process can be switched.
つまりネットワーク全体で一意的にアドレス変換を行う
ものである。In other words, the address translation is performed uniquely in the entire network.
「実施例」 (ノードの構成例) 第3図は本発明のコンピュータネットワークシステムに
おけるノード間のアクセス方法の実施に適するノードの
一例を示すブロック図である。[Example] (Example of node configuration) Fig. 3 is a block diagram showing an example of a node suitable for implementing the inter-node access method in the computer network system of the present invention.
このノード1は、通信回線2と内部の回路との間の信号
の授受を制御するネットワークアダプタ3と、これと共
にバスライン4を介して相互に接続された、アドレスト
ランスレータ5と、中央演算ユニット(CPU)6、主
メモリ7、ディスク8、ディスプレイ装置9、その他の
デバイス10等から構成されている。The node 1 includes a network adapter 3 that controls the exchange of signals between the communication line 2 and an internal circuit, an address translator 5 that is connected to the network adapter 3 via a bus line 4, and a central processing unit ( CPU) 6, a main memory 7, a disk 8, a display device 9, and other devices 10 and the like.
中央演算ユニット6はこのノード全体の動作の制御を行
う、マイクロプロセッサおよび、その周辺回路とから構
成されている。The central processing unit 6 comprises a microprocessor and its peripheral circuits for controlling the operation of the entire node.
また、主メモリ7、ディスク8、その他のデバイス10
はいずれも、この中央演算ユニット6によって、それら
の内部に設けられたメモリ内のデータの読み出しあるい
は書き込みがなされて、それぞれの動作を行う装置であ
る。ディスプレイ装置9は、グラフィツクメモリ9aと
グラフィツクCPU9bとブラウン管ディスプレイ9c
を有し、グラフィツクメモリ9a内に書き込まれたデー
タを読み出して映像信号としてブラウン管ディスプレイ
9cに出力し、あるいは、図示しないキーボードからの
入力信号をこのグラフィツクメモリ9a内に書き込む。
中央演算ユニット6は、このグラフィツクメモリ9a内
のデータの読み出しや書き込みも行う。これらの装置を
本発明においてリソースと総称することにする。In addition, the main memory 7, the disk 8 and other devices 10
Each of these is a device for reading or writing data in a memory provided therein by the central processing unit 6 and performing respective operations. The display device 9 includes a graphics memory 9a, a graphics CPU 9b, and a cathode ray tube display 9c.
The data written in the graphics memory 9a is read and output as a video signal to the cathode ray tube display 9c, or an input signal from a keyboard (not shown) is written in the graphics memory 9a.
The central processing unit 6 also reads and writes data in the graphics memory 9a. These devices will be collectively referred to as resources in the present invention.
また、ネットワークアダプタ3は、いわゆるインターフ
ェースの機能を持つ回路であるが、その他に、このシス
テムを構成するすべてのノードに含まれるオブジェクト
のアドレスとオブジェクトの名称(ファイル名)との参
照テーブルを持っている。その参照テーブル全体はディ
スク8等に格納されており、その一部がキャッシングさ
れてアドレストランスレータ5およびネットワークアダ
プタ3に格納される。これによって、プロセスに使用す
るオブジェクトがどのノードに含まれるものかそのファ
イル名からただちに判断でき、中央演算ユニット6がそ
のノードに対して、オブジェクトの物理アドレスに関す
る情報を要求することができるよう構成されている。Further, the network adapter 3 is a circuit having a so-called interface function, but in addition, it has a reference table of object addresses and object names (file names) included in all nodes configuring this system. There is. The entire reference table is stored in the disk 8 or the like, and a part of the reference table is cached and stored in the address translator 5 and the network adapter 3. With this, it is possible to immediately determine which node the object used for the process belongs to from the file name, and the central processing unit 6 can request the node for information regarding the physical address of the object. ing.
またアドレストランスレータ5は、あとで説明するアド
レス変換用のテーブル等を格納する記憶装置である。The address translator 5 is a storage device that stores a table for address translation, which will be described later.
(オブジェクトアドレス空間) 中央演算ユニット6によって読み出し書き込みが行われ
る各リソース7〜10のメモリ等に含まれるデータに
は、それぞれ固有のアドレスが付されている。(Object Address Space) The data contained in the memory of each of the resources 7 to 10 that is read and written by the central processing unit 6 is given a unique address.
この実施例においては、これらのデータをバイト単位で
特定するようにアドレスを付し、かつ、このアドレスを
第3図の通信回線2に接続された他のすべてのノードの
ものも含めて、一意的に定めている。In this embodiment, an address is assigned so as to specify these data in byte units, and this address is unique, including that of all the other nodes connected to the communication line 2 in FIG. Have been set.
第4図はそのアドレス空間を図示した概念図である。こ
のアドレスは、ハードウエアの絶対的なアドレスで、こ
れを物理アドレスと呼ぶことにする。FIG. 4 is a conceptual diagram showing the address space. This address is an absolute address of hardware and will be called a physical address.
まず、ノードのアドレスに上位18ビットを使用する。
すなわち、218台のノードが通信回線に接続されても、
識別が可能となる。次に、リソースのアドレスに位24
ビットを使用する。First, the upper 18 bits are used for the node address.
That is, even if 2 18 nodes are connected to the communication line,
It is possible to identify. Next, add 24 to the resource address.
Use bits.
そして、各リソースに含まれているプログラムファイル
やデータファイルのアドレスに、上位64ビットを使用
する。この64ビットは、リソースアドレス24ビット
のほかに、そのプログラム等が作成された時刻(年月日
時分秒)やアクセスコード等を用いて設定される。Then, the upper 64 bits are used for the address of the program file or data file included in each resource. These 64 bits are set using the resource address 24 bits, the time (year / month / day / hour / minute / second) when the program or the like was created, the access code, and the like.
通常、プロセスの実行前に、オペレーティングシステム
とプログラムファイルやデータファイルとをリンクして
いわゆるプロセス生成作業を行う。このとき、プログラ
ムファイル等を指定するために、例えばNODE3/P
ROG/KEIRI/KINRIといったファイル名を
用いる。このファイル名で指定されるものを本発明でオ
ブジェクトと呼び、このオブジェクトは、全システムを
通じて上位64ビットのアドレスによって一意的に特定
されている。Usually, before the execution of a process, an operating system is linked with a program file and a data file to perform so-called process generation work. At this time, in order to specify a program file or the like, for example, NODE3 / P
File names such as ROG / KEIRI / KINRI are used. What is designated by this file name is called an object in the present invention, and this object is uniquely specified by the address of the upper 64 bits throughout the entire system.
また、プロセスの生成段階で他のノードに含まれるオブ
ジェクト全体を自ノードのメモリ等に転送する方式は、
大容量のメモリを必要とし、かつ実行速度が著しく遅く
なる。In addition, the method of transferring the entire objects included in other nodes to the memory of the own node at the generation stage of the process is
It requires a large amount of memory and runs significantly slower.
そこで、本発明のコンピュータネットワークシステムに
おけるノード間のアクセス方法の場合、プロセスの実行
中に、そのつど必要な最小単位のデータの転送を受け、
これをくり返していく方式をとる。この最小単位をペー
ジと呼び、これは1バイト(8ビット)のデータを212
個集合したものとする。Therefore, in the case of the access method between the nodes in the computer network system of the present invention, during the execution of the process, the data transfer of the required minimum unit is received,
The method of repeating this is adopted. We call this smallest unit a page, which is 2 12 1-byte data (8 bits)
It is assumed that they are individually collected.
このページを特定するために、上位84ビットを使用
し、全96ビットで、1バイトのレベルまで物理アドレ
スが特定できるようにこのアドレス空間が構成されてい
る。In order to specify this page, the upper 84 bits are used, and this address space is configured so that the physical address can be specified up to the level of 1 byte with a total of 96 bits.
データの転送動作は、ページのアドレス(オブジェクト
ページアドレスと呼ぶ)を特定することによって、その
先頭のデータから212バイトのデータが連続して自動的
に転送されるというもので、このページの大きさは必要
に応じてより大きくあるいは小さく設定してもさしつか
えない。The data transfer operation is that by specifying the page address (called the object page address), 2 12 bytes of data are automatically transferred continuously from the top data. The size may be set larger or smaller as necessary.
なお、プロセスの実行の際には、プロセス生成時にプロ
セスの各ステップに付したプロセスアドレスからこのオ
ブジェクトページアドレスを求めてこれを用してアクセ
スし、必要なデータの転送を行うことになる。When the process is executed, the object page address is obtained from the process address given to each step of the process when the process is generated, and the object page address is used for access to transfer the necessary data.
このアドレス変換のために、後で説明する変換テーブル
を作成するが、テーブルの取扱いを容易にするため、ペ
ージの上にセグメントという単位を設けている。1セグ
メントは32ページで構成され、217バイトで構成され
る。従って上位79ビットでオブジェクトセグメントを
特定することができる。A translation table, which will be described later, is created for this address translation, but a unit called a segment is provided on the page to facilitate the handling of the table. One segment consists of 32 pages and consists of 2 17 bytes. Therefore, the upper 79 bits can specify the object segment.
このように、本発明のコンピュータネットワークシステ
ムにおけるノード間のアクセス方法においては、プロセ
スの実行中、オブジェクトページアドレスを用いて、す
べてのノードに含まれているオブジェクトの所定のデー
タを直接アクセスして転送を受けて使用する。As described above, in the access method between nodes in the computer network system of the present invention, during the execution of the process, the object page address is used to directly access and transfer the predetermined data of the objects included in all the nodes. Receive and use.
このために、所定のプロセスを実行しようとする中央演
算ユニットは、プロセスの生成段階でプロセスの実行に
必要なすべてのオブジェクトについて、いつでも即座に
オブジェクトページアドレスを求めることのできるテー
ブルを作成しておく。For this reason, the central processing unit that intends to execute a given process creates a table that can immediately obtain object page addresses for all the objects required to execute the process at the generation stage of the process. .
(プロセスの準備) プロセスの準備にあたっては、まずプロセスを構成する
プログラムファイルやデータファイルなどのオブジェク
トを、セグメント単位に分割して、実行順に配列する割
り付け作業を行う。この作業はマッピングとも呼ばれて
いる。すなわち、第5図に示すように、この作業で、全
プロセスについて、例えばファイルAのセグメント1 (FLASEGIと表示した。以下同様)、ファイルA
のセグメント2、ファイルAのセグメント3、ファイル
Bのセグメント1……というように、仮想空間上に割り
付けを行う。このプロセス仮想空間には、例えば、16
プロセスの割り付けが可能である。(Preparation of process) When preparing a process, first, objects such as program files and data files that compose the process are divided into segments and arranged in the order of execution. This work is also called mapping. That is, as shown in FIG. 5, in this work, for all processes, for example, segment 1 of file A (displayed as FLASEGI. The same applies hereinafter), file A
, Segment 2 of file A, segment 1 of file B, ..., And so on, in the virtual space. In this process virtual space, for example, 16
Processes can be assigned.
こうしてマッピングの終了したプロセスには、セグメン
トごとにアドレスが付される。このアドレスをプロセス
セグメントアドレスと呼ぶことにする。An address is given to each segment of the process for which mapping has been completed in this way. This address is called a process segment address.
同様に、この仮想空間上の各プロセスセグメントアドレ
スを実際オブジェクトを構成するセグメントの物理アド
レスと対応づけるために、第6図に示した変換テーブル
を作成する。この変換テーブルをプロセスセグメントア
ドレス−オブジェクトセグメントアドレス変換テーブル
と呼び、 P−Oテーブルと表示することにする。このテーブルも
16プロセス分の作成が可能なようメモリが用意されて
いる。Similarly, the conversion table shown in FIG. 6 is created in order to associate each process segment address in this virtual space with the physical address of the segment forming the actual object. This conversion table is referred to as a process segment address-object segment address conversion table and will be referred to as a P-O table. This table is also provided with a memory so that 16 processes can be created.
このテーブルは、プロセス側からもオブジェクト側から
も双方向に参照が可能なテーブルである。そして、プロ
セスセグメントアドレスはそれぞれ、そのセグメントの
最初のページのアドレスで表示される。そのセグメント
に含まれる特定のページは、そのセグメントの最初のペ
ージから何番目ということで認識できる。従って、P−
Oテーブルはセグメント単位の変換テーブルであるが、
換算によってページ単位でアドレス変換を行うことがで
きる。This table is a table that can be referenced bidirectionally from both the process side and the object side. Each process segment address is then displayed as the address of the first page of that segment. A specific page included in the segment can be identified by the number of pages from the first page of the segment. Therefore, P-
The O table is a conversion table for each segment,
Address conversion can be performed in page units by conversion.
すなわち、このP−Oテーブルと換算用の演算回路を用
いれば、例えばプロセスセグメント中の特定のページに
対応するオブジェクトページアドレスをただちに求める
ことができる。That is, by using this P-O table and the conversion arithmetic circuit, for example, the object page address corresponding to a specific page in the process segment can be immediately obtained.
中央演算ユニット(CPU)はプロセス準備段階で、フ
ァイル名をもととして、P−Oテーブルの作成を行う。
自ノードの分はもとより、他ノードの分についても、物
理アドレスを問い合わせて作成する。The central processing unit (CPU) creates a P-O table based on the file name at the process preparation stage.
Not only the own node but also other nodes are inquired about the physical address and created.
このような変換テーブルを作成することによって、プロ
セスの実行中、自ノードに含まれるデータも、他ノード
に含まれるものも、ほぼ同様に高速でアクセスすること
ができるようになるのである。このようにして準備され
たプロセスは、それも一種のオブジェクトとなって格納
される(それをプロセスイメージという)。By creating such a conversion table, it becomes possible to access the data contained in the own node and the data contained in other nodes at substantially the same speed during the execution of the process. The process thus prepared is also stored as a kind of object (it is called a process image).
そして、プロセスの実行時には、まずP−Oテーブルが
アドレストランスレータ5にロードされ、次にR−Pテ
ーブルの空をさがしプロセスのページを割り付け、必要
ならばプロセスの実行に要するリソースを確保する(こ
の作業をプロセスの生成という)。次に第7図に示すよ
うに、実行用メモリに1ページ単位で転送されて書き込
まれたデータが実行されていく。実行用メモリはプロセ
スの実行中に使用されるレジスタやグラフィツクメモリ
やRAM素子等に相当し、これらには固有のアドレスが
付されている。このアドレスを実アドレスと呼ぶ。例え
ばこの実行用メモリを224バイト程度に設定する。Then, when the process is executed, the P-O table is first loaded into the address translator 5, then the R-P table is searched for space and the process page is allocated, and if necessary, the resources required for executing the process are secured (this Work is called process generation). Next, as shown in FIG. 7, the data transferred to and written in the execution memory page by page is executed. The execution memory corresponds to a register, a graphic memory, a RAM element, or the like used during the execution of the process, and these have unique addresses. This address is called a real address. For example, this execution memory is set to about 2 24 bytes.
一方、一般に、プロセス仮想空空間は2332ビットに設
定される。従って、プロセスの実行中は、プロセスの一
部についてのデータのみがこの実行用メモリに転記され
る。そして、その処理の進行につれてデータの書き換え
が行われる。そこで、上記プロセスアドレスとこの実行
用メモリのアドレス(実アドレス)とを対応づける変換
テーブルを用意する。これを第8図に示す。On the other hand, generally, the process virtual empty space is set to 23 32 bits. Therefore, during the execution of the process, only the data for a part of the process is transferred to the execution memory. Then, the data is rewritten as the processing progresses. Therefore, a conversion table that associates the process address with the address (real address) of the execution memory is prepared. This is shown in FIG.
これも、プロセスアドレス側と実アドレス側の双方向か
ら参照できるテーブルで、プロセス生成時に最初に作ら
れ、かつプロセス実行時、実行用メモリのデータの書き
換えのつど更新される。このテーブルをR−Pテーブル
と呼ぶことにする。実アドレスは、ノードのハードウェ
ア構成で定まるため、このR−Pテーブルは1ノードに
つき1つだけ作成される。従って、実アドレスに全実行
用メモリのアドレスが付され、プロセスアドレスには、
複数のプロセスのアドレスが混在することになる。This is also a table that can be referenced from both the process address side and the real address side, and is created first when the process is created and is updated each time the process memory is rewritten when the process is executed. This table will be called an RP table. Since the real address is determined by the hardware configuration of the node, only one RP table is created for each node. Therefore, the addresses of all execution memories are added to the real address, and the process address is
The addresses of multiple processes will be mixed.
(プロセスの実行) 本発明のコンピュータネットワークシステムにおけるノ
ード間のアクセス方法において、中央演算ユニットは第
1図に示したようにしてプロセスを実行する。また、そ
の実行のフローチャートを第2図に示した。この両図を
中心に説明を行う。(Execution of Process) In the access method between nodes in the computer network system of the present invention, the central processing unit executes the process as shown in FIG. A flowchart of the execution is shown in FIG. The description will be given with a focus on these figures.
第1図において、仮想空間11に先に第5図で説明した
要領でP−Oテーブル13(第6図で説明)が作成さ
れ、プロセスが準備される。また実行時(プロセスロー
ド等)にR−Pテーブル12(第8図で説明)が作られ
実行用メモリ14に(第7図で説明)プロセスの最初の
部分の実行のためのデータが転送される。In FIG. 1, the P-O table 13 (described in FIG. 6) is created in the virtual space 11 in the same manner as described in FIG. 5 above, and the process is prepared. Also, at the time of execution (process load etc.), the RP table 12 (described in FIG. 8) is created, and the data for execution of the first part of the process is transferred to the execution memory 14 (described in FIG. 7). It
この作業は、仮想空間11におけるプロセスセグメント
アドレスを、P−Oテーブル13でオブジェクトセグメ
ントアドレスに変換し、そのセグメントについて自ノー
ドのリソースあるいは他ノードのリソースから1ページ
分づつ実行用メモリ14にデータを転送することによっ
て行われる。(第2図のフローチャートステップ)。In this work, the process segment address in the virtual space 11 is converted into an object segment address in the P-O table 13, and data for that segment is stored in the execution memory 14 page by page from the resource of the own node or the resource of another node. It is done by transferring. (Flowchart step of FIG. 2).
こうしてプロセスが生成されると、判断ステップを経
て、実行用メモリのアクセスが行われる。通常、実行用
メモリはその実アドレス順にアクセスされ(ステップ
)、1ステップづつ実行されて(ステップ)、プロ
セス終了の判断を行いながら(判断ステップ)これを
くり返す。When the process is generated in this manner, the execution memory is accessed through the determination step. Normally, the execution memory is accessed in the order of its real address (step), is executed step by step (step), and this is repeated while making a process end judgment (judgment step).
いわゆるジャンプ命令やデータの参照があった場合、こ
の参照先アドレスが同一ページに存在しないときには
(ステップ;N)、ステップに進む。When there is a so-called jump instruction or data reference, and this reference address does not exist in the same page (step; N), the process proceeds to step.
参照先アドレスは通常、プロセスアドレスで表示される
から、R−Pテーブルを用いて、そのプロセスアドレス
を実アドレスに変換する(ステップ、、)。この
実アドレスが、同一ページにあれば、ステップからス
テップを経てステップへ移りプログラムが実行され
る。Since the reference address is usually displayed as a process address, the process address is converted into a real address using the RP table (steps, ...). If this real address is on the same page, the program is executed from step to step and step to step.
一方、プロセスアドレスがR−Pテーブルに無い場合、
すなわち、ページフヲーォトが発生した場合には、P−
Oテーブルを参照し(ステップ)、これをオブジェク
トページアドレスに変換する(ステップ)。このオブ
ジェクトページアドレスを用いて自ノードあるいは他ノ
ードのリソースに含まれるデータをアクセスし、1ペー
ジ分のデータを実行用メモリへ転送し(ステップ)、
R−Pテーブルの内容を更新する(ステップ)。On the other hand, if the process address is not in the RP table,
That is, if a page photo occurs, P-
The O table is referred to (step), and this is converted into an object page address (step). Using this object page address, access the data contained in the resource of the own node or another node and transfer the data for one page to the execution memory (step),
The contents of the RP table are updated (step).
ここで、本発明のコンピュータネットワークシステムに
おけるノード間のアクセス方法においては中央演算ユニ
ットがオブジェクトページアドレスを用いて他のノード
のデータを直接アクセスするほか、プロセスの任意の部
分について、その部分の実行主体を他のノードの中央演
算ユニットに切換える動作を行うことができる。Here, in the access method between nodes in the computer network system of the present invention, the central processing unit directly accesses the data of another node by using the object page address, and for any part of the process, the execution subject of that part is set. The operation of switching to the central processing unit of another node can be performed.
これは、例えば実行主体となるノードを指定する命令に
応じて、その部分のプロセスに必要な変換テーブルをそ
っくりそのノードに転送し、そのノードでプロセスの生
成と実行とをさせる。For example, according to an instruction designating a node which is an execution subject, the entire conversion table necessary for the process of the part is transferred to the node, and the process is generated and executed by the node.
そのノードでのプロセス生成後は、あたかもそのノード
がそのプロセスを当初から開始したのと同様にして、プ
ロセスが続行される。そのプロセスの実行中、また別の
ノードに実行主体を移すこともでき、またもとのノード
に返すことも、そのままプロセスを終了することもでき
る。After the process is created at the node, the process continues as if the node started the process from the beginning. During execution of the process, the execution subject can be moved to another node, returned to the original node, or the process can be terminated as it is.
実際に、その変換テーブルを含む、プロセスの実行に必
要なデータをそっくり転送されれば、実行主体が交替し
ても、P−Oテーブルはそのまま使用できるから、プロ
セス生成作業はきわめて短時間に終了し、非常に効率が
良い。In fact, if the data necessary for executing the process, including the conversion table, is completely transferred, the P-O table can be used as it is even if the execution subject changes, so the process generation work is completed in an extremely short time. And very efficient.
これは例えば、特定の演算処理について、これを効率的
に高速で演算することのできるハードウエアを有するノ
ードに対して、その部分の処理を代行させるような場合
に適する方法である。This is a method suitable, for example, in the case where a node having a hardware capable of efficiently performing a specific operation process for a particular operation process is substituted for that part of the process.
また、大量のデータを扱う演算処理で、そのデータを保
有しているノードに演算をまかせた方が、伝送路の介在
によるデータ伝送時間の短縮が図れる場合がある。この
ような場合にも、プロセスの実行主体の変更は効果的で
ある。In addition, in the arithmetic processing for handling a large amount of data, it may be possible to reduce the data transmission time due to the interposition of the transmission path by letting the node that owns the data perform the arithmetic operation. Even in such a case, changing the execution subject of the process is effective.
「変形例」 本発明のコンピュータネットワークシステムにおけるノ
ード間のアクセス方法は以上の実施例に限定されない。"Modification" The access method between nodes in the computer network system of the present invention is not limited to the above embodiments.
1ページを構成するデータ量は、先に説明したとおり、
任意に増減してよい。The amount of data that makes up one page is as described above.
You may increase or decrease it arbitrarily.
また、変換テーブルは、セグメント単位でなく、適当な
単位のデータ群を定めて自由に作成してさしつかえな
い。その他の変換テーブルについても、必要に応じて、
よりアドレス変換し易い形態にし、またより多くのテー
ブルを設けるようにしてもよい。Further, the conversion table may be freely created by defining a data group in an appropriate unit instead of the segment unit. For other conversion tables, if necessary,
The address may be converted more easily, and more tables may be provided.
このような変換テーブルはそれぞれ、ディスクまたはR
AMディスク等に格納すればよいが、変換の高速化を図
るために、高速メモリを利用してキャッシングを行うよ
うにしてもよい。Each such conversion table is a disk or R
It may be stored in an AM disk or the like, but caching may be performed using a high speed memory in order to speed up conversion.
「発明の効果」 以上説明した本発明のコンピュータネットワークシステ
ムにおけるノード間のアクセス方法は、システムを構成
するすべてのノードのすべてのリソースを、特定のノー
ドの中央演算ユニットが、自己のノードのリソースと同
等に一意的、一元的に取り扱ってページ単位でデータの
直接アクセスを行うことができる。"Effects of the Invention" In the access method between nodes in the computer network system of the present invention described above, all the resources of all the nodes constituting the system are managed by the central processing unit of a specific node as the resources of its own node. Equally unique and can be handled in a unified manner, and data can be directly accessed in page units.
従って、プロセスの実行が高速化され、また、ノード単
位でなく、システム全体から見てリアルタイムに各所の
リソースを動作させる、いわゆるネットワークワイドな
システムを構成することができる。Therefore, it is possible to configure a so-called network-wide system in which the execution of the process is speeded up, and the resources of each place are operated in real time from the viewpoint of the entire system instead of the node unit.
第1図は本発明のコンピュータネットワークシステムに
おけるノード間のアクセス方法の概要を示す説明図、第
2図はその動作のフローチャート、第3図は本発明の実
施に適するノードのブロック図、第4図はオブジェクト
アドレス空間の概念図、第5図はプロセス仮想空間の概
念図、第6図はP−Oテーブルの説明図、第7図は実行
用メモリの説明図、第8図はR−Pテーブルの説明図で
ある。 6……中央演算ユニット、 7〜10……リソース。FIG. 1 is an explanatory diagram showing an outline of an access method between nodes in a computer network system of the present invention, FIG. 2 is a flowchart of its operation, FIG. 3 is a block diagram of a node suitable for carrying out the present invention, and FIG. Is a conceptual diagram of an object address space, FIG. 5 is a conceptual diagram of a process virtual space, FIG. 6 is an explanatory diagram of a P-O table, FIG. 7 is an explanatory diagram of an execution memory, and FIG. 8 is an R-P table. FIG. 6 ... Central processing unit, 7-10 ... Resources.
Claims (2)
されるリソースを有する複数のノードが通信回線によっ
て接続されたコンピュータシステムにおけるノード間の
アクセス方法であって、前記コンピュータシステムのあ
らゆるリソースに含まれるすべてのページを所定の物理
アドレスによって一意的に特定した後に、その物理アド
レスで特定されたページのうち、プロセス実行用メモリ
に転送すべきページの物理アドレスと実行すべきプロセ
スのプロセスアドレスとを相互に対応づける変換テーブ
ルを作成し、前記ノードのうち第1のノードの中央演算
ユニットが所定のプロセスを実行する場合に、前記プロ
セスアドレスを前記変換テーブルを基に物理アドレスに
変換して、変換された物理アドレスを用いて全てのノー
ドのオブジェクトのページを直接アクセスしながら前記
プロセスを実行することを特徴とするコンピュータシス
テムにおけるノード間のアクセス方法。1. A method for accessing between nodes in a computer system in which a plurality of nodes each having a central processing unit and resources controlled by the central processing unit are connected by a communication line, and all access methods included in all resources of the computer system. After the page is uniquely specified by a predetermined physical address, the physical address of the page to be transferred to the process execution memory and the process address of the process to be executed are mutually corresponded among the pages specified by the physical address. When a central processing unit of the first node of the nodes executes a predetermined process, the process address is converted into a physical address based on the conversion table, and the converted physical table is created. Objects of all nodes using addresses Access method between nodes in a computer system characterized by performing the process while directly accessing the page.
部分について、第2のノードに対して、前記プロセスの
実行に必要な、前記変換テーブルの一部または全部を含
む、所定のデータを転送して、その後のプロセスの実行
主体を切換えることを特徴とする特許請求の範囲第1項
記載のコンピュータシステムにおけるノード間のアクセ
ス方法。2. During execution of a process, for any part of the process, predetermined data is transferred to a second node, including a part or all of the conversion table necessary for executing the process. The method for accessing between nodes in the computer system according to claim 1, characterized in that the execution subject of the subsequent process is switched.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60247147A JPH0619763B2 (en) | 1985-11-06 | 1985-11-06 | Access method between nodes in computer system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60247147A JPH0619763B2 (en) | 1985-11-06 | 1985-11-06 | Access method between nodes in computer system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62107364A JPS62107364A (en) | 1987-05-18 |
| JPH0619763B2 true JPH0619763B2 (en) | 1994-03-16 |
Family
ID=17159130
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60247147A Expired - Lifetime JPH0619763B2 (en) | 1985-11-06 | 1985-11-06 | Access method between nodes in computer system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0619763B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3042341B2 (en) * | 1994-11-30 | 2000-05-15 | 日本電気株式会社 | Local I/O control method for a cluster-connected multiprocessor system |
-
1985
- 1985-11-06 JP JP60247147A patent/JPH0619763B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPS62107364A (en) | 1987-05-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2977688B2 (en) | Multi-processing device, method, and processor used for the same | |
| US4937737A (en) | Process transparent multi storage mode data transfer and buffer control | |
| US6115738A (en) | Input/output device information management method and apparatus for multi-computers | |
| US5471615A (en) | Distributed data processing system having front-end and back-end computers with different operating systems | |
| US5463381A (en) | Database system having a plurality of nodes communicating with each other via communication network | |
| JPH06318168A (en) | Hierarchical data storage management device, method and its network | |
| US5056003A (en) | Distributed data management mechanism | |
| US5218713A (en) | Distributed data management mechanism for handling a data stream | |
| CA1244142A (en) | Distributed data management mechanism | |
| JPH0622015B2 (en) | Data processing system control method | |
| US5893926A (en) | Data buffering technique in computer system | |
| JP3489157B2 (en) | Distributed shared memory system and computer | |
| JPH0619763B2 (en) | Access method between nodes in computer system | |
| JP3453761B2 (en) | Address translation method | |
| JPH04260141A (en) | Data shared processor | |
| JP2767966B2 (en) | High-speed file access method | |
| JP2735400B2 (en) | Asynchronous I/O control method | |
| JP2798140B2 (en) | Virtual space control method | |
| JPS6069745A (en) | Data addressing method | |
| JPH10320218A (en) | Automatic start method of linked job in data transfer process | |
| JP3034145B2 (en) | Image processing system | |
| JPH069042B2 (en) | Sequential access control device for shared storage medium | |
| JPH06110813A (en) | Asynchronous data input/output system | |
| JPH0675793A (en) | Processing method for transmitting and receiving data between virtual computers | |
| JPH0553776A (en) | Program management method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |