Некоторые аспекты управления питанием


Данная статья не является обзором нового продукта, серьезной аналитикой или репортажем с места события. Точнее всего ее жанр можно определить как «Хозяйке на заметку», так что многие пользователи не найдут в ней для себя ничего нового, а кому-то описанные в ней вещи покажутся слишком тривиальными для того, чтобы на их описание приходилось тратить время. Однако, как показала практика, подобные статьи нужны, поскольку позволяют снять немало на первый взгляд глупых, но отравляющих жизнь пользователя, вопросов. В нужности подобных заметок я уже убедился, когда разобрался со, скажем так, не всегда адекватным поведением популярного файлового менеджера Total Commander совместно с внешними USB-накопителями: статья написана почти три года назад, а благодарности за нее по почте мне приходят до сих пор (а опыт показывает, что, если уж человек не пожалел времени на то, чтобы сказать «Спасибо!» по почте, значит затронутый вопрос успел попортить ему немало крови). Поэтому я и решил написать нечто подобное :)

Идея управления питанием компьютера с клавиатуры не нова — в свое время мы уже наблюдали прекрасную ее реализацию в Apple Macintosh. Конечно же, Apple было проще — когда контроль за разработкой компьютера, периферийного оборудования и операционных систем осуществляется одной компанией, можно реализовать все, что угодно, причем наиболее качественным образом. В случае же куда более массовых IBM PC изначально о подобных выкрутасах вообще никто не подумал. Да и не мог подумать — достаточно примитивные блоки питания первых РС/ХТ/АТ и совместимых с ними машин понимали только один простой и грубый язык: тумблер-выключатель. Причем оригинальные компьютеры от самой IBM вообще были лишены столь привычной многим кнопки включения питания на лицевой поверхности корпуса — для включения/выключения компьютера необходимо было тянуться к задней части боковой стенки немаленького (ввиду особенностей того времени) настольного горизонтального корпуса. Стараниями производителей совместимого оборудования и просьбами пользователей, выключатель спереди в конце-концов появился. Однако представлял он собой все тот типовой механический выключатель (рубильник :)). О каком-либо более интеллектуальном управлении питанием оставалось только мечтать. Несмотря на рост сложности аппаратного обеспечения, несмотря на совершенство операционных систем, единственное, чего мы от них получили, так это умение выдавать на экран после завершения работы надпись «Теперь питание компьютера можно отключить», а дальше — как в каменном веке: щелк рубильником :)

Такое положение практически никого не удовлетворяло, так что на его исправление было потрачено немало сил при разработке стандарта АТХ. Напомню одно из главных отличий нового стандарта от старого — подобно прочей бытовой технике, компьютер теперь всегда оставался во включенном состоянии. Нет, конечно, сохранилась возможность выдернуть вилку из сетевой розетки, либо воспользоваться имеющимся на многих БП выключателем, но это перестало быть стандартным явлением. Чисто программным методом блок питания можно было перевести из рабочего в дежурный режим, когда обесточивалось большинство схем компьютера, почему многие так и продолжили считать это «выключением». Однако из дежурного низкопотребляющего режима блок питания можно было вывести точно также — простым сигналом с материнской платы или другого источника. Кнопка включения питания стала действительно нефиксируемой кнопкой, лишь замыкающей на короткое время пару контактов. Главное, что нас в данном случае интересует — «включение» блока питания радикально отделено от самого блока питания :) Если быть совершенно точным, то само по себе оно с ним связано — выход из дежурного режима осуществляется подачей сигнала через разъем, соединяющий БП и материнскую плату (те, кто занимается самостоятельной сборкой, модернизацией или ремонтом компьютеров хорошо знают механизм проверки БП стандарта АТХ на работоспособность — просто замыкаем чем-нибудь черный и зеленый провод в АТХ-разъеме: если вентилятор начал крутиться, значит БП запуститься способен, и компьютер не включается не из-за того, что последний сгорел :)). Однако подать данный сигнал материнская плата может не только из-за того, что мы нажали кнопку включения питания на лицевой поверхности системного блока, или, что тоже самое, просто коротнули чем-нибудь типа отвертки два штырька на плате, к которым при сборке данная кнопка и подключается. Например, стало возможным включать компьютер по таймеру — в BIOS настраиваем время включения и все. Очень удобно для офиса: настраиваем время включения на 8:57, и пришедшему на рабочее место в 9:00 сотруднику уже не нужно самому нажимать кнопку и ждать, пока пройдет процедура самотестирования при включении и т.п.: он просто вводит имя и пароль и начинает работу. А еще можно настроить включение компьютера по активности сетевого адаптера (если последний и материнская плата поддерживают функцию WOL) — опять же, удобно в офисах для централизованного включения компьютеров в сети, хотя и дома может пригодиться. Во времена достаточно активного использования FTN-сетей (FidoNet и иже с ними) популярностью пользовался и двойник данной функции, по имени WOR (Wake On Ring). Последняя, при наличии, позволяла нодам или владельцам BBS не держать компьютеры включенными всю ночь — компьютер мог включиться или выйти из спячки просто по входящему звонку (выход из спящего режима более актуален, поскольку время включения достаточно велико, чтобы звонок оказался пропущен; обработается только последующий, чего, впрочем, тоже иногда вполне достаточно). Ну и, разумеется, сетевыми устройствами или модемами список периферии, способной «включить» компьютер, не ограничивался — в роли таковых могли выступать совершенно обычные мыши и клавиатуры. Сначала мы займемся включением, благо оно появилось чуть раньше, потом поговорим о выключении. Но для начала я несколько отвлекусь от периферийных устройств и немного раскрою еще одну тему, связанную с управлением питания в АТХ-БП — раз уж у нас сегодня рубрика «хозяйке на заметку», будет вполне полезным осветить этот вопрос здесь.

АТХ и обработка пропадания питания

Стандартный блок питания формата АТ бы, как я уже сказал, устройством весьма тупым, понимающим только управление при помощи механического «рубильника» или выдергивание вилки из розетки. Что произойдет, если питание в сети пропадет, а компьютер включен (то самое «выдергивание вилки»)? Поскольку БП остается во включенном состоянии, после возобновления подачи тока компьютер включится. Пока все хорошо. Но вот если электрическая сеть, мягко говоря, не совсем удовлетворяет нормам качества, подобные отключения/возобновления могут идти сериями. В результате чего компьютер будет включаться и выключаться несколько раз подряд, причем, возможно, за достаточно короткий промежуток времени. Всем знакомым с электротехникой хотя бы на бытовом уровне хорошо известно, что горящая лампочка способна гореть долго и счастливо — лампочки практически всегда перегорают в момент включения или выключения :) Аналогичный случай имеем и здесь, только еще более неприятный — компьютерные комплектующие по сложности значительно превосходят лампу накаливания. Центральный процессор от такой пляски святого Витта в электросети, скорее всего, не сгорит, а вот материнская плата может. Да и винчестер «запилить» по такой методике не так уж и сложно. В общем, ничего хорошего в итоге мы не имеем. Еще хорошо, что АТ-блоки успели исчезнуть из истории давно — конструктивные особенности многих (если не всех) плат на nForce2 таковы, что при выключении в момент процедуры POST на них зачастую попросту «слетал» BIOS, так что нужно было тащить перепрошивать флэшку.

Переход к АТХ позволил решить и эту проблему. Во-первых, блок питания теперь не обязан включаться по-умолчанию при восстановлении подачи электроэнергии, во-вторых, материнская плата даже в случае выключенного компьютера теперь «знает» о том, что питание пропадало (о чем однозначно свидетельствует отсутствие в течение определенного времени дежурного напряжения). Таким образом, «плохие» компьютеры теперь просто не включаются при возобновлении подачи энергии, что уже лучше, чем в случае АТ, «хорошие» могут вести себя что так, что эдак, а «идеальные» материнские платы позволяют гибко управлять ситуацией. «Копать» нужно в BIOS Setup, соответствующий пункт настройки (название может зависеть от версии BIOS и т.п.; чаще всего это «Restore On AC Power Loss») может в идеале принимать три значения (опять же — их названия могут и меняться):

