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

Frequently Asked Questions по Windows XP. Часть 2

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


Страница 1...2...3...

Где мне найти драйвер для моей железки?

Первое, где надо начать поиски, это, конечно же, сайт производителя. Правда, драйвера написанного специально для XP может просто не существовать. В этом случае попробуйте использовать драйвер для Windows 2000, из за схожести W2k и XP есть хорошие шансы что этот драйвер подойдёт. Драйвер лучше ставить вручную, через Update Driver в Properties устройства (из закладки Hardware в System Properties), указав Install from the list of specific location. Если пустить это дело на самотёк, и доверить XP самостоятельно искать и устанавливать драйвер, то можно столкнуться с ситуацией, когда система не примет вполне работоспособный драйвер на том основании, что он не писался для XP, и не прошёл соответствующей сертификации. Сложнее, когда нет возможности ручной установки, и драйвер должен ставиться через программу установки, так называемый Wizard. В этом случае может ругаться как сам инсталлятор (мол, неправильная ОС), так и XP (мол, неправильный драйвер). В этом случае следует либо попытаться обмануть инсталлятор (в Properties - Compatibility файла или ярлыка). Если не охота каждый раз возиться с Compatibility, можете попробовать, в ветви реестра

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]

поменять два ключа "ProductName"="Microsoft Windows XP" и "CurrentBuildNumber"="2600" на "ProductName"="Microsoft Windows 2000" и "CurrentBuildNumber"="2195", хотя в этом случае могут возникнуть проблемы с драйверами предназначенными для XP.

Если ничего не поможет, можно попытаться поставить драйвер вручную. Для этого, сначала очистите временную папку, потом запустите инсталлятор, и когда он выкинет первое окно с вопросом, посмотрите содержимое временной папки. Очень возможно, что увидите в ней *.inf файлик и всё остальное необходимое для ручной инсталляции. Просто скопируйте это в надёжное место, и используйте впоследствии.

Если ни один из вышеприведённых советов не приведёт к желаемому результату, останется только бомбить письмами Technical Support производителя. Впрочем, с этого можно и начать.

Машина с ATX блоком питания не выключает питание самостоятельно.

Основным режимом работы для XP считается ACPI режим, и именно вокруг ACPI построено управление питанием. Прежде всего необходимо выяснить - работает ваша машина в ACPI режиме или нет. Для этого можно обратиться в System Properties, но выяснить и через Control Panel - Power Options. Кроме этого, в этом окне может присутствовать закладка APM. Если она есть, то надо убедиться что на параметре Enable Advanced Pоwer management support стоит галочка. Если ничего похожего нет, то может помочь установка NT Apm/Legacy Support. Для того чтобы про проверить установлена ли она, необходимо в Device Manager выбрать меню View - Show hidden Devices.

В списке добавившихся устройств вы должны увидеть NT Apm/Legacy Interface Node. Если его нет, то установите его через Add New Hardware Wizard. После этого, взгляните в Device Manager ещё раз. Если NT Apm/Legacy Interface Node функционирует нормально, а компьютер всё равно не выключается, то попробуйте по адресу HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> Windows NT -> CurrentVersion -> Winlogon выставить ключ PowerdownAfterShutdown равным. Если железо (ВСЁ железо) позволяет (строго соответствует требованиям стандарта) всё должно заработать. Вообще, причины неправильной работы ACPI могут быть самыми разными, и найти что именно мешает бывает совсем не просто.

Наиболее часто встречаются следующие причины:

Не соответствие материнской платы требованиям ACPI. Хорошо если проблема кроется только в BIOS, что решается его обновлением, но иногда встречается и аппаратная несовместимость.

Не соответствие требованиям ACPI какого-либо устройства или его драйвера. Опять же, хорошо если проблема только в неправильно написанном драйвере, тогда есть надежда что когда-нибудь будет написан нормальный драйвер, и всё заработает как следует. К сожалению, возможна ситуация когда несовместимость аппаратная.

Причиной сбоев в работе ACPI может быть и программное обеспечение установленное на компьютере. Причём проблемы могут вызывать самые различные программы, от программ для шифрования (вроде PGP), до программ для очистки реестра. Посоветовать можно использовать только протестированные и полностью совместимые с XP версии программ что, к сожалению, не всегда возможно. Кстати, несовместимость программного обеспечения может приводить не только к тому что компьютер не будет выключаться вообще, но и к тому что компьютер будет выключаться, но очень медленно (окно с надписью saving you settings может висеть 5, 10 или даже 30 минут).

