Настройка и оптимизация операционных систем
Главная -> Windows XP -> Система

Технология выявления причин сбоев Windows XP

Напечатать страницу


Введение

Многие пользователи при появлении серьезных сбоев в Windows XP предпочитают ампутацию: форматирование диска и полную переустановку ОС. Однако столь простой и радикальный хирургический метод не годится, если в системе установлено и настроено много важных программ, переустановка которых невозможна или обойдется слишком дорогой ценой. В этом случае требуется глубокая диагностика Windows.

У каждого типа сбоя Windows XP своя собственная причина, а потому, хоть и известны вполне однозначные рецепты избавления от самых распространенных проблем, для устранения большинства «глюков» невозможно выработать какой-то универсальный метод «лечения». Конфигурация каждой операционной системы, программного обеспечения, драйверов и оборудования уникальна, и чаще всего выяснить причину возникшей проблемы возможно только тщательно препарируя железные и программные внутренности конкретного компьютера. Если сбой не сопровождает ОС прямо с момента ее установки, а появился в какой-то определенный момент (после установки очередной программы или драйвера, изменения настроек Windows, сбоя питания), то избавиться от него легко, достаточно удалить проблемное приложение, либо восстановить реестр или даже все содержимое жесткого диска из резервной копии. Помогут в этом не только стандартная System Restore, но и более интересные программы, например, Norton Ghost (www.symantec.com),Ashampoo Uninstaller (www.ashampoo.com), WinRescue XP (www.superwin.com). Разумеется, это возможно, если пользователь не брезговал профилактикой и регулярно пользовался подобными программами, что совсем не сложно, кстати говоря. Например, полный бекап системного NTFS-раздела объемом 10 Гб в Norton Ghost занимает всего минут 10 (неразумно отводить ОС весь объем диска).

Если же нет возможности ни восстановить систему «малой кровью», ни полностью ее переустановить, то придется самостоятельно искать причину сбоя. Для достижения успеха в столь неблагодарном и нудном деле рекомендуется следовать такой технологии:

Предварительный этап

  1. Перед началом диагностики сделайте резервную копию реестра, конфигурационных файлов или всей системы, чтобы не получить в результате экспериментов еще большие проблемы. Обязательно запоминайте все свои дальнейшие действия, чтобы в случае неполадок их можно было легко отменить.
  2. Удалите все временные файлы, очистите кэш браузера, Корзину, Журнал, очистите папку Program Files Internet Explorer Plugins с плагинами IE (для их восстановления сделайте резервные копии). Очистите папки, из которых производится автозапуск скриптов MS-Office (типа Documents and Settings ПОЛЬЗОВАТЕЛЬ Application Data Microsoft Excel Xlstart, Documents and Settings ПОЛЬЗОВАТЕЛЬ Application Data Microsoft Word Startup), удалите шаблон normal.dot, используемый MS-Office. Очистите папки Windows Downloaded Program Files, Documents and Settings ПОЛЬЗОВАТЕЛЬ NetHood, Documents and Settings ПОЛЬЗОВАТЕЛЬ PrintHood, Documents and Settings ПОЛЬЗОВАТЕЛЬ Recent. Удалите файлы autorun.inf со всех локальных дисков.
  3. Проверьте систему несколькими свежими антивирусами и программой Ad-Aware (www.lavasoft.de), просканируйте жесткий диск утилитами типа ScanDisk, Norton DiskDoctor (с обязательным включением тестирования записи). Проверьте системные файлы с помощью утилиты System File Checker (команда SFC /SCANNOW) и восстановите поврежденные библиотеки из дистрибутива Windows или Service Pack.
  4. Обновите систему: помимо последнего сервис-пака (если он уже установлен, переустановите) установите все свежие «заплатки» на сайте Windows Update (windowsupdate.microsoft.com, учтите только, что некоторые патчи сами могут быть источником проблем). Обновите (переустановите)Internet Explorer (www.microsoft.com/windows/ie/download/default.htm) и виртуальную машину JAVA от Microsoft (www.microsoft.com/java/vm/dl_vm40.htm). Обновите DirectX, используя для этого redist-дистрибутив (объем около 25—30 мегабайт, а в названии файла присутствует слово «REDIST»: DX90b_Redist.exe). Иногда оказывается полезным сначала удалить Internet Explorer или DirectX, а потом поставить его заново — для этого можно использовать утилиту XPLite (www.litepc.com).