Disable
В данном случае после пропадания питание не будет восстанавливаться
Always
Если питание пропадало, то компьютер будет включен, причем даже если он был выключен на тот момент
Last Status
Полная эмуляция АТ — если был включен, то включится, если нет, то останется выключенным

Когда варианта выбора всего два, вторым является «Enable». В зависимости от выбора производителя, он может вести себя двояко. Либо как «Last Status», либо как «Always» — это надо проверять. Вариант «Always» кажется надуманным, поскольку зачем включать выключенный компьютер? Однако в некоторых случаях он вполне может оказаться полезным — если компьютер не является банальной игровой приставкой, а работает как управляющий центр цифрового дома, например. Включившись после пропадания питания, он может выполнить необходимые программы по настройке прочих приборов, которые могли и сбойнуть из-за пропадания тока в сети. Или даже хотя бы просто послать вам SMS на мобильный — дескать «Хозяин! У нас тут электричество отключали» :) «Last Status» удобен для тех случаев, когда компьютер остается «жить своей жизнью» сутками или более, особенно хорошо это проделывать в паре с ИБП, включающимся после пропадания питания, ну или просто в случае качественной электросети. А первый вариант хорош для тех, кто качеством электропитания похвастаться не может, но «бесперебойник» пока еще по каким-либо причинам не купил. Выключение компьютера в неурочный момент не самое приятное, что может случиться, но так, по крайней мере, после появления тока можно выждать некоторое время, дабы убедиться, что проблема устранена надолго, а потом уже включать недешевую технику (особенно стоит сие учесть еще сохранившимся владельцам плат на упомянутом nForce2).

А теперь вернемся к основной теме нашего повествования.

Включение компьютера — особенности и подводные камни

Как я уже писал выше, в случае АТХ сигнал на включение блока питания может быть подан не только с кнопки «включения», но и многими другими способами. В самом примитивном случае можно было бы поступить просто — при поступлении любого сигнала о нажатии кнопки на клавиатуре в дежурном режиме включаться. Впрочем, примитивные способы тем и плохи, что они примитивные и не учитывают многих особенностей реальной жизни. В данном случае мы могли бы легко столкнуться с такой ситуацией — по офису прошлась уборщица вечером после ухода сотрудников, и всю ночь все компьютеры простояли включенными :) Поэтому производители предпочли подойти к вопросу более творчески.

Некоторые вообще не сразу принялись за освоение новых возможностей, попросту питая периферию от «обычной» линии +5 В. Собственно, вот оно первое условие возможности включения по сигналу с клавиатуры или мыши — соответствующие порты должны быть запитаны от линии дежурного питания: все остальные в дежурном режиме обесточены, а обесточенная клавиатура или мышь, естественно, нажатия клавиши не заметит. У этого условия есть интересный побочный эффект, с которым столкнулась немалая часть покупателей первых оптических мышей, в которые производители, дабы выделить свою продукцию, одно время в массовом порядке устанавливали светодиоды, подсвечивающие заднюю часть мыши (обычно там располагается логотип — делаем вставочку прозрачной и получаем весьма эффектное зрелище). Одно только плохо — многие к тем временам еще не успели привыкнуть к тому, что компьютер в АТХ-корпусе в нормальном состоянии выключенным не бывает, так что, помнится, все форумы были завалены недоуменными сообщениями, типа «почему мышь светится при выключенном компьютере?». Причем в случае PS/2, а вот подключение ее к USB в то время данную дополнительную «подсветку» позволяло убрать, но об этом мы позже поговорим.

Но, допустим, известно, что на данной плате питание на порты может подаваться, а мышь «не светится» (либо клавиатура тоже, если на ней, как это иногда в последнее время бывает, своя подсветка, за исключением стандартных индикаторов есть). Разумеется, в этом случае включить компьютер можно будет только с кнопки на системном блоке, а что делать, если хочется задействовать для этого клавиатуру или мышь? Для начала следует поискать на материнской плате специальный джампер, который выбирает, от какой линии будут питаться PS/2-порты (обычно недалеко от них он и расположен). Как правило, у него всего два варианта выбора — +5V и +5VSB, причем по-умолчанию на подавляющем большинстве плат выбрано первое, что заставляет питаться порты от «обычной» линии БП. Для включения компьютера с клавиатуры/мыши нам нужен второй вариант. После этого на порты PS/2 будет подаваться напряжение по дежурной линии питания, т.е. и при «выключенном» компьютере, что позволит мыши и клавиатуре реагировать на действия пользователя и в таком состоянии.

Кстати — если оно вам не нужно, но, как описано выше, раздражает включенная при «выключенном» компьютере мышь своим свечением, искать нужно тот же джампер. Только алгоритм действий, естественно, обратный :) Ну, разумеется, если найдете — на некоторых (особенно старых) материнских платах вопрос, по какой линии питать порты, был вне компетенции пользователя.

Допустим, с этим разобрались, а компьютер все равно не включается. Значит, нужно лезть в BIOS Setup. С мышью все просто — если материнская плата поддерживает включение компьютера с ее помощью, то для этого нужно нажимать любую кнопку, так что в BIOS для мыши настройка простая — Enable/Disable. Впрочем, встречается она относительно редко – не все производители вообще стали это реализовывать. В случае клавиатур же все гораздо сложнее. Впрочем, и в ее случае бывает столь же простой вариант, но не стоит ожидать, что выбор пункта Enable заставит компьютер включаться от нажатия любой клавиши — обычно в данном случае кнопку питания начинает эмулировать пробел. Чаще же встречается более сложный вариант выбора — нам предлагают определить, какая именно клавиша или сочетание клавиш (нередко, например, это Ctrl-Esc) будут использоваться для включения компьютера, или полностью отключить данную возможность. К сожалению, стандартов в этой области нет, так что полезно попробовать различные варианты. В крайнем случае, почитать таки в конце-концов документацию — руководство пользователя недаром придумано :)

Однако бывает и такое, что все условия, вроде бы, соблюдены, а включить компьютер с клавиатуры не удается. Так вот — к сожалению, это нормально. Почему — обсудим чуть позднее.

«Проклятие» ACPI-кнопок

После триумфального шествия Windows по компьютерам пользователей, компания Microsoft оказалась законодателем мод не только в области операционных систем, но и в плане периферийного оборудования. Причем произошло это совсем не благодаря каким-либо выдающимся качествам мышей и клавиатур самой компании — многие модели весьма неплохи, но на захват максимальной доли рынка не претендуют. Дело в том, что, разрабатывая «стандартные» системные драйверы для периферии, компания смогла направлять весь рынок туда, куда считала нужным. Именно с этим связан расцвет мультимедийных клавиатур в последнее время — модели с расширенной функциональностью были практически всегда, однако ранее компаниям приходилось затрачивать немалое количество ресурсов на разработку адекватного программного обеспечения для того, чтобы новые возможности можно было использовать. Но как только Microsoft занялась поддержкой некоторого их набора, задача существенно упростилась. Фактически сейчас нет никаких сложностей с помещением на клавиатуру пары десятков дополнительных кнопок — достаточно только следовать «магистральной линии» и все: кнопки управления громкостью, мультимедийными проигрывателями, программами-обозревателями Интернет и т.п. уже поддерживаются современными версиями Windows. Специализированные клавиатурные менеджеры способны обеспечить лучшую реализацию их работы, но необходимыми уже не являются.

