JPH11219311A - File access method - Google Patents

File access method

Info

Publication number
JPH11219311A
JPH11219311A JP10022928A JP2292898A JPH11219311A JP H11219311 A JPH11219311 A JP H11219311A JP 10022928 A JP10022928 A JP 10022928A JP 2292898 A JP2292898 A JP 2292898A JP H11219311 A JPH11219311 A JP H11219311A
Authority
JP
Japan
Prior art keywords
file
computer
client computer
block
input
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
JP10022928A
Other languages
Japanese (ja)
Inventor
Toshiyuki Ukai
敏之 鵜飼
Toshiaki Mori
利明 森
Masaaki Shimizu
正明 清水
Yasuo Yamazaki
康雄 山▲崎▼
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 Ltd
Original Assignee
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 Ltd filed Critical Hitachi Ltd
Priority to JP10022928A priority Critical patent/JPH11219311A/en
Publication of JPH11219311A publication Critical patent/JPH11219311A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To prevent a load on a file server computer from increasing by allocating disk blocks to file blocks on the file server computer side and performing block input/output request processing based on block position information obtained on a client computer side. SOLUTION: When an OS 12 on a client computer 1 requires new block position information for the extension of a file or the like, at the time of input/ output processing, the OS 12 requests the new block position information from an OS 13 on a file server computer 2 through a block position information acquiring processor 27. Then, the OS 13 on the file server computer 2 sends back the block position information requested by the client side to the OS 12 on the client computer 1 when having the block position information. When not, on the other hand, the new block position information is added and sent back to the OS 12 through a disk block allocating processor 28.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、ファイルアクセス
方法に係り、特にプロセッサと二次記憶装置からなるコ
ンピュータおよびそれらを相互接続する通信ネットワー
クで構成されるコンピュータシステムにおけるファイル
アクセス方法に関する。
The present invention relates to a file access method, and more particularly to a file access method in a computer system including a computer including a processor and a secondary storage device and a communication network interconnecting the computers.

【0002】[0002]

【従来の技術】通常の多くのコンピュータシステムで
は、ユーザプロセスが要求したデータの2次記憶装置か
らの読み出しあるいはそこへのデータの書き込みは、O
Sによりデバイスに適合した形の要求に変換され実行さ
れる。例えば、磁気ディスク装置に代表されるブロック
型デバイス(決められた大きさのブロックでデータを管
理するデバイス)に格納されているファイルデータをア
クセスするために、OSはブロック入出力要求処理を行
う。さらにその要求を元に、個々のデバイス固有の入出
力コマンドを作成するデバイス固有入出力処理を行う。
2. Description of the Related Art In many ordinary computer systems, the reading of data requested by a user process from a secondary storage device or the writing of data to the secondary storage device is performed by O.
S converts the request into a form suitable for the device and executes the request. For example, in order to access file data stored in a block type device represented by a magnetic disk device (a device that manages data in blocks of a predetermined size), the OS performs a block input / output request process. Further, based on the request, device-specific input / output processing for creating an input / output command specific to each device is performed.

