Критическая ошибка 50 при загрузке windows

Устранение ошибки с кодом события 50 Troubleshoot the Event ID 50 Error Message

Симптомы Symptoms

При записи данных на физический диск в журнал системных событий могут регистрироваться следующие два сообщения о событиях: When information is being written to the physical disk, the following two event messages may be logged in the system event log:

Эти сообщения с ИДЕНТИФИКАТОРами событий означают то же самое и генерируются по тем же причинам. These event ID messages mean exactly the same thing and are generated for the same reasons. В рамках этой статьи описывается только сообщение с кодом события 50. For the purposes of this article, only the event ID 50 message is described.

Устройство и путь в описании и конкретные шестнадцатеричные данные будут различаться. The device and path in the description and the specific hexadecimal data will vary.

Дополнительные сведения More Information

Сообщение об ошибке с ИДЕНТИФИКАТОРом 50 регистрируется в журнале, если при попытке Windows записать данные на диск возникает общая ошибка. An event ID 50 message is logged if a generic error occurs when Windows is trying to write information to the disk. Эта ошибка возникает, когда Windows пытается зафиксировать данные из диспетчера кэша файловой системы (не из кэша на уровне оборудования) на физическом диске. This error occurs when Windows is trying to commit data from the file system Cache Manager (not hardware level cache) to the physical disk. Это поведение является частью управления памятью Windows. This behavior is part of the memory management of Windows. Например, если программа отправляет запрос на запись, запрос записи кэшируется диспетчером кэша, и программа сообщает о том, что запись выполнена успешно. For example, if a program sends a write request, the write request is cached by Cache Manager and the program is told the write is completed successfully. На более позднем этапе диспетчер кэша пытается выполнить отложенную запись данных на физический диск. At a later point in time, Cache Manager tries to lazy write the data to the physical disk. Когда диспетчер кэша пытается зафиксировать данные на диске, происходит ошибка записи данных, а данные удаляются из кэша и удаляются. When Cache Manager tries to commit the data to disk, an error occurs writing the data, and the data is flushed from the cache and discarded. Кэширование обратной записи повышает производительность системы, но в результате потери отложенных ошибок записи могут возникать потери данных и потеря целостности тома. Write-back caching improves system performance, but data loss and volume integrity loss can occur as a result of lost delayed-write failures.

Важно помнить, что не все операции ввода-вывода буферизованы диспетчером кэша. It is important to remember that not all I/O is buffered I/O by Cache Manager. Программы могут устанавливать флаг FILE_FLAG_NO_BUFFERING, который обходит диспетчер кэша. Programs can set a FILE_FLAG_NO_BUFFERING flag that bypasses Cache Manager. Когда SQL выполняет критически важные операции записи в базу данных, этот флаг устанавливается, чтобы гарантировать завершение транзакции непосредственно на диск. When SQL performs critical writes to a database, this flag is set to guarantee that the transaction is completed directly to disk. Например, некритическая запись в файлы журнала выполняет буферизованный ввод-вывод для повышения общей производительности. For example, non-critical writes to log files perform buffered I/O to improve overall performance. Сообщение о событии с кодом 50 никогда не происходит из-за небуферизованного ввода-вывода. An event ID 50 message never results from non-buffered I/O.

Читайте также:  Как сохранить настроенную тему для windows 10

Существует несколько различных источников для сообщения о событии с ИДЕНТИФИКАТОРом 50. There are several different sources for an event ID 50 message. Например, сообщение о событии с ИДЕНТИФИКАТОРом 50, зарегистрированное в источнике MRxSmb, возникает в случае проблемы с сетевым подключением с перенаправителя. For example, an event ID 50 message logged from a MRxSmb source occurs if there is a network connectivity problem with the redirector. Чтобы избежать неправильного выполнения действий по устранению неполадок, ознакомьтесь с сообщением о событии с кодом 50, чтобы убедиться в том, что оно относится к неполадке дискового ввода-вывода и что эта статья применима. To avoid performing incorrect troubleshooting steps, make sure to review the event ID 50 message to confirm that it refers to a disk I/O issue and that this article applies.

Сообщение с кодом события 50 аналогично событию с идентификатором 9 и сообщением Event с кодом 11. An event ID 50 message is similar to an event ID 9 and an event ID 11 message. Несмотря на то, что ошибка не так серьезна, как ошибка, обозначенная событием с ИДЕНТИФИКАТОРом 9, и сообщением Event с кодом 11, можно использовать те же методы устранения неполадок для сообщения с кодом события 50, что и для события с идентификатором 9, и сообщения события с кодом 11. Although the error is not as serious as the error indicated by the event ID 9 and an event ID 11 message, you can use the same troubleshooting techniques for a event ID 50 message as you do for an event ID 9 and an event ID 11 message. Однако следует помнить, что все в стеке может вызвать потерю, отложенные операции записи, такие как драйверы фильтров и драйверы мини-портов. However, remember that anything in the stack can cause lost-delay writes, such as filter drivers and mini-port drivers.

