|
![]() | 作者: sterver [sterver]
![]() |
登录 |
现代操作系统必须支持多种文件系统类型(如CD-ROM的ISO9660、DOS的FAT等)。若要求用如下所示的file_system_type结构描述文件系统类型,用vfsmount结构描述一个已安装(mount)的文件系统: struct file_system_type { struct super_block *(*read_super) (struct super_block *, void *, int); /* read_super所指的函数用于读出该文件系统在外存的超级块 */ const char *name; /*所描述文件系统的类型名,如FAT */ int requires_dev; */支持文件系统的设备 */ struct file_system_type * next; */指向另一种文件系统类型 */ }; struct vfsmount{ kdev_t mnt_dev; /* 文件系统所在设备的主设备号、次设备号*/ char *mnt_devname; /*设备名,如/dev/hdal */ unsigned int mnt_flage; /*安装目录名称 */ struct semaphore mnt_sem; /*设备标志,如ro */ struct super_block *mnt_sb; /*对设备I/O操作时的信号量 */ struct file *mnt_quotas[MAXQUOTAS]; /*指向超级块 */ struct file *mnt_quotas[MAXQUOTAS]; /* 指向配额文件的指针 */ time_t mnt_iexp[MAXQUOTAS]; /*inode有效期 */ time_t mnt_bexp[MAXQUOTAS]; /*数据块有效期 */ struct vfsmount *mnt_next; /*指向另一个已注册的文件系统 */ }; 式设计一套数据结构,以描述一操作系统已经安装的文件系统及其类型(答题时,如已知条件不够,请作必要补充)。 |
地主 发表时间: 03-12-27 19:46 |
![]() | 回复: wskli [wskli] ![]() |
登录 |
kdev_t mnt_dev; /* 文件系统所在设备的主设备号、次设备号*/ char *mnt_devname; /*设备名,如/dev/hdal */ unsigned int mnt_flage; /*安装目录名称 */ struct semaphore mnt_sem; /*设备标志,如ro */ struct super_block *mnt_sb; /*对设备I/O操作时的信号量 */ struct file *mnt_quotas[MAXQUOTAS]; /*指向超级块 */ struct file *mnt_quotas[MAXQUOTAS]; /* 指向配额文件的指针 */ time_t mnt_iexp[MAXQUOTAS]; /*inode有效期 */ time_t mnt_bexp[MAXQUOTAS]; /*数据块有效期 */ struct vfsmount *mnt_next; /*指向另一个已注册的文件系统 */ |
B1层 发表时间: 04-06-17 13:39 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号