Поиск готового решения

  1. Тщательно изучите документацию к сбойной программе или плате расширения, быть может, в ней имеются какие-то специальные указания. Посетите также сайт разработчика сбойной программы или устройства — возможно, служба техподдержки производителя знает о проблеме и предлагает загрузить какой-нибудь патч.
  2. Если сбой сопровождается сообщениями об ошибках (например, ошибками STOP на синем экране), то запишите их точное содержание и зайдите на сайт технической поддержки Microsoft (search.support.microsoft.com/search/?adv=1). На основе сообщения об ошибке необходимо сформулировать запрос для поисковой системы (для максимальной эффективности поиска попробуйте формулировать запрос несколькими разными способами). Найти решение в базе данных Microsoft — самый быстрый способ устранения сбоя. Если в базе Microsoft нет сведений о вашем сбое, то запустите специализированную утилиту поиска в Интернете, например, Copernic (www.copernic.com) или Search Plus (srchplus.chat.ru) и также попытайтесь найти в Сети и в технических конференциях UseNet материалы по схожим проблемам. Либо воспользуйтесь русскими и зарубежными поисковиками типа Yandex, Yahoo или Google.
  3. Учтите только, что если в вашей системе включен режим автоматической перезагрузки при сбоях, то сообщение «синего экрана смерти» отображаться не будет. Поэтому в меню Control Panel — System — Startup and Recovery — Settings заранее снимите флаг Automatically restart.
  4. Для получения максимальной информации о произошедшем сбое обратитесь также к системному журналу ошибок — Event Log (Computer Management — Event Viewer, «Управление компьютером» — «Просмотр событий»). Документация по большинству кодов событий Event ID присутствует на сайтах Microsoft Events and Errors Message Center (www.microsoft.com/technet/support/ee/ee_advanced.aspx) и www.eventid.net. Кое-что можно выжать из системного дебаггера Dr.Watson, которого можно вызвать из окна программы System Information.
  5. Включите в Windows XP режим отправки сообщений об ошибках в Microsoft: Control Panel — Advanced — Error reporting — Enable Error Reporting (Панель управления — Дополнительно — ????). Вы будете смеяться, но отмечены случаи, когда после отправки разработчикам сведений о произошедшем сбое, пользователю приходил ответ с конкретным решением проблемы.
  6. Загляните на сайты, посвященные всенародной борьбе со сбоями Windows, например на techadvice.com, jsiinc.com, mdgx.com,www.aumha.org,labmice.techtarget.com — на них вы найдете ссылки на статьи, посвященные устранению многих распространенных сбоев.
  7. Посетите популярные веб-конференции и конференции UseNet посвященные операционным системам, программному обеспечению и компьютерному оборудованию. Предельно подробно сформулировав описание сбоя своей системы (и не забыв указать ее версию!), указав точное содержание сообщения об ошибке и описав конфигурацию своей системы, попробуйте попросить помощи других пользователей — возможно, кто-то уже сталкивался с аналогичной проблемой и знает ее решение, либо может подсказать направление дальнейших поисков.

Проверка настроек

  1. В Панели Управления проверьте все настройки системы и оборудования — установите все параметры в положение «По умолчанию». В частности, отмените ограничения размера файла подкачки, проверьте, достаточно ли места на диске, а в настройках переменных окружения временно укажите более короткий путь к папке TEMP (например, C:TEMP). Даже в настройках клавиатуры установите по умолчанию английский язык. Проконтролируйте также все установки в опциях используемых приложений.
  2. Верните в исходное состояние настройки в реестре и в конфигурационных файлах user.ini, system.ini сделанные с помощью утилит-твикеров. Проверьте установки в файлах autoexec.nt, config.nt, _default.pif. Запустите поиск в реестре по слову «Policies» и удалите все параметры в найденных разделах (кроме отвечающих за политики электропитания разделов PowerCfg, а также раздела HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows CurrentVersion Internet Settings TemplatePolicies, содержащего шаблоны политик безопасности IE) — возможно, сбой — всего лишь следствие ограничения прав пользователя. Тщательно проверьте текущие настройки политик безопасности в Редакторе групповых политик Group Policy Editor (GPEDIT.MSC).
  3. Верните в исходное — Default — состояние настройки в BIOS, поэкспериментируйте с разными опциями CMOS Setup, например, отключите режим DMA для дисков, измените тайминги памяти, отключите все интегрированные устройства, включите «дыру» в районе 15 мегабайта памяти. Отключите в CMOS Setup все, что касается управления питанием, в том числе ACPI. Либо наоборот — включите все эти опции, если они отключены. Аналогично поэкспериментируйте с параметром PnP OS Installed и USB Legacy Support. Обновите BIOS. И откажитесь от разгона: разгон — главный враг Windows XP!

