ファイル記述子は何を参照していますか?

ファイル記述子は何を参照していますか?

私の理解はファイル記述子open()これは、各カーネルプロセスがedファイル、パイプ、ソケット、およびその他のオブジェクトにマップされるキーである整数です。

「open file/socket/pipe/...」(ファイル記述子を参照)には正確で短く、具体的な名前がありますか?

これを「ファイル」と呼ぶと、ファイルシステムに保存されている開かれていないファイルと混同する可能性があります。単にファイル記述子を参照するだけでは、意味を適切に説明することはできません(たとえば、コピー整数プロセス間には役に立たない。)

探すオープングループ基本仕様私のシステムのマンページでは、ファイル記述子の参照オブジェクトが次のように結論付けられました。目的特定のオープンファイルの場合ファイルを開く。これより具体的な用語がありますか?目的

ベストアンサー1

これ以上具体的な用語はありません。従来のUnixでは、ファイル記述子を参照ファイルテーブル、呼び出される項目文書または時々ファイルを開く。これは特定の文脈にあるので、明らかに用語は文書文脈上非常に一般的ですファイルテーブル特に開かれたファイルを表します。

ディスク上のファイルはしばしばインデックスノード、技術的にinodeはファイルのメタデータ部分ですが。ただし、インデックスノードとデータブロック間の関係は1対1なので、インデックスノードを参照すると、暗黙的にそのノードが指すデータを参照することになります。より近代的なファイルシステムは、共有可能なデータブロックの書き込み中のコピーなどの機能をサポートできるため、これは普遍的には適用できませんが、既存のUnixでは動作します。しかし、用語を考えるとファイルシステム、内容を考慮するとかなりの飛躍です。文書

inodeもメモリに読み込まれます。コアインデックスノードディスク上のファイルを開いて保存するとき索引ノード表しかし、これはあなたが要求したよりも高いレベルの間接的です。

これにより、ディスク上のファイル(inodeで参照)と開かれたファイル(ファイルテーブルのエントリで参照)という用語が競合します。

「ファイルを開く」または「ファイルテーブルエントリ」のいずれかが説明する内容を説明するのに十分であることを示唆しています。

私が見つけたかなりきれいな参考資料は次のとおりです。http://www.hicom.net/~shchuang/Unix/unix4.html。参考文献(バッハ優しい)はこの本の参考資料です。Unixオペレーティングシステムの設計著者:モリスJ.バッハ。

おすすめ記事