[14][22][单选]下列关于用户打开文件表的叙述中,哪一个是错误的
整个系统设置—张用户打开文件表
表中记录了打开文件时系统返回的文件描述符
表中应包含指向系统打开文件表的指针
表中记录了本次文件被打开的方式
答案
整个系统设置—张用户打开文件表
解析
每个进程用一个files_struct结构来记录文件描述符的使用情况,这个files_struct结构称为用户打开文件表,它是进程的私有数据。文件结构在include/linux/fs.h中定义如下: struct file_struct { struct file * fd; //所有打开的文件形成一个链表 struct dentry * dentry; //指向相关目录项的指针 struct vfsmount * vfsmnt; //指向VFS安装表的指针 struct file_operations * fop; //指向文件操作表的指针 mode_t f_mode; //文件的打开模式 loff_t f_pos; //文件中的当前位置 unsigned short f_flags; //文件打开时所设置的标志 unsigned short f_count; //使用该结构的进程数 unsigned long f_reada, f_ramax, f_raend, f_ralen, f_rawin; //预读标志,预读的最多页面数,上次预读的文件指针,预读的字节数以及 //预读的页面数 int f_owner; //通过信号进行异步I/O数据的传送 unsigned int f_uid, f_gid; //用户ID和组ID int f_error; //文件操作时的错误代码 unsigned long f_version; //版本号 void *private_data; //tty驱动程序所需 }; 根据files_struct可知,在此结构体中包含指向系统打开文件表的指针并记录了本次文件被打开的方式,而不是整个系统设置—张用户打开文件表。故选择A选项。【涉及考点】
第6章 文件管理
转载请注明出处。