Я знаю, что система Windows выйдет из строя со стоп-ошибкой и "синим экраном" для несколько общих причин, некоторые из которых могут быть:
Что меня интересует, так это то, что при изучении аварийного дампа (скажем, WinDBG) в дампе всегда будет указываться поток, вызвавший сбой, что позволяет исследовать стек для этого потока, предоставляя историю вызовов, которые привели к проверка ошибок и сбой. Просмотр этого стека дает подсказки относительно того, как предотвратить проблему в будущем (например, конкретный драйвер требует обновления и т. Д.).
Зная это, я задал себе следующий вопрос, который обнаруживает пробел в моих знаниях:
Что происходит при этих обстоятельствах? Есть ли у меня фундаментальное непонимание того, как ОС обрабатывает многоядерные / процессорные системы с точки зрения одновременного выполнения и доступа к памяти и оборудованию (IRQL и отложенные вызовы процедур (DPC) и т. Д.)?
Спасибо