请问一下大家,就是对于实时性嵌入式操作系统中使用文件系统,是否需要考虑中断和线程切换导致文件系统不稳定。或者说导致文件系统系统崩溃的可能。使用的是ThreadX操作系统,fatfs文件系统
2条回答 默认 最新
关注 在实时操作系统中,自然是要考虑中断和系统调度对文件系统的影响,确切地说是对耗时操作的功能都需要考虑。
之前我的项目中也有基于freeRTOS操作系统+FATFS的实践,从实践的结果来看,有几点可以分享下:
1.基本“看不到”系统中断和RTOS切换对FATFS的影响;只是有时候会看到擦写FLASH比较慢,这个取决于FLASH的性能和处理器的性能;
2.倒是系统异常断电(突然断电的那种)对FATFS的影响非常大,原因是FATFS的结构是表头加数据,如果在写 表头 的时候断电了,严重的情况下,可能导致FATFS的表头破坏,从而不能进行FATFS的文件读取;
3.针对第2点,建议在操作表头的时候做好双备份,当断电重启后识别到表头破坏时,回滚到前一个有效表头,至少可以保证FATFS可用;
4.在内存/FLASH空间资源允许的情况下,可以考虑使用一些高级的带日志的FS文件系统,比较典型的有: ext3, ext4, xfs等。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 ansys fluent计算闪退
- ¥15 有关wireshark抓包的问题
- ¥15 需要写计算过程,不要写代码,求解答,数据都在图上
- ¥15 向数据表用newid方式插入GUID问题
- ¥15 multisim电路设计
- ¥20 用keil,写代码解决两个问题,用库函数
- ¥50 ID中开关量采样信号通道、以及程序流程的设计
- ¥15 U-Mamba/nnunetv2固定随机数种子
- ¥15 vba使用jmail发送邮件正文里面怎么加图片
- ¥15 vb6.0如何向数据库中添加自动生成的字段数据。