TGViewer
godnoTECH - Новости IT godnoTECH - Новости IT @godnotech · 5.91K subscribers
Post #11540 972
Рэймонд Чен рассказал о самой абсурдной оптимизации компилятора x86

Ветеран Microsoft и известный IT-историк Рэймонд Чен поделился очередной великолепной байкой из эпохи, когда Windows включала эмулятор x86-32 для систем на других архитектурах. Чтобы софт работал быстро, эмулятор использовал бинарную трансляцию (по сути, работал как JIT-компилятор, на лету переводя байт-код x86-32 в нативные инструкции процессора). И именно этот транслятор однажды столкнулся с кодом, который заставил инженеров Microsoft схватиться за голову.

Одной из программ потребовалось выделить и инициализировать 64 КБ памяти в стеке. Адекватный компилятор сделал бы это изящно: проверил доступность памяти, сдвинул указатель стека и запустил крошечный цикл для обнуления байтов. Однако компилятор этой программы решил соригинальничать и провел "оптимизацию" — он полностью развернул цикл.

Компилятор выдал 65 536 отдельных инструкций "запись байта в память" подряд. Каждая инструкция весила 4 байта. В итоге, чтобы просто инициализировать 64 КБ памяти, программа тащила за собой 256 КБ скомпилированного кода.

Команду эмулятора Microsoft этот программный монстр возмутил настолько, что они специально добавили в свой бинарный транслятор костыль: обнаружив эту абсурдную простыню кода, эмулятор молча удалял её и подменял нормальным, компактным циклом.

🥸 Новости IT: 📱 Telegram | 📱 ВК | 📲 MAX
  • ❤ 7
  • 😁 6
  • 👍 4
More from @godnotech
  1. Oct 6, 2026🙏 Чебурнет обретает ГОСТы Товарищ майор решил, что отказоустойчивость интернетов в целом…
  2. Oct 6, 2026В Долине новый красный флаг на свиданиях. Девушки шарахаются от айтишников из Palantir, Te…
  3. Oct 6, 2026Post #12288
  4. Oct 5, 2026Linux / Линукс🥸
  5. Oct 5, 2026Пользователь Reddit купил б/у Ryzen 7 5800X3D и получил бонус — аппаратный бан в Valorant…
  6. Oct 5, 2026Clippy воскрес в виде скам-токена через взломанный аккаунт Microsoft 📎 Официальный аккаун…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →