实时操作系统对文件系统的影响

请问一下大家,就是对于实时性嵌入式操作系统中使用文件系统,是否需要考虑中断和线程切换导致文件系统不稳定。或者说导致文件系统系统崩溃的可能。使用的是ThreadX操作系统,fatfs文件系统

在实时操作系统中,自然是要考虑中断和系统调度对文件系统的影响,确切地说是对耗时操作的功能都需要考虑。
之前我的项目中也有基于freeRTOS操作系统+FATFS的实践,从实践的结果来看,有几点可以分享下:
1.基本“看不到”系统中断和RTOS切换对FATFS的影响;只是有时候会看到擦写FLASH比较慢,这个取决于FLASH的性能和处理器的性能;
2.倒是系统异常断电(突然断电的那种)对FATFS的影响非常大,原因是FATFS的结构是表头加数据,如果在写 表头 的时候断电了,严重的情况下,可能导致FATFS的表头破坏,从而不能进行FATFS的文件读取;
3.针对第2点,建议在操作表头的时候做好双备份,当断电重启后识别到表头破坏时,回滚到前一个有效表头,至少可以保证FATFS可用;
4.在内存/FLASH空间资源允许的情况下,可以考虑使用一些高级的带日志的FS文件系统,比较典型的有: ext3, ext4, xfs等。

理论上是要求考虑的