VOS File Types ― 2006年08月18日 13時08分23秒
VOS のファイルはそれと比べても、変わった趣を持つ。VOS は基本的なファイル型は四種類ある。Sequentail File、Relative File、Fixed File、と Stream File だ。更にこれに、index を付けることが出来る。index を使ってファイルを読み出すと、ソートされた順番でレコードが読み出せる。
Sequentail File は、VOS 上ではとても一般的なファイル型だ。テキストファイルなどもこれらだ。VOS 上でのファイルの読み書きは UNIX 等のバイト単位とは違い、レコード単位で行なう。Sequentail File はレコード単位の読み書きのための構造を持っているので、頻繁に使われる。レコードの最大の大きさは 65536 だ。
それに引き替え Fixed File は逆だ。全てのレコードは全て同じ長さを持つ。ファイルの属性のうちの一つとなる。Continumm ではオブジェクトファイルや、プログラムファイルなどはこれだった。ftServer では Stream File になっているみたいだが。
このファイル型の特徴は、ランダムアクセスにある。レコード単位の seek がとても早いのだ。固定長のレコードなので、簡単に計算できるからだ。Sequential File だと、特定のレコードに移動するのに、一つずつレコードを読み出す必要があるからだ。しかし、固定長ゆえ、全てのレコードが同じ大きさになる必要がある。
Relative File は Fixed File と Sequentail File を合わせたような感じだ。自由な長さのレコードを読み書きできるが、ファイルを作成するときに最大レコード長を指定する必要がある。ファイルに書き込まれたときには、各レコードがこの最大レコード長のディスクを必要とする。それ故、使い方によっては、ディスクに無駄が出来てしまう。その変わり、ランダムアクセスの高速性は Fixed File 並だ。
最後の Stream File はいわゆる UNIX 型のファイルだ。ただ単にバイト列が並んだファイルだ。VOS にはそのたくさんの種類のファイルを操作するためのシステムコールが多い。Stream File には役に立たない物が多い。
これらの特徴は物理的なファイルの構造に由来する。
最近のコメント