国产区在线视频就爱_亚洲精品 日韩无码_在线a亚洲v天堂网2018_完整版在线观看_免费的成年私人影院网站_国产理论片免费观看_日本一区精品一本大道_亚洲性天堂无码资源热_中文字幕免费无遮挡无删减_久久五月天亚洲色图

EsDA工控單板
EPC6450-AWI/EPC1107-LI/EPC3568系列工控板
MPC-ZC1迷你工控主板
Cortex?-A5,拖拽式開發(fā),40pin擴(kuò)展引腳
2.5寸工控單板
EPC-6Y2C-L網(wǎng)絡(luò)控制器
Cortex?-A7,800MHz,8路串口,數(shù)字音頻
IoT-6Y2C-L物聯(lián)網(wǎng)關(guān)控制器
Cortex?-A7,800MHz,8路串口,支持藍(lán)牙
EPC-6G2C-L網(wǎng)絡(luò)控制器
Cortex?-A7,528MHz,8路串口,數(shù)字音頻
IoT-6G2C-L物聯(lián)網(wǎng)關(guān)控制器
Cortex?-A7,528MHz,8路串口,支持藍(lán)牙
3.5寸工控單板
IoT7000A-LI物聯(lián)網(wǎng)網(wǎng)關(guān)控制器
Cortex?-A7,雙MiniPCIe接口支持無(wú)線模塊擴(kuò)展
IoT-9608I-L網(wǎng)絡(luò)控制器
Cortex?-A8,800MHz,6種無(wú)線通訊方式
EPC-9600I-L工控主板
Cortex?-A8,800Mhz
IoT9000A-LI工控主板
Cortex?-A9,強(qiáng)勁編解碼,專注多媒體
IoT9100A-LI工業(yè)IoT網(wǎng)絡(luò)控制器Cortex?-A9,1GHz
SX-3568系列主板Cortex?-A55,雙核心GPU
MD-3568LI工控板Cortex?-A55,雙網(wǎng)口

十萬(wàn)次掉電測(cè)試是怎樣煉成的?

少年,不得了了,出大事了!

“監(jiān)測(cè)了一個(gè)月的數(shù)據(jù),昨晚碰上意外斷電,F(xiàn)lash盤里數(shù)據(jù)全沒了!怎么辦?”

“客戶設(shè)備意外停電,來(lái)電后Flash盤里的程序都沒了!怎么辦?”

“系統(tǒng)掉電后,flash盤里目錄全部變亂碼了!怎么辦?”

這些問(wèn)題的罪魁禍?zhǔn)拙褪荈lash文件系統(tǒng)不具備掉電保護(hù)特性。

數(shù)據(jù)安全日益重要,而文件系統(tǒng)卻依然我行我素不管掉電過(guò)程中文件的死活,這怎么能忍!

致遠(yuǎn)不能忍!

不過(guò)光有一腔熱血是遠(yuǎn)遠(yuǎn)不夠的,解決問(wèn)題還需進(jìn)行全面細(xì)致的調(diào)研。Nand Flash在擦除和寫入過(guò)程中發(fā)生掉電在實(shí)際應(yīng)用中是極有可能發(fā)生的,那么在NandFlash擦除/寫入時(shí)掉電會(huì)發(fā)生什么呢?為什么會(huì)造成如此惡劣的影響呢?下面我們來(lái)一一剖析。

以8位 SLC工藝的NandFlash寫操作為例,掉電時(shí)寫到怎樣就是怎樣。譬如寫入0x01 0x02 0x03 0x04,寫到0x03時(shí)斷電,此時(shí)FLASH中有如下可能:

如果是MLC結(jié)構(gòu),同樣寫到0x3,那可能結(jié)果就是:

理想很美好,現(xiàn)實(shí)很骨感,寫入0x03都能蹦出這么多種情況,實(shí)際應(yīng)用中的突發(fā)掉電造成的結(jié)局就更千奇百怪了。那如果在文件系統(tǒng)中沒有相應(yīng)的預(yù)防措施會(huì)發(fā)生什么慘案呢?