Вы можете использовать двоичные данные, связанные с любыми сопутствующими ошибками (обозначенными в сообщении об ошибке с кодом 9, 11, 51 или другими сообщениями), чтобы помочь вам в определении проблемы. You can use the binary data that is associated with any accompanying «DISK» error (indicated by an event ID 9, 11, 51 error message or other messages) to help you in identifying the problem.

Декодирование раздела данных сообщения о событии с ИДЕНТИФИКАТОРом 50 How to Decode the Data Section of an Event ID 50 Event Message

При декодировании раздела данных в примере сообщения о событии с ИДЕНТИФИКАТОРом 50, включенном в раздел «Summary», вы увидите, что попытка выполнить операцию записи завершилась неудачей, так как устройство занято и данные потеряны. When you decode the data section in the example of an event ID 50 message that is included in the «Summary» section, you see that the attempt to perform a write operation failed because the device was busy and the data was lost. В этом разделе описано, как декодировать это событие с кодом 50. This section describes how to decode this event ID 50 message.

В следующей таблице показано, что представляет каждое смещение этого сообщения: The following table describes what each offset of this message represents:

оффсетленгсвалуес OffsetLengthValues Длина Length Значения Values
0x00 0x00 2 2 Не используемые Not Used
0x02 0x02 2 2 Размер данных дампа = 0x0004 Dump Data Size = 0x0004
0x04 0x04 2 2 Число строк = 0x0002 Number of Strings = 0x0002
0x06 0x06 2 2 Смещение строк Offset to the strings
0x08 0x08 2 2 Категория событий Event Category
0x0c 0x0c 4 4 Код ошибки NTSTATUS = 0x80040032 = IO_LOST_DELAYED_WRITE NTSTATUS Error Code = 0x80040032 = IO_LOST_DELAYED_WRITE
0x10 0x10 8 8 Не используемые Not Used
0x18 0x18 8 8 Не используемые Not Used
0x20 0x20 8 8 Не используемые Not Used
0x28 0x28 4 4 Код ошибки состояния NT NT Status error code

Основные разделы для декодирования Key Sections to Decode

Код ошибки The Error Code

В примере в разделе «Сводка» код ошибки указан во второй строке. In the example in the «Summary» section, the error code is listed in the second line. Эта строка начинается с «0008:» и включает последние четыре байта в этой строке: 0008:00 00 00 00 32 00 04 80 в этом случае код ошибки — 0x80040032. This line starts with «0008:» and it includes the last four bytes in this line:0008: 00 00 00 00 32 00 04 80 In this case, the error code is 0x80040032. Следующий код является кодом ошибки 50 и одинаковым для всех сообщений Event ID 50: IO_LOST_DELAYED_WRITEWARNINGNote при преобразовании шестнадцатеричных данных в сообщение идентификатора события в код состояния Помните, что значения представлены в формате с прямым порядком байтов. The following code is the code for error 50, and it is the same for all event ID 50 messages: IO_LOST_DELAYED_WRITEWARNINGNote When you are converting the hexadecimal data in the event ID message to the status code, remember that the values are represented in the little-endian format.

Целевой диск The Target Disk

Диск, на который была предпринята попытка записи, можно найти с помощью символьной ссылки, указанной в разделе «Описание» сообщения Event ID, например: \Device\HarddiskVolume4. You can identify the disk that the write was being tried to by using the symbolic link that is listed to the drive in the «Description» section of the event ID message, for example: \Device\HarddiskVolume4.

Конечный код состояния The Final Status Code

Последний код состояния — это наиболее важный фрагмент информации в сообщении с кодом события 50. The final status code is the most important piece of information in an event ID 50 message. Это код ошибки, который возвращается при выполнении запроса ввода-вывода и является основным источником информации. This is the error code that is return when the I/O request was made, and it is the key source of information. В примере в разделе «Аннотация» окончательный код состояния указан в соответствии с 0x28, шестой строки, начинающейся с «0028:», и включает в эту строку только четыре октета: In the example in the «Summary» section, the final status code is listed at 0x28, the sixth line, that starts with «0028:» and includes the only four octets in this line:

В этом случае конечное состояние равно 0x80000011. Этот код состояния сопоставляется STATUS_DEVICE_BUSY и означает, что устройство в данный момент занято. In this case, the final status equals 0x80000011.This status code maps to STATUS_DEVICE_BUSY and implies that the device is currently busy.