Как получить поддержку функций управления питанием на SMP машинах?

Как уже упоминалось выше, спецификации APM не предусматривают существования многопроцессорных систем поэтому бесполезно даже искать закладку APM в Control Panel -> Power Options если в системе установлено многопроцессорное ядро. Единственный выход - это использовать ACPI Multiprocessor ядро. Однако, для этого вы должны иметь ACPI совместимую систему. Если ваша система не соответствует, можно попробовать обратиться к производителю вашей материнской платы за обновлённым BIOS, зачастую это решает проблему. Если же ваша система успешно проходит эти тесты, можно попробовать поменять ядро на ACPI multiprocessor.

НО, НЕ СТАВЬТЕ ACPI ядро на машины BIOS или железо которых не поддерживает его, в этом случае компьютер гарантировано перестанет загружаться, и придётся переставлять всю систему. Если же, всё-таки, решились на такой эксперимент, то, по крайней мере, обеспечьте себе возможность альтернативной загрузки с другим ядром. Про то, как это сделать, написано в этом FAQ. Впрочем, даже соответствие материнской платы спецификациям ACPI не гарантирует нормальную загрузку системы после замены ядра. Однозначного рецепта здесь нет, но если система после замены ядра доходит до этапа графической загрузки (это когда рисуется цветная картинка), то это означает что, скорее всего, ваша машина сможет работать в ACPI режиме. Но, скорее всего, придётся переустановить всю систему.

Кроме этого, даже если установка системы прошла удачно, это не гарантирует, что система будет полностью поддерживать ACPI (Hibernate, Stand-By, программирование Power button, и т.д.), более-менее уверенными вы можете быть только в том, что машина будет самостоятельно выключать питание. Для поддержки всего спектра возможностей ACPI необходима поддержка не только со стороны материнской платы, но и со стороны установленной на ней устройств и их драйверов. Например, поддержка Hibernate может пропасть после установки XP драйвера для Voodoo3, или Sound Blaster128. Список этот гораздо длиннее, так что ничему не удивляйтесь после установки ACPI ядра.

При работе полноэкранных Direct3D и OpenGL приложений, очень низкий refresh rate, как можно это исправить?

Сделать это можно, и связано это с тем КАК NT работает со своей графической подсистемой. Есть несколько способов. Если драйвера видеокарты позволяют, то делается это легко и красиво. На примере с референсными драйверами от nVidia, это делается так:

В архиве с драйверами есть файл nv4_displ.inf, а в нём раздел nv_SoftwareDeviceSettings. Ищите там раздел относящийся к вашей видеокарте, первая TNT, например, обозначается аббревиатурой NV4. В списке NV4_MODES просто удаляете ненужные значения. Например, оригинальная запись выглядит так:

HKR,, NV4_Modes, %REG_SZ_APPEND%, "16 640 480 60 70 72 75 85 100 120 0"

Приводим её в такой вид:

HKR,, NV4_Modes, %REG_SZ_APPEND%, "16 640 480 100 120 0"

И всё, теперь ваша видеокарта физически не сможет работать в разрешении 640*480 с глубиной цвета 16 бит с Refresh rate меньше, чем 100 герц в любых программах (Во всяком случае XP именно так и считает, поэтому будет использовать для Refresh Rate цифры, которые здесь указаны). После этого нужно всего лишь переустановить драйверы с измененным nv4_displ.inf.

Естественно, цифры можно ставить любые, даже нестандартные. Однако, здесь надо соблюдать осторожность, потому что существует возможность испортить монитор слишком высокой Refresh Rate либо после перезагрузки вы не увидите своего десктопа, вообще ничего. Эта методика подходит и для других драйверов не только от nVidia, например, SiS.

Однако, этот совет из не подходит для пользователей многих весьма популярных видеокарт, например таких как Voodoo, Matrox, или ATI. Однако, они тоже не хотят портить себе зрение смотря на 60 герцовую картинку в OpenGL, Direct3D, Glide или каких либо других приложениях. В этом случае, можно попытаться сказать XP, что ваш монитор не способен работать с refresh rate ниже той, что нам требуется.