【0003】このようなOSとしては、ワークステーシ
ョンでよく使用されているUNIX(X/Open Company
の登録商標)が知られている。「UNIX 4.3 BSD
の設計と実装」丸善株式会社,1991(「The Design
and Implementation of the4.3 BSD UNIX Operating S
ystem」Addison−Wesley Publishing Company,1989の和
訳)173〜182頁,198〜202頁,211〜2
17頁(以下、参考文献1と呼ぶ)参照。
As such an OS, UNIX (X / Open Company) often used in a workstation is used.
(Registered trademark) is known. "UNIX 4.3 BSD
Design and Implementation ”Maruzen, 1991 (“ The Design
and Implementation of the4.3 BSD UNIX Operating S
ystem "Addison-Wesley Publishing Company, 1989) 173-182, 198-202, 211-2.
See page 17 (hereinafter referred to as Reference 1).

【0004】一方、分散メモリ型の並列コンピュータシ
ステムや、ローカルエリアネットワークで相互接続され
たコンピュータでは、ファイル入出力要求を行うコンピ
ュータ(クライアントコンピュータ)とファイルを管理
するコンピュータ(ファイルサーバコンピュータ)が異
なることがある。
On the other hand, in a distributed memory type parallel computer system and computers interconnected by a local area network, a computer that performs file input / output requests (client computer) and a computer that manages files (file server computer) are different. There is.

【0005】例えば、コンピュータA(クライアントコ
ンピュータ)においてあるユーザプログラムが、他のコ
ンピュータL(ファイルサーバコンピュータ)の管理す
るファイルXに対する入出力要求を発行することを考え
る。ただし、ファイルサーバコンピュータLではファイ
ルXを格納しているデバイスの管理も行っているものと
する。
For example, consider a case where a user program in a computer A (client computer) issues an input / output request for a file X managed by another computer L (file server computer). However, it is assumed that the file server computer L also manages the device storing the file X.

【0006】入出力要求を処理しようとしたクライアン
トコンピュータA上のOSは、そのファイルがファイル
サーバコンピュータLで管理されていることを知ると、
ネットワーク通信によって、ファイルサーバコンピュー
タLのOSに対する入出力要求を発行する。要求を受け
つけたファイルサーバコンピュータLでは、OSが持つ
ファイル管理用の表を用いて、ブロック入出力要求を作
成し、実行する。さらに、その要求をもとにデバイス固
有入出力要求を作成し、実行する。この実行結果を入出
力要求元であるクライアントコンピュータAに返す。
When the OS on the client computer A that attempts to process the input / output request finds that the file is managed by the file server computer L,
An I / O request to the OS of the file server computer L is issued by network communication. The file server computer L that has received the request creates and executes a block input / output request using the file management table of the OS. Further, based on the request, a device-specific input / output request is created and executed. This execution result is returned to the client computer A that is the input / output request source.

【0007】たとえば、「An OSF/1 UNIX for Massive
ly Parallel Multicomputers」1993Winter USENIX,1
993(以下、参考文献2と呼ぶ)の449〜468頁
を参照。
For example, "An OSF / 1 UNIX for Massive
ly Parallel Multicomputers "1993 Winter USENIX, 1
993 (hereinafter referred to as Reference 2), pages 449-468.

【0008】[0008]

【発明が解決しようとする課題】しかし、上記からわか
るとおり、ネットワーク通信性能が十分高い場合、ネッ
トワークで接続されたコンピュータシステムの全体の入
出力性能は、クライアントコンピュータの数によらず、
ファイルサーバコンピュータの処理能力によって決ま
る。
However, as can be seen from the above, when the network communication performance is sufficiently high, the overall input / output performance of the computer system connected via the network is independent of the number of client computers.
It depends on the processing capacity of the file server computer.

【0009】したがって、従来技術のようにファイルサ
ーバコンピュータのみで、ブロック入出力要求処理およ
びデバイス固有入出力要求処理を実行する場合、クライ
アントコンピュータが増加するに従ってファイルサーバ
コンピュータの負荷が増大し、コンピュータシステム全
体の入出力性能は向上しないという問題点があった。
Therefore, when the block input / output request processing and the device specific input / output request processing are executed only by the file server computer as in the prior art, the load on the file server computer increases as the number of client computers increases, and the computer system There was a problem that the overall input / output performance did not improve.

【0010】また、コンピュータシステム全体の入出力
性能を向上させるように、ファイルサーバコンピュータ
の数を増加させても、個々のファイルサーバコンピュー
タで管理するファイルは、クライアントコンピュータか
ら共有されることがあるため、データの一貫性制御が煩
雑になったり、特定のファイルサーバコンピュータの負
荷が高くなり、システム全体の入出力性能を劣化させる
という問題点があった。
Further, even if the number of file server computers is increased so as to improve the input / output performance of the entire computer system, files managed by each file server computer may be shared by client computers. However, there has been a problem that data consistency control becomes complicated, a load on a specific file server computer increases, and input / output performance of the entire system deteriorates.

【0011】本発明の目的は、クライアントコンピュー
タからの入出力要求によるファイルサーバコンピュータ
の負荷の増大を防ぐファイルアクセス方法を提供するこ
とである。
An object of the present invention is to provide a file access method for preventing an increase in load on a file server computer due to an input / output request from a client computer.

【0012】本発明の他の目的は、複数のクライアント
コンピュータから同一のファイルに対する入出力要求が
発生した場合に、ファイルの一貫性制御処理によるファ
イルサーバコンピュータの負荷の増大を防ぐファイルア
クセス方法を提供することである。
Another object of the present invention is to provide a file access method for preventing an increase in load on a file server computer due to file consistency control processing when an input / output request for the same file is issued from a plurality of client computers. It is to be.

【0013】[0013]

【課題を解決するための手段】上記課題を解決するため
に、本発明では、複数のコンピュータとそれらを相互接
続するネットワークからなるコンピュータシステムにお
ける、ネットワーク上のファイルサーバコンピュータに
管理されているファイルを、クライアントコンピュータ
から入出力するファイルアクセス方法において、ファイ
ルサーバコンピュータ側でファイルブロックにディスク
ブロックを割り当てるステップと、クライアントコンピ
ュータ側でブロック位置情報を取得するステップと、ク
ライアントコンピュータ側で上記位置情報に基づいてブ
ロック入出力要求処理を行うステップを有する。
In order to solve the above-mentioned problems, according to the present invention, a file managed by a file server computer on a network in a computer system including a plurality of computers and a network interconnecting the plurality of computers. Assigning a disk block to a file block on the file server computer side, obtaining block position information on the client computer side, and And performing a block input / output request process.

【0014】[0014]

【発明の実施の形態】本発明に係るファイルアクセス方
法を、図面に示した実施の形態を参照してさらに詳細に
説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A file access method according to the present invention will be described in more detail with reference to an embodiment shown in the drawings.

【0015】図1は、本発明によるファイルアクセス方
法の実施の形態を適用した、コンピュータシステムの全
体を示したものである。
FIG. 1 shows an entire computer system to which an embodiment of a file access method according to the present invention is applied.

【0016】図1において、コンピュータシステムは入
出力要求元であるクライアントコンピュータ1および入
出力処理先であるファイルサーバコンピュータ2および
それらを相互に接続する通信ネットワーク3より構成さ
れる。また、ファイルサーバコンピュータ2には2次記
憶装置である磁気ディスク装置4が接続されている。ク
ライアントコンピュータ1およびファイルサーバコンピ
ュータ2は、命令を実行する命令ユニット,主記憶,主
記憶を制御する記憶制御装置等から構成されるが、これ
らの回路は簡単化のために図示していない。代わりに、
図には、クライアントコンピュータ1およびファイルサ
ーバコンピュータ2のブロック内に、走行している一つ
のユーザプロセス11とOS12および13を示してい
る。クライアントコンピュータ1およびファイルサーバ
コンピュータ2上には実際には多数のユーザプロセスが
同時に走行しているが、図には簡単化のために一つのユ
ーザプロセス11のみを示す。
In FIG. 1, the computer system includes a client computer 1 as an input / output request source, a file server computer 2 as an input / output processing destination, and a communication network 3 interconnecting them. Further, a magnetic disk device 4 as a secondary storage device is connected to the file server computer 2. The client computer 1 and the file server computer 2 include an instruction unit for executing instructions, a main memory, a storage control device for controlling the main memory, and the like, but these circuits are not shown for simplicity. instead,
In the figure, one running user process 11 and OSs 12 and 13 are shown in blocks of the client computer 1 and the file server computer 2. Although a large number of user processes are actually running simultaneously on the client computer 1 and the file server computer 2, only one user process 11 is shown in the figure for simplification.

【0017】クライアントコンピュータ1上のユーザプ
ロセス11が、ファイルサーバコンピュータ2に接続さ
れている2次記憶装置4内のあるファイルに対する入出
力要求21を発行したときは、次に示すような流れで要
求が処理される。
When the user process 11 on the client computer 1 issues an input / output request 21 for a certain file in the secondary storage device 4 connected to the file server computer 2, the request is issued in the following flow. Is processed.

【0018】まず、クライアントコンピュータ1のOS
12が、後に説明するクライアントコンピュータiノー
ド16を使用して、ブロック入出力要求作成処理22を
実行する。この要求は通信ネットワーク3を介してファ
イルサーバコンピュータ2へ伝えられるが、その通信を
行うためにクライアントコンピュータおよびファイルサ
ーバコンピュータでそれぞれ通信処理23および24を
実行する。通信処理23および24については、クライ
アントコンピュータ1のOS12で作成されたブロック
入出力要求がファイルサーバコンピュータ2のOS13
に伝えられれば、どのような通信処理でも構わないた
め、説明は省略する。
First, the OS of the client computer 1
12 executes a block input / output request creation process 22 by using a client computer inode 16 described later. This request is transmitted to the file server computer 2 via the communication network 3, and the client computer and the file server computer execute communication processes 23 and 24, respectively, to perform the communication. As for the communication processes 23 and 24, the block input / output request created by the OS 12 of the client computer 1 is transmitted to the OS 13 of the file server computer 2.
, Any communication process may be performed, and a description thereof will be omitted.

【0019】ファイルサーバコンピュータ2のOS13
では、受け付けたブロック入出力要求に従って、データ
転送処理25およびデバイス固有入出力要求処理26を
実行する。詳細は後述するが、データ転送処理25はデ
ータ入出力用のブロックバッファ18を確保し、これを
用いてクライアントコンピュータおよびデバイスとのデ
ータ授受を行い、その結果をクライアントコンピュータ
1側のOS12に通知して、入出力処理を終了する。
OS 13 of file server computer 2
Then, the data transfer processing 25 and the device-specific input / output request processing 26 are executed in accordance with the received block input / output request. As will be described in detail later, the data transfer process 25 secures the block buffer 18 for data input / output, performs data transfer with the client computer and the device using this, and notifies the OS 12 of the client computer 1 of the result. Then, the input / output processing ends.

【0020】上記入出力処理の際、クライアントコンピ
ュータ1のOS12はファイルの拡張などで、新たなブ
ロック位置情報を必要とすることがある。このとき、OS
12はブロック位置情報取得処理27により、ファイルサ
ーバコンピュータ2のOS13に対して、新たなブロック位
置情報を要求する。OS13は、すでにクライアント側
から要求されたブロック位置情報を持っていれば、それ
をOS12に返す。なければ、ディスクブロック割り当
て処理28により、新たなブロック位置情報を追加し
て、それをOS12に返す。
At the time of the input / output processing, the OS 12 of the client computer 1 may need new block position information due to file expansion or the like. At this time, the OS
12 requests new block position information from the OS 13 of the file server computer 2 by the block position information acquisition processing 27. If the OS 13 already has the block position information requested by the client, the OS 13 returns it to the OS 12. If not, the new block position information is added by the disk block allocation processing 28 and returned to the OS 12.

【0021】以上のようにして、それ自体公知のブロッ
ク要求作成処理25をクライアントコンピュータ1のO
S12で、また、それ自体公知のデバイス固有入出力要
求処理26をファイルサーバコンピュータ2のOS13
で実行することにより、ファイルサーバコンピュータ2
の負荷の増大を防ぐファイルアクセス方法が実現され
る。
As described above, the block request creation processing 25 known per se is executed by the O
In S12, the device-specific input / output request processing 26 known per se is executed by the OS 13 of the file server computer 2.
By executing on the file server computer 2
Thus, a file access method for preventing an increase in the load on the file is realized.

【0022】クライアントコンピュータ1側OS12
は、それ自体公知のiノードの代わりに、ファイルサー
バコンピュータ側OS13で管理するiノード17のブ
ロック位置情報の複製を含むクライアントコンピュータ
iノード16を使用する以外は、公知の手順でブロック
入出力要求処理22を実行する(たとえば、参考文献1
を参照)。
OS 12 of the client computer 1
Uses a client computer inode 16 including a copy of the block position information of the inode 17 managed by the OS 13 on the file server computer side in place of the inode known per se, except for using a block input / output request in a known procedure. Execute the process 22 (for example, see Reference 1)
See).

