9

作为研究项目的一部分,我开发了一个基于 FUSE 的文件系统,现在必须研究硬盘接收到的实际读/写请求。为了做到这一点,我正在研究在 linux 中创建虚拟硬盘驱动器的选项,它将拦截文件系统生成的请求并记录它们。

互联网上是否有任何资源可以帮助我编写模拟器和/或开发编写模拟器所需的技能?我目前正在阅读 Linux Device Drivers 3 这本书,以了解 Linux 如何管理块设备。

任何帮助表示赞赏。

谢谢

4

2 回答 2

3

好吧,有一种方法可以将映像文件挂载为分区:

mount -t <fs type> -o loop file.img /mnt

替换为您的文件系统类型,file.img 应该是所需分区的映像。

还有另一种方式,您可以安装 virtualbox,在虚拟机上安装 linux,添加新的虚拟硬盘驱动器,然后在虚拟机中,使用所需的文件系统格式化虚拟硬盘驱动器并使用它。这种方法的一个优点是它提供了一个安全的沙箱,因此您在试验时不会意外损坏现有系统。

于 2011-08-06T17:25:55.957 回答
3

查看 SCSI 调试驱动程序。从网站引用

scsi_debug 适配器驱动程序模拟可变数量的 SCSI 磁盘,每个磁盘共享由驱动程序分配的共同数量的 RAM,用作(易失性)存储。

如果是我,我会启用该驱动程序中已经存在的调试日志记录,然后对其进行增强以满足您的需求。

于 2011-08-07T22:48:29.290 回答