Ничего не получается с hackmon.inf, чего делать?

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

HKEY_LOCAL_MACHINE \SYSTEM \ControlSet \Enum \DISPLAY

и дальше на две папки вглубь (их название зависит от установленного у вас монитора, поэтому я не привожу никакого). В этой папке должны быть несколько ключей, в том числе CalssGUID и Driver. Берём название драйвера (это будет 4D36E96E-E325-11CE-BFC1-08002BE10318, стандартное значение для мониторов), идём в начало реестра и делаем поиск на это значение. Оно встретится несколько раз, в

HKEY_LOCAL_MACHINE \SYSTEM \ControlSet \Control \Class \4D36E96E-E325-11CE-BFC1-08002BE10318 \0000

(или 000х, если в системе стояло несколько мониторов, тот что вам нужен прописывался в ключе Driver, в предыдущем абзаце), и его копиях, ControlSet00x. В этих разделах находим Modes, и видим папки для каждого из стандартных разрешений. Если не видим, то можно и самому добавить. В каждой из них имеется ключ Mode1, который и определяет значения Refresh Rate для этого разрешения. Ключ этот имеет значения "30-96, 60-120,+,+", или что-то похожее, где первые две цифры означают возможные значения вертикальной развёртки в килогерцах, а вторые две значение горизонтальной развёртки в герцах. Меняете на то, что по вашему мнению (а лучше по паспорту монитора) правильно, и наслаждаетесь результатом. Если результатом является пропадание разрешения из Display properties, значит много поставили. Так что придётся либо снизить частоту горизонтальной, либо повысить верхний предел вертикальной развёртки. Только не перестарайтесь.

Как поменять IRQ используемые различными устройствами? В их Properties в Devise manager чекбокс Use automatic Settings затемнён, и снять его не удаётся.

Наиболее "правильным" и простым методом является отключение поддержки ACPI во всех видах. Для этого необходимо поменять ядро на Standart PC (или MPS multiprocessor в случае с SMP системой). Не будет лишним отключить ACPI контролёр в Bios, раздел Power management. Кроме этого, может помочь выключение всех PnP функций в Bios. Даже если чекбокс Use Automatic Settings и останется затемнённым, система будет распределять прерывания так, как они распределились Bios'ом, поэтому переставив карту в другой слот, или переназначив ей IRQ в Bios (конечно, если Bios поддерживает такую функцию), можно добиться желаемого. Очевидным минусом этого метода является то, что с высокой долей вероятности машина перестанет самостоятельно выключаться.

В Standby режиме не выключаются вентиляторы на блоке питания и процессоре.

Переключите в BIOS, в разделе Power Management Suspend Mode из ST1 на ST3.
Но учтите, что выключение вентиляторов правильно работает только в ACPI режиме, поэтому первое, в чём необходимо убедиться, это что ваш компьютер работает под управлением ACPI ядра. Кроме этого, правильная работа stand by во многом зависит от правильности поддержки ACPI со стороны BIOS, поэтому есть целый ряд машин на которых добиться этого просто невозможно

После перезагрузки Windows XP не находит внешний модем. Что делать?

Если не включить внешний модем перед загрузкой XP, то система может и не найти его. Для того чтобы "разбудить" его, достаточно зайти в Device Manager, и произвести поиск новых устройств (Scan for hardware changes), модем будет найден и включен. Того же эффекта можно добиться программкой rescan.rar. Чтобы не приходилось этого делать каждый раз, когда вы забудете включить модем перед загрузкой системы, придётся поставить не PnP версию драйвера для этого модема. Поискать её можно в *.inf файле для этого модема (для чего достаточно указать при установке что драйвера будут ставится вручную, и что надо показывать все устройства, а не только совместимые). Если там такой версии нет, то придётся ограничиться установкой какого-либо стандартного драйвера, например Standart Modem. Если модем соответствует понятиям системы о стандартном модеме (а это так и есть с большинством модемов для COM порта), то всё будет славно работать, вне зависимости от того, сколько раз и когда модем включался и выключался.

