|
|
|
|
О чем и хотелось сказать |
|
|
Vlad_Petr: Новые данные (не важно какие) пишутся в отдельный буфер, затем проверяется достоверность данных в этом буфере и если все ОК, то быстро перезаписывается на штатное место Поясните, что за отдельный буфер? И как проверяется достоверность данных? |
|
|
GM: Поясните, что за отдельный буфер? И как проверяется достоверность данных? Да в каждом отдельном случае разный. Например Виндовоз качает файл для обновления (сохраняет как временный файл с номером), затем проверит его контрольную сумму (и еще , наверное,чего-нибудь, тут дядя Билл знает) и если все ОК запишет его уже с именем... и т.д. Для контроллера критерии достоверности каждый сам ваяет.. Например, если это дистанционная коррекция софта (я так делал), то нужен буфер ОЗУ для этого сегмента программы, после принятия решения о достоверности, запрет любой деятельности и перезапись принятого во флешку. Причем, на время перезаписи питание должно быть, иначе кирдык! Затем перезапуск и жизнь сначала. Для записи не во флешку а в озу проще, потому как много быстрее..с питанием страховаться проще. По любому, для таких фокусов надо заводить на пин контроллера сигнал о начале падения питания, загодя до срабатывания reseta. |
|
|
Во попёрло! Будь(те) добр(ы), не приумножай(те) сущностей! Или по-русски - НЕ нужно делать новый пост, когда есть возможность дописать предыдущий. |
|
|
Дон Амброзио: А если в блок данных случайно (из-за сбоя) писанУли уже после того, как установлен тэг "Транзакция завершена"? Найдите сбой и устраните. А если флэшка сбоит при чтении из-за пониженного напряжения, так что все экземпляры окажутся разными - тогда что будете делать? Дон Амброзио: если этот вопрос задаю Я, значит он не так прост как кажется А если на вопрос отвечаю Я, даже не новички в разработке получают исчерпывающий ответ. Вопрос решен десятилетия назад. Точка.
|
|
|
Еще могут покоцаться программный счечтчик, дешифратор команд, АЛУ... Еще может рядом упасть атомная бомба... Да много еще чего может покоцаться... Для избежания всех этих неприятностей есть "параноидальный стиль программирования". Только и он не помогает. В случаях, где действительно всего этого необходимо избежать, применяются паралельно-мажоритарные структуры. Да и это помогает далеко не всегда... Молодой дон еще многого не знает. Но понимание, что ЕЕPRОМ это не жесткий диск обнадеживает
|
|
|
. |
|
|
"Внутри микроконтроллера есть EEPROM. Это ясно? Т.е. не жёсткий диск компьютера, а встроенная EEPROM микрокотроллера.. Разницу уловили?" А в чём разница? |
|
|
Дон, а как вы думаете? В прямом смысле. А вдруг в процессе мышления у Вас в голове нейрон умрет? И Вы подумаете не ту мысль? Против этого есть какие-нить приемы "правильного" мышления? Не поделитесь соображениями по этому поводу? |
|
|
Не стал развивать эту тему дальше - поставил точку вместо предыдущего своего сообщения.
|
|
|
|
|