А началось все буквально с двух «Windows»-кнопок (реально трех, но две идентичны) во времена появления Windows 95. Одна из них предназначена для открытия меню «Пуск» и некоторого количества общих клавиатурных комбинаций, вторая — контекстного меню текущего окна. Привыкли к ним не все сразу, однако достаточно быстро, так что господствовавшие более семи лет 101-клавишные клавиатуры очень быстро превратились в 104-клавишные.

Вот второй шаг, прямо относящийся к теме нашей сегодняшней статьи, оказался уже не столь удачным. Намерения при внедрении на клавиатуры до трех ACPI-кнопок (Power, Sleep и Wake Up) путем их поддержки средствами управления питанием Windows 98 были вполне благими. В самом деле — если уж у нас появилась возможность включать компьютер с клавиатуры, то почему бы не выполнять с нее все действия по управлению питанием? Тем более, что это за разброд и шатания с включением вообще? Один компьютер включается пробелом, другой — Ctrl-Esc; не пора ли и для этого ввести специальную кнопку, дабы пользователь не путался? В общем, задумка хорошая. Но вот реализация... не всегда. Дело в том, что, если в случае предыдущих кнопок четко было указано и их назначение, и месторасположение, то в данном случае ограничились первым — а дальше уже пускай производители клавиатур думают, как им будет лучше это все делать. Проблем не было или почти не было с мультимедийными клавиатурами — там дополнительных кнопок и без того куча, так что ACPI-кнопки (в полном или сокращенном наборе — можно же и двумя обойтись, и даже одним Power) реализовывались где-то в этой общей куче, на удалении от основных блоков, и никому не мешали. А даже если и могли помешать, то некоторые менеджеры мультимедийных клавиатур (Cherry KeyM@n, например) умели их отключать или перенастраивать. Хуже ситуация была с «почти стандартными» 108-клавишными клавиатурами, где всю эту тройку реализовывали в виде стандартных же клавиш, причем чаще, чем в половине случаев либо в виде ряда непосредственно под блоком редактирования, либо над, либо, в лучшем случае, в одном ряду с функциональными клавишами, сместив вниз PrtSc, Scroll Lock и Pause/Break. Первый вариант был просто ужасен, поскольку в этом случае случайные нажатия на данные клавиши происходили сплошь и рядом, второй — плох, поскольку данная неприятность случалась реже, но все-таки была вполне вероятной, а третий... В принципе, терпим, хотя и подобное изменение некогда стандартного расположения клавиш удобства работы не добавляло. Причем и некоторые мультимедийные клавиатуры (особенно недорогие модели) начали делать на базе 107-клавишных клавиатур «Windows 98» (так их любили одно время в прайс-листах обзывать) со всеми вытекающими последствиями.

Радости пользователям все это не добавляло. Ну, представьте — редактируете вы какой-то большой документ, допустим. Долго редактируете, устали уже... А тут неверное движение руки, и компьютер отправляется в спячку или вообще норовит выключиться. Хорошо хоть программы «научились» при необходимости что-либо сохранить в документах сообщать об этом пользователю даже если их пыталась закрыть сама система, идя на перезагрузку, но ведь не всем приложениям таковое требуется, поскольку не все используются именно для редактирования документов (если вы потратите часок-другой на поиск какого-нибудь файла в сети, и удобно расположитесь его почитать, легче вам не будет от того, что после включения компьютера его можно будет снова найти и промотать к нужному месту).

Такой вот неучтенный заранее «пустячок» привел к тому, что рассматриваться эти кнопки стали не как нечто удобное и полезное, а как какая-то вредная гадость. Впрочем, нередко оно таковым и оказывалось. Методы борьбы первое время применялись в основном варварские — вплоть до вскрытия клавиатуры и изолирования соответствующих дорожек, дабы мешающиеся кнопки отключить раз и навсегда. И безвозвратно :) Жестоко, но работает. Самое смешное, что подобные методы борьбы против производителей клавиатур некоторые пользователи применяют до сих пор, хотя проблема была полностью решена достаточно давно — как только вышла Windows XP. Дело в том, что при создании данной версии ОС компания учла пожелания пользователей и внедрила пусть достаточно грубое, но хоть какое-то средство управления кнопками управления питанием компьютера. К сожалению, данная особенность пробежала и мимо авторов первых обзоров о новой операционной системе, и мимо составителей большинства FAQ, так что о ней до сих пор (!) не все знают. Что ж — настало время убрать это позорное «белое пятно».

Откройте апплет «Электропитание» «Панели управления». Выберите вкладку «Дополнительно». Именно с ее помощью можно настраивать поведение кнопок управления питанием. Замечу, что их наличие и количество система определяет корректно.

Вот это скриншот с рабочей машины, где на клавиатуре есть кнопки «Power» и «Sleep».

А это с домашней, где на клавиатуре есть только «Power». Точно такой же, кстати, вы увидите и при использовании клавиатуры без ACPI-клавиш — «Power» на клавиатуре и на системном блоке настраивается одинаково, поскольку с точки зрения системы это одно и тоже. При полном наборе клавиш (т.е. если их все три присутствует), выпадающих списков будет тоже ровно три. Возможные действия для всех одинаковые: вообще отключить кнопку, завершить работу, перейти в ждущий режим, либо вывести на экран специальное меню, появляющееся при выборе пункта «Выключить компьютер» в меню «Пуск». Небогато, но все необходимое есть. Для более тонкой настройки рекомендую использовать дополнительное программное обеспечение. Правда не все производители мультимедийных клавиатур дают настраивать эти кнопки (в частности, в Logitech SetPoint вы такой возможности не отыщите), зато «альтернативные» менеджеры большого почтения к ACPI-клавишам не испытывают, считая их равноправными с остальными дополнительными кнопками (чем они, по большому счету, и являются). Ну а для того, чтобы просто отключить кнопки или заставить их вызывать меню, а не сразу рваться выключать питание, достаточно и штатных средств системы.

Внедрение USB как способ запутать ситуацию

Windows 98 принесла в мир компьютерной периферии не только поддержку кнопок управления питания — более существенным нововведением являлась также поддержка универсальной последовательной шины USB (кой-какие шаги в данном направлении были сделаны еще в Windows 95 OSR2.1, но под управлением этой системы можно заставить работать не всякое USB-устройство, да и в розницу OSR2 официально не поставлялась). Замечу, что тогда же и компания Apple начала отказываться от некогда стандартного для мышей и клавиатур интерфейса ADB (да и прочих своих относительно «нестандартных» заморочек) в пользу USB, так что у производителей устройств вода появилась возможность выпускать универсальные мыши и клавиатуры, пригодные для обеих распространенных десктопных платформ. И занялись они этим весьма активно. Впрочем, порты PS/2 сопротивлялись еще долго, так что на большинстве современных материнских плат они все еще присутствуют, хотя вот на последних моделях на базе чипсета Intel P35 можно найти только PS/2-порт для клавиатуры, но уже нет мышиного. А в ноутбуках так эти порты «скончались» уже несколько лет назад. Переход от специализированных интерфейсов для мышей, клавиатур, игровых устройств, принтеров, сканеров, модемов и прочей периферии к одному универсальному USB можно было бы только приветствовать. Вот только в свете обсуждаемой нами сегодня темы основное, что он принес, это очередные проблемы.

Первое время функционирование USB-мышей и клавиатур было возможно вообще только после загрузки операционной системы, имеющей соответствующую поддержку — даже настройки BIOS изменить было нельзя. Чуть позднее все BIOS’описатели данную проблему, впрочем, решили, внедрив поддержку HID прямо на уровне своих прошивок. Но осталась главная проблема, а именно питание. Одно дело вешать на слабенькую дежурную линию PS/2-порты, куда кроме мышей и клавиатур ничего подключать не положено (хотя клавиатурный порт нередко использовался для подпитки внешних винчестеров, но пользовались ими тогда только более-менее «подкованные» энтузиасты, которые свои проблемы решить могли), другое дело взгромоздить туда порты USB, через которые питание может даже какой-нибудь сканер или ВЖД потребовать. К тому же, последних еще и достаточно много — это в чипсетах десятилетней давности было всего два порта (столько же, сколько и PS/2), потом их стало четыре, шесть, восемь... современные чипсеты вообще уже нередко поддерживают 10-12 портов USB. Если поделить на все это великолепие то количество электричества, которое выдается по дежурной линии, вообще никто работать не сможет :) Поэтому производители материнских плат пошли по трем путям.