【0023】具体的には図9のように、ユーザプロセス
11がファイル入出力をするために、最初にオープンシ
ステムコールを発行すると、OS12が有するプロセス
からファイルへのアクセスを管理するファイル管理表1
12と、ユーザプロセスごとに設けられたファイル記述
子表111とによって、OS12がこのシステムコール
で要求されたファイルをオープンする。するとそのファ
イルに対するクライアントコンピュータiノード113
を後で述べるように生成し、それ自体公知のファイル表
112にエントリを追加し、そのユーザプロセス11に
対応するファイル記述子表111内にエントリを追加
し、ユーザプロセス11にこのファイル記述子表111
に追加されたエントリの内容を返す。この内容はファイ
ル記述子と呼ばれ、ファイル表112に追加されたエン
トリに対するポインタからなる。
Specifically, as shown in FIG. 9, when the user process 11 first issues an open system call in order to input / output a file, the file management table 1 for managing access to a file from a process possessed by the OS 12 is provided.
The OS 12 opens the file requested by this system call based on the file 12 and the file descriptor table 111 provided for each user process. Then, the client computer inode 113 for the file
Is generated as described later, an entry is added to the file table 112 known per se, an entry is added to the file descriptor table 111 corresponding to the user process 11, and this file descriptor table is added to the user process 11. 111
Returns the contents of the entry added to. This content is called a file descriptor and consists of a pointer to the entry added to the file table 112.

【0024】公知のファイル管理表と同じく、ファイル
管理表112の一つのエントリは、プロセスからの参照
数121,次の入出力の開始点と予期されるファイル中
のバイトオフセット122,オープンしているプロセス
に対するアクセス権(読み出し,書き込み)123を保
持する。公知のファイル管理表エントリと異なる点は、
公知のファイル管理表がオープンしたファイルのiノー
ドを指すポインタを含む代わりに、オープンしたファイ
ルのクライアントコンピュータiノード16を指すポイ
ンタ124を含むことである。
As in the known file management table, one entry in the file management table 112 is the reference number 121 from the process, the starting point of the next input / output and the byte offset 122 in the file expected, and is open. The access right (read, write) 123 to the process is held. The difference from known file management table entries is that
Instead of the known file management table including a pointer to the inode of the opened file, the known file management table includes a pointer 124 to the client computer inode 16 of the opened file.

【0025】上記ファイル管理表エントリのバイトオフ
セットがそのファイル内で次に読み書きする位置を決定
する。例えば、ファイルのオープン時、ファイルの先頭
から読み書きする場合は、ファイル管理表エントリ中の
バイトオフセット122は0に設定される。また、ユー
ザプロセスが追加書き込みモードでファイルをオープン
すれば、ファイル管理表エントリ中のバイトオフセット
122はファイルの大きさに設定される。ユーザプロセ
ス11からのその後の入出力要求は、リード(read)あ
るいはライト(write)システムコールを使って行われ
る。このとき、これらシステムコールは、ファイル記述
子、ユーザプロセス空間内のバッファアドレス、データ
の大きさを引数として含む。つまり、readあるいはwrit
e システムコールでは、ファイル内での読み書きすべき
オフセットを指定しない。ファイルデータの読み出しお
よび書き込みが行われると、ファイル管理表エントリ内
のバイトオフセット122が入出力処理されたデータの
大きさだけ更新される。ファイル管理表エントリ中のバ
イトオフセット122は、lseek システムコールによっ
て、ユーザプロセスが直接設定することもできる。
The byte offset of the file management table entry determines the next read / write position in the file. For example, when reading and writing from the beginning of the file when the file is opened, the byte offset 122 in the file management table entry is set to 0. If the user process opens the file in the additional write mode, the byte offset 122 in the file management table entry is set to the size of the file. Subsequent input / output requests from the user process 11 are made using a read or write system call. At this time, these system calls include a file descriptor, a buffer address in the user process space, and a data size as arguments. That is, read or writ
The e system call does not specify the offset in the file to read or write. When reading and writing of file data are performed, the byte offset 122 in the file management table entry is updated by the size of the input / output processed data. The byte offset 122 in the file management table entry can be directly set by the user process by the lseek system call.

