在LINUX下,如何判断某个文件在磁盘上是顺序存储的还是非顺序存储的?

发布于 2022-10-15 05:59:21 字数 22 浏览 21 评论 0

各位有没有什么好的小工具或相关代码没,谢谢。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

み零 2022-10-22 05:59:21

回复 1# qqrilxk

    It depends on the size of file and the type of FileSystem, so no precise answer.

一世旳自豪 2022-10-22 05:59:21

谢谢楼上回复.在LINUX下文件系统就是EXT3了.这和文件大小关系不大吧,小于512字节的当然是顺序存储的,大于512字节的,就需要判断一下.需要有相关工具或源码啊.

遗弃M 2022-10-22 05:59:21

分析一下ext3的源码!

拧巴小姐 2022-10-22 05:59:21

只能自己写代码实现了

万劫不复 2022-10-22 05:59:21

有谁能给个代码啊?厚着脸皮问一下 :)

很糊涂小朋友 2022-10-22 05:59:21

首先看一下文件的大小,如果小于磁盘上一个块的大小,肯定就是顺序的.如果大于的话,就有点麻烦了,如果你懂得文件存储的原则,得出结果也不是很困难.
你可以写个应用程序调出内核中的文件inode结构体中的前几个数,看看是不是连续的就行了,当然还得考虑到如果文件大于7个块的话的扩展性问题.
如果实现不了上述应用,自己增加个系统调用,重编内核,不过这个问题说的有点大了,说是容易,实现太不容易,并且偏离你的问题有点远,不好意思,我有点扯了O(∩_∩)O哈哈~

杀手六號 2022-10-22 05:59:21

debugfs: bmap  命令可以看数据块的具体位置。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文