-
- Но согласитесь, если в контроллере индивидуальная супер-пупер установка разрешения стирания/записи секторов, то теоретически программная память никогда не испортится. Но и не обновится :) Vladimir Ljaschko(261 знак., 27.07.2010 08:52)
- Не супер-пупер а обычный регистр в котором нужно поставить нужный битик или снять его. PlainUser(155 знак., 27.07.2010 10:47, )
- При чем тут идиот? Vladimir Ljaschko(423 знак., 27.07.2010 10:58)
- Защиту от перезаписи блоков флеши в некоторых МК посерьезней защищают (увы, не у всех:)). sbb(468 знак., 27.07.2010 12:46)
- Если в программе есть строка, где эта самая разблокирующая последовательность формируется, то кто помешает при сбое программе попасть именно туда? ;-) Shura(207 знак., 27.07.2010 12:53)
- Разблокирующая последовательность не должна формироваться в коде. Зачем, если ее можно передать бутлоадеру. sbb(426 знак., 27.07.2010 15:13)
- То, как ты сформулировал, лечится! У меня устройство восстанавливает заданный режим после воздействия помехи. - Vladimir Ljaschko(27.07.2010 12:59)
- Как это? Если в результате воздействия помехи программа влетела в процедуру стирания самое себя то ничего уже она не восстановит - Shura(27.07.2010 13:03)
- Для таких участков кода делается проверка стека (и еще сигнатур в RAM, которые устанавливаются вручную при входе в функцию). - testerplus(27.07.2010 13:07)
- Если программа один раз прыгнула куда не положено, то и проверку стека перепрыгнет :-) Shura(122 знак., 27.07.2010 13:10)
- Сначала устанавливаются адреса, потом делается проверка. Если проверка перепрыгнута, то адреса по-прежнему будут указывать в безопасную область (при стартапе настраиваются), и запись туда ничего не попортит. Панацеи нет, но вероятность понизить - никогда testerplus(11 знак., 27.07.2010 13:14)
- Адреса устанавливаются в ОЗУ, забудьте про их целостность - Shura(27.07.2010 13:16)
- Ну так и проверки все через ОЗУ делаются. Где-то по-любому есть предел октазоустойчивости. Если случится сбой, то в склоке программистов со схемотехниками ни один аргумент не будет принят, какая бы защита ни стояла (схемотехнически тоже от всего не testerplus(13 знак., 27.07.2010 13:34)
- Что вы хотите доказать? Что программа, которая прыгает сама из-за бросков питания - это нормально и программист должен на каждом шагу насовать затычек и проверок, а чтоб это всё страхоуёбище не тормозило, то надо поставить камень в 3 раза шустрее и ОЗУ в Shura(121 знак., 27.07.2010 13:39)
- Не доказать, а сказать, что нельзя пренебрегать проверками, ссылаясь на схемотехников, типа "это их работа". Всего не перепроверишь, но ответственные участки защищать нужно, не рассчитывая на вылизанную электронику. - testerplus(27.07.2010 13:44)
- Могу лишь повториться - защищаться надо когда знаете от чего. А тот список, что вы вывалили, так он только улыбку вызывает. Там почти все компоненты ядерного взрыва перечислены :-) - Shura(27.07.2010 13:50)
- Я за тот список уже извинился (обсуждение шло в двух направлениях, вот я и смешал все в одну кучу). (-40Ц - это много после ядерного взрыва :-/) А вот пример из жизни: testerplus(695 знак., 27.07.2010 14:08)
- "несколько устройств ресетнулись" и "улетела флеш" это совершенно разные вещи. Если программист решил, что в автономном устройстве с батарейным питанием ресет невозможен, его надо отстранять от продолжения работ - koyodza(27.07.2010 18:52)
- Отстранять надо руководителя проекта , этот вопрос вне компетенции программиста.Хотя приличный программист должен быть всегда готов к ресету. - PlainUser(28.07.2010 09:37, )
- Вот это верно! Причем я его осуществляю так: Леонид Иванович(57 знак., 28.07.2010 12:11)
- о, "Графинъ"! :=) koyodza(67 знак., 28.07.2010 13:00)
- "Насчет семи комнат, это Вы на меня намекаете?" :) - testerplus(28.07.2010 13:11)
- о, "Графинъ"! :=) koyodza(67 знак., 28.07.2010 13:00)
- Вот это верно! Причем я его осуществляю так: Леонид Иванович(57 знак., 28.07.2010 12:11)
- Это я уже не к теме сохранности данных. Это я о взаимоответственности программеров и схемотехников. Отстранять - надо, а что толку, если убытки уже есть? - testerplus(27.07.2010 19:23)
- Отстранять надо руководителя проекта , этот вопрос вне компетенции программиста.Хотя приличный программист должен быть всегда готов к ресету. - PlainUser(28.07.2010 09:37, )
- "несколько устройств ресетнулись" и "улетела флеш" это совершенно разные вещи. Если программист решил, что в автономном устройстве с батарейным питанием ресет невозможен, его надо отстранять от продолжения работ - koyodza(27.07.2010 18:52)
- Я за тот список уже извинился (обсуждение шло в двух направлениях, вот я и смешал все в одну кучу). (-40Ц - это много после ядерного взрыва :-/) А вот пример из жизни: testerplus(695 знак., 27.07.2010 14:08)
- Могу лишь повториться - защищаться надо когда знаете от чего. А тот список, что вы вывалили, так он только улыбку вызывает. Там почти все компоненты ядерного взрыва перечислены :-) - Shura(27.07.2010 13:50)
- Не доказать, а сказать, что нельзя пренебрегать проверками, ссылаясь на схемотехников, типа "это их работа". Всего не перепроверишь, но ответственные участки защищать нужно, не рассчитывая на вылизанную электронику. - testerplus(27.07.2010 13:44)
- Что вы хотите доказать? Что программа, которая прыгает сама из-за бросков питания - это нормально и программист должен на каждом шагу насовать затычек и проверок, а чтоб это всё страхоуёбище не тормозило, то надо поставить камень в 3 раза шустрее и ОЗУ в Shura(121 знак., 27.07.2010 13:39)
- Ну так и проверки все через ОЗУ делаются. Где-то по-любому есть предел октазоустойчивости. Если случится сбой, то в склоке программистов со схемотехниками ни один аргумент не будет принят, какая бы защита ни стояла (схемотехнически тоже от всего не testerplus(13 знак., 27.07.2010 13:34)
- Адреса устанавливаются в ОЗУ, забудьте про их целостность - Shura(27.07.2010 13:16)
- Сначала устанавливаются адреса, потом делается проверка. Если проверка перепрыгнута, то адреса по-прежнему будут указывать в безопасную область (при стартапе настраиваются), и запись туда ничего не попортит. Панацеи нет, но вероятность понизить - никогда testerplus(11 знак., 27.07.2010 13:14)
- Если программа один раз прыгнула куда не положено, то и проверку стека перепрыгнет :-) Shura(122 знак., 27.07.2010 13:10)
- Для таких участков кода делается проверка стека (и еще сигнатур в RAM, которые устанавливаются вручную при входе в функцию). - testerplus(27.07.2010 13:07)
- Как это? Если в результате воздействия помехи программа влетела в процедуру стирания самое себя то ничего уже она не восстановит - Shura(27.07.2010 13:03)
- Если в программе есть строка, где эта самая разблокирующая последовательность формируется, то кто помешает при сбое программе попасть именно туда? ;-) Shura(207 знак., 27.07.2010 12:53)
- Программа конечно может вылететь на неправильный адрес , физически это возможно , вот только приличных методов борьбы с этим в рамках одного процессора нет. - PlainUser(27.07.2010 12:08, )
- Вы тут чё-то все загнались не по-детски! Можно подумать прям разрабатываете какие-то суперкрутые системы для ракет или самолётов! Прям и ресет надо обрабатывать и метки какие-то в ОЗУ хранить! Пипец! Может ещё будете ставить диагностический процессор, FDA(386 знак., 28.07.2010 09:12)
- А устройству и не надо работать в таких условиях, достаточно просто однажды оказаться в них (пускай при транспортировке). - testerplus(28.07.2010 12:00)
- При-чем тут флеш , рядом должна стоять железная дура на релюшках и осуществлять цензуру. PlainUser(130 знак., 28.07.2010 09:26, )
- Кстати в конце цепочки контролирующих систему устройств видимо должно стоять абсолютно твердое и абсолютно черное тело. - PlainUser(28.07.2010 10:40, )
- С жезлом :-) Имхо, тема себя исчерпала, давайте завязывать - Shura(28.07.2010 10:45)
- тема себя исчерпала уже на следующий день после того, как началась. Даже не исчерпалась, а превратилась в докторский бред - koyodza(28.07.2010 10:48)
- В отличии от разных докторов я практик , иногда даже больше чем хотелось-бы.Вот количество этой практики , как и положено пытается перейти в качество.Много лет наблюдаю одно и то-же.Разные люди , разные коллективы и каждый сам себе теоретик PlainUser(263 знак., 29.07.2010 08:46, )
- А по мне так, пожалуй, единственная тема за последние несколько лет, в которой реально поднимаются не очевидные вопросы надежности ПО и аппаратуры на МК. Dir(2405 знак., 28.07.2010 14:01)
- В статье собирался осветить несколько вопросов из списка и еще несколько других. Только пока не знаю, когда будет готово (да и писанины по прикидкам больше чем на 100 страниц получится) - testerplus(28.07.2010 14:50)
- Весьма высоко ценю ваш опыт полученный на нелегкой работе.Если не затруднит хотел-бы ознакомится с любыми опубликованными вами по этой теме материалами.Сегодня , завтра , через год -два...время роли не играет . plainuserГАВmail.ru - PlainUser(29.07.2010 09:01, )
- А у меня материалов не так много, и они больше адресованы начинающим -> - testerplus(29.07.2010 12:52, ссылка)
- А начать и обкатать можно в википедии. - General(28.07.2010 16:53, ссылка)
- "Обкатать" - это пободаться, как с темой про Flash? :) - testerplus(28.07.2010 17:17)
- Такую статью (>100 страниц) никто не примет. Если опыт есть, сразу на книгу можно замахнуться. А вот обкатать тематику можно и на конфе. При серьезном фактическом обосновании тон обсуждения будет совсем другой. - Dir(28.07.2010 15:21)
- Весьма высоко ценю ваш опыт полученный на нелегкой работе.Если не затруднит хотел-бы ознакомится с любыми опубликованными вами по этой теме материалами.Сегодня , завтра , через год -два...время роли не играет . plainuserГАВmail.ru - PlainUser(29.07.2010 09:01, )
- заметьте, что ни я ни Shura не подвергали сомнению важность вопроса надёжности и прочее, а только высказались против утверждений в стиле "встроенная FLASH не годится для хранения данных" и "троирование данных - лучший вид их защиты" - koyodza(28.07.2010 14:13)
- Да нет, со стороны ваши возражения выглядят как непрерывные поиски д-ра Туамосеса и почти всегда заканчиваются: "тема себя изжила"... Возможно я не прав, т.к. только что из отпуска. - Dir(28.07.2010 14:34)
- можете попробовать перечитать в хронологическом порядке. Кстати, сама тема - всего лишь ветка из другого обсуждения, по поводу замены мега8 на лпц1111 - koyodza(28.07.2010 14:37)
- ОК. Попробую. - Dir(28.07.2010 14:43)
- можете попробовать перечитать в хронологическом порядке. Кстати, сама тема - всего лишь ветка из другого обсуждения, по поводу замены мега8 на лпц1111 - koyodza(28.07.2010 14:37)
- Да нет, со стороны ваши возражения выглядят как непрерывные поиски д-ра Туамосеса и почти всегда заканчиваются: "тема себя изжила"... Возможно я не прав, т.к. только что из отпуска. - Dir(28.07.2010 14:34)
- В статье собирался осветить несколько вопросов из списка и еще несколько других. Только пока не знаю, когда будет готово (да и писанины по прикидкам больше чем на 100 страниц получится) - testerplus(28.07.2010 14:50)
- тема себя исчерпала уже на следующий день после того, как началась. Даже не исчерпалась, а превратилась в докторский бред - koyodza(28.07.2010 10:48)
- С жезлом :-) Имхо, тема себя исчерпала, давайте завязывать - Shura(28.07.2010 10:45)
- Вот не люблю это - смешно, не смешно. Можно выполнить вполне серьезное программное действие - обнаружить сбой и сброситься или остановиться. Vladimir Ljaschko(238 знак., 28.07.2010 09:33)
- Смешно это значит строго говоря бессмысленно.Устройство подвегшееся действию помех (где гарантия что она была одна ?) не может само себя контролировать , во всяком случае уровень доверия такому контролю весьма низкий.Конкретные меры(CRC заглушки ловушки) PlainUser(502 знак., 28.07.2010 10:06, )
- Надо различать понятия "сбой" и "последствия сбоя". Устройство, имеющее самодиагностику, может перевести себя в безопасный режим, отключив все узлы. Оно по крайней мере не будет "бездумно" следовать алгоритму, но с уже сбитыми параметрами. Понятно, testerplus(113 знак., 28.07.2010 12:04)
- А бут-область проверяете, когда уже аппликейшн функционирует? :-) - amusin(28.07.2010 09:56)
- Смешно это значит строго говоря бессмысленно.Устройство подвегшееся действию помех (где гарантия что она была одна ?) не может само себя контролировать , во всяком случае уровень доверия такому контролю весьма низкий.Конкретные меры(CRC заглушки ловушки) PlainUser(502 знак., 28.07.2010 10:06, )
- Кстати в конце цепочки контролирующих систему устройств видимо должно стоять абсолютно твердое и абсолютно черное тело. - PlainUser(28.07.2010 10:40, )
- Вы тут чё-то все загнались не по-детски! Можно подумать прям разрабатываете какие-то суперкрутые системы для ракет или самолётов! Прям и ресет надо обрабатывать и метки какие-то в ОЗУ хранить! Пипец! Может ещё будете ставить диагностический процессор, FDA(386 знак., 28.07.2010 09:12)
- Снять битик в регистре программа сама не сможет , и талантливый дятел изучающий глубины ООП в общем то-же.Запись в регистр это действие которое нужно совершить осознанно.А вот писать не в тот адрес из-за дурацких указателей на структуры это легко. - PlainUser(27.07.2010 11:10, )
- Ну а если МК содержит встроенный бутлоадер, то устройство может сбойнуть, запустить бутлоадер и стереть само себя, так? :-) - Shura(27.07.2010 11:01)
- Начинаешь понимать! ;) - Vladimir Ljaschko(27.07.2010 11:22)
- Защиту от перезаписи блоков флеши в некоторых МК посерьезней защищают (увы, не у всех:)). sbb(468 знак., 27.07.2010 12:46)
- При чем тут идиот? Vladimir Ljaschko(423 знак., 27.07.2010 10:58)
- Не супер-пупер а обычный регистр в котором нужно поставить нужный битик или снять его. PlainUser(155 знак., 27.07.2010 10:47, )
- Но согласитесь, если в контроллере индивидуальная супер-пупер установка разрешения стирания/записи секторов, то теоретически программная память никогда не испортится. Но и не обновится :) Vladimir Ljaschko(261 знак., 27.07.2010 08:52)