首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >文件系统开发

文件系统开发
EN

Stack Overflow用户
提问于 2010-11-24 19:14:41
回答 2查看 613关注 0票数 4

在设计使用inode结构指向文件/块的文件系统时,实际如何确定所需的inode数量?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-24 19:42:47

在某些Unix文件系统(例如ext*fs)中,这实际上由系统管理员决定,系统管理员在创建文件系统时设置相对参数。

如果文件系统将托管大量小文件(新闻和邮件服务器就是典型的例子),则需要大量的inode,因为每个对象(文件或目录)都需要一个inode。

另一方面,如果文件系统将托管更大的文件(例如视频服务器),则不需要那么多的inode。

由于inode会占用空间,因此在性能/效率和拥有足够的inode之间取得平衡非常重要。一种简单的方法是计算具有相似使用模式的活动文件系统上的平均文件大小,并将该数字用作新文件系统上字节/信息节点比率的基准值。这将允许FS在卷填满时保持正常工作,只要使用模式不会发生重大变化。

如果你真的在设计一个新的文件系统,而不仅仅是创建一个卷,你应该考虑像其他一些常见的Unix文件系统一样动态分配inode的想法(例如JFS,XFS,Reiserfs)。这将使您的文件系统稍微更灵活一些,尽管人们通常认为动态文件系统结构使从损坏问题中恢复变得更加困难。

票数 1
EN

Stack Overflow用户

发布于 2010-11-24 19:40:38

一些现代文件系统(例如XFS)根据需要动态分配inode。没有该特性的文件系统根据磁盘大小选择一个基于经验的值(例如,ext2/3/4为每4KB磁盘空间创建一个inode IIRC),通常有一种方法可以在创建文件系统时调优此值。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4266123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档