Цитата: "Алексей Гринь" отНу это-то да. Просто, ядро ещё может без спросу пристрелить или по просьбе другого процесса. Вот и приходится выкручиваться, чтобы различить эти случаи.
А всё равно получается, что убивает ОС, получив команду TerminateProcess
Цитата: "Алексей Гринь" отПервичный код обработки, конечно, выполняет ядро, а потом происходит переход непривилигированный режим и выполняется вызов зарегистированных обработчиков структурных исключений. В цепочке обработчиков всегда есть один, по умолчанию. Он тупо вызывает TerminateProcess (если я не ошибаюсь). Если других обработчиков нет, или они не отменяют вызов остальных, и таким образом очередь доходит до обработчика по умолчанию; процесс, выполняя его, вызывает TerminateProcess, чем и убивает себя. Примерно так.
Но обнаруживает ошибку (типа обращение к освобождённой памяти) и переключает выполнение кода (разворачивает стек, например) ведь ОС? Как это может делать сам процесс? То, что это происходит внутри контекста процесса - это понятно.
Цитата: "Алексей Гринь" отНет, именно процесс. Обработчики структурных исключений выполняются в контексте процесса, где возникло исключение, в том числе и обработчик по умолчанию.
Ну уж не сам процесс, а ОС.
Цитата: "myst" от
Процесс программы убивает себя.
Цитата: "Тася" отЧаще всего это ошибки разработчиков программы.
А почему программа может начать выполнять эти недопустимые для неё действия? Только по причине воздействия вирусной программы?
Цитата: "Тася" отПроцесс программы убивает себя.
И что конкретно происходит в системе после отправки отчёта?
Цитата: "Тася" отЧем помогает?
К счастью, помогает он мне по-дружески.
Цитата: myst от февраля 19, 2009, 14:39
Когда программа выполняет недопустимое действие (пытается писать или читать по адресу который писать или читать нельзя, в коде программы содержится операция, не поддерживаемая исполняющим её микропроцессором и т. п.)
Цитировать
Когда включен режим создания отчёта об ошибках, штатный отладчик «Доктор Ватсон» создаёт диагностический отчёт, который и предлагается отправить в Майкрософт.
Цитировать
Для обычного пользователя смысла в этом отчёте никакого нет. Поэтому, если нет намерения отправлять отчёт разработчикам, его можно выключить.
Страница создана за 0.053 сек. Запросов: 23.