Недостатком этого метода является то, что для Standart Modem нельзя включить некоторые полезные настройки, например аппаратную компрессию данных. С другой стороны, для него всё равно можно задать строку инициализации, и если изучить инструкцию к модему, то в этой строке можно включить и настроить всё что угодно.

Ещё одним вариантом решения проблем с внешними устройствами является использование режима Hibernate вместо полноценной перезагрузки системы.
Ну и, наконец, можно один и тот же модем установить два раза (можно даже оба раза PnP). Тогда, как ни странно, хоть система и не найдёт первый модем после загрузки, она сможет работать со вторым. Конечно же, второй можем должен быть указан в свойствах соединения.

Как заменить материнскую плату без переустановки системы?
Меняя материнскую плат учтите, что благодаря механизму активации XP система жёстко привязывается к железу, и замена слишком большого количества оборудования (сейчас это больше трёх. В ближайшем будущем Microsoft обещает увеличить это количество до 5) приведёт к тому, что система перестанет работать, и потребует активировать её ещё раз.

Что касается самой замены, то перед сменой платы в Device Manager в разделе IDE ATA/ATAPI Controllers поменяйте Bus Master IDE контролёр установленный там на Standart Dual Channel PCI IDE Controller. Если этого не сделать, то при загрузке на новой материнской плате система может не найти жёсткого диска, и Вы получите сообщение про inaccessible boot device.

CD-ROM постоянно сбрасывается в PIO режим, и не хочет выставляться обратно в UDMA.

Это происходит если XP обнаруживает, что устройство не стабильно работает в выбранном для него режиме. Определяется это по количеству ошибок чтения, получаемых с привода. Обычно это означает что привод находится в плохом состоянии, и про правде ему надо бы на покой. Но выбрасывать вроде бы работающий привод жалко. Благодаря механизмам контроля ошибок, многие такие приводы могут работать долго, счастливо и беспроблемно, несмотря на мнение XP о них. Единственное, что портит кровь их владельцам, это постоянные тормоза системы, из за PIO режима. У меня нет полной уверенности, как работает и чем управляется система контроля ошибок в XP, поэтому я не могу гарантировать что этот совет сработает во всех случаях. Но попробовать можно.

Для отключения режима отслеживания ошибок можно попробовать выставить в 0 ключ ErrorControl расположенный по адресу

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdfs\

Для того чтобы вернуть режим UDMA, лучше всего удалить и поставить заново IDE контролёр из Device Manager. Но можно вновь обратится к реестру. Параметры контролёра определяются в реестре, по адресу

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}

Внутри этой ветки находится 4 папки. В том числе и

0000 √ отвечает за сам контролёр.
0001 √ отвечает за Secondary IDE Chanell.
0002 √ отвечает за Primary IDE Chanell.

Выбираем папку которая отвечает за нужный нам канал, и заходим в неё. Каждому из установленных устройств, соответствуют по два ключа, MasteDeviceTimingModeAllowed и SlaveDeviceTimingModeAllowed (или UserMasteDeviceTimingModeAllowed и UserSlaveDeviceTimingModeAllowed, если режимы выбирались вручную), определяющие в каком максимальном режиме разрешается работать Master и Slave устройства, установленные на контролёре, и MasterDeviceTimingMode и SlaveDeviceTimingMode, которые определяют в каком режиме реально работают Slave и Master устройства. Для того чтобы разрешить использовать устройство в UDMA режиме, MasterDeviceTimingModeAllowed (или Slave..., зависит от того к чему диск подключен) должно иметь значение 0хffffffff. Если оно будет 0х0000001f, то устройство сможет работать только в PIO режиме. Убедившись что этот ключ стоит правильно, выставляем MasterDeviceTimingMode, определяя в каком режиме должен работать привод. Возможны следующие варианты (цифры в HEX):

0x10010 режим UDMA Mode 5 (ATA100).
0x8010 режим UDMA Mode 4 (ATA66).
0x2010 режимы UDMA Mode 2 (ATA33).
0x0410 режим Multi-Word DMA Mode 2 и PIO 4.

Кроме этого, UDMA Mode 4 можно включить 0xffff, а UDMA Mode 5 √ 0xfffff. Выставляйте нужное, и перезагружайтесь, диск должен перейти в требуемый режим.

Похожие публикации
Комментарии (0)

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

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





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

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

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

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

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





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