Одни вообще не поддерживали возможность питания портов USB дежурной линией. Первое время в эту группу попадали вообще практически все платы, позднее она начала уменьшаться, однако до сих пор встречаются даже среди топовых плат модели, где питание данной шины возможно исключительно от «стандартной» линии +5 В. Разумеется, если такая стоит в компьютере, то включить его с USB-клавиатуры не удастся ни под каким соусом. А вот с PS/2 — нередко пожалуйста.

Другие попробовали поступить так же, как с PS/2 — поставить один джампер, который переключал обычную и дежурную линию на все порты. Ничего хорошего из этого, естественно, выйти не могло, так что сейчас этот подход уже никем не применяется.

Третьи предпочли наиболее правильный и удобный вариант — выбор источника питания осуществлялся джампером, но не одним на всех, а по одному для каждой пары портов. Иногда для каждой, иногда выбор предоставлялся лишь для части. Так, например, я сталкивался с платами, где питание с дежурной линии можно было включить только для USB-портов на задней панели платы, но не для тех, которые подключаются выносными планками. Видел и обратный вариант — когда как раз порты на панели питались только от обычных +5 В всегда, хотя, по-моему, данный вариант кривоват с точки зрения логики — многие эти порты вообще не подключают, благо не ко всем платам (особенно бюджетным) в комплекте можно найти необходимое количество «выкидышей». И наиболее грамотное решение — когда количество джамперов составляет ровно половину от числа портов, т.е. выбор доступен для любой пары. В этом случае, как правило проблем никаких. Причем не только с включением — многие зарядные устройства для беспроводных мышей, например, питаются только от порта USB, так что если он запитан не по дежурной линии, заряжать аккумуляторы мыши ночью (или в другое время, когда компьютер выключен) просто не удастся.

Не стоит только забывать, что выбор осуществляется одновременно для пары портов. Так что имеет смысл оставлять дежурное питание только для той пары, к которой подключены мышь и клавиатура — как я уже говорил, дежурная линия достаточно слаба, так что с питанием по ней какого-нибудь внешнего винчестера могут быть проблемы. Если же у вас к USB подключено лишь одно устройство ввода, а второе «висит» на PS/2, то второй порт вообще лучше оставить свободным — во избежание проблем с питанием подключенного к нему устройства.

Какой из вариантов применяется в вашей конкретной материнской плате — опять же, читайте инструкцию. Люди не зря на ее написание время тратили все-таки :)

Должно работать, но не хочет

К сожалению, как я уже говорил, ситуация, когда все необходимые условия вроде бы соблюдены, но все равно ничего не получается, является нормальной. Пока, по крайней мере — очень может быть, что со временем производители сумеют избавиться от всех «детских болезней». Во всяком случае, вероятность этого есть. Пусть и далеко не 100% — когда клавиатуру делает одна фирма, блок питания вторая, а материнскую плату третья, шероховатости в плане совместимости различных компонентов друг с другом будут всегда.

Итак, какие основные «неустойчивые» проблемы бывают? Прежде всего учтите, что включение компьютера при помощи беспроводного набора практически никогда невозможно. Не то чтоб оно было вообще теоретически невозможным — просто большинство ресиверов в последнее время стали чересчур «умными». Да и клавиатуры с мышами становятся такими же в целях экономии электроэнергии – все большее количество периферийных устройств переходит с однонаправленного на двунаправленный интерфейс. Соответственно, при выключении компьютера впадает в настолько глубокую «спячку», что проснуться способно лишь получив сигнал о том, что компьютер опять включен, игнорируя любые нажатия на клавиши и т.п. Но даже если комплект «обычный», коих пока большинство, все равно радоваться рано — современные ресиверы «не любят» оставаться на связи при выключенном компьютере, и наличие на порту питания их не спасает.

А в случае проводных устройств все проблемы так или иначе связаны именно с питанием, благо им больше взяться неоткуда. Как я уже говорил, дежурная линия достаточно слабая, если на нее навесить много компонент, может и не выдержать. При этом устройство работать будет в те моменты, когда компьютер включен (благо в данном случае эта линия несколько разгружается за счет того, что с нее «снимают» часть компонентов материнской платы), а вот включаться компьютер не будет. Например, такое часто бывало на первом этапе внедрения PS/2, когда многие пользователи в целях экономии использовали старые АТ-клавиатуры со специальным переходником. Переходник был абсолютно пассивным, но вот все подобные вещи несколько миллиампер «воруют», а именно их могло и не хватать в конкретном случае. Впрочем, сегодня такие переходники уже экзотика, но вот двухстандартные клавиатуры, обычно комплектующиеся переходником USB-PS/2, нет. Последний аналогичные проблемы вызвать теоретически тоже способен. На практике с этим мне сталкиваться не доводилось, ввиду того, что энергопотребление современных периферийных устройств в несколько раз ниже, чем у «старых» АТ-клавиатур, так что им и того, что достается, чаще всего «хватает», однако «не встречал проблем» не означает «проблем не бывает», так что это тоже стоит иметь ввиду.

И еще одно тонкое место, появившееся после перехода клавиатур на USB. Дело в том, что производители все чаще размещают в них пассивные USB-хабы, которые тоже являются весьма активными потребителями электроэнергии. Особенно относительно старые их модели, не умеющие динамически подстраивать питание на портах, так что запрашивающие у компьютера всегда по максимуму. В данном случае клавиатура легко способна требовать 300-400 мА, что ей могут и не обеспечить.

Кстати и модели без хаба могут иметь достаточно высокое энергопотребление. Даже совсем простые — без подсветки и большого количества дополнительных клавиш. Хоть я выше и сказал, что энергопотребление современных моделей весьма невысоко (действительно — очень часто речь идет уже вообще о 10 мА или меньше), но бывают и исключения, на которые вполне можно «нарваться».

В общем, как мы видим, проблем с электропитанием может быть много разных. Может не быть — тут уже многое зависит от блока питания. Поэтому не стоит удивляться, когда по отзывам пользователей компьютеры на конкретной модели материнской платы с клавиатуры включаются, а у вас в аналогичной ситуации ничего не получается. Про то, что не все БП «одинаково полезны» многие забывают, а зря. Причем цена и «брендовость» блока, к сожалению, не всегда позволяют что-либо предполагать — требования к дежурной линии электропитания согласно стандартам не такие уж и жесткие. Некоторые производители положенные характеристики превышают, хоть и знают, что такое поведение вряд ли даст им дополнительные очки в каком-нибудь тестировании, большинство хорошо если требования стандарта выполняют в точности. Ситуация, конечно, не здоровая, но пока ей никто плотно не занялся.

Итого

Как я и предупреждал в начале, никаких особых откровений данная статья в себе не несет — так, некоторое количество известной информации плюс личный опыт, накопившийся за последнее десятилетие (с тех пор, когда внедрение АТХ начало позволять более-менее гибко «играться» с управлением питанием) :) Если вы все это и так знали и со всеми описанными ситуациями сталкивались, не стоит тратить время на ругань по адресу автора — как я уже сказал, даже не все знают о возможности средствами ОС отключить ACPI-кнопки на клавиатуре, не говоря уже о более тонких моментах, которые мало где описывались ;)




Дополнительно

