Linux kernel open system call 분석

(버전 사이의 차이)
이동: 둘러보기, 찾기
(주요 함수)
(System Call)
8번째 줄: 8번째 줄:
 
==== System Call ====
 
==== System Call ====
 
<tab2 class=wikitable sep=semicolon>
 
<tab2 class=wikitable sep=semicolon>
[http://lxr.free-electrons.com/source/fs/open.c#L1003 SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode) ; include/fs/open.c
+
[http://lxr.free-electrons.com/source/fs/open.c#L1003 SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode)] ; include/fs/open.c
 
</tab2>
 
</tab2>
 +
 
==== VFS ====
 
==== VFS ====
 
<tab2 sep=semicolon>
 
<tab2 sep=semicolon>

2014년 4월 30일 (수) 03:06 판

목차

코드 분석

주요 자료구조

struct nameidata include/linux/namei.h

주요 함수

System Call

SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode) include/fs/open.c

VFS

do_sys_open(int dfd, const char __user *filename, int flags, umode_t mode) : long fs/open.c
getname(const char __user * filename) : struct filename fs/namei.c
getname_flags(const char __user *filename, int flags, int *empty) : struct filename fs/namei.c
get_unused_fd_flags(unsigned flags) : int fs/file.c
__alloc_fd(struct files_struct *files, unsigned start, unsigned end, unsigned flags) : int fs/file.c
do_filp_open(int dfd, struct filename *pathname, const struct open_flags *op) : struct file fs/namei.c
path_openat(int dfd, struct filename *pathname, struct nameidata *nd, const struct open_flags *op, int flags) : struct file fs/namei.c
get_empty_filp(void) : struct file fs/file_table.c
do_tmpfile(int dfd, struct filename *pathname, struct nameidata *nd, int flags, const struct open_flags *op, struct file *file, int *opened) : int fs/namei.c
path_init(int dfd, const char *name, unsigned int flags, struct nameidata *nd, struct file **fp)
 : int fs/namei.c
link_path_walk(const char *name, struct nameidata *nd) : int fs/namei.c
fd_install(const char __user * filename) : struct filename fs/file.c
개인 도구
이름공간
변수
행위
둘러보기
구성원
연구
연구실
기타
도구모음
인쇄/내보내기