14
4

1 に答える 1

4

これらのデバイスにより、実装者は機能のために新しいsyscallまたはを定義することを避けることができioctlました。おそらく、そのように実装されたのは、よりシンプルで、更新する必要のあるコードが少なく、懸念されていた可能性のある VFS API を変更しないためです。当時の。

パスを開い/dev/autofs_nowaitてトラバースすると、自動マウントがトリガーされますが、それらが完了するのを待たないでください (そうしないと、ファイルシステムがマウントされるまで、または操作がタイムアウトになるまでプロセスがブロックされます) ENOENT。たとえすべてがうまくいっても。

OTOH/dev/autofs_notriggerは、プロセスが自動マウントをトリガーしないようにします。

これらのデバイスが行うのはそれだけです。問題は、Darwin の実装でopenは、O_NONBLOCKまたはO_NDELAY.

openの操作から、vfs からの流れをたどることができますvnode

そのパスの下には、(非) ブロッキング動作の処理はありません。

于 2016-09-21T16:22:47.317 に答える