Некоторые аспекты управления питанием

Некоторые аспекты управления питанием

Данная статья не является обзором нового продукта, серьезной аналитикой или репортажем с места события. Точнее всего ее жанр можно определить как «Хозяйке на заметку», так что многие пользователи не найдут в ней для себя ничего нового, а кому-то описанные в ней вещи покажутся слишком тривиальными для того, чтобы на их описание приходилось тратить время. Однако, как показала практика, подобные статьи нужны, поскольку позволяют снять немало на первый взгляд глупых, но отравляющих жизнь пользователя, вопросов. В нужности подобных заметок я уже убедился, когда разобрался со, скажем так, не всегда адекватным поведением популярного файлового менеджера Total Commander совместно с внешними USB-накопителями: статья написана почти три года назад, а благодарности за нее по почте мне приходят до сих пор (а опыт показывает, что, если уж человек не пожалел времени на то, чтобы сказать «Спасибо!» по почте, значит затронутый вопрос успел попортить ему немало крови). Поэтому я и решил написать нечто подобное :)

Идея управления питанием компьютера с клавиатуры не нова — в свое время мы уже наблюдали прекрасную ее реализацию в Apple Macintosh. Конечно же, Apple было проще — когда контроль за разработкой компьютера, периферийного оборудования и операционных систем осуществляется одной компанией, можно реализовать все, что угодно, причем наиболее качественным образом. В случае же куда более массовых IBM PC изначально о подобных выкрутасах вообще никто не подумал. Да и не мог подумать — достаточно примитивные блоки питания первых РС/ХТ/АТ и совместимых с ними машин понимали только один простой и грубый язык: тумблер-выключатель. Причем оригинальные компьютеры от самой IBM вообще были лишены столь привычной многим кнопки включения питания на лицевой поверхности корпуса — для включения/выключения компьютера необходимо было тянуться к задней части боковой стенки немаленького (ввиду особенностей того времени) настольного горизонтального корпуса. Стараниями производителей совместимого оборудования и просьбами пользователей, выключатель спереди в конце-концов появился. Однако представлял он собой все тот типовой механический выключатель (рубильник :)). О каком-либо более интеллектуальном управлении питанием оставалось только мечтать. Несмотря на рост сложности аппаратного обеспечения, несмотря на совершенство операционных систем, единственное, чего мы от них получили, так это умение выдавать на экран после завершения работы надпись «Теперь питание компьютера можно отключить», а дальше — как в каменном веке: щелк рубильником :)

Такое положение практически никого не удовлетворяло, так что на его исправление было потрачено немало сил при разработке стандарта АТХ. Напомню одно из главных отличий нового стандарта от старого — подобно прочей бытовой технике, компьютер теперь всегда оставался во включенном состоянии. Нет, конечно, сохранилась возможность выдернуть вилку из сетевой розетки, либо воспользоваться имеющимся на многих БП выключателем, но это перестало быть стандартным явлением. Чисто программным методом блок питания можно было перевести из рабочего в дежурный режим, когда обесточивалось большинство схем компьютера, почему многие так и продолжили считать это «выключением». Однако из дежурного низкопотребляющего режима блок питания можно было вывести точно также — простым сигналом с материнской платы или другого источника. Кнопка включения питания стала действительно нефиксируемой кнопкой, лишь замыкающей на короткое время пару контактов. Главное, что нас в данном случае интересует — «включение» блока питания радикально отделено от самого блока питания :) Если быть совершенно точным, то само по себе оно с ним связано — выход из дежурного режима осуществляется подачей сигнала через разъем, соединяющий БП и материнскую плату (те, кто занимается самостоятельной сборкой, модернизацией или ремонтом компьютеров хорошо знают механизм проверки БП стандарта АТХ на работоспособность — просто замыкаем чем-нибудь черный и зеленый провод в АТХ-разъеме: если вентилятор начал крутиться, значит БП запуститься способен, и компьютер не включается не из-за того, что последний сгорел :)). Однако подать данный сигнал материнская плата может не только из-за того, что мы нажали кнопку включения питания на лицевой поверхности системного блока, или, что тоже самое, просто коротнули чем-нибудь типа отвертки два штырька на плате, к которым при сборке данная кнопка и подключается. Например, стало возможным включать компьютер по таймеру — в BIOS настраиваем время включения и все. Очень удобно для офиса: настраиваем время включения на 8:57, и пришедшему на рабочее место в 9:00 сотруднику уже не нужно самому нажимать кнопку и ждать, пока пройдет процедура самотестирования при включении и т.п.: он просто вводит имя и пароль и начинает работу. А еще можно настроить включение компьютера по активности сетевого адаптера (если последний и материнская плата поддерживают функцию WOL) — опять же, удобно в офисах для централизованного включения компьютеров в сети, хотя и дома может пригодиться. Во времена достаточно активного использования FTN-сетей (FidoNet и иже с ними) популярностью пользовался и двойник данной функции, по имени WOR (Wake On Ring). Последняя, при наличии, позволяла нодам или владельцам BBS не держать компьютеры включенными всю ночь — компьютер мог включиться или выйти из спячки просто по входящему звонку (выход из спящего режима более актуален, поскольку время включения достаточно велико, чтобы звонок оказался пропущен; обработается только последующий, чего, впрочем, тоже иногда вполне достаточно). Ну и, разумеется, сетевыми устройствами или модемами список периферии, способной «включить» компьютер, не ограничивался — в роли таковых могли выступать совершенно обычные мыши и клавиатуры. Сначала мы займемся включением, благо оно появилось чуть раньше, потом поговорим о выключении. Но для начала я несколько отвлекусь от периферийных устройств и немного раскрою еще одну тему, связанную с управлением питания в АТХ-БП — раз уж у нас сегодня рубрика «хозяйке на заметку», будет вполне полезным осветить этот вопрос здесь.

АТХ и обработка пропадания питания

Стандартный блок питания формата АТ бы, как я уже сказал, устройством весьма тупым, понимающим только управление при помощи механического «рубильника» или выдергивание вилки из розетки. Что произойдет, если питание в сети пропадет, а компьютер включен (то самое «выдергивание вилки»)? Поскольку БП остается во включенном состоянии, после возобновления подачи тока компьютер включится. Пока все хорошо. Но вот если электрическая сеть, мягко говоря, не совсем удовлетворяет нормам качества, подобные отключения/возобновления могут идти сериями. В результате чего компьютер будет включаться и выключаться несколько раз подряд, причем, возможно, за достаточно короткий промежуток времени. Всем знакомым с электротехникой хотя бы на бытовом уровне хорошо известно, что горящая лампочка способна гореть долго и счастливо — лампочки практически всегда перегорают в момент включения или выключения :) Аналогичный случай имеем и здесь, только еще более неприятный — компьютерные комплектующие по сложности значительно превосходят лампу накаливания. Центральный процессор от такой пляски святого Витта в электросети, скорее всего, не сгорит, а вот материнская плата может. Да и винчестер «запилить» по такой методике не так уж и сложно. В общем, ничего хорошего в итоге мы не имеем. Еще хорошо, что АТ-блоки успели исчезнуть из истории давно — конструктивные особенности многих (если не всех) плат на nForce2 таковы, что при выключении в момент процедуры POST на них зачастую попросту «слетал» BIOS, так что нужно было тащить перепрошивать флэшку.

Переход к АТХ позволил решить и эту проблему. Во-первых, блок питания теперь не обязан включаться по-умолчанию при восстановлении подачи электроэнергии, во-вторых, материнская плата даже в случае выключенного компьютера теперь «знает» о том, что питание пропадало (о чем однозначно свидетельствует отсутствие в течение определенного времени дежурного напряжения). Таким образом, «плохие» компьютеры теперь просто не включаются при возобновлении подачи энергии, что уже лучше, чем в случае АТ, «хорошие» могут вести себя что так, что эдак, а «идеальные» материнские платы позволяют гибко управлять ситуацией. «Копать» нужно в BIOS Setup, соответствующий пункт настройки (название может зависеть от версии BIOS и т.п.; чаще всего это «Restore On AC Power Loss») может в идеале принимать три значения (опять же — их названия могут и меняться):

Disable
В данном случае после пропадания питание не будет восстанавливаться
Always
Если питание пропадало, то компьютер будет включен, причем даже если он был выключен на тот момент
Last Status
Полная эмуляция АТ — если был включен, то включится, если нет, то останется выключенным

Когда варианта выбора всего два, вторым является «Enable». В зависимости от выбора производителя, он может вести себя двояко. Либо как «Last Status», либо как «Always» — это надо проверять. Вариант «Always» кажется надуманным, поскольку зачем включать выключенный компьютер? Однако в некоторых случаях он вполне может оказаться полезным — если компьютер не является банальной игровой приставкой, а работает как управляющий центр цифрового дома, например. Включившись после пропадания питания, он может выполнить необходимые программы по настройке прочих приборов, которые могли и сбойнуть из-за пропадания тока в сети. Или даже хотя бы просто послать вам SMS на мобильный — дескать «Хозяин! У нас тут электричество отключали» :) «Last Status» удобен для тех случаев, когда компьютер остается «жить своей жизнью» сутками или более, особенно хорошо это проделывать в паре с ИБП, включающимся после пропадания питания, ну или просто в случае качественной электросети. А первый вариант хорош для тех, кто качеством электропитания похвастаться не может, но «бесперебойник» пока еще по каким-либо причинам не купил. Выключение компьютера в неурочный момент не самое приятное, что может случиться, но так, по крайней мере, после появления тока можно выждать некоторое время, дабы убедиться, что проблема устранена надолго, а потом уже включать недешевую технику (особенно стоит сие учесть еще сохранившимся владельцам плат на упомянутом nForce2).

А теперь вернемся к основной теме нашего повествования.

Включение компьютера — особенности и подводные камни

Как я уже писал выше, в случае АТХ сигнал на включение блока питания может быть подан не только с кнопки «включения», но и многими другими способами. В самом примитивном случае можно было бы поступить просто — при поступлении любого сигнала о нажатии кнопки на клавиатуре в дежурном режиме включаться. Впрочем, примитивные способы тем и плохи, что они примитивные и не учитывают многих особенностей реальной жизни. В данном случае мы могли бы легко столкнуться с такой ситуацией — по офису прошлась уборщица вечером после ухода сотрудников, и всю ночь все компьютеры простояли включенными :) Поэтому производители предпочли подойти к вопросу более творчески.

Некоторые вообще не сразу принялись за освоение новых возможностей, попросту питая периферию от «обычной» линии +5 В. Собственно, вот оно первое условие возможности включения по сигналу с клавиатуры или мыши — соответствующие порты должны быть запитаны от линии дежурного питания: все остальные в дежурном режиме обесточены, а обесточенная клавиатура или мышь, естественно, нажатия клавиши не заметит. У этого условия есть интересный побочный эффект, с которым столкнулась немалая часть покупателей первых оптических мышей, в которые производители, дабы выделить свою продукцию, одно время в массовом порядке устанавливали светодиоды, подсвечивающие заднюю часть мыши (обычно там располагается логотип — делаем вставочку прозрачной и получаем весьма эффектное зрелище). Одно только плохо — многие к тем временам еще не успели привыкнуть к тому, что компьютер в АТХ-корпусе в нормальном состоянии выключенным не бывает, так что, помнится, все форумы были завалены недоуменными сообщениями, типа «почему мышь светится при выключенном компьютере?». Причем в случае PS/2, а вот подключение ее к USB в то время данную дополнительную «подсветку» позволяло убрать, но об этом мы позже поговорим.

Но, допустим, известно, что на данной плате питание на порты может подаваться, а мышь «не светится» (либо клавиатура тоже, если на ней, как это иногда в последнее время бывает, своя подсветка, за исключением стандартных индикаторов есть). Разумеется, в этом случае включить компьютер можно будет только с кнопки на системном блоке, а что делать, если хочется задействовать для этого клавиатуру или мышь? Для начала следует поискать на материнской плате специальный джампер, который выбирает, от какой линии будут питаться PS/2-порты (обычно недалеко от них он и расположен). Как правило, у него всего два варианта выбора — +5V и +5VSB, причем по-умолчанию на подавляющем большинстве плат выбрано первое, что заставляет питаться порты от «обычной» линии БП. Для включения компьютера с клавиатуры/мыши нам нужен второй вариант. После этого на порты PS/2 будет подаваться напряжение по дежурной линии питания, т.е. и при «выключенном» компьютере, что позволит мыши и клавиатуре реагировать на действия пользователя и в таком состоянии.

Кстати — если оно вам не нужно, но, как описано выше, раздражает включенная при «выключенном» компьютере мышь своим свечением, искать нужно тот же джампер. Только алгоритм действий, естественно, обратный :) Ну, разумеется, если найдете — на некоторых (особенно старых) материнских платах вопрос, по какой линии питать порты, был вне компетенции пользователя.

Допустим, с этим разобрались, а компьютер все равно не включается. Значит, нужно лезть в BIOS Setup. С мышью все просто — если материнская плата поддерживает включение компьютера с ее помощью, то для этого нужно нажимать любую кнопку, так что в BIOS для мыши настройка простая — Enable/Disable. Впрочем, встречается она относительно редко – не все производители вообще стали это реализовывать. В случае клавиатур же все гораздо сложнее. Впрочем, и в ее случае бывает столь же простой вариант, но не стоит ожидать, что выбор пункта Enable заставит компьютер включаться от нажатия любой клавиши — обычно в данном случае кнопку питания начинает эмулировать пробел. Чаще же встречается более сложный вариант выбора — нам предлагают определить, какая именно клавиша или сочетание клавиш (нередко, например, это Ctrl-Esc) будут использоваться для включения компьютера, или полностью отключить данную возможность. К сожалению, стандартов в этой области нет, так что полезно попробовать различные варианты. В крайнем случае, почитать таки в конце-концов документацию — руководство пользователя недаром придумано :)

Однако бывает и такое, что все условия, вроде бы, соблюдены, а включить компьютер с клавиатуры не удается. Так вот — к сожалению, это нормально. Почему — обсудим чуть позднее.

«Проклятие» ACPI-кнопок

После триумфального шествия Windows по компьютерам пользователей, компания Microsoft оказалась законодателем мод не только в области операционных систем, но и в плане периферийного оборудования. Причем произошло это совсем не благодаря каким-либо выдающимся качествам мышей и клавиатур самой компании — многие модели весьма неплохи, но на захват максимальной доли рынка не претендуют. Дело в том, что, разрабатывая «стандартные» системные драйверы для периферии, компания смогла направлять весь рынок туда, куда считала нужным. Именно с этим связан расцвет мультимедийных клавиатур в последнее время — модели с расширенной функциональностью были практически всегда, однако ранее компаниям приходилось затрачивать немалое количество ресурсов на разработку адекватного программного обеспечения для того, чтобы новые возможности можно было использовать. Но как только Microsoft занялась поддержкой некоторого их набора, задача существенно упростилась. Фактически сейчас нет никаких сложностей с помещением на клавиатуру пары десятков дополнительных кнопок — достаточно только следовать «магистральной линии» и все: кнопки управления громкостью, мультимедийными проигрывателями, программами-обозревателями Интернет и т.п. уже поддерживаются современными версиями Windows. Специализированные клавиатурные менеджеры способны обеспечить лучшую реализацию их работы, но необходимыми уже не являются.

