int stat(const char *filename, struct stat *buf);
int fstat(int fd, struct stat *buf);
我们需要打开一个文件来获取它的属性吗?
要访问文件的属性,我们是否需要访问文件描述符表、文件表和/或 vnode 表中的文件条目?
是stat()
通过首先调用open()
获取给定文件的文件描述符,然后fstat()
在文件描述符上调用或等效的方法来实现的吗?
谢谢。
答案1
不,您不需要打开它。
系统stat()
调用在任何地方都不会涉及文件描述符。
事实上,您可能能够访问stat()
某些您无权访问的文件open()
。