• 分类
  • 索引节点

    Linux和各种Unix-like系统中有一重要概念————万物皆文件

    分类

    • 根据处理方法的不同,分为:
    • 缓冲区文件
    • 非缓冲区文件
    • 根据其数据组织形式的不同,分为:
    • 文本文件
    • 二进制文件
    • 根据其存放数据的作用的不同,分为:
    • - 普通文件(regular)
    • d 目录文件
    • l 符号链接文件
    • 设备文件
      • b 块设备文件
      • c 字符设备文件
    • p 知名管道文件(FIFO)
    • s 套接字文件(socket)

    索引节点

    索引节点(inode)所包含的信息都封装在结构体stat中:

    1. struct stat {
    2. dev_t st_dev; /* ID of device containing file */
    3. ino_t st_ino; /* inode number */
    4. mode_t st_mode; /* protection */
    5. nlink_t st_nlink; /* number of hard links */
    6. uid_t st_uid; /* user ID of owner */
    7. gid_t st_gid; /* group ID of owner */
    8. dev_t st_rdev; /* device ID (if special file) */
    9. off_t st_size; /* total size, in bytes */
    10. blksize_t st_blksize; /* blocksize for filesystem I/O */
    11. blkcnt_t st_blocks; /* number of 512B blocks allocated */
    12. time_t st_atime; /* time of last access */
    13. time_t st_mtime; /* time of last modification */
    14. time_t st_ctime; /* time of last status change */
    15. };