【0026】ファイル管理表112の一つのエントリ中
にファイルのバイトオフセットを保有することの利点
は、同じファイルに対して複数のユーザプロセスがバイ
トオフセットを共有したり、あるいは別々のバイトオフ
セットに持つことができることである。つまり、複数の
ユーザプロセス用の複数のファイル記述子表111に属
する複数のエントリがファイル表112の一つのエント
リを指すように、それらの複数のエントリのファイル記
述子を決定することができる。この場合、それらのユー
ザプロセスからファイル入出力を実行する際、これらの
ユーザプロセスは、この共有されたエントリ内の同じバ
イトオフセットを共有できる。また、複数のユーザプロ
セス用の複数のファイル記述子表111に属する複数の
エントリがファイル管理表112の異なるエントリを指
すように、これらのファイル記述子表111の上記複数
のエントリのファイル記述子を決定し、さらに、ファイ
ル管理表112のこれらのエントリが一つのファイルに
対するクライアントコンピュータiノードを指すように
ファイル表112内の上記異なるエントリ内のクライア
ントコンピュータiノードへのポインタを決定すること
もできる。この場合には、これらのユーザプロセスは、
同じファイルに対して別々のバイトオフセットを持つこ
とができる。
The advantage of having the byte offset of a file in one entry of the file management table 112 is that multiple user processes can share the byte offset for the same file, or have them at different byte offsets. Is what you can do. That is, the file descriptors of the plurality of entries can be determined so that the plurality of entries belonging to the plurality of file descriptor tables 111 for the plurality of user processes point to one entry of the file table 112. In this case, when performing file I / O from those user processes, these user processes can share the same byte offset in this shared entry. Also, the file descriptors of the plurality of entries in the file descriptor table 111 are changed so that the plurality of entries belonging to the plurality of file descriptor tables 111 for the plurality of user processes point to different entries in the file management table 112. Once determined, a pointer to the client computer inode in the different entry in the file table 112 may be determined so that these entries in the file management table 112 point to the client computer inode for one file. In this case, these user processes
You can have different byte offsets for the same file.

【0027】図9に示すとおり、クライアントコンピュ
ータiノードは、オープン要求されたファイルを管理す
るファイルサーバコンピュータ側OSで管理している当
該ファイルのiノード内のブロック位置情報を取得して
生成される。このブロック位置情報127は、それぞれ
一つのファイルに対するディスク上のデータ格納位置を
表す。クライアントコンピュータiノード16は、この
他に、ファイルに対して割り当てられているディスクブ
ロックの数を表す割り当て済みブロック数125や、それ
ぞれのクライアントコンピュータ内におけるそのファイ
ルの参照数を表すクライアントコンピュータ内参照数1
26を保持する。
As shown in FIG. 9, the client computer i-node is generated by acquiring the block position information in the inode of the file managed by the OS on the file server computer which manages the file requested to be opened. . The block position information 127 indicates the data storage position on the disk for one file. The client computer inode 16 further includes an allocated block number 125 indicating the number of disk blocks allocated to the file, and a reference number in the client computer indicating the reference number of the file in each client computer. 1
Hold 26.

【0028】図10に示すとおり、iノード17は、公
知のiノードと同様に、ファイルの所有者132,最終
更新日時等を保持するタイムスタンプ133,ファイル
の大きさ134などのファイルを管理するためのファイ
ル管理情報と、磁気ディスク記憶装置4上のデータを格
納しているディスクブロックをアクセスするためのブロ
ック位置情報137を有する。
As shown in FIG. 10, the inode 17 manages files such as a file owner 132, a time stamp 133 holding the last update date and time, a file size 134, and the like, similarly to the known inode. Management information and block position information 137 for accessing a disk block storing data on the magnetic disk storage device 4.

【0029】本実施の形態のiノード17は、公知のi
ノードと異なり、上記クライアントコンピュータ側でク
ライアントコンピュータiノード16を管理するため
に、クライアントコンピュータ参照カウント138とク
ライアントコンピュータ参照リストへのポインタ139
も有する。クライアントコンピュータ参照カウント138
は、該当するiノードから派生するクライアントコンピ
ュータiノードを保持するクライアントコンピュータの
数を表す。また、クライアントコンピュータ参照リスト
へのポインタ139は、上記クライアントコンピュータ
iノードを保持するクライアントコンピュータ番号を保
持するクライアントコンピュータ参照リストを指す。こ
のクライアントコンピュータ参照リストは、ファイルを
参照しているクライアントコンピュータに対して、例え
ばクライアントコンピュータiノードのブロック位置情
報を無効化する場合などに用いる。
The i-node 17 of the present embodiment is a publicly-known i-node.
Unlike the node, in order to manage the client computer inode 16 on the client computer side, a client computer reference count 138 and a pointer 139 to a client computer reference list are provided.
Also have. Client computer reference count 138
Represents the number of client computers holding client computer i-nodes derived from the corresponding i-node. The pointer 139 to the client computer reference list points to the client computer reference list holding the client computer number holding the client computer inode. The client computer reference list is used for, for example, invalidating the block position information of the client computer inode for the client computer that is referring to the file.

【0030】iノードのブロック位置情報137は、フ
ァイル内のブロック(ファイルブロック)の位置を示す
ファイルブロック番号(ファイル先頭からの相対位置を
示す)と、そのファイルブロックの磁気ディスク装置上
での格納位置を示すディスクブロック番号(プロセッサ
から指定できる磁気ディスク装置の論理的アドレス。こ
のディスク上のブロックをディスクブロックと呼ぶ)と
の対応付けに用いる。これにより、ディスク空間を効率
的に管理できる。
The block position information 137 of the inode includes a file block number (indicating a relative position from the head of the file) indicating the position of the block (file block) in the file, and the storage of the file block on the magnetic disk device. It is used for association with a disk block number indicating a position (a logical address of a magnetic disk device that can be specified by a processor; a block on this disk is called a disk block). Thereby, the disk space can be managed efficiently.

【0031】次に図2を用いて、クライアントコンピュ
ータ1のOS12におけるディスクブロック入出力要求
処理22について説明する。まず、ユーザからの入出力
要求がファイルにおけるブロックの相対位置であるファ
イルブロック番号に変換される(ステップ31)。さら
に、ユーザプロセス11からの入出力要求11が指定す
るファイル名から該当するファイルのクライアントコン
ピュータiノード16が判別され、入出力要求11が指
定するファイルブロックに対するブロック位置情報12
7がクライアントコンピュータiノード16に存在する
かどうかを確認する(ステップ32)。存在しなけれ
ば、ファイルサーバコンピュータからブロック位置情報
を獲得する(ステップ33)。上記獲得したブロック位置
情報127をもとにファイルブロック番号からディスク
ブロック番号に変換し(ステップ34)、ディスクブロ
ック入出力要求を作成する(ステップ35)。そして上
記要求をファイルサーバコンピュータに対して発行する
(ステップ36)。
Next, the disk block input / output request processing 22 in the OS 12 of the client computer 1 will be described with reference to FIG. First, an input / output request from a user is converted into a file block number which is a relative position of a block in a file (step 31). Further, the client computer i-node 16 of the corresponding file is determined from the file name specified by the input / output request 11 from the user process 11, and the block position information 12 for the file block specified by the input / output request 11 is determined.
It is confirmed whether or not 7 exists in the client computer inode 16 (step 32). If not, block position information is obtained from the file server computer (step 33). The file block number is converted into a disk block number based on the obtained block position information 127 (step 34), and a disk block input / output request is created (step 35). Then, the request is issued to the file server computer (step 36).

