delete_file -force2006年10月07日 10時42分47秒

delete_file はファイルを消すコマンド。他にも、truncate_file もある。こちらはファイルを切り上げる。

VOS では、ロック機構が unix とは違った形で施されている。例えば、unix では rm file をするとそのまま消せる。unix では、inode 数を減らすだけで、ファイルシステムからは、inode 数がゼロになったら消されるためだ。VOS では、delete_file と truncate_file 共にファイルがロックされていない必要がある。もし、他のプログラムが開いていたら、消すことが出来ない。

delete_file -force はファイルに特別なフラグを立てて、全てのロックが解除された時に、消すようにする。ファイルを消そうと思って、失敗すると大体誰かが利用中なのだ。実行中のプログラムファイルも同じようにロックされる。

利点としては、どのプログラムが特定のファイルを使っているのかとても分かりやすいことである。ロックをかけないでファイルを開くのは s$open で dirty input を指定したときだけだ。dirty input は他のプログラムにロックされているレコードにもアクセスできる。ただし、内容は保証されていない。

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2006/10/07/551249/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。