存儲(chǔ)器測試的目的是確認(rèn)在存儲(chǔ)設(shè)備中的每一個(gè)存儲(chǔ)位置都在工作,。換一句---,200度flash芯片存儲(chǔ)器,,如果你把數(shù)50存儲(chǔ)在一個(gè)具體的地址,你希望可以找到存儲(chǔ)在那里的那個(gè)數(shù),,直到另一個(gè)數(shù)寫入,。任何存儲(chǔ)器測試的基本方法是,往存儲(chǔ)器寫入一些數(shù)據(jù),,然后根據(jù)內(nèi)存設(shè)備的地址,,校驗(yàn)讀回的數(shù)據(jù),。如果所有讀回的數(shù)據(jù)和那些寫入的數(shù)據(jù)是一樣的,那么就可以說存儲(chǔ)設(shè)備通過了測試,。只有通過認(rèn)真選擇的一組數(shù)據(jù)你才可以確信通過的結(jié)果是有意義的,。
當(dāng)然,像剛才描述的有儲(chǔ)器的測試不可避免地具有破壞性,。在內(nèi)存測試過程中,,150度flash芯片存儲(chǔ)器,你必須覆蓋它原先的內(nèi)容,。因?yàn)橹貙懛且资源鎯?chǔ)器內(nèi)容通常來說是不可行的,,flash芯片,這一部分描述的測試通常只適用于ram 的測試,。
服務(wù)器在存儲(chǔ)器環(huán)境按這樣的方法分配存儲(chǔ)器:在某個(gè)環(huán)境分配的存儲(chǔ)器可以被環(huán)境析構(gòu)器釋放而不會(huì)影響其他環(huán)境中分配的存儲(chǔ)器.所有存儲(chǔ)器分配通過 palloc 等都被當(dāng)作在當(dāng)前環(huán)境的區(qū)域中分配存儲(chǔ)器.如果你試圖釋放或再分配不在當(dāng)前環(huán)境的存儲(chǔ)器,,你將得到不可預(yù)料的結(jié)果.
創(chuàng)建存儲(chǔ)器環(huán)境和切換存儲(chǔ)器環(huán)境是 spi 管理器中存儲(chǔ)器管理器的任務(wù).
spi過程處理兩種存儲(chǔ)器環(huán)境:上層執(zhí)行器存儲(chǔ)器環(huán)境和過程存儲(chǔ)器環(huán)境
程序存儲(chǔ)器
如果微控制器既利用內(nèi)部存儲(chǔ)器也利用外部存儲(chǔ)器,則內(nèi)部存儲(chǔ)器通常被用來存儲(chǔ)不常改變的代碼,,而外部存儲(chǔ)器用于存儲(chǔ)更新比較頻繁的代碼和數(shù)據(jù),。設(shè)計(jì)---也需要考慮存儲(chǔ)器是否將被在線重新編程或用新的可編程器件替代。對于需要重編程功能的應(yīng)用,,人們通常選用帶有內(nèi)部閃存的微控制器,,但帶有內(nèi)部otp或rom和外部閃存或eeprom的微控制器也滿足這個(gè)要求。為降低成本,,150度高溫flash芯片存儲(chǔ),,外部閃存可用來存儲(chǔ)代碼和數(shù)據(jù),但在存儲(chǔ)數(shù)據(jù)時(shí)必須小心避免意外修改代碼,。
在大多數(shù)嵌入式系統(tǒng)中,,人們利用閃存存儲(chǔ)程序以便在線升級固件。代碼穩(wěn)定的較老的應(yīng)用系統(tǒng)仍可以使用rom和otp存儲(chǔ)器,,但由于閃存的通用性,,越來越多的應(yīng)用系統(tǒng)正轉(zhuǎn)向閃存。
|