четверг, 31 января 2013 г.

Как отключить встроенную клавиатуру на ноутбуке

Немного об управлении устройствами.
Сломалась у меня встроенная клавиатура на ноутбуке. И решил я ее отключить(ну, или заблокировать, что получится). Покопав некоторое время в Интеренет, нормального решения я не нашел. Пришлось лезть в глубины Windows самому. Вот результат моих изысканий.

Как отключить встроенную клавиатуру на ноутбуке (Windows 7):

1) Для начала, нам нужно ИД отключаемого устройства. В моем случае - встроенной клавиатуры. Обычно, у ноутбуков они подключаются по внутреннему PS/2 разъему.
2) Открываем диспетчер устройств (Правый клик на Компьютер-> Управление->Диспетчер Устройств)
3) Находим нужное устройство, правый клик на нем, "свойства"
4) Во складке "Сведения" в выпадающем меню находим "ИД оборудования"
5) Копируем его (У меня это было "ACPI\PNP0303")
6) Вызываем (win+r или "выполнить" в меню "Пуск") gpedit.msc
7) Там открываем: Политика Локальный компьютер -> Административные шаблоны -> Система -> Установка устройств -> Ограничения на установку устройств
8) Там есть вариант: "Запретить установку устройств с указанными кодами устройств", правый клик на него, "изменить"
9) Ставим радиобатн в положение "Включить", в параметрах нажимаем кнопку "Показать..."
10) Вставляем в появившееся окошко скопированный ИД оборудования и нажимаем Ok.
11) Ставим галочку "Также применить для соответствующих устройств, которые уже были установлены"
12) Удаляем устройство в диспетчере устройств и перезагружаемся.

В результате, встроенная клавиатура перестает работать, а в диспетчере устройств появляется "Неизвестное устройство"

Как включить встроенную клавиатуру на ноутбуке обратно (Windows 7):
Или поставить вариант "Выключить" в 8 пункте. Или удалить id устройства в 9 и далее пунктах.
После этого, в диспетчере задач произвести поиск новых устройств.(или просто перезагрузиться)

P.S. Дополнительно - ключевые моменты для английской версии:
2) Computer->Manage->Device Manager
3) Properties
4) Details, там - Hardware Ids
7) Local Computer Policy->Computer Configuration->Administrative Templates->System->Device Installation->Device Installation Restriction
8) Prevent installation of device that match any of these device IDs
9) Enabled, потом кнопку "Show..."
11) Галочка "Also apply to matching devices that are already installed"

У некоторых данный способ не работает, отсутствует необходимые политики. Нормального способа решения этой проблемы я так и не нашел. Так что для них - такой вариант:
1-2) см. выше
3) Находим нужное устройство, правый клик на нем, "Обновить драйвера"
4) Там снимаем галочку "Совместимые устройства" и выбираем что-то не подходящее. Например "Стандартные" -> "Клавиатура HID". Обычно в ноутбуках клавиатуру вешают на порт PS/2, так что он должен не подойти.
5) Перезагружаемся.
6) Теперь клавиатура не работает. Заходим в диспетчер устройств,
7) Находим там клавиатуру. Она теперь показана как проблемная. Правый клик -> Отключить.

пятница, 18 января 2013 г.

Немного об автоопределение скоростей и работе ethernet.


Немного об автоопределение скоростей и работе ethernet.
Взято вот отсюда.

По умолчанию, каждый порт Cisco настроен таким образом, что устройство само определяет какие настройки на этом порту использовать, какую скорость выбрать, какой режим передачи данных. Такая технология называется Auto-negotiation (Автоопределение). Так же эти параметры можно задать «вручную», на каждом порту устройства.
Коммутаторы Cisco определяют автоматически скорость между сетевыми устройствами (например между портом коммутатора и сетевой картой компьютера), используя некоторые методы. Cisco коммутаторы используют для определния скорости Fast Link Pulse (FLP), это некоторый электрический импульс, по которому устройства могут понять на каких оптимальных скоростях может установиться соединение между данными сетевыми устройствами.
Если скорости выставлены вручную и они совпадают, то устройства смогут установить соединение используя электрические сигналы.
Если на коммутаторе и на сетевом устройстве компьютера (для примера), установлены вручную скорости и они не совпадают, то соединение не будет установлено.
Примерно так же проходит и определение режима работы соединения: half-duplex или full-duplex.


Если оба устройства работают в режиме автоопределения, и устройства могут работать в duplex режиме, то этот режим и установится.
Если на устройствах автоопределение выключено, то режим будет присвоен по некоторым правилам «по умолчанию». Для 10 и 100 мегабитных интерфейсов установится режим half-duplex, для 1000 мегабитных установится Full-Duplex.
Для отключения автоопределения дуплексности необходимо вручную указать настройки режима.
Ethernet устройства могут работать в режиме Full-Duplex (FDX), только тогда, когда нет коллизий в передающей среде.
Современные Ethernet технологии говорят что коллизии не происходят. Коллизии происходят только там где есть разделяемая среда передача данных, например при топологии шина, или при использовании такого устройства как hub (хотя сейчас увидеть такого «динозавтра» достаточно сложно :) ).
Все же необходимо представлять какие технологии есть и как они борятся с коллизиями в таких разделяемых ресурсах.
Алгоритм, по борьбе с коллизиями называется CSMA/CD (Carrier Sense Multiple Access Collision Detection ), что означает множественный доступ с контроллем несущей и обнаружением коллизий.
Что такое коллизия вобще?
Коллизия это наложение сигнала, т.е, когда одновременно несколько сетевых устройств начинают передачу данных по разделяемой среде, два этих сигнала встречаются, накладываются друг на друга, и происходит коллизия (тоесть данные искажены, и не несут в себе никакой полезной нагрузки.
Теперь давайте рассмотрим как это работает.
  1. Устройство, которое желает отправить фрейм сначала слушает, свободна ли линия связи.
  2. Когда линия связи не занята, это устройство начинает отправлять фреймы в Ethernet.
  3. Устройство «слышит», что коллизия не происходит, значит все хорошо.
  4. Если все же коллизия произошла (а как же первый шаг? где устройство убеждалось, что линия не занята? Дело в том, что другое устройство могло тоже прослушивать линию, и эти два устройства отправили фреймы практически в одно и тоже время, поэтому и произошла коллизия). Теперь, когда отправляемые устройства «поняли», что произошла коллизия, они отправляют так называемый jam signal, который «говорит» другим участникам сети, что сейчас передача невозможно, так как возникла коллизия и придется немного подождать.
  5. После jam сигнала, у каждого отправляюшего устройства случайным образом определяется некоторое время, которое можно назвать «время простоя», когда устройство не может посылать никакие данные в сети.
  6. После истечения этого таймера, алгоритм переходит к 1 шагу.

четверг, 10 января 2013 г.

Автозапуск в linix

Скрипты автозапуска размещены в /etc/init.d/*
Оттуда созданы soft link на них в папки rc*.d, где * - уровень запуска, на котором выполняется данный скрипт.
Для создания своего скрипта автозапуска нужно:
1) Создать свой скрипт в /etc/init.d, для этого есть /etc/init.d/skeleton
2) Прописать там грамотные параметры в комментариях INIT INFO.
3) Вызвать insserv имя скрипта

Для удаления:
1) insserv -r имя скрипта
2) Удалить скрипт из /etc/init.d

Подробности:
less /etc/init.d/skeleton
man inid.d
man insserv