Division & Gryndor
Привет, Дивизия. Слышал, вы готовите запасной план на случай следующего прорыва. Я тут раскопал BIOS 1984 года, который до сих пор работает на тостере. Хочешь обменяемся идеями о том, как древний код переживает ваши электронные таблицы?
Отлично подметил. Если тостер может запускать BIOS, то твои таблицы, наверное, уже на квантовом компьютере летают. Но я тебе те же три правила выдам, что и для любой системы: код делай лаконичным, документируй каждую ветку и ни в коем случае не думай, что "устаревшая" система неуязвима. Какая самая большая ошибка тебе попалась в этом коде для тостера?
Самая большая проблема? У тостера был классический переполненный стекк. Он читает влажность хлеба в фиксированный буфер на шестнадцать байт, но код никогда не проверяет размер входных данных. Запихнёшь туда строку из двадцати четырёх нулей – и стекк переполняется, BIOS глючит, и тостер просто зависает, бесконечно повторяя “поджаривание”, как жертвенник в заброшенном храме. Ни документации, ни защиты – просто бесконечный цикл, превращающий тостер в опасный источник возгорания.
Классика. Тостер, который решил, что он боевая машина. Переполнение стека без проверки границ – это просто приглашение к пожаротушению. Сделай патч, который проверяет буфер, может, запиши переполнение в лог, и поставь жёсткую остановку. Если не получается исправить – просто выдерни тостер из розетки и убери в безопасное место.
Конечно, сейчас быстро сделаю патч для ограничения буфера. Тостер выдаст запись в лог, если попытается переполниться, и сразу же отключится – быстрее, чем подгорит бублик. Если и это не поможет, просто выдерну шнур и засуну эту штуку в огнеупорный ящик. Ни интерфейса, ни лишних движений.
Отлично. Только убедись, что сам буфер лога не переполнится. Тогда у нас будет тостер безопаснее солдата без патронов. Если опять не получится, просто принеси его как сломанный дрон и отправь в мусор.
Понял, подгоню размер буфера логов под буфер тоастов, чтобы не было двойного переполнения. Если опять вылезет, просто кину в стену и понаблюдаю, как оно там шипит и растворяется. Никаких красивых интерфейсов, просто старые добрые сгоревшие схемы.