Разработчик Реймонд Чен раскрыл тайну появления названия ошибки hard error в Windows

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Ветеран Microsoft Реймонд Чен раскрыл очередной секрет эпохи 16-битной Windows, связанный с названием ошибки hard error.

В эпоху Windows 3.1 и ей подобных Microsoft столкнулась с проблемой выдачи сообщения об ошибке, которое бы сигнализировало о том, что система не запустится.

Чен выделил ошибку ввода-вывода, возникающую при попытке чтения с диска: «Windows не может показать традиционный MessageBox, потому что он перекачивает сообщения и позволяет запускать код приложения в то время, когда правила совместной многозадачности гласят, что код приложения не должен выполняться». Сообщения же были сгенерированы изнутри системы ввода-вывода, ниже уровня пользовательского интерфейса. Таким образом, они рассматривались как сообщения о «мягкой ошибке» (soft error).

Код для отображения особых «жёстких системных модальных ошибок» был тщательно прописан, чтобы полагаться только на повторно входящие части кода пользовательского интерфейса. Фактически, он использовал обработку ввода с помощью мыши и клавиатуры. Вся графика рисовалась посредством запроса интерфейса графического устройства (GDI) непосредственно в буфере кадра, а все варианты поведения были прописаны вручную. Пока это сообщение показывалось пользователю, запуск кода приложения был запрещён.

В комментарии к сообщению Чена упоминается обходной путь, в котором скрепка использовалась для удержания клавиши R в диалоговом окне «Прервать/Повторить/Отменить», когда возникла ошибка ввода-вывода из-за нарушения общего доступа. Это вариация старого трюка с использованием Blu Tack, чтобы остановить перезагрузку пакета оперативной памяти ZX81.

По словам Чена, после 16-битной Windows термин «серьёзная ошибка» (hard error) был перепрофилирован для описания критических или низкоуровневых ошибок в более поздних версиях. 

Ранее Чен рассказал, как работала «тележка смерти» с USB-устройствами, вызывающими ВSoD, для тестирования и доработки ранних версий Windows.

Также он рассказывал, что в ранних сборках планшетной версии Windows 8 в меню для вывода на экран кодов ошибок были заведены девять картинок с кошками, сидящими на заборе и вилявшими хвостиками, смотря на заходящую Луну. Именно эти картинки позволяли разработчикам понять, что в запущенном приложении произошла ошибка, и экран с кнопкой «Пуск» недоступен.

Наконец, разработчик однажды поделился, что в эпоху Windows XP на некоторых моделях ноутбуков процесс воспроизведения музыкального видео с песней Джанет Джексон «Rhythm Nation» мог вывести из строя как сам ноутбук, так и находящиеся рядом другие мобильные компьютеры.

Источник: https://habr.com/ru/news/787712/


Интересные статьи

Интересные статьи

Вчера по сети разлетелся опрос: одна из образовательных платформ совместно с популярным сервисом знакомств опросили женщин на предмет того, хотят ли они построить отношения с айтишниками. Значительная...
Привет, Хабр! Сегодня поговорим о Golang, вернее, о хороших книгах, которые написаны для начинающих разработчиков. Возможно, какие-то из этих книг пропустили в своё время и более опытные программисты ...
RTOS или не RTOS вот в чем вопрос 2, или Windows тоже RTOS?
Я от лица команды хочу показать вам SophiApp — графический наследник Sophia Script for Windows: бесплатная, портативная и полностью опенсорная программа для тонкой настройки Windows 10 и Windows 11.В ...
Для справки. Операционная система Windows Server 2019 поддерживает до 64 отдельных физических CPU и 24 терабайта RAM Какую ОС установить на сервер? Конечно, это зависит от решаемой з...