Linuxカーネルに関する技術情報を集めていくプロジェクトです。現在、Linuxカーネル2.6解読室の第2章までを公開中。
シンボリックリンクファイルの読み出しは、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
2000年12月09日 (土) 23時55分06秒 JST1
[PageInfo]
LastUpdate: 2008-08-27 14:17:40, ModifiedBy: hiromichi-m
[Permissions]
view:all, edit:login users, delete/config:members