Самый неудачный баг в истории Windows: Pinball стал опаснее “синего экрана смерти”

Бывший инженер Microsoft Дэйв Пламмер раскрыл один из самых забавных и в то же время позорных секретов Windows. Оказывается, самый неудачный баг, который он когда-либо допускал, был не в какой-то там системной утилите, а в легендарной игре Pinball. Одна незначительная деталь в коде превратила простенькую игру в настоящего “убийцу” процессоров.

Pinball, который мы все помним по Windows 95 и NT, был портирован на новый движок. И вот тут-то и случился эпический промах. Программист не установил ограничитель кадров, и игра, не стесняясь, рендерила их с такой скоростью, на какую только был способен процессор.

По началу это никого не волновало. Старенькие компьютеры едва выжимали 60-90 кадров в секунду, и казалось, что этого более чем достаточно. Но когда процессоры стали мощнее, Pinball превратился в настоящего “монстра”. Игра с лёгкостью загружала целое ядро, разгоняясь до 5000 кадров в секунду.

Другой ветеран Microsoft, Рэймонд Чен, решил разобраться в причинах такой прожорливости. Он обнаружил, что игра настолько быстрая, что даже счётчик кадров не успевал за ней. Решением стало добавление простого ограничителя на 100 FPS, после чего потребление ресурсов упало до смехотворного 1%. Наконец-то инженеры могли спокойно собирать новые билды Windows, не опасаясь, что система “повиснет” из-за обычной аркады.