niuniu123
驱动牛犊
驱动牛犊
  • 注册日期2008-07-24
  • 最后登录2009-12-02
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1585回复:9

wince 系统运行时,为什么有时会把bootloader代码改写

楼主#
更多 发布于:2008-09-04 13:39
wince5.0,2440平台,系统运行时突然关电,有时会发生NandFlash的bootloader代码被改写而系统起不来,只能重新烧写bootloader,系统本身完好,也试过配置FLASH不当作RAM使用,现象还是一样发生。不知还有什么方法可以预防FLASH被系统改写(非正常情况下,突然断电之类)。
harktrip
驱动小牛
驱动小牛
  • 注册日期2003-11-30
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分51分
  • 威望457点
  • 贡献值0点
  • 好评度170点
  • 原创分0分
  • 专家分2分
沙发#
发布于:2008-09-04 16:14
1.註冊表崩潰
2.系統未判斷低電壓,強制中斷停止讀寫
high
论坛版主
论坛版主
  • 注册日期2002-08-10
  • 最后登录2010-07-26
  • 粉丝4
  • 关注0
  • 积分60分
  • 威望655点
  • 贡献值0点
  • 好评度56点
  • 原创分0分
  • 专家分60分
板凳#
发布于:2008-09-04 16:52
我的想法,fmd驱动里面判断。 禁止访问bootloader。
harktrip
驱动小牛
驱动小牛
  • 注册日期2003-11-30
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分51分
  • 威望457点
  • 贡献值0点
  • 好评度170点
  • 原创分0分
  • 专家分2分
地板#
发布于:2008-09-04 19:44
引用第2楼high于2008-09-04 16:52发表的  :
我的想法,fmd驱动里面判断。 禁止访问bootloader。



斷電的瞬間
那些防止訪問BLOCK或FLASH寫入的機制,通通都失效的...
niuniu123
驱动牛犊
驱动牛犊
  • 注册日期2008-07-24
  • 最后登录2009-12-02
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2008-09-04 21:41
harktrip:
1.註冊表崩潰
2.系統未判斷低電壓,強制中斷停止讀寫

对1,就算注册表崩溃,那也只能影响系统而已吧。

对2,你意思是说加硬件电路去预防吗?
harktrip
驱动小牛
驱动小牛
  • 注册日期2003-11-30
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分51分
  • 威望457点
  • 贡献值0点
  • 好评度170点
  • 原创分0分
  • 专家分2分
5楼#
发布于:2008-09-04 22:50
1.註冊表崩潰當然也包含 註冊表亂寫導致混亂,破壞的image 這我到遇過很多次
破壞eboot 部分,是有這樣的經驗

2.是的,正確的是要加上低電壓判斷.而且是以硬件方式強制停止讀寫
high
论坛版主
论坛版主
  • 注册日期2002-08-10
  • 最后登录2010-07-26
  • 粉丝4
  • 关注0
  • 积分60分
  • 威望655点
  • 贡献值0点
  • 好评度56点
  • 原创分0分
  • 专家分60分
6楼#
发布于:2008-09-05 19:33
1.注册表崩溃问题?使用的是什么fs? tfat能不能够解决这个问题?未使用不知效果如何。 因为tfat是基于事务型的,我揣测设计目的即此。

2. fmd禁止访问后, bootloader区域即成透明了。另外, 还有个思路, 使用双bootloader, 启动时候,自己和副本比较, 如过差异立刻还原。

wince设备少有没有关机功能, 那样极限条件比较少见吧, 否则怎么做都困难。 硬件稳定很重要,但是我想,软件也可以有些防卫。
harktrip
驱动小牛
驱动小牛
  • 注册日期2003-11-30
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分51分
  • 威望457点
  • 贡献值0点
  • 好评度170点
  • 原创分0分
  • 专家分2分
7楼#
发布于:2008-09-05 22:34
双bootloader和双image
真的有廠家的產品是這樣做的...

所以64M的nand 開機後 resident flash 只剩2~3MB可用
niuniu123
驱动牛犊
驱动牛犊
  • 注册日期2008-07-24
  • 最后登录2009-12-02
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2008-09-05 22:42
有关机功能的,只不过调试阶段,经常直接断电,才发现问题而已。其实双bootloader的关键,你是怎么存储备份那个,怎能确保备份那个在异常情况下而不会被改写。
niuniu123
驱动牛犊
驱动牛犊
  • 注册日期2008-07-24
  • 最后登录2009-12-02
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2008-09-05 22:47
引用第7楼harktrip于2008-09-05 22:34发表的  :
双bootloader和双image
真的有廠家的產品是這樣做的...

所以64M的nand 開機後 resident flash 只剩2~3MB可用


嗯,记得HP的PDA就有,双bootloader和双image,可以随时恢复,不过当时没有去了解是怎么设计的。
游客

返回顶部