- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
linux基础知识--linux的文件系统
/dev分区,存放设备文件。? /opt分区,存放可选的安装的软件。? /sbin分区,存放标准系统管理文件。 /bin分区,存放标准系统实用程序。? /etc目录,存放系统配置文件 /lib分区, 存放程序库 文件类型 普通文件 文本文件 二进制文件 可执行程序,声音,图像文件 目录文件 链接文件 硬链接 软链接 特殊文件 特殊文件 设备文件 /dev/ttys1:标准终端 /dev/hda:第一块IDE硬盘 管道文件 例:用户使用lp打印一个文件时,lp建立打印进程并向一个管道发送信息 硬链接(Hard Link) 符号链接(Symbolic link) 基于VFS的文件访问 VFS的目录项(dentry) VFS的目录项(dentry) 打开文件表 VFS重要数据结构 文件系统类型 文件系统注册与注销 文件系统类型的注册和注销函数 int register_filesystem(struct file_system_type * fs) int unregister_filesystem(struct file_system_type * fs) 文件系统的安装(mount) 文件系统的安装(mount) 已安装文件系统的描述 已安装文件系统的描述 路径查找 系统调用open、mkdir、rename、stat等要查找路径 open_namei() path_init() path_walk() link_path_walk(); 返回时,struct nameidata中的dentry和mnt标识找到的文件或目录 struct nameidata { /*include/linux/fs.h*/ struct dentry *dentry; /*找到的dentry指针*/ struct vfsmount *mnt; /*找到的文件所在文件系统*/ struct qstr last; unsigned int flags; int last_type;}; ext2文件系统 支持UNIX所有标准的文件系统特征,包括正文、目录、设备文件和连接文件等,这使得它很容易被UNIX程序员接受。事实上,ext2的绝大多数的数据结构和系统调用与经典的UNIX一致 能够管理海量存储介质。支持多达4TB的数据,即一个分区的容量最大可达4TB 支持长文件名,最多可达255个字符,并且可扩展到1012个字符 允许通过文件属性改变内核的行为;目录下的文件继承目录的属性 支持文件系统数据“即时同步”特性,即内存中的数据一旦改变,立即更新硬盘上的数据使之一致 实现了“快速连接”(fast symbolic links)的方式,使得连接文件只需要存放inode的空间 允许用户定制文件系统的数据单元(block)的大小,可以是 1024、2048 或 4096 个字节,使之适应不同环境的要求 使用专用文件记录文件系统的状态和错误信息,供下一次系统启动时决定是否需要检查文件系统 ext2体系结构 内存中的ext2 inode ext2_inode_info (在include/linux/ext2_fs_i.h) struct ext2_inode_info { __u32 i_data[15]; __u32 i_flags; __u32 i_faddr; __u8 i_frag_no; __u8 i_frag_size; __u16 i_osync; __u32 i_file_acl; __u32 i_dir_acl; __u32 i_dtime; __u32 i_block_group; __u32 i_next_alloc_block; __u32 i_next_alloc_goal; __u32 i_prealloc_block; __u32 i_prealloc_count; __u32 i_dir_start_lookup; int i_new_inode:1; /* Is a freshly allocated inode */ }; 外存中的ext2 inode struct ext2_inode(在include/linux/ext2_fs.h) 内、外存inode的读写: ext2_read_inode() ext2_update_inode() Ext2_inode 文件读写 read()和write() int read(int fd, void *buf,size_t nbytes); int write(int f
您可能关注的文档
- gb2828.10计数抽样检验程序.ppt
- gbsc6000安装培训教材.ppt
- gmp课件---第五章 物料管理.ppt
- gb7588-2003新国标培训.ppt
- fujipoly富士导热硅胶材料选型及应用指南.ppt
- gponftth设备工程初验标准.ppt
- gps的坐标系统microsoft powerpoint 演示文稿成都铁路工程学校 王海生.ppt
- gpallas质量系统(培训).ppt
- hfc宽带接入基础知识(陈柏年).ppt
- hk-p110dm票据打印机培训资料.ppt
- lf-2001a发射机工作原理教材.ppt
- m10结构化布线2009.11.ppt
- matlab7从入门到精通-中国it联盟www.ciun.in第3章 matlab.ppt
- m701f3与m701f4的区别介绍.ppt
- matlab在理工课程中的应用 3.ppt
- max+plus ii 简明教程.ppt
- matlab语言及应用10基于传递函数模型的控制系统设计.ppt
- mc31c培训----1德国新型变频器,高精确定位传动性能强sew 交流制动电机由机座号从 56 至 280 的三相鼠笼交.ppt
- mathstudio37 对数螺线面面观.ppt
- mcs-51单片机 第1章 单片微型计算机概述n.ppt
文档评论(0)