sys_open(const char __usr *filename,int flags int mode)分析
sys_open(const char __usr *filename,int flags, int mode)分析
輸入: 文件名,標志,模式
輸出:返回值為零
功能: 1.進入內核空間為文件名分配內存tmp = getname(filename);
2.獲取描述符 fd = get_unused_fd();
3,打開文件,取得文件底層操作函數struct file *f = filp_open(tmp, flags, mode);
函數error = open_namei(filename, namei_flags, mode, &nd); 找到具體的文件入口點
struct file *dentry_open(nd.dentry, nd.mnt, flags); 掛載文件操作函數。
4,文件指針放入進程的文件描述符表。