回答
你使用gcc編譯器的信息不感興趣,因爲編譯器對文件系統的塊大小不感興趣,他們甚至不知道文件系統可以存在的事實...答案是系統特定的(MS Windows?GNU/Linux或其他OS/nix/* nix)? ;對POSIX你有stat
功能,你可以用它來有統計結構,其中包含了場st_blksize
(塊大小的文件系統I/O),這可能是你感興趣的問題。
地址
實施例
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
int main()
{
struct stat fi;
stat("/", &fi);
printf("%d\n", fi.st_blksize);
return 0;
}
告訴你上/(根)使用文件系統;例如對我來說,它輸出4096.
所以在Linux中,我可以使用這個結構?我很抱歉,我是一個begginer。你可以在一個例子中使用它嗎? – 2010-06-20 21:01:41
開始閱讀例如http://linux.die.net/man/2/stat,看看它是你想知道的 – ShinTakezou 2010-06-20 21:03:37
好的,謝謝我真的希望它完成一個有關磁盤結構的學校項目(tree b +,hashing等)謝謝 – 2010-06-21 16:16:38
statvfs()報告文件系統。 stat()報告給定文件。幾乎總是這樣,但是因爲你要求文件系統的結果,POSIX系統的正確答案是調用statvfs()。
沒有錯的,但是我不知道,當這些值不匹配 – ShinTakezou 2010-06-23 14:30:04
參閱fstyp -v的/ dev/VX/DSK/r1sp1dbdg/sapdata31 的VxFS 版本:5 f_bsize:8192 f_frsize:1024 – 2010-06-23 14:48:18
我無法得到上面的輸出格式正確。抱歉。 - HPUX vxfs可能會顯示。 – 2010-06-23 14:49:34
我找到了解決我的問題的另一種方法。
在gcc上有一個函數返回頁面大小。
我使用爲getpagesize()
printf("%d\n",getpagesize());
頁面大小!= FS塊大小 – rpj 2011-02-25 03:00:32
這是***完全錯誤***。 – 2015-03-06 07:51:33
- 1. 文件系統塊大小
- 2. 探測文件系統塊大小
- 3. 操作系統文件系統塊大小?
- 4. pytsk3 - 如何獲得文件系統的塊大小
- 5. 如何在文件系統ext2中找到稀疏文件的大小?
- 6. hadoop hdfs塊大小和linux文件系統塊大小之間的交互
- 7. 系統找不到文件
- 8. 如何在特定文件系統上限制文件大小?
- 9. 如何找到pdf文件大小?
- 10. 如何找到文件的大小
- 11. iphone文件系統的塊大小是多少?
- 12. 表是否大於文件系統的最大文件大小?
- 13. FAT系統中文件的大小
- 14. 優化嵌入式linux系統的根文件系統大小
- 15. OSX:如何獲得給定文件系統的最大文件大小
- 16. 如何找到並移動文件系統上的文件?
- 17. 區分大小寫File.equals區分大小寫的文件系統
- 18. 如何預測ISO 9660文件系統的大小?
- 19. 操作系統如何計算文件大小?
- 20. 操作系統如何計算文件大小?
- 21. 如何找出LVM的文件系統
- 22. 在文件系統依賴性上找不到模塊'lodash'
- 23. HDFS塊大小和文件大小的問題,文件小於塊大小
- 24. 如何找出操作系統中分頁的大小
- 25. CMD系統找不到文件
- 26. 系統找不到幫助文件
- 27. 系統找不到指定的文件
- 28. 未找到Hadoop文件系統命令
- 29. MSDOS - 「系統找不到指定文件」
- 30. 「系統找不到指定的文件」
哪個OS解決我的問題? _____ – kennytm 2010-06-20 20:29:36
你的意思是文件系統的塊大小? – 2010-06-20 20:30:41
磁盤頁面大小?你的意思是羣集大小?這將取決於文件系統和文件系統設置/配置 – jdehaan 2010-06-20 20:31:14