[[PageNavi(internal24-navi)]]
{{{ comment
h2w-title:ファイル構造体の確保と解放
}}}
= ファイル構造体の確保と解放 = #SECTION03610000000000000000
{{{
filp_open(パス名)
パス名に対応したdentryを求める(open_namei関数)
dentry_open関数を呼び出す。
dentry_open(dentry, ...)
空きファイル構造体を獲得(get_empty_filp関数)
ファイル構造体の初期化
- ファイル構造体と上記dentryをリンク)
- ファイル構造体のf_opメンバにファイル操作テーブルを登録
(「vfsと各ファイルシステムのインターフェイス」参照)
ファイルのopen関数(ファイルシステム固有部)を呼ぶ
}}}
ファイル構造体は、その参照数が0になると自動的に解放される。(つまり誰も参照しなくなったとき)その参照数を1減らす関数は、以下のfput関数である。
{{{
fput(ファイル構造体)
参照数を1減らす
参照数が0になったら、フリーリストfree_listに戻す。
}}}
----
''(NIS)HirokazuTakahashi [[BR]]2000年12月09日 (土) 23時55分06秒 JST''1
[[PageNavi(internal24-navi)]]