【0032】次に上記要求に対するファイルサーバコン
ピュータ2におけるOS13のデータ転送処理25およ
びデバイス固有入出力要求処理26について、図3を用
いて説明する。まず、ディスクブロック入出力要求を受
け取ったとき、その要求対象となるディスクブロックの
データを保持するブロックバッファ18を確保する(ス
テップ41)。
Next, the data transfer processing 25 of the OS 13 and the device specific input / output request processing 26 in the file server computer 2 in response to the above request will be described with reference to FIG. First, when a disk block input / output request is received, a block buffer 18 for holding data of a disk block to be requested is secured (step 41).

【0033】ここでブロックバッファ18について説明
しておく。このブロックバッファ18はディスクブロッ
ク毎に一意に決まるように確保し、一連のクライアント
コンピュータからの入出力処理にこのブロックバッファ
18を介することによって、他のクライアントコンピュ
ータが同時に同じファイルに対して入出力を行った場合
のデータの一貫性を保つようにする。
Here, the block buffer 18 will be described. The block buffer 18 is secured so as to be uniquely determined for each disk block, and the input / output processing from a client computer is performed via the block buffer 18 so that another client computer can simultaneously input / output the same file. Ensure data consistency when done.

【0034】次に、上記ブロックバッファ18の確保が
確認できると、同時にブロックバッファ18にアクセス
されたときのデータの一貫性を保証するために、ブロッ
クバッファ18のロックをとり(ステップ42)、以降
ステップでデバイス固有入出力要求処理26を行う。ブ
ロック入出力要求が読み出しか書き込みかによって処理
が別れる(ステップ43)。
Next, when it is confirmed that the block buffer 18 has been secured, the block buffer 18 is locked in order to guarantee the consistency of data when the block buffer 18 is accessed at the same time (step 42). In the step, the device specific input / output request processing 26 is performed. Processing differs depending on whether the block input / output request is read or write (step 43).

【0035】読み出しの場合は、デバイス固有の入出力
コマンドを生成し、ディスクに対してデータ読み出し要
求を発行する(ステップ44)。その後、ブロックバッ
ファ18へのデータ読み出し完了を待ち(ステップ4
5)、ブロックバッファ18から要求元であるクライア
ントコンピュータへのデータ転送を行う。
In the case of reading, a device-specific input / output command is generated, and a data read request is issued to the disk (step 44). After that, it waits for the completion of reading data from the block buffer 18 (step 4).
5) The data is transferred from the block buffer 18 to the requesting client computer.

【0036】書き込みの場合は、ブロックバッファ18
へのクライアントコンピュータからのデータ転送の完了
を待つ(ステップ47)。上記完了待ちの間、あるいは
完了後に、デバイス固有の入出力コマンドを生成し、デ
ィスクに対してデータ書き込み要求を発行して(ステッ
プ48)、完了を待つ(ステップ49)。
In the case of writing, the block buffer 18
It waits for the completion of the data transfer from the client computer to the client (step 47). During or after the completion, a device-specific input / output command is generated, a data write request is issued to the disk (step 48), and completion is waited for (step 49).

【0037】ステップ46あるいはステップ49の処理
の完了後、ブロックバッファのロックを解放して(ステ
ップ50)、入出力完了をクライアントコンピュータに
通知する(ステップ51)。
After completion of the processing in step 46 or step 49, the lock of the block buffer is released (step 50), and the completion of input / output is notified to the client computer (step 51).

【0038】このようにして、従来ファイルサーバコン
ピュータで行っていたブロック入出力要求処理およびデ
バイス固有入出力要求処理を、クライアントコンピュー
タでブロック入出力処理を実行することにより、ファイ
ルサーバコンピュータ側の負荷を減らすことができる。
In this manner, the load on the file server computer is reduced by executing the block input / output request processing and the device-specific input / output request processing conventionally performed by the file server computer on the client computer. Can be reduced.

【0039】次に図5および図6を用いてファイルオー
プン処理について説明する。図5はクライアントコンピ
ュータ1側OS12のファイルオープン処理である。ま
ずユーザからのファイルオープン要求を受け付けると
(図示せず)、オープン要求対象ファイルのクライアン
トコンピュータiノードがクライアントコンピュータ内
に、既に存在するかどうかを検査する(ステップ7
1)。既に存在すればステップ75へ進み、なければオ
ープン要求されたファイルを管理するファイルサーバコ
ンピュータに対してオープン要求を発行する(ステップ
72)。この結果として、ファイル管理先であるファイ
ルサーバコンピュータからブロック位置情報を受け取る
(ステップ73)。このブロック位置情報127(図
9)を保持するクライアントコンピュータiノードのエ
ントリを作成し(ステップ74)、それ自体公知のファ
イル管理表のエントリを割り当て、クライアントコンピ
ュータiノードへのポインタ124を、ステップ74で
作成したクライアントコンピュータiノードを指すよう
に設定する(ステップ75)。
Next, the file open processing will be described with reference to FIGS. FIG. 5 shows a file open process of the OS 12 of the client computer 1. First, when a file open request from the user is received (not shown), it is checked whether or not the client computer i-node of the file to be requested to open already exists in the client computer (step 7).
1). If the file already exists, the process proceeds to step 75, and if not, an open request is issued to the file server computer managing the file requested to be opened (step 72). As a result, block position information is received from the file server computer that is the file management destination (step 73). An entry of the client computer i-node holding the block position information 127 (FIG. 9) is created (step 74), an entry of a file management table known per se is assigned, and a pointer 124 to the client computer i-node is set in step 74. Are set to point to the client computer i-node created in step (step 75).