А началось все буквально с двух «Windows»-кнопок (реально трех, но две идентичны) во времена появления Windows 95. Одна из них предназначена для открытия меню «Пуск» и некоторого количества общих клавиатурных комбинаций, вторая — контекстного меню текущего окна. Привыкли к ним не все сразу, однако достаточно быстро, так что господствовавшие более семи лет 101-клавишные клавиатуры очень быстро превратились в 104-клавишные.

Вот второй шаг, прямо относящийся к теме нашей сегодняшней статьи, оказался уже не столь удачным. Намерения при внедрении на клавиатуры до трех ACPI-кнопок (Power, Sleep и Wake Up) путем их поддержки средствами управления питанием Windows 98 были вполне благими. В самом деле — если уж у нас появилась возможность включать компьютер с клавиатуры, то почему бы не выполнять с нее все действия по управлению питанием? Тем более, что это за разброд и шатания с включением вообще? Один компьютер включается пробелом, другой — Ctrl-Esc; не пора ли и для этого ввести специальную кнопку, дабы пользователь не путался? В общем, задумка хорошая. Но вот реализация... не всегда. Дело в том, что, если в случае предыдущих кнопок четко было указано и их назначение, и месторасположение, то в данном случае ограничились первым — а дальше уже пускай производители клавиатур думают, как им будет лучше это все делать. Проблем не было или почти не было с мультимедийными клавиатурами — там дополнительных кнопок и без того куча, так что ACPI-кнопки (в полном или сокращенном наборе — можно же и двумя обойтись, и даже одним Power) реализовывались где-то в этой общей куче, на удалении от основных блоков, и никому не мешали. А даже если и могли помешать, то некоторые менеджеры мультимедийных клавиатур (Cherry KeyM@n, например) умели их отключать или перенастраивать. Хуже ситуация была с «почти стандартными» 108-клавишными клавиатурами, где всю эту тройку реализовывали в виде стандартных же клавиш, причем чаще, чем в половине случаев либо в виде ряда непосредственно под блоком редактирования, либо над, либо, в лучшем случае, в одном ряду с функциональными клавишами, сместив вниз PrtSc, Scroll Lock и Pause/Break. Первый вариант был просто ужасен, поскольку в этом случае случайные нажатия на данные клавиши происходили сплошь и рядом, второй — плох, поскольку данная неприятность случалась реже, но все-таки была вполне вероятной, а третий... В принципе, терпим, хотя и подобное изменение некогда стандартного расположения клавиш удобства работы не добавляло. Причем и некоторые мультимедийные клавиатуры (особенно недорогие модели) начали делать на базе 107-клавишных клавиатур «Windows 98» (так их любили одно время в прайс-листах обзывать) со всеми вытекающими последствиями.

Радости пользователям все это не добавляло. Ну, представьте — редактируете вы какой-то большой документ, допустим. Долго редактируете, устали уже... А тут неверное движение руки, и компьютер отправляется в спячку или вообще норовит выключиться. Хорошо хоть программы «научились» при необходимости что-либо сохранить в документах сообщать об этом пользователю даже если их пыталась закрыть сама система, идя на перезагрузку, но ведь не всем приложениям таковое требуется, поскольку не все используются именно для редактирования документов (если вы потратите часок-другой на поиск какого-нибудь файла в сети, и удобно расположитесь его почитать, легче вам не будет от того, что после включения компьютера его можно будет снова найти и промотать к нужному месту).

Такой вот неучтенный заранее «пустячок» привел к тому, что рассматриваться эти кнопки стали не как нечто удобное и полезное, а как какая-то вредная гадость. Впрочем, нередко оно таковым и оказывалось. Методы борьбы первое время применялись в основном варварские — вплоть до вскрытия клавиатуры и изолирования соответствующих дорожек, дабы мешающиеся кнопки отключить раз и навсегда. И безвозвратно :) Жестоко, но работает. Самое смешное, что подобные методы борьбы против производителей клавиатур некоторые пользователи применяют до сих пор, хотя проблема была полностью решена достаточно давно — как только вышла Windows XP. Дело в том, что при создании данной версии ОС компания учла пожелания пользователей и внедрила пусть достаточно грубое, но хоть какое-то средство управления кнопками управления питанием компьютера. К сожалению, данная особенность пробежала и мимо авторов первых обзоров о новой операционной системе, и мимо составителей большинства FAQ, так что о ней до сих пор (!) не все знают. Что ж — настало время убрать это позорное «белое пятно».

Откройте апплет «Электропитание» «Панели управления». Выберите вкладку «Дополнительно». Именно с ее помощью можно настраивать поведение кнопок управления питанием. Замечу, что их наличие и количество система определяет корректно.

Вот это скриншот с рабочей машины, где на клавиатуре есть кнопки «Power» и «Sleep».

А это с домашней, где на клавиатуре есть только «Power». Точно такой же, кстати, вы увидите и при использовании клавиатуры без ACPI-клавиш — «Power» на клавиатуре и на системном блоке настраивается одинаково, поскольку с точки зрения системы это одно и тоже. При полном наборе клавиш (т.е. если их все три присутствует), выпадающих списков будет тоже ровно три. Возможные действия для всех одинаковые: вообще отключить кнопку, завершить работу, перейти в ждущий режим, либо вывести на экран специальное меню, появляющееся при выборе пункта «Выключить компьютер» в меню «Пуск». Небогато, но все необходимое есть. Для более тонкой настройки рекомендую использовать дополнительное программное обеспечение. Правда не все производители мультимедийных клавиатур дают настраивать эти кнопки (в частности, в Logitech SetPoint вы такой возможности не отыщите), зато «альтернативные» менеджеры большого почтения к ACPI-клавишам не испытывают, считая их равноправными с остальными дополнительными кнопками (чем они, по большому счету, и являются). Ну а для того, чтобы просто отключить кнопки или заставить их вызывать меню, а не сразу рваться выключать питание, достаточно и штатных средств системы.

Внедрение USB как способ запутать ситуацию

Windows 98 принесла в мир компьютерной периферии не только поддержку кнопок управления питания — более существенным нововведением являлась также поддержка универсальной последовательной шины USB (кой-какие шаги в данном направлении были сделаны еще в Windows 95 OSR2.1, но под управлением этой системы можно заставить работать не всякое USB-устройство, да и в розницу OSR2 официально не поставлялась). Замечу, что тогда же и компания Apple начала отказываться от некогда стандартного для мышей и клавиатур интерфейса ADB (да и прочих своих относительно «нестандартных» заморочек) в пользу USB, так что у производителей устройств вода появилась возможность выпускать универсальные мыши и клавиатуры, пригодные для обеих распространенных десктопных платформ. И занялись они этим весьма активно. Впрочем, порты PS/2 сопротивлялись еще долго, так что на большинстве современных материнских плат они все еще присутствуют, хотя вот на последних моделях на базе чипсета Intel P35 можно найти только PS/2-порт для клавиатуры, но уже нет мышиного. А в ноутбуках так эти порты «скончались» уже несколько лет назад. Переход от специализированных интерфейсов для мышей, клавиатур, игровых устройств, принтеров, сканеров, модемов и прочей периферии к одному универсальному USB можно было бы только приветствовать. Вот только в свете обсуждаемой нами сегодня темы основное, что он принес, это очередные проблемы.

