Частичное обновление ПО.

Тема в разделе "Флудилка", создана пользователем Megakoteyka, 27 апр 2016.

  1. Megakoteyka

    Megakoteyka Оракул Модератор

    Все это сперва тестируется на двойнике прибора и только потом происходит обновление. Но на случай прокравшихся багов я подумываю сделать защиту, например, такую: если после трех включений прибор не получал определенных команд, то при следующей загрузке он игнорирует заплатки и грузит исходную версию. А исходная версия гарантированно позволяет как накатить новые заплатки, так и стереть старые.
     
  2. Megakoteyka

    Megakoteyka Оракул Модератор

    Финансирование - моя зарплата, а поддержка в основном моральная :)
    Скорее кусочек аппарата.
     
  3. AlexU

    AlexU Гуру

    Здесь Вы сильно ошибаетесь -- это "раз". Те кто пишет ТЗ так же ошибаются, что приводит к ошибкам в "логике". Но в первую очередь могут ошибиться те, кто пишет требования, на основе, которых составляется ТЗ. Как Вы думаете, спецы из Airbus'a, Сухого, а так же автопромошленности Германии (перечислил то с чем сталкиваюсь), зря что ли тратятся на инструменты, которые тестируют именно логику бортового оборудования? При чём тратятся не малые деньги на создание таких инструментов.
    Здесь ошибаетесь -- "два".
    Речь веду не про динамическое выделение памяти при работе программы (прошивки), а про заполнение памяти обновлениями. После того как залили обновление функции в специально отведенное место (4 кб) освобождается память, которую занимала старая версия функции -- вот Вам и дефрагментация. Зальёте обновление ещё одной функции -- ещё один участок бесполезно простаивающей памяти. И так получается, что памяти "море", а реально нет "ни капли".
     
  4. Megakoteyka

    Megakoteyka Оракул Модератор

    А с чего вы взяли, что мы не тратимся? Проверочная аппаратура стоит не меньше прибора, а тесты гоняют неделями, а иногда и месяцами. Причем прибор проверяется сперва в окружении имитаторов, а потом в составе реальной системы. На этих этапах вылавливаются все ошибки, но иногда какая-то мелочь упускается. Причем ни разу не было такого, чтобы из-за этой мелочи прибор не мог выполнять свою задачу.
    Ничего не освобождается, код старой функции остается там же, где он и был. Повторюсь: задачи установки кучи заплаток просто не стоит. Максимум - замена одной-двух функций. Для этого памяти вполне достаточно.
     
  5. AlexU

    AlexU Гуру

    Оставаться-то остаётся, но не используется по причине наличия исправленной версии функции, поэтому и считается этот участок памяти свободным.
    Вы владеете полной информацией и поэтому лучше понимаете, что нужно, а что можно оставить без внимания. Поэтому считаю, что дискуссию можно завершить, т.к. она рискует перерасти в бесполезный спор.
     
  6. ostrov

    ostrov Гуру

    Как то не уследил, размер "заплаток" заранее известен или нет? Хотя бы примерно.
     
  7. Megakoteyka

    Megakoteyka Оракул Модератор

    Заплатка = 1 функция. Десятки-сотни инструкций (32-разрядных слов).
     
  8. Megakoteyka

    Megakoteyka Оракул Модератор

    Есть такое дело. Но ради простоты было решено этим пренебречь.
    Всегда полезно узнать мнение со стороны :) Спасибо за интересную дискуссию.