1

我有一个简单的 Mac C 程序,它将数据写入位于连接到 Mac 计算机的 USB 设备上的原始数据文件。原始数据文件存储在 FAT32 文件格式的设备中。设备上运行的 Linux C 程序使用. 打开相同的文件,fopen()并使用fread().

和操作太慢,需要很长时间才能更新fread()fwrite()

Mac C 程序:

fp=fopen("/Volumes/Untitled/rawdatafile","rb+");

fcntl(fileno(fp),F_NOCACHE,1);

是否有任何其他 API 或标志可以在共享模式下打开文件?

4

1 回答 1

0

你不能安全地做到这一点。您只是没有损坏您的数据,因为您运行它的时间不够长。在您的 USB 设备上,您必须在连接到 USB 时卸载文件系统,并且在 USB 主机(即 mac 或 pc)卸载之前不要重新安装。

如果您希望能够同时从设备和主机读取/写入,您有两个主要选择:

  1. 媒体传输协议
  2. 伪装成网络设备并提供链接本地网络共享
于 2012-08-02T21:41:54.523 回答