在2017年4月份,英創(chuàng)公司發(fā)現(xiàn)了CEDB的故障,并發(fā)布了文章介紹如何解決該問題:《CE6.0內(nèi)置數(shù)據(jù)庫CEDB的異常檢測(cè)與修復(fù)》。由于該故障較罕見,一直以來我們懷疑是由于調(diào)試程序時(shí)USB連接不穩(wěn)定導(dǎo)致的。直到近期,英創(chuàng)公司通過大量實(shí)驗(yàn),找到了觸發(fā)CEDB故障的原因。本文將介紹我們的實(shí)驗(yàn)結(jié)果,為防止CEDB故障,希望客戶注意:
使用WINCE6平臺(tái)的客戶,在產(chǎn)品發(fā)布時(shí)請(qǐng)使用release版本程序,不要使用debug版本程序。
實(shí)驗(yàn)情況
實(shí)驗(yàn)設(shè)備
實(shí)驗(yàn)使用英創(chuàng)各不同嵌入式主板,分兩組,一組為WINCE6工控主板,ESM928x及EM9280。另一組為WEC7工控主板ESM335x。
實(shí)驗(yàn)程序
實(shí)驗(yàn)使用兩組代碼,一組代碼使用MFC,帶窗口界面。一組代碼使用命令行工程,不帶界面。兩組代碼分別用release模式和debug模式編譯,共生產(chǎn)4個(gè)不同的應(yīng)用程序。
兩組代碼均采用多線程對(duì)多個(gè)文件同時(shí)進(jìn)行大量文件操作(每秒300次以上文件開關(guān)及讀寫操作)。保證CPU占用100%在滿負(fù)荷工作。兩組代碼對(duì)文件操作量大致相同。
實(shí)驗(yàn)過程
讓工控主板上電后自動(dòng)執(zhí)行實(shí)驗(yàn)程序。
在程序運(yùn)行一定時(shí)間后對(duì)工控主板進(jìn)行斷電處理。
不斷重復(fù)以上過程,并監(jiān)測(cè)工控主板系統(tǒng)啟動(dòng)時(shí)內(nèi)置CEDB是否出現(xiàn)錯(cuò)誤數(shù)據(jù),并記錄錯(cuò)誤數(shù)據(jù)條數(shù)。
測(cè)試時(shí)間為一天。
實(shí)驗(yàn)結(jié)果如下:
板卡 | 測(cè)試程序 | 測(cè)試結(jié)果 |
WinCE6主板 |
MFC測(cè)試程序 Debug版 |
實(shí)驗(yàn)幾分鐘后CEDB即開始出現(xiàn)錯(cuò)誤數(shù)據(jù)。 一日后,所有板卡均出現(xiàn)CEDB故障,啟動(dòng)速度明顯變慢,CEDB無用數(shù)據(jù)均有幾百條 |
WinCE6主板 |
MFC測(cè)試程序 Release版 |
正常 |
WinCE6主板 |
命令行測(cè)試程序 Debug版 |
一日后,CEDB有出現(xiàn)幾條錯(cuò)誤數(shù)據(jù)。啟動(dòng)速度變化不明顯 |
WinCE6主板 |
命令行測(cè)試程序 Release版 |
正常 |
WEC7主板 |
MFC測(cè)試程序 Debug版 |
正常 |
WEC7主板 |
MFC測(cè)試程序 Release版 |
正常 |
WEC7主板 |
命令行測(cè)試程序 Debug版 |
正常 |
WEC7主板 |
命令行測(cè)試程序 Release版 |
正常 |
實(shí)驗(yàn)表明:
CEDB故障均出現(xiàn)在WINCE6平臺(tái)的工控主板上,這也和英創(chuàng)公司主板維修記錄里的信息一致。
WINCE6工控主板運(yùn)行Release版本的測(cè)試程序均沒有出現(xiàn)CEDB故障,而運(yùn)行DEBUG版測(cè)試程序后均出現(xiàn)CEDB故障。
MFC下DEBUG版測(cè)試程序更容易導(dǎo)致CEDB故障,可能是因?yàn)閹Ы缑娉绦駽PU消耗相對(duì)更大。
測(cè)試發(fā)現(xiàn)當(dāng)CPU處于滿負(fù)荷狀態(tài)下斷電,才有一定幾率導(dǎo)致CEDB內(nèi)錯(cuò)誤數(shù)據(jù)增加。而少量的CEDB錯(cuò)誤數(shù)據(jù)對(duì)系統(tǒng)啟動(dòng)速度影響很小,所以CEDB故障不容易被發(fā)現(xiàn)。
解決辦法
1、當(dāng)出現(xiàn)CEDB故障時(shí):
1)啟動(dòng)變慢
3)“\NandFlash\Documents and Settings\default.vol”文件變大
請(qǐng)參考文檔《CE6.0內(nèi)置數(shù)據(jù)庫CEDB的異常檢測(cè)與修復(fù)》解決該故障。
2、在產(chǎn)品發(fā)布時(shí)請(qǐng)使用release版本程序,不使用debug版本程序。release版本程序不帶調(diào)試信息,exe大小也會(huì)明顯小于debug版本程序。
英創(chuàng)提供測(cè)試程序源代碼,有需要的客戶可以聯(lián)系英創(chuàng)工程師獲得,驗(yàn)證該問題。
-
嵌入式主板
+關(guān)注
關(guān)注
7文章
6085瀏覽量
35211
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論