Система и программы

  1. Запустите утилиту msconfig.exe и отключите все программы из автозагрузки. Попробуйте также поэкспериментировать с режимом Selective Startup — возможно, некорректная запись затаилась в system.ini или win.ini, другом рудиментарном конфигурационном файле. С помощью msconfig удобно проверить и системные сервисы, например, сравнив список запущенных сервисов с другим ПК, на котором подобного сбоя не наблюдается. Хорошее описание назначения сервисов Windows XP, которое поможет узнать изначальный и рекомендованный статус их настройки в разных версиях Windows, вы найдете по адресу www.blackviper.com Попробуйте отключить ненужные сервисы, например, WEB Client, а также проверьте зависимости сервисов, используя оснастку «Сервисы».
  2. Попытайтесь вспомнить, после каких действий появился сбой. Удалите несколько программ и драйверов, которые устанавливались последними — возможно какая-то из них вызывает сбой системы или конфликтует с другими программами и оборудованием, вызывая их сбои. Удалите все программы, которые были созданы более двух лет назад и с тех пор не обновлялись. Удалите антивирусы и другой тесно интегрирующийся с системой софт. Обязательно используйте специализированный деинсталлятор типа Ashampoo Uninstaller, причем и при установке и при удалении программ — только так можно полностью очистить систему от всех следов удаляемой программы или драйвера! Кроме того, анализ лога деинсталлятора позволяет узнать, какие файлы на диске и какие параметры в реестре изменялись при установке программы — нередко для устранения сбоя достаточно изменить неверно измененный параметр в реестре. При переустановке программ и драйверов попробуйте не только самую свежую версию (обратите внимание, что к некоторым программам регулярно выходят патчи-обновления), но и более старую — нередко она оказывается более стабильной. Попробуйте переустановить сбойное приложение в другую директорию, с более коротким именем.
  3. Для устаревших программ попробуйте установить специальный режим совместимости. Для этого создайте ярлык к программе, войдите в его свойства и на вкладке «Совместимость» (Compatibility) в пункте «Запустить программу в режиме совместимости» (Run in emulation mode) выберите режим совместимости с другим типом Windows. Кроме того, используйте набор утилит Application Compatibility Toolkit (www.microsoft.com/windows/appcompatibility/default.mspx), предназначенный для значительного расширения возможностей и ручной настройки этого режима.
  4. Попробуйте запустить сбойное приложение под учетной записью администратора. Если программа работает только под ней, то из-под учетной записи Администратора найдите в ветви реестра
  5. HKEY_LOCAL_MACHINE SOFTWARE раздел с настройками нужной программы и щелкните на нем правой кнопкой мыши. Выберите в появившемся меню команду «Разрешения» («Permissions») и установите полный доступ на эту ветвь реестра для пользователя или группы пользователей, которым разрешается с ней работать. Найдите также в ветви HKEY_CURRENT_USER раздел, соответствующий сбойной программе и сделайте его экспорт в REG-файл. Войдите теперь в систему под именем обычного пользователя и импортируйте этот REG-файл обратно в реестр. Иногда избавиться от подобного сбоя можно, если удалить свою учетную запись (и весь профиль пользователя) и затем создать ее заново.
  6. Попробуйте найти и исправить ошибки в реестре с помощью программы типа Norton WinDoctor. Найденные ошибки следует исправлять только в ручном режиме, анализируя каждую из них. Для этого надо попробовать выяснить, к какой программе или системной настройке относится ошибочная запись в реестре, просмотрев в RegEdit ту ветвь, о которой сигнализирует WinDoctor — по названиям файлов, параметров или по прописанным путям несложно установить приложение, породившее ошибку. Попробуйте использовать и другие диагностические утилиты, например, такие как DirectX Diagnostic Tool из состава Windows, она осуществит проверку файлов DirectX, драйверов, настроек некоторых устройств. Некоторые простые сбои устраняет программа Tweak UI, для этого в ней предусмотрена вкладка «Repair».
  7. Некоторые проблемы Windows XP устраняются, если восстановить главную загрузочную запись жесткого диска (MBR) командой «fdisk /mbr» после запуска ПК с дискеты Windows 98 (это нужно для последующей перезаписи идентификатора диска), либо используя команды консоли восстановления «fixboot» и «fixmbr». Загрузите ПК с дискеты Windows 98/Me с поддержкой NTFS (для этого используйте программу NTFS for DOS Pro) или диска ERD Commander (www.winternals.com) и удалите файл PAGEFILE.SYS. ERD Commander, вообще говоря — прекрасная программа, являющаяся своего рода LiveCD для Windows XP. Она позволяет устранить множество проблем и получить доступ к настройкам ОС, даже если сама Windows не загружается в режиме защиты от сбоев. Проверьте наличие ошибок в boot.ini и текущие права доступа к файлам и папкам: группа пользователей «System» и «Administrators» должна иметь полные права доступа к корневой директории системного диска и к файлу виртуальной памяти PAGEFILE.SYS.
  8. Проследите в момент появления сбоя за различными системными событиями, запросами и обращениями к реестру с помощью специальных программ мониторинга. Анализируя обращения к реестру можно, например, определить, какие параметры из реестра запрашиваются программой непосредственно в момент возникновения сбоя — возможно, какой-то из них отсутствует или имеет некорректное значение. А с помощью анализа обращений к файлам легко понять, в каких файлах находятся настройки сбойной программы, а какие необходимые ей файлы отсутствуют. В этом помогут утилиты от компании SysInternals (www.sysinternals.com): Registry Monitor — анализ обращений к реестру, File Monitor — мониторинг обращений к файлам, DllView — информация о библиотеках, используемых текущими процессами, OpenList — сведения обо всех открытых файлах, PortMon — обращения к портам, TCPView — информация о соединениях по протоколу TCP. Отображение информации о всех запущенных программах лучше всего удается программе TaskInfo (www.iarsn.com). Она же покажет, сколько ресурсов центрального процессора потребляет каждое приложение. А выяснить причину затора, возникающего при загрузке, можно с помощью известной диагностической утилиты BootVis (www.microsoft.com/whdc/hwdev/platform/performance/fastboot/BootVis.mspx,однако Microsoft ее более не распространяет, поэтому пользуйтесь поиском). Проверьте также систему комплексным диагностически-информационным пакетом SiSoft Sandra или AIDA32 (www.aida32.hu/aida32.php).
  9. Удалите лишние шрифты, отключите все счетчики производительности, удостоверьтесь, что на диске отсутствуют папки и файлы с очень длинными именами или расширениями (220 знаков и более), не используйте в работе с программами очень длинные параметры командной строки (220 знаков и более).

