Machine Check ExceptionMachine Check Exception (аббр. MCE) - тип компьютерных ошибок, которые появляются при обнаружении неполадок с оборудованием. Особенности и причины таких ошибок могут зависеть от компьютерной архитектуры и поколения процессора. В некоторых архитектурах, MCE ошибки всегда являются неустранимыми, они приостанавливают работу компьютера, требуя перезапуск. В других же архитектурах, некоторые ошибки MCE могут быть некритическими, например ошибка в одном бите ОЗУ, устраняемая памятью с коррекцией ошибок. В некоторых архитектурах, например в PowerPC, некоторые программные ошибки (например, неправильный доступ к памяти) могут приводит к возникновению такого типа ошибок. В других же архитектурах, например в x86, MCE обычно возникает вследствие ошибок в работе оборудования. Виды отчётовОперационные системы мейнфреймов IBM
IBM System/360 Operating System (OS/360) записывает ошибки ввода/вывода в файл журнала под названием Тогда IBM ввела термин "error recording data set" (ERDS, набор данных записи ошибок) для следующих версий, который позволяет установщику выбирать имя для операционных систем, не производных от OS/360.[1] OS/360В OS/360, установщик может выбрать несколько степеней поддержки таких ошибок. Наиболее точным является Machine Check Handler (MCH), он записывает данные об ошибках в z/OSВ z/OS установка может выбрать либо ERDS, либо может определить поток логирования z/OS System Logger для удержания данных об ошибках. Как и OS/360, установщик использует EREP для отображения таких ошибок, SEREP не поддерживается. MCH больше не является опциональным, и обрабатывает большее количество ситуаций, чем в OS/360. Microsoft WindowsВ Microsoft Windows, в момент неустранимой ошибки MCE, система генерирует синий экран смерти. Более поздние версии Windows используют механизм WHEA (Windows Hardware Error Architecture), и генерируют STOP код 0x124: Пример такой ошибки продемонстрирован ниже. Параметры (в скобках) могут отличаться, но первый всегда 0x0 для MCE. STOP: 0x00000124 (0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000) Более старые версии Windows напрямую используют Machine Check Architecture, и генерируют STOP код 0x9C, Пример такой ошибки: STOP: 0x0000009C (0x00000030, 0x00000002, 0x00000001, 0x80003CBA) LinuxВ Linux, ядро посылает сообщения об ошибке MCE в журнал ядра и в консоль. Когда такая ошибка не является фатальной, сообщение о ней также копируется в системный журнал и/или журнал systemd. На некоторых системах, информация об устранимых ошибках также может быть передана через MCE.[3] Пример такой ошибки: CPU 0: Machine Check Exception: 0000000000000004 Bank 2: f200200000000863 Kernel panic: CPU context corrupt Типы проблемНекоторые из основных аппаратных неполадок могут приводить к MCE, например:
Возможные причиныЧасто MCE является следствием разгона или перегрева процессора. В некоторых случаях, во время перегрева, для предотвращения повреждения, процессор сам отключается. Но MCE может возникать и по причине ошибок шины данных, ошибок памяти, и т. д. Возможные причины включают в себя:
Декодирование ошибокДля архитектур IA-32 и x86-64, можно обратиться к Intel 64 and IA-32 Architectures Software Developer's Manual[4] Chapter 15 (Machine-Check Architecture) или Microsoft KB Article on Windows Exceptions.[5] Программы для декодирования MCE на процессорах Intel и AMD
См. такжеПримечания
Ссылки |
Portal di Ensiklopedia Dunia