【0040】図6はファイルサーバコンピュータ2側O
S13のファイルオープン処理である。図5のステップ
72でオープン要求を受けつけたファイルサーバコンピ
ュータ側OSは、それ自体公知の方法で要求対象のファ
イルのiノードを見出す(ステップ81)。このiノー
ドはクライアントコンピュータによって参照されるた
め、後で図10を使って説明するクライアントコンピュ
ータ参照数をインクリメントする(ステップ82)。さ
らに、これも後で図10を使って説明するクライアント
コンピュータ参照リストに、クライアントコンピュータ
番号を登録する(ステップ83)。これら処理が済む
と、iノード中のブロック位置情報をファイルオープン
要求してきたクライアントコンピュータに送信して処理
を終了する(ステップ84)。
FIG. 6 shows the file server computer 2 side O
This is the file open process of S13. The OS on the file server computer that has received the open request in step 72 of FIG. 5 finds the inode of the file to be requested by a method known per se (step 81). Since this inode is referred to by the client computer, the reference number of the client computer described later with reference to FIG. 10 is incremented (step 82). Further, the client computer number is registered in a client computer reference list which will be described later with reference to FIG. 10 (step 83). When these processes are completed, the block position information in the inode is transmitted to the client computer which has issued the file open request, and the process ends (step 84).

【0041】図10は本実施例で用いるiノードの構造
を示している。また、図10はクライアントコンピュー
タ参照リストへのポインタ139が指すクライアントコ
ンピュータ参照リストの構造も示している。本実施例で
用いるiノードは、クライアントコンピュータ参照数1
38およびクライアントコンピュータ参照リストへのポ
インタ139を含むことを除いて公知である。本発明の
特徴の一つであるクライアントコンピュータ参照数13
8は、ファイルサーバコンピュータで管理するiノード
で表されるファイルが、いくつのクライアントコンピュ
ータから参照されているかを記憶する。また、クライア
ントコンピュータ参照リストへのポインタは、その名前
の通りクライアントコンピュータ参照リストのヘッダを
指す。クライアントコンピュータ参照リストはリストヘ
ッダ141と二重連結リスト構造を持つクライアントコ
ンピュータ番号のリスト142からなる。これらクライ
アントコンピュータ参照数138およびクライアントコ
ンピュータ参照リストにより、ファイルサーバコンピュ
ータ側OS13は、そのiノードで表されるファイル
が、どのクライアントコンピュータから参照されている
かの情報と、そのクライアントコンピュータの数を管理
する。これはクライアントコンピュータからの参照が0
になった場合に、それ自体公知の方法で、メモリ上に展
開したiノードをディスクへ書き戻すために使用する。
FIG. 10 shows the structure of an inode used in this embodiment. FIG. 10 also shows the structure of the client computer reference list indicated by the pointer 139 to the client computer reference list. The inode used in the present embodiment is a client computer reference number 1
38 and a pointer 139 to the client computer reference list. Client computer reference number 13 which is one of the features of the present invention
8 stores how many client computers refer to the file represented by the inode managed by the file server computer. Also, the pointer to the client computer reference list points to the header of the client computer reference list as the name implies. The client computer reference list includes a list header 141 and a list 142 of client computer numbers having a double linked list structure. Based on the client computer reference number 138 and the client computer reference list, the file server computer-side OS 13 manages information as to which client computer refers to the file represented by the inode and the number of the client computers. . This is because the reference from the client computer is 0
In this case, the inode expanded on the memory is used to write back to the disk by a method known per se.

【0042】次に、本発明の特徴の一つであるが、ユー
ザプロセスからの書き込み要求により、ファイルが増大
し、新たにファイルブロックに対して、ディスクブロッ
クを割り当てるときの処理を、図4を用いて説明する。
本発明と従来技術の相違点は、参考文献1および2で示
した従来技術ではディスクブロック割り当て処理とブロ
ック入出力要求処理を同じコンピュータで行うのに対し
て、本発明ではディスクブロック割り当て処理とブロッ
ク入出力要求処理を異なるコンピュータで実行する点で
ある。
Next, as one of the features of the present invention, FIG. 4 shows a process when a file is increased by a write request from a user process and a disk block is newly allocated to a file block. It will be described using FIG.
The difference between the present invention and the prior art is that in the prior art shown in References 1 and 2, disk block allocation processing and block input / output request processing are performed by the same computer, whereas in the present invention, disk block allocation processing and block The point is that the input / output request processing is executed by a different computer.

【0043】図示はしないが、クライアントコンピュー
タで走行するユーザプロセスからの書き込み要求が来た
とき、そのクライアントコンピュータのOSで管理して
いるクライアントコンピュータiノード16のブロック
位置情報に、ユーザ書き込み要求データを格納すべきデ
ィスクブロックが割り当てられていないことを想定して
いる。このとき、クライアントコンピュータ側OSは、
ファイルサーバコンピュータ側OSに対してファイルブ
ロック位置取得要求を発行する。
Although not shown, when a write request is received from a user process running on the client computer, the user write request data is added to the block position information of the client computer i-node 16 managed by the OS of the client computer. It is assumed that disk blocks to be stored are not allocated. At this time, the client computer OS
A file block position acquisition request is issued to the OS on the file server computer side.

【0044】図4はこの要求をファイルサーバコンピュ
ータが受けとったときの処理の様子である。まず、ファ
イルサーバコンピュータでは、ブロック位置情報取得要
求を受けつける(ステップ61)。他のクライアントコ
ンピュータ側OSからの要求により、既に当該ファイル
ブロックに対してディスクブロックが割り当てられてい
る可能性があるため、フロック位置情報が既に存在する
かどうかを検査する(ステップ62)。あればそのブロ
ック位置情報を要求元のクライアントコンピュータに返
す(ステップ67)。なければiノードのロックを取得
し(ステップ63)、ファイルブロックに対してそれ自
体公知の方法でディスクブロックを割り当て(ステップ
64)、それをブロック位置情報に登録する(ステップ
65)。登録後iノードのロックを解放し(ステップ6
6)、ブロック位置情報を要求元のクライアントコンピ
ュータに返す(ステップ67)。
FIG. 4 shows the processing when the file server computer receives this request. First, the file server computer receives a block position information acquisition request (step 61). Since there is a possibility that a disk block has already been allocated to the file block in response to a request from another client computer OS, it is checked whether floc position information already exists (step 62). If so, the block position information is returned to the requesting client computer (step 67). If not, the lock of the inode is acquired (step 63), a disk block is allocated to the file block by a method known per se (step 64), and it is registered in the block position information (step 65). After registration, release the lock of the inode (step 6)
6) Return block position information to the requesting client computer (step 67).

【0045】上記によって、ブロック位置情報は複数の
クライアントコンピュータに共有されつつ、クライアン
トコンピュータ側ではブロック位置情報の更新は発生し
ないため、一貫性を保つことが可能となる。一方、クラ
イアントコンピュータでディスクブロックの解放要求
(例えばファイルサイズを縮小する)が発行される場合
がある。このときは、あるファイルのブロック解放はそ
のファイルのクライアントコンピュータからの参照が0
になったときに行うことにする。もちろん負荷は増加す
るが、ディスクブロック解放の要求があるたびに、各ク
ライアントへ通知して一貫性を保つことも可能である。
As described above, while the block position information is shared by a plurality of client computers, the update of the block position information does not occur on the client computer side, so that the consistency can be maintained. On the other hand, a request for releasing a disk block (for example, reducing the file size) may be issued from the client computer. In this case, the block release of a certain file means that the reference from the client computer of the file is 0.
I will do it when it becomes. Of course, the load increases, but it is also possible to notify each client each time a disk block release request is made to maintain consistency.

