軟件抗干擾經驗之三、話說RAM冗余技術
所謂的RAM冗余,就是:
1、將重要的數據信息備份2份(或以上)并存放在RAM中不同的區域(指地址不相連)。
2、當平時對這些數據進行修改時,同時也更新備份
3、當干擾發生并被攔截到“程序錯誤處理段”中時,將數據與備份做比較,采用表決方式(少數服從多數)選出正確(或可能正確?)的那個。
4、備份越多,效果越好。(當然,你得有足夠的存儲空間)
5、只備份最最原始的數據。中間變量(指那些可以從原始數據重新推導出來的數據)不必備份
注:
1、這種思路的理論依據,據說是源于一種“概率論”,即一個人被老婆打腫臉的概率是很大的,但如果他捂著臉去上班卻發現全公司每個已婚男人的臉都青了,這種概率是很小的。同理,一個RAM寄存器數據被沖毀的概率是很大的,但地址不相連的多個RAM同時被沖毀的概率是很小的。
2、前兩年,小匠學徒時,用過一次這種方法,但效果不太理想。當時感覺可能是概率論在我這失效了?現在回想起來,可能是備份的時機選的不好。結果將已經沖毀的數據又備份進去了。這樣以來,恢復出來的數據自然也就不對了。


評論