Первое время функционирование USB-мышей и клавиатур было возможно вообще только после загрузки операционной системы, имеющей соответствующую поддержку — даже настройки BIOS изменить было нельзя. Чуть позднее все BIOS’описатели данную проблему, впрочем, решили, внедрив поддержку HID прямо на уровне своих прошивок. Но осталась главная проблема, а именно питание. Одно дело вешать на слабенькую дежурную линию PS/2-порты, куда кроме мышей и клавиатур ничего подключать не положено (хотя клавиатурный порт нередко использовался для подпитки внешних винчестеров, но пользовались ими тогда только более-менее «подкованные» энтузиасты, которые свои проблемы решить могли), другое дело взгромоздить туда порты USB, через которые питание может даже какой-нибудь сканер или ВЖД потребовать. К тому же, последних еще и достаточно много — это в чипсетах десятилетней давности было всего два порта (столько же, сколько и PS/2), потом их стало четыре, шесть, восемь... современные чипсеты вообще уже нередко поддерживают 10-12 портов USB. Если поделить на все это великолепие то количество электричества, которое выдается по дежурной линии, вообще никто работать не сможет :) Поэтому производители материнских плат пошли по трем путям.

Одни вообще не поддерживали возможность питания портов USB дежурной линией. Первое время в эту группу попадали вообще практически все платы, позднее она начала уменьшаться, однако до сих пор встречаются даже среди топовых плат модели, где питание данной шины возможно исключительно от «стандартной» линии +5 В. Разумеется, если такая стоит в компьютере, то включить его с USB-клавиатуры не удастся ни под каким соусом. А вот с PS/2 — нередко пожалуйста.

Другие попробовали поступить так же, как с PS/2 — поставить один джампер, который переключал обычную и дежурную линию на все порты. Ничего хорошего из этого, естественно, выйти не могло, так что сейчас этот подход уже никем не применяется.

Третьи предпочли наиболее правильный и удобный вариант — выбор источника питания осуществлялся джампером, но не одним на всех, а по одному для каждой пары портов. Иногда для каждой, иногда выбор предоставлялся лишь для части. Так, например, я сталкивался с платами, где питание с дежурной линии можно было включить только для USB-портов на задней панели платы, но не для тех, которые подключаются выносными планками. Видел и обратный вариант — когда как раз порты на панели питались только от обычных +5 В всегда, хотя, по-моему, данный вариант кривоват с точки зрения логики — многие эти порты вообще не подключают, благо не ко всем платам (особенно бюджетным) в комплекте можно найти необходимое количество «выкидышей». И наиболее грамотное решение — когда количество джамперов составляет ровно половину от числа портов, т.е. выбор доступен для любой пары. В этом случае, как правило проблем никаких. Причем не только с включением — многие зарядные устройства для беспроводных мышей, например, питаются только от порта USB, так что если он запитан не по дежурной линии, заряжать аккумуляторы мыши ночью (или в другое время, когда компьютер выключен) просто не удастся.

Не стоит только забывать, что выбор осуществляется одновременно для пары портов. Так что имеет смысл оставлять дежурное питание только для той пары, к которой подключены мышь и клавиатура — как я уже говорил, дежурная линия достаточно слаба, так что с питанием по ней какого-нибудь внешнего винчестера могут быть проблемы. Если же у вас к USB подключено лишь одно устройство ввода, а второе «висит» на PS/2, то второй порт вообще лучше оставить свободным — во избежание проблем с питанием подключенного к нему устройства.

Какой из вариантов применяется в вашей конкретной материнской плате — опять же, читайте инструкцию. Люди не зря на ее написание время тратили все-таки :)

Должно работать, но не хочет

К сожалению, как я уже говорил, ситуация, когда все необходимые условия вроде бы соблюдены, но все равно ничего не получается, является нормальной. Пока, по крайней мере — очень может быть, что со временем производители сумеют избавиться от всех «детских болезней». Во всяком случае, вероятность этого есть. Пусть и далеко не 100% — когда клавиатуру делает одна фирма, блок питания вторая, а материнскую плату третья, шероховатости в плане совместимости различных компонентов друг с другом будут всегда.

Итак, какие основные «неустойчивые» проблемы бывают? Прежде всего учтите, что включение компьютера при помощи беспроводного набора практически никогда невозможно. Не то чтоб оно было вообще теоретически невозможным — просто большинство ресиверов в последнее время стали чересчур «умными». Да и клавиатуры с мышами становятся такими же в целях экономии электроэнергии – все большее количество периферийных устройств переходит с однонаправленного на двунаправленный интерфейс. Соответственно, при выключении компьютера впадает в настолько глубокую «спячку», что проснуться способно лишь получив сигнал о том, что компьютер опять включен, игнорируя любые нажатия на клавиши и т.п. Но даже если комплект «обычный», коих пока большинство, все равно радоваться рано — современные ресиверы «не любят» оставаться на связи при выключенном компьютере, и наличие на порту питания их не спасает.

А в случае проводных устройств все проблемы так или иначе связаны именно с питанием, благо им больше взяться неоткуда. Как я уже говорил, дежурная линия достаточно слабая, если на нее навесить много компонент, может и не выдержать. При этом устройство работать будет в те моменты, когда компьютер включен (благо в данном случае эта линия несколько разгружается за счет того, что с нее «снимают» часть компонентов материнской платы), а вот включаться компьютер не будет. Например, такое часто бывало на первом этапе внедрения PS/2, когда многие пользователи в целях экономии использовали старые АТ-клавиатуры со специальным переходником. Переходник был абсолютно пассивным, но вот все подобные вещи несколько миллиампер «воруют», а именно их могло и не хватать в конкретном случае. Впрочем, сегодня такие переходники уже экзотика, но вот двухстандартные клавиатуры, обычно комплектующиеся переходником USB-PS/2, нет. Последний аналогичные проблемы вызвать теоретически тоже способен. На практике с этим мне сталкиваться не доводилось, ввиду того, что энергопотребление современных периферийных устройств в несколько раз ниже, чем у «старых» АТ-клавиатур, так что им и того, что достается, чаще всего «хватает», однако «не встречал проблем» не означает «проблем не бывает», так что это тоже стоит иметь ввиду.

И еще одно тонкое место, появившееся после перехода клавиатур на USB. Дело в том, что производители все чаще размещают в них пассивные USB-хабы, которые тоже являются весьма активными потребителями электроэнергии. Особенно относительно старые их модели, не умеющие динамически подстраивать питание на портах, так что запрашивающие у компьютера всегда по максимуму. В данном случае клавиатура легко способна требовать 300-400 мА, что ей могут и не обеспечить.

Кстати и модели без хаба могут иметь достаточно высокое энергопотребление. Даже совсем простые — без подсветки и большого количества дополнительных клавиш. Хоть я выше и сказал, что энергопотребление современных моделей весьма невысоко (действительно — очень часто речь идет уже вообще о 10 мА или меньше), но бывают и исключения, на которые вполне можно «нарваться».

В общем, как мы видим, проблем с электропитанием может быть много разных. Может не быть — тут уже многое зависит от блока питания. Поэтому не стоит удивляться, когда по отзывам пользователей компьютеры на конкретной модели материнской платы с клавиатуры включаются, а у вас в аналогичной ситуации ничего не получается. Про то, что не все БП «одинаково полезны» многие забывают, а зря. Причем цена и «брендовость» блока, к сожалению, не всегда позволяют что-либо предполагать — требования к дежурной линии электропитания согласно стандартам не такие уж и жесткие. Некоторые производители положенные характеристики превышают, хоть и знают, что такое поведение вряд ли даст им дополнительные очки в каком-нибудь тестировании, большинство хорошо если требования стандарта выполняют в точности. Ситуация, конечно, не здоровая, но пока ей никто плотно не занялся.

Итого

Как я и предупреждал в начале, никаких особых откровений данная статья в себе не несет — так, некоторое количество известной информации плюс личный опыт, накопившийся за последнее десятилетие (с тех пор, когда внедрение АТХ начало позволять более-менее гибко «играться» с управлением питанием) :) Если вы все это и так знали и со всеми описанными ситуациями сталкивались, не стоит тратить время на ругань по адресу автора — как я уже сказал, даже не все знают о возможности средствами ОС отключить ACPI-кнопки на клавиатуре, не говоря уже о более тонких моментах, которые мало где описывались ;)