如何从根本解决嵌入式Linux系统突然断电后无法启动问题?
首先你的断电是指什么?现在的手持设备都有超过3种供电电源。
那我猜的说的断电是同时切断包括电池和USB在内的所有外部电源了。那么不论你的挂载点在哪里,kernel肯定是直接down掉的,cpu状态也不会被保存,内存清空,所有进程都不存在了,已经在读的进程不再持有文件句柄(没影响),已经在写的进程就写到某个字符停住,但是这些都不会影响到硬盘啊。所以对文件系统不会有损坏,但是对硬件会有些许伤害。但现在手持设备都维持在2.5~3V,断电对硬件的影响实际也不大。至于你说的“怎么才能再以可读写属性挂载该磁盘呢”。我不理解这个“再”字。重新上电后一切重新开始,kernel boot重跑一遍,跟断电前你的挂载已经没有关系了。另一种情况,你可以在linux控制台启动句柄里面设置,把你的挂载命令写在那里面,那么每次启动时就自动挂载了
嵌入式Linux为什么要从NorFlash启动?
首先Linux内核是无法无直接启动的,一定要使用BootLoader进行引导,BootLoader从Nor启动是为了方便,CPU上电后从0地址运行,NorFlash可以像Ram一样进行数据读取,一般会把NorFlash接到CPU的0地址那里,这样上面上电后,就可以直接运行BootLoader了,BootLoader启动了以后,就可以把启动Linux内核。