【0046】本実施例の説明の最後に、図7と図8を使
って、ファイルクローズ処理を説明する。図7は、クラ
イアントコンピュータ側OSのファイルクローズ処理の
フローチャートである。ユーザプロセスからファイルク
ローズ要求を受け付けると(図示せず)、図10のクラ
イアントコンピュータiノード中のクライアントコンピ
ュータ内参照数126をデクリメントする(ステップ9
1)。このクライアントコンピュータ内参照数を検査し
(ステップ92)、0でないときは、そのクライアント
コンピュータ内の他のプロセスがそのクライアントコン
ピュータiノードを参照しているため、何もせずに終了
する。検査の結果が0のときは、そのクライアントコン
ピュータ内の他のプロセスがそのクライアントコンピュ
ータiノードを参照していないため、クライアントコン
ピュータiノードを解放し、クローズ要求されたファイ
ルの管理先にクローズ要求を発行する(ステップ93)。
At the end of the description of this embodiment, the file closing process will be described with reference to FIGS. FIG. 7 is a flowchart of the file closing process of the OS on the client computer side. When a file close request is received from the user process (not shown), the reference number 126 in the client computer in the client computer inode of FIG. 10 is decremented (step 9).
1). The number of references in the client computer is checked (step 92). If the number is not 0, another process in the client computer refers to the inode of the client computer. If the result of the check is 0, the other process in the client computer does not refer to the client computer i-node, the client computer i-node is released, and a close request is sent to the management destination of the file requested to be closed. Issue (step 93).

【0047】図8は、ファイルサーバコンピュータ側O
Sのファイルクローズ処理のフローチャートである。フ
ァイルサーバコンピュータ側OSが、図7のステップ9
3でクライアントコンピュータ側OSから発行されたク
ローズ要求を受け取ると(ステップ101)、iノード
17のクライアントコンピュータ参照数138をデクリ
メントし、クライアントコンピュータ参照リストからエ
ントリを除く(ステップ102)。このときクライアン
トコンピュータ参照数138を検査し(ステップ10
3)、0でないならば、まだ他のクライアントコンピュ
ータから参照されているため、ファイルサーバコンピュ
ータOSで管理するiノードはそのままにして終了す
る。0であれば、他のクライアントコンピュータからも
参照されていないため、iノードを解放する(ステップ
104)。ただし、このとき、図10の参照数136が
0でない場合は、ファイルサーバコンピュータ内でiノ
ードを参照しているので、iノードの解放は行わない。
FIG. 8 shows the file server computer side O
It is a flowchart of a file close process of S. The OS on the file server computer side executes step 9 in FIG.
When the close request issued from the client computer OS is received in step 3 (step 101), the client computer reference number 138 of the inode 17 is decremented and the entry is removed from the client computer reference list (step 102). At this time, the client computer reference number 138 is checked (step 10).
3) If it is not 0, the inode managed by the file server computer OS is left as it is because it is still referred from another client computer, and the process ends. If it is 0, the i-node is released because it is not referenced by other client computers (step 104). However, at this time, if the reference number 136 of FIG. 10 is not 0, the i-node is not released because the i-node is referred to in the file server computer.

【0048】上記のように本発明ではブロック入出力要
求処理をクライアントコンピュータで実施させる。
As described above, in the present invention, the block input / output request processing is executed by the client computer.

【0049】[0049]

【発明の効果】本発明によれば、ファイルサーバコンピ
ュータ側OSで管理するiノードのブロック位置情報
を、クライアントコンピュータ側OSに送り、クライア
ントコンピュータ側OSがその情報を利用してブロック
入出力要求を行うことにより、ファイル入出力処理にお
けるファイルサーバコンピュータの負荷を低減すること
が可能になる。
According to the present invention, the block position information of the inode managed by the OS on the file server computer is sent to the OS on the client computer, and the OS on the client computer uses the information to send a block input / output request. By doing so, it becomes possible to reduce the load on the file server computer in the file input / output processing.

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

【図1】本発明の実施形態の全体構成の一例を示すブロ
ック図。
FIG. 1 is a block diagram showing an example of the overall configuration of an embodiment of the present invention.

【図2】実施の形態のブロック入出力要求処理のフロー
図。
FIG. 2 is a flowchart of a block input / output request process according to the embodiment;

【図3】実施の形態のデータ転送処理のフロー図。FIG. 3 is a flowchart of a data transfer process according to the embodiment;

【図4】実施の形態のディスクブロック割り当て処理の
フロー図。
FIG. 4 is a flowchart of a disk block allocation process according to the embodiment;

【図5】クライアントコンピュータ側のファイルオープ
ン処理のフロー図。
FIG. 5 is a flowchart of a file open process on the client computer side.

【図6】ファイルサーバコンピュータ側のファイルオー
プン処理のフロー図。
FIG. 6 is a flowchart of a file open process on the file server computer side.

【図7】クライアントコンピュータ側のファイルクロー
ズ処理のフロー図。
FIG. 7 is a flowchart of a file closing process on the client computer side.

【図8】ファイルサーバコンピュータ側のファイルクロ
ーズ処理のフロー図。
FIG. 8 is a flowchart of a file closing process on the file server computer side.

【図9】クライアントコンピュータ側ファイル管理用デ
ータ構造の説明図。
FIG. 9 is an explanatory diagram of a data structure for file management on the client computer side.

【図10】ファイルサーバコンピュータ側ファイル管理
用データ構造の説明図。
FIG. 10 is an explanatory diagram of a file server computer-side file management data structure.

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

