c - 获取簇大小

标签 c windows kernel driver volume

我正在开发一个以 diskperf 为基础的大容量过滤器驱动程序。
我想知道如何计算簇大小(分配单元大小)。
我知道使用 GetDiskFreeSpace 我可以获得所需的输出,但它仅在用户模式下有用。
我希望它在内核级别工作。
是否有任何 IOCTL 或任何函数可以帮助我找到簇大小?

最佳答案

ZwQueryVolumeInformationFile/NtQueryVolumeInformationFile,FsInformationClass 设置为 FILE_FS_SIZE_INFORMATION 结构。

或者使用IRP_MJ_QUERY_VOLUME_INFORMATION .

关于c - 获取簇大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15547488/

相关文章:

我们可以用阻塞套接字制作一个非阻塞服务器吗?

windows - 观看后自动标记电影文件

c# - 在 Windows 8 中读取文本文件

linux - C 程序在 fopen 时失败,附加堆栈跟踪

linux - 为什么会出现不兼容的指针类型警告?

c++ - 如何在后续流程启动时确保 RNG 的唯一种子?

c - 初始化结构变量时出错

c - 编程 C - 行自动编号?

windows - 批处理目录中的所有文件

windows - _EPROCESS 对象和 _KPROCESS 对象有什么区别