Linuxには、ファイルを開くためのプログラム要求を処理するレイヤ/スクリプトがありますか?
Bashでファイル記述子を開くときと同じです。exec 3 <>/documents/foo.txt
または、テキストエディタが開いたときと同じです。/documents/foo.txt
編集者が独自の読み取り/書き込みアクセスのために「ファイルを開く」ことができるとは信じられません。
むしろこれが「レイヤー」に対する要請だと思います(init.dスクリプト?)、最初は特定の数のファイルのみを開くことができ、アクセスタイプ、ファイルを開いたプロセスなどに応じて開こうとしているファイルを注意深く観察できます。
ベストアンサー1
このレイヤーはLinuxや他のシステムのカーネル内にあり(ほとんどの非Unixオペレーティングシステムと同様)、歴史的なUnixデザインとは大きく変わりません。
カーネルのこの部分をカーネルといいます。VFS(仮想ファイルシステム)層。 VFSの機能は、開いたファイルの情報(ファイル間対応)を管理することです。ファイル記述子、ファイル説明を開くおよびディレクトリエントリ)、ファイルパスを確認し(および解釈)、ディレクトリエントリの操作を/
正しいファイルシステムドライバに渡します。.
..
ほとんどのファイルシステムドライバもカーネルにありますが、ヒューズファイルシステムドライバを使用すると、この機能をカーネルの外部に委任できます。たとえば、ディスクファイルシステムがある場合など、低レベルのリポジトリで実行されている場合、ファイルシステムの操作にはユーザードメインコードが含まれる場合があります。循環装置。