Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Filesystems 突然断电后文件中的垃圾数据_Filesystems_Fat32 - Fatal编程技术网

Filesystems 突然断电后文件中的垃圾数据

Filesystems 突然断电后文件中的垃圾数据,filesystems,fat32,Filesystems,Fat32,我正在使用FAT32系统的闪存。我一直在使用rtos(SMX)的文件系统API将数据写入文件。但是,在突然断电后,该文件包含的垃圾值刚好高于系统重新启动时的第一个文件条目 我运行chkdsk实用程序,但它没有解决任何问题 你知道即使在不干净的断电情况下,我如何清除这些垃圾条目吗?如果你预计会突然断电,你需要禁用文件写入的所有缓存/缓冲。当然,您还需要处理部分写入的文件,但这至少可以防止后续垃圾 我不知道您正在使用的API,但这可以通过“同步”安装驱动器(例如,Linux中的mount-o syn

我正在使用FAT32系统的闪存。我一直在使用rtos(SMX)的文件系统API将数据写入文件。但是,在突然断电后,该文件包含的垃圾值刚好高于系统重新启动时的第一个文件条目

我运行chkdsk实用程序,但它没有解决任何问题


你知道即使在不干净的断电情况下,我如何清除这些垃圾条目吗?

如果你预计会突然断电,你需要禁用文件写入的所有缓存/缓冲。当然,您还需要处理部分写入的文件,但这至少可以防止后续垃圾


我不知道您正在使用的API,但这可以通过“同步”安装驱动器(例如,Linux中的
mount-o sync
)或通过使用特定选项打开单个文件来完成。如果您确实在单个文件写入上禁用了缓冲,那么您仍然可能会有损坏FAT并丢失所有文件的风险。

如果您预计会突然断电,则需要在文件写入上禁用所有缓存/缓冲。当然,您还需要处理部分写入的文件,但这至少可以防止后续垃圾


我不知道您正在使用的API,但这可以通过“同步”安装驱动器(例如,Linux中的
mount-o sync
)或通过使用特定选项打开单个文件来完成。如果您确实禁用了对单个文件写入的缓冲,您仍然可能会有损坏FAT和丢失所有文件的风险。

我不希望突然断电,但是,我需要确保每次写入此文件时都不会有任何垃圾数据。如果您不能说不会发生,例如。,因为有备用电源,所以在实践中你“期望它发生”。我不期望突然断电,但是,我需要确保所有事情都写入此文件,并且不应该有任何垃圾数据。如果你不能说它不会发生,例如,因为有备用电源,那么在实践中你“期望它发生”。