Еще раз о клавиатуре\мыши

Что вы хотели бы видеть в следующих версиях?
Ответить
Heathen
Сообщения: 56
Зарегистрирован: Чт июн 16, 2005 9:11 am
Откуда: Екатеринбург
Контактная информация:

Еще раз о клавиатуре\мыши

Сообщение Heathen »

В очередной раз хочу поднять тему об автоматическом определении интерфейса клавиатуры\мыши. У одного из клиентов есть много терминалов (аппаратных). Периодически на них выходят из строя клавы\мыши. А эти самые клавы\мыши имеют различные интерфейсы - PS\2 и USB. Меняет их зав. хоз. Соответственно, если бы WTware сама умела определять, на какой порт ей повесили HID-устройства, было бы отлично.
Так делает Thinstation, и это ОЧЕНЬ удобно. Во-первых, пользователи сами могут менять клавы\мыши. Во-вторых, нет необходимости на каждый терминал прописывать отдельный конфигурационный файл, в котором будут лишь описание порта устройств ввода. Использовать систему станет значительно проще.

А теперь вопрос - будет ли это реализовано?
aka
Разработчик
Разработчик
Сообщения: 11842
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Сообщение aka »

Чтобы найит USB-мышь надо запустить драйвера USB. Запускать драйвера USB без команды пользователя нарушает политику втвари "делать только то, что указал админ". Хорошая политика, позволяет увереннее запускаться на древнем железе.

Можно ввести такое правило: если памяти 64Мб и более, то считаем, что перед нами "новый" компьютер, у которого хороший порт USB и нет нужды экономить каждый байт памяти. И поэтому автоматом загружаем драйвера USB. Когда USB появится, определить - есть ли у нас USB мышь и клавиши - не должно составить труда.

Такое решение пойдет?
Последний раз редактировалось aka Ср дек 27, 2006 2:58 am, всего редактировалось 1 раз.
aka
Разработчик
Разработчик
Сообщения: 11842
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Сообщение aka »

Heathen, гениальная мысль!

Автоматически найти ps/2 или com мышь, а также определить наличие колеса в общем случае невозможно. Виндовсу обычно удается, но виндовс сколько людей пишут... Окончательное определение может происходить даже после первого движения мыши... Втварь с ее зоопарком графических библиотек (каждая из которых имеет свой мышиный обработчик) такого себе позволить никак не может :(

А вот определить наличие USB мыши и USB клавиш очень просто, если решиться запустить драйвера USB порта.

В общем, в свете этой мысли в следующей бете будут изменения:
* на машинах с памятью >= 64Мб драйвер порта USB запускается сам.
* если найдена USB мышь - ее и используем, параметр в конфиге не читаем.
* если найдена USB клавиатура - ее и используем.
* Параметр mouse_wheel по дефолту имеет значение on. Давно пора.

Для администратора это будет означать, что:
* если у терминала >= 64 метра памяти и usb мышь с колесом, то ее само найдет.
* если у терминала >= 64 метра памяти и usb клавиатура, то ее само найдет.
* если у терминала ps/2 мышь с колесом, то ее само найдет.

А вот отклонения от этих вариантов (com-мыши, ps/2 и usb без колеса, usb на терминалах с <64Мб памяти) придется настраивать руками.

Ок?
Heathen
Сообщения: 56
Зарегистрирован: Чт июн 16, 2005 9:11 am
Откуда: Екатеринбург
Контактная информация:

Сообщение Heathen »

Да, алгоритм вполне рабочий! Правда, плюс к этому я бы добавил опцию, которая позволяет включать\отключать автоматическое определение интерфейса HID-устройства, что-то типа hid_auto_detect = on|off. Тогда эту опцию можно будет: а) описать в глобальном файле all.wtc, б) описать её в собственном конфигурационном файле терминала. Тогда если на отдельных железках описанный алгоритм даст сбой, админ всегда сможет для определенных устройств его отключить.
aka
Разработчик
Разработчик
Сообщения: 11842
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Сообщение aka »

Ждем железки, на которых оно даст сбой.
Тут такое дело - драйвер клавиш надо поднимать до того, как мы прочитаем конфиг. Хотя бы для того, чтобы сработало "Press Del to enter Setup". И костыль, отключающий автоматическое определение, надо проводить через командную строку ядра. Это просто делать, но очень долго объяснять.
Heathen
Сообщения: 56
Зарегистрирован: Чт июн 16, 2005 9:11 am
Откуда: Екатеринбург
Контактная информация:

Сообщение Heathen »

aka писал(а): Тут такое дело - драйвер клавиш надо поднимать до того, как мы прочитаем конфиг. Хотя бы для того, чтобы сработало "Press Del to enter Setup".
Тогда как быть с USB-клавиатурой и нажатием клавиши Del во время загрузки?
aka писал(а): И костыль, отключающий автоматическое определение, надо проводить через командную строку ядра. Это просто делать, но очень долго объяснять.
Создать раздел в документации - "Описание параметров загрузчика", и поместить эти параметры в pxelinux.cfg (и в другие соответствующие загрузчику конфиги). :)
aka
Разработчик
Разработчик
Сообщения: 11842
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Сообщение aka »

В общем эта, ждем железки, на которых оно даст сбой :) В .16 оно сделано - само поднимает USB если памяти >=64Мб.
Ответить

Вернуться в «Планы развития. Пожелания.»