При преобразовании шестнадцатеричных данных в сообщении с ИДЕНТИФИКАТОРом события 50 в код состояния Помните, что значения представлены в формате с прямым порядком байтов. When you are converting the hexadecimal data in the event ID 50 message to the status code, remember that the values are represented in the little-endian format. Поскольку код состояния является единственным интересующим вас сведениями, может быть проще просмотреть данные в формате «слова», а не в БАЙТах. Because the status code is the only piece of information that you are interested in, it may be easier to view the data in WORDS format instead of BYTES. В этом случае байты будут иметь правильный формат, и данные могут быть легко интерпретированы. If you do so, the bytes will be in the correct format and the data may be easier to interpret quickly.

Для этого щелкните слова в окне Свойства события . To do so, click Words in the Event Properties window. В представлении «слова данных» пример в разделе «симптомы» будет считаться следующим образом: данные: In the Data Words view, the example in the «Symptoms» section would read as follows: Data:

Список кодов состояния Windows NT см. в разделе NTSTATUS. H в пакете разработчиков программного обеспечения для Windows (SDK). To obtain a list of Windows NT status codes, see NTSTATUS.H in the Windows Software Developers Kit (SDK).

Как исправить синий экран смерти с кодом ошибки 0x00000050

Исключение 0х50 в среде Windows — довольно распространенное явление. Оно связано с неверной работой программ в привилегированном режиме, обращающимся к несуществующим адресам памяти.

Описание

Дружественным именем шестнадцатеричного обозначения ошибки 0x00000050 представляется PAGE_FAULT_IN_NONPAGED_AREA. Это наименование описывает ситуацию исключения, возникающую в результате обращения к дефектной памяти. Например, запрос был отправлен либо к неправильному адресу, либо к недавно освобожденной памяти.Стоп-ошибку 0х50 описывают четыре дополнительных параметра. Четвертый считается зарезервированным.

  1. Первый параметр сообщает о ссылке на адрес памяти, куда происходило обращение, но данный адрес оказался неверным.
  2. Второй параметр кодирует операцию, производимую над участком памяти: 0 —операция считывания данных; 1 — запись данных.
  3. Третий параметр кодирует адрес, который попытался сослаться на несуществующий адрес в памяти.
  4. Четвертый — зарезервирован.

Данный стоп-экран связан с работой драйверов в привилегированном режиме и характерен любой версии Windows. Если система определяет наименование драйвера, ответственного за выброс исключения, то обязательно прописывает его название при выбросе синего экрана.

Возможные причины

Причины возникновения такого рода исключения связаны с целым рядом типичных ситуаций:

  • Неправильная работа драйвера недавно установленного оборудования. Это также касается драйверов виртуальных устройств.
  • При использовании драйвер-паков и обновлении существующих версий драйверов устройств. Не забываем создавать критические точки для отката перед выполнением установки или обновления.
  • Часто появление ошибки связано с дефектной RAM, наличием дефектов у кэш-памяти второго уровня процессора. Также, ответственной за данную ситуацию может оказаться видеопамять графического ускорителя (видеокарты).
  • Стоп-экран 0х50 возникает в результате работы сбойных сервисов и антивирусных продуктов.
  • Синий экран с данной ошибкой возможен также по причине наличия дефектов на NTFS-томе.

Ярким зарегистрированным примером выброса PAGE_FAULT_IN_NONPAGED_AREA в Windows 10 является возникновение синего экрана в результате неправильной работы сервисов приложения uTorrent.

Другим ярким примером может стать неправильная работа драйвера AppleCharge.sys на платформе с системной платой от Gigabyte. Возможным виновником выброса синего экрана может стать atikmdag.sys, относящийся к файлам, поддерживающим работу видеокарт ATI Radeon.

Решения

  1. Так как PAGE_FAULT_IN_NONPAGED_AREA связывается с дефектами памяти, стоит осуществить проверку ОЗУ. Осуществим данную операцию с помощью встроенной в Windows утилиты, открыв оснастку администрирования панели управления и выбрав средство проверки памяти.

После выполнения теста, воспользуйтесь средством просмотра событий. В журнале событий находим события связанные с MemoryDiagnostics-Results. Также, есть смысл проверить ОЗУ таким средством как Memtest.

  • Если недавно в систему было добавлено новое устройство, попробуйте его отключить. Вполне возможно, что причиной синего экрана становится именно это оборудование. Протестируйте его согласно заявлений разработчика.
  • Для решения проблем с 0х00000050 разработчики Майкрософт выпустили специальные обновления. На веб-сайте Майкрософт выложен целый ряд таких обновлений под решение определенных проблем. Так, KB2867201 предоставляется для систем под управлением Windows 8 при исключениях вызываемых файлом storport.sys. KB2719594 применяют в случае систем на базе Server 2008, Windows 7 при генерации ошибки драйвером srvnet.sys.
  • Если участниками данного события оказались логические оболочки win32k.sys, ntfs.sys, hal.sys, попробуйте отключить файл подкачки. Перезагрузив систему, подождите некоторое время. Если ошибка не возникает, пробуем вновь включить файл подкачки.

    Читайте также:  Windows ошибки с правами пользователя
  • Оцените статью