1…クライアントコンピュータ、2…ファイルサーバコ
ンピュータ、3…通信ネットワーク、4…磁気ディス
ク、11…ユーザプロセス、12…クライアントコンピ
ュータ側OS、13…ファイルサーバコンピュータ側O
S、15…ユーザバッファ、16…クライアントコンピ
ュータiノード、17…iノード、18…ブロックバッ
ファ、21…ファイルの入出力要求、22…ブロック入
出力要求処理、25…データ転送処理、26…デバイス
固有入出力要求処理、27…ブロック位置情報取得処
理、28…ディスクブロック割り当て処理、112…フ
ァイル管理表、124…クライアントコンピュータiノ
ードへのポインタ、126…クライアントコンピュータ
内参照数、127…ブロック位置情報。
DESCRIPTION OF SYMBOLS 1 ... Client computer, 2 ... File server computer, 3 ... Communication network, 4 ... Magnetic disk, 11 ... User process, 12 ... Client computer side OS, 13 ... File server computer side O
S, 15: user buffer, 16: client computer inode, 17: inode, 18: block buffer, 21: file input / output request, 22: block input / output request processing, 25: data transfer processing, 26: device specific Input / output request processing, 27: block position information acquisition processing, 28: disk block allocation processing, 112: file management table, 124: pointer to client computer i-node, 126: reference number in client computer, 127: block position information.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 山▲崎▼ 康雄 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Yama ▲ saki ▼ Yasuo 1-280 Higashi Koigakubo, Kokubunji-shi, Tokyo Inside the Hitachi, Ltd. Central Research Laboratory

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】複数のコンピュータとそれらを相互接続す
るネットワークからなり、上記コンピュータのうち、少
なくとも一つは、プロセッサで実行中の複数のユーザプ
ロセスによりアクセス可能な複数のファイルを保持する
少なくとも一つの二次記憶装置を有し、上記二次記憶装
置を管理するコンピュータのオペレーティングシステム
(以下OSと略記する)は、上記ファイルの二次記憶装
置上の論理的配置情報を管理し、上記コンピュータのO
Sは、上記複数のユーザプロセスのいずれかが発行した
上記ファイルの入出力要求を、上記二次記憶装置を管理
するコンピュータのOSに対して行うコンピュータシス
テムにおいて、上記ユーザプロセスが上記ファイルの入
出力要求を発行したコンピュータのOSは、上記二次記
憶装置を管理するコンピュータのOSから、上記論理的
配置情報の複製を有し、上記論理的配置情報を用いて、
上記二次記憶装置を管理するコンピュータのOSに対す
る入出力要求を行い、上記二次記憶装置を管理するコン
ピュータのOSは、上記二次記憶装置に対して入出力要
求を行うことを特徴とするファイルアクセス方法。
1. A computer comprising a plurality of computers and a network interconnecting them, at least one of said computers holding at least one file holding a plurality of files accessible by a plurality of user processes running on a processor. An operating system (hereinafter abbreviated as OS) of a computer that has a secondary storage device and manages the secondary storage device manages logical arrangement information of the file on the secondary storage device,
S is a computer system that issues an input / output request for the file issued by any of the plurality of user processes to an OS of a computer that manages the secondary storage device. The OS of the computer that issued the request has a copy of the logical arrangement information from the OS of the computer that manages the secondary storage device, and uses the logical arrangement information to
A file for making an input / output request to an OS of a computer that manages the secondary storage device, wherein the OS of the computer that manages the secondary storage device makes an input / output request to the secondary storage device. how to access.
【請求項2】上記論理的配置情報の複製の作成を上記フ
ァイルの参照開始処理にて行う請求項1記載のファイル
アクセス方法。
2. The file access method according to claim 1, wherein the duplication of the logical arrangement information is performed in the file reference start processing.
【請求項3】上記論理的配置情報の更新は上記二次記憶
装置を管理するコンピュータのOSが行う請求項1記載
のファイルアクセス方法。
3. The file access method according to claim 1, wherein the updating of the logical arrangement information is performed by an OS of a computer that manages the secondary storage device.
【請求項4】上記二次記憶装置を管理するコンピュータ
のOSは上記ファイルの参照数を管理し、上記論理的配
置情報の更新のうち、配置情報の一部あるいは全ての削
除は、少なくとも上記二次記憶装置を管理するコンピュ
ータ以外からの上記参照数が0になったときに行う請求
項3記載のファイルアクセス方法。
4. The OS of a computer that manages the secondary storage device manages the number of references to the file, and when updating the logical placement information, deleting part or all of the placement information is performed at least by the secondary 4. The file access method according to claim 3, wherein the method is performed when the number of references from a computer other than the computer that manages the next storage device becomes zero.
JP10022928A 1998-02-04 1998-02-04 File access method Pending JPH11219311A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10022928A JPH11219311A (en) 1998-02-04 1998-02-04 File access method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10022928A JPH11219311A (en) 1998-02-04 1998-02-04 File access method

Publications (1)

Publication Number Publication Date
JPH11219311A true JPH11219311A (en) 1999-08-10

Family

ID=12096301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10022928A Pending JPH11219311A (en) 1998-02-04 1998-02-04 File access method

Country Status (1)

Country Link
JP (1) JPH11219311A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007148546A (en) * 2005-11-24 2007-06-14 Hitachi Ltd System, device, and method for reading out data
WO2008031273A1 (en) * 2006-09-11 2008-03-20 Intel Corporation Personalizing space in a network environment

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007148546A (en) * 2005-11-24 2007-06-14 Hitachi Ltd System, device, and method for reading out data
WO2008031273A1 (en) * 2006-09-11 2008-03-20 Intel Corporation Personalizing space in a network environment
US8316107B2 (en) 2006-09-11 2012-11-20 Intel Corporation Personalizing space in a network environment

Similar Documents

Publication Publication Date Title
US8977659B2 (en) Distributing files across multiple, permissibly heterogeneous, storage devices
US7085909B2 (en) Method, system and computer program product for implementing copy-on-write of a file
JP5007350B2 (en) Apparatus and method for hardware-based file system
US6631478B1 (en) Technique for implementing high performance stable storage hierarchy in a computer network
US6526472B2 (en) Access control method, access control apparatus and computer readable memory storing access control program
US6014730A (en) Dynamic adding system for memory files shared among hosts, dynamic adding method for memory files shared among hosts, and computer-readable medium recording dynamic adding program for memory files shared among hosts
JP3704573B2 (en) Cluster system
US6298390B1 (en) Method and apparatus for extending traditional operating systems file systems
US5835908A (en) Processing multiple database transactions in the same process to reduce process overhead and redundant retrieval from database servers
US7010554B2 (en) Delegation of metadata management in a storage system by leasing of free file system blocks and i-nodes from a file system owner
EP0323013B1 (en) Method of operating a multiprocessor system employing a shared virtual memory
JP3102495B2 (en) Virtual memory management method
US5239643A (en) Method for reducing disk I/O accesses in a multi-processor clustered type data processing system
US6711559B1 (en) Distributed processing system, apparatus for operating shared file system and computer readable medium
Tevanian et al. A UNIX Interface for Shared Memory and Memory Mapped Files Under Mach.
JP3701890B2 (en) Reserving reclaimed space for compressed memory systems
JPH06332625A (en) Data multiplexing method for file and data processing system
EP0319148B1 (en) Method of operating a multi-processor system for the transfer of data between processor units
US20230088344A1 (en) Storage medium management method and apparatus, device, and computer-readable storage medium
JPH11219311A (en) File access method
JPH01112444A (en) Data access system
JPH086838A (en) Distribusion system
JP4245304B2 (en) Computer cluster system, file access method
JP3050194B2 (en) A system for dynamically adding a shared memory file between hosts, a method for dynamically adding a shared memory file between hosts, and a recording medium storing a program for dynamically adding a shared memory file between hosts
Chao et al. DataMesh architecture 1.0