[[PageNavi(internal24-navi)]]
{{{ comment
h2w-title:シンボリックリンクファイルの読みだし
}}}
== シンボリックリンクファイルの読みだし == #SECTION0310132000000000000000
シンボリックリンクファイルの読み出しは、vfs sys_readlink関数において、namei関数でシンボリックリンクファイルのiノードを求めた後、そのiノードのreadlinkオペレーションを呼び出す。ext2ファイルシステムでは、ext2_readlink関数(パス名が短いとき)もしくはpage_readlink関数(パスが長いとき)が呼び出される。
{{{
ext2_readlink(シンボリックリンクファイルのdentry, 読みだし先)
inode内に保存しているパス名をユーザ空間にコピー(vfs_readlink関数)
page_readlink(シンボリックリンクファイルのdentry, 読みだし先...)
ブロックをページへ読み込み(page_getlink関数)
ブロック内のパス名をユーザ空間にコピー(vfs_readlink関数)
ページキャッシュの解放(page_cache_release関数)
}}}
シンボリックリンクファイルの削除は、通常ファイルと同じくunlink処理で行われる。処理手順は全く同じである。
----
''(NIS)HirokazuTakahashi [[BR]]2000年12月09日 (土) 23時55分06秒 JST''1
[[PageNavi(internal24-navi)]]