WinCE內(nèi)核中,文件系統(tǒng)版本主要包括 exFAT,F(xiàn)AT32,F(xiàn)AT16,這幾個(gè)文件系統(tǒng)都不具備掉電保護(hù)功能。以FAT32文件系統(tǒng)為例,我們放慢鏡頭,仔細(xì)觀察在Flash寫操作過(guò)程中到底發(fā)生了什么。

圖1 FAT32文件系統(tǒng)讀取文件示意圖

上圖是FAT32文件系統(tǒng)讀取文件示意圖,簇是 FAT32 進(jìn)行數(shù)據(jù)存儲(chǔ)的最小單位,文件按照鏈?zhǔn)浇Y(jié)構(gòu)存儲(chǔ),F(xiàn)AT表項(xiàng)中存儲(chǔ)了下一個(gè)簇號(hào),文件系統(tǒng)根據(jù)FAT表項(xiàng)中存儲(chǔ)的簇號(hào)獲取下一個(gè)簇,直至文件讀取完成。

現(xiàn)在我們向文件末尾添加一些數(shù)據(jù),文件系統(tǒng)將會(huì)為文件分配新的簇,將FAT表項(xiàng)內(nèi)容改寫為新的簇號(hào),將新添加的數(shù)據(jù)寫入到下一簇號(hào)的數(shù)據(jù)區(qū)中,如此往復(fù)直至文件保存完成。

等等,說(shuō)好的慢鏡頭呢? 我們是不是錯(cuò)過(guò)了什么?

鏡頭回到最開始,文件系統(tǒng)為文件分配新的簇,F(xiàn)lash對(duì)新分配的簇進(jìn)行擦除操作,完成后寫入新的數(shù)據(jù)內(nèi)容。完成數(shù)據(jù)塊的寫入后,改寫FAT表項(xiàng)內(nèi)容為下一個(gè)簇號(hào),如此往復(fù)直至文件全部保存完成。

那么問(wèn)題來(lái)了,如果在寫入數(shù)據(jù)塊過(guò)程中發(fā)生斷電,F(xiàn)AT表還沒來(lái)得及更改,那是不是就意味著新修改的內(nèi)容沒有被保存?回答是肯定的,當(dāng)然這也是最幸運(yùn)情況之一了,因?yàn)椴]有對(duì)原文件造成損壞,只是丟失了新添加的內(nèi)容而已。

如果掉電恰好發(fā)生在操作FAT表、目錄區(qū)呢,是不是有毛骨悚然的感覺?

WinCE默認(rèn)的文件系統(tǒng)面對(duì)突發(fā)的掉電這么無(wú)助,難道我們只能袖手旁觀?

不!

致遠(yuǎn)WinCE平臺(tái)為了支持文件系統(tǒng)掉電保護(hù)功能,在文件系統(tǒng)中加入了TFAT特性,同時(shí)在驅(qū)動(dòng)中添加掉電保護(hù)功能代碼。為了驗(yàn)證TFAT特性和掉電保護(hù)功能代碼的實(shí)用性,我們?yōu)閃inCE平臺(tái)量身打造了Flash掉電測(cè)試方案。

使用智能定時(shí)器控制被測(cè)設(shè)備電源,使用測(cè)試軟件A監(jiān)測(cè)文件系統(tǒng)狀況,測(cè)試軟件B進(jìn)行數(shù)據(jù)拷貝操作,在拷貝過(guò)程中對(duì)設(shè)備隨機(jī)斷電,如此往復(fù)以模擬Flash寫入時(shí)掉電,軟件運(yùn)行流程如下圖所示。

圖2 Flash掉電測(cè)試方案軟件運(yùn)行流程

寶劍鋒從磨礪出,梅花香自苦寒來(lái),經(jīng)過(guò)一個(gè)月漫長(zhǎng)的測(cè)試,測(cè)試次數(shù)約達(dá)10~12萬(wàn)次,若未出現(xiàn)失敗信息則可為該平臺(tái)發(fā)放Flash掉電測(cè)試通過(guò)許可證,自此仗劍走天涯!