パス名を取得する方法、または特定のinodeからdentry
またはstruct file
を取得する必要があります。特定のiノードからパス名またはdentryまたはstructファイルを取得する方法はありますか?
私はパス名からstruct file
を得るためにfile_open
を使用していましたが、常にカーネルパニックを与えました。私は自分のinodeリストからのinodeをパス名から比較したり、ディスク内のすべてのinodeを比較して対応するパス名を見つけたり、自分のinodeリストと比較する方法が必要です。
私の仕事は、ブロックが与えられたファイル を読み書きするために、私は、次の実装だということをシステムコールすることです:、filp_open機能(パス、O_CREATによって作成されたinodeをキャッチシステムコールのPathパラメータに ステップを00777)(この作品)とリンクリストを追加します。 次に、このファイルのパスを取得したinodeをパラメータとして受け取り、それ以外の場合は1を返した場合はリストをチェックする関数を作成しました。 この関数をopen()システムコール内に配置しますが、filp_open FLAG、x)に続いてfilp_close()を実行すると、次のエラーが発生します。 – Leonardo
O_CREAT FLAG = x = 00777 - >カーネルのメモリがすぐにカーネルブートを満たしています FLAG = 0およびx = O_RDONLY - >カーネルブート時のカーネルパニック – Leonardo
おそらく元の質問をこの説明で編集するほうがよいでしょう - コメントボックスに収まる内容を書くことは非常に難しく、読みやすいです。 :) – sarnold