论坛: UNIX系统 标题: 哪位大侠能给讲讲呀~~~~~ 复制本贴地址    
作者: 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

论坛: UNIX系统

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号