- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
开发 AIX 文件系统.doc
开发 AIX 文件系统
引言
AIX 5Ltrade; 是一种优秀的操作系统,它提供了出众的可伸缩性、可靠性和可管理性。它是市场上一些功能最强大的 IBM UNIXreg; 服务器的缺省操作系统。
通常,可以将文件系统 定义为一种软件,它负责对物理存储介质中的数据进行存储、组织和检索,物理存储介质包括硬盘驱动器、CD-ROM 或者任何其他存储设备。从本质上说,用于进行这种数据组织的代码应该是可移植的。在现实世界中,尽管每个操作系统都提供了它自己的接口,以此请求特定的文件系统操作,并且期待软件基础部分以该操作系统所希望的格式返回结果。对于不同的操作系统,其接口也各不相同,并且需要由具体的文件系统提供,以使得特定的操作系统对该文件系统提供支持。
在本文中,您将了解 AIXreg; 操作系统文件系统框架。您还将获得有关 IO 层的概述,以及对一些重要概念的解释。本文还对在开发新的文件系统或者将现有的文件系统移植到 AIX 操作系统时所使用的接口和方法进行了简单的说明。
与许多 UNIX 版本一样,AIX 将文件系统作为一种内核扩展。本文假定您对 UNIX 编程和文件系统的概念有基本的了解。如果您还了解如何为 AIX 编写内核扩展,那将是很有帮助的。
了解逻辑文件系统和虚拟文件系统
逻辑文件系统层是一个抽象层,用户可以通过它请求各种文件操作,如读、写、获得相关信息,等等。逻辑文件系统接口支持 UNIX 类型的文件访问语义。逻辑文件系统层是虚拟文件系统的超集,而后者封装了各种不同的文件系统,这些文件系统为内核提供了基础目录树的一致的视图。逻辑文件系统还负责管理内核的打开文件表和每个进程的文件描述符信息。
虚拟文件系统是基础物理文件系统的抽象。虚拟文件系统提供了一组应该支持的标准接口,以使得您的文件系统可用于 AIX 操作系统。虚拟文件系统建立了不同的基础物理文件系统到逻辑文件系统之间的桥梁,为操作系统中的其他部分提供了一致的目录树层次结构。
文件系统对象的每个唯一的装入实例通过一个虚拟文件系统结构进行表示。虚拟文件系统可以为物理文件系统、网络文件系统、或者逻辑文件系统(没有物理后备存储,如 ramfs)。图 1 显示了 AIX 文件系统的层次结构。
图 1. AIX 文件系统层次结构
如清单 1 所示,由成员 vfs_next 指定,虚拟文件系统作为 struct vfs 的链表进行维护。
清单 1. 虚拟文件系统结构
lt;sys/vfs.hgt;
struct vfs {
struct vfs *vfs_next;
struct gfs *vfs_gfs;
struct vnode *vfs_mntd;
struct vnode *vfs_mntdover;
struct vnode *vfs_vnodes;
int vfs_count;
caddr_t vfs_data;
unsigned int vfs_number;
int vfs_bsize;
#ifdef _SUN
short vfs_exflags;
unsigned short vfs_exroot;
#else
short vfs_rsvd1;
unsigned short vfs_rsvd2;
#endif /* _SUN */
struct vmount *vfs_mdata;
Simple_lock vfs_lock;
};
列表中的每个条目代表一个装入的文件系统对象。
vfs_mntd vfs_mntd 表示这个文件系统在进行装入时的装入点 vnode。对于 #39;/#39; 根文件系统,这将是根的 vnode。 vfs_vnodes vfs_vnodes 是这个装入实例的所有 vnodes 组成的链表。 vfs_lock 您可以使用 vfs_lock 串行化对 vnode 的访问。 vfs_gfs vfs_gfs 指向对应的文件系统的 struct gfs 结构。 struct gfs 包含独立于这些装入实例的文件系统相关信息。它包含文件系统布局的所有常见特征,如下面的清单 2 所示。操作系统中注册的每个文件系统有且仅有一个 struct gfs、一个或多个 struct vfs,后者分别对应于每个装入实例。gfs_ops 和 gn_ops 是 struct gfs 中的重要成员,它们表示该文件系统的虚拟文件系统操作和 vnode
您可能关注的文档
- 年龄和冠心病对心脏变时功能影响的研究.doc
- 年龄因素对大鼠脂肪干细胞成骨诱导分化能力的影响.doc
- 并联审批与规划信息资源的整合——以长沙市规划局为例.doc
- 并购后组织间隐性知识共享机制构建.doc
- 幼儿EQ教育模式的理论构建与目标体系..doc
- 幼儿个案记录和分析.doc
- 幼儿交往能力的培养..doc
- 幼儿亲子沟通的途径、方法和内容的研究.doc
- 幼儿体育教学改革的认识与实践.doc
- 幼儿体育活动中有效利用社区资源的策略.doc
- 福莱特玻璃集团股份有限公司海外监管公告 - 福莱特玻璃集团股份有限公司2024年度环境、社会及管治报告.pdf
- 广哈通信:2024年度环境、社会及治理(ESG)报告.pdf
- 招商证券股份有限公司招商证券2024年度环境、社会及管治报告.pdf
- 宏信建设发展有限公司2024 可持续发展暨环境、社会及管治(ESG)报告.pdf
- 品创控股有限公司环境、社会及管治报告 2024.pdf
- 中信建投证券股份有限公司2024可持续发展暨环境、社会及管治报告.pdf
- 洛阳栾川钼业集团股份有限公司环境、社会及管治报告.pdf
- 361度国际有限公司二零二四年环境、社会及管治报告.pdf
- 中国神华能源股份有限公司2024年度环境、社会及管治报告.pdf
- 广西能源:2024年环境、社会及治理(ESG)报告.pdf
文档评论(0)