Оборудование

  1. Обновите все драйверы всех устройств (или удалите и поставьте заново драйверы проблемного устройства, а также драйвер устройства, к которому оно подключено), в особенности — драйверы чипсета: Intel Chipset Software Installation Utility и Intel Application Accelerator (support.intel.com/support/chipsets/driver.htm) либо VIA-4-in-1 (http://www.viaarena.com/?PageID=66, плюс прочие драйверы и патчи от VIA, такие как VIA IRQ Routing Miniport Driver, VIA IDE Miniport driver и другие, в зависимости от конфигурации системы). Проверьте наличие специальных патчей и обновлений на сайтах производителей оборудования, а главное — материнской платы.
  2. Проверьте исправность оборудования, правильность установки перемычек на нем, протестируйте его с помощью таких утилит, как Memory Test, CPU Stability Test и им подобных. Проверьте всё, вплоть до батарейки, напряжения блока питания и качества крепления материнской платы — никаких спонтанных замыканий или ненадежных контактов нигде не должно быть!
  3. Временно замените все модули памяти — именно она является тем устройством, которое сбоит чаще всего. Если это невозможно, то попробуйте ограничить ее объем, например, первыми 64 мегабайтами. В Windows XP для этого удобно использовать утилиту MSCONFIG.EXE: параметр MAXMEM в файле boot.ini. Попробуйте более мощный блок питания, как ни странно, нехватка мощности очень часто является причиной сбоев Windows.
  4. Проверьте температуру и работоспособность устройств охлаждения всех компонентов системы, даже чипсета (на радиатор чипсета можно даже установить специальный вентилятор). Заземлите ПК, установите сетевой фильтр или источник бесперебойного питания. Проверьте качество телефонного кабеля, сетевого кабеля, электрической разводки.
  5. Удалите все дополнительные устройства из ПК (кроме жесткого диска и видеокарты, хотя, иногда помогает и замена видеокарты), даже внутренний динамик-пищалку, после чего в режиме защиты от сбоев, используя диалог «Свойства Системы» («System Properties») удалите их драйвера и посмотрите — не пропал ли сбой. Если пропал, то по очереди устанавливайте устройства обратно, каждый раз повторяя процедуру, обычно приводящую к появлению сообщения об ошибке — возможно, имеет место какой-то аппаратный конфликт и таким способом вы либо выявите его источник, либо система заново распределит ресурсы и сама его устранит.
  6. Установите проблемное устройство в другой PCI-слот, в свойствах системы и утилите System Information (Program Files Common Files Microsoft Shared MSInfo msinfo32.exe) проверьте отсутствие конфликтов. Очень хороша для получения сведений о системе программа SiSoftware Sandra. Если ACPI отключен, попробуйте переназначить вручную конфликтующие прерывания (или еще и другие ресурсы, например, каналы DMA или диапазоны I/O). Попробуйте заменить проблемное устройство на точно такое же, либо на устройство другой марки — возможно, просто виноват бракованный экземпляр или смена производителя платы расширения устранит конфликт. Для дисков попробуйте другой шлейф, вместо 80-жильного шлейфа попробуйте 40-жильный и наоборот, проверьте правильность установки перемычек Master/Slave, переставьте диск на другой шлейф, установите для него в CMOS Setup либо режим автоопределения, либо задайте его параметры явным образом, либо установите для него «NONE». Не подключайте на один шлейф с проблемным диском другие устройства.
  7. Загляните в свойства проблемного устройства — возможно, там имеются настройки, использование которых устранит сбой, например, для диска отключите или включите режим DMA. Если компьютер не загружается, то доступ к этим меню попытайтесь получить из Режима Защиты от Сбоев (Safe Mode).
  8. В случае проблем с драйверами загрузите ПК в режиме защиты от сбоев, в Диспетчере Устройств удалите проблемное устройство (а также все несуществующие в реальности принтеры и устройства, даже джойстики) и после загрузки ОС в обычном режиме установите самый свежий драйвер. Впрочем, иногда более старый драйвер оказывается и более стабильным, попробуйте разные версии. Учтите, что устранению сбоя иногда способствует использование вместо перезагрузки полного выключения ПК и последующего его включения через несколько минут обесточенного простоя. Если сбой имеет какое-то отношение к сети, то в свойствах Сети удалите все сетевые компоненты и после перезагрузки поставьте все необходимое заново. Удалите все принтеры, если с ними есть проблемы, и тоже после перезагрузки переустановите их драйвера. Удалите все драйверы, не сертифицированные для Windows XP, проверить подписи системных файлов поможет утилита File Signature Verification, вызываемая из окна программы System Information. Если драйвер установился неудачно, то используйте либо загрузку последней удачной конфигурации (вызывается в загрузочном меню Windows), либо в свойствах системы сделайте откат к предыдущей версии драйвера.

Дело плохо

  1. Переустановите Windows поверх предыдущей инсталляции, все файлы при этом восстановят свои исходные версии, однако при этом сохраняются основные установки в реестре, поэтому, если причина сбоя в неверных параметрах реестра, то такая переустановка, возможно, ничего не исправит. В ряде случаев можно непосредственно перед установкой из режима защиты от сбоев в диалоге «Свойства Системы» («System Properties») удалить все оборудование, чтобы Windows заново переустановила все драйвера. Попробуйте также разные диски с дистрибутивом ОС — возможно, исходный диск поврежден.
  2. Полностью стерев папки Windows, Program Files, System Volume Information и Recycler (либо переразбив и отформатировав диск), установите Windows «по-голому». Возможно, более работоспособной окажется Windows 2000 или Windows 98. Иногда требуется отформатировать диск специальной утилитой от производителя винчестера для полного его обнуления. В ряде случаев, например, после некорректной работы программ типа Partition Magic, для устранения сбоя необходимо разбить диск заново с помощью стандартного Fdisk.
Похожие публикации
Комментарии (0)

Комментариев нет.

Для того, чтобы оставить свой комментарий вам необходимо войти или зарегистрироваться на сайте.





Консультация специалиста

Консультант по Windows Если у вас есть вопрос по Windows или работе с ПК, вы можете задать его нашему консультанту.

Бесплатно и без регистрации!

Задать вопрос

Работа в нашей коменда
Опрос
Какая ОС вам больше нравится?





Результаты опросов
Разработка
  • Разработка сайта: Роман Чернышов