ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
26 июля
139333
Ксения (19.11.2008 17:05, просмотров: 39161)
inf-файл USB-драйвера. Правовые вопросы. Нынче все больше "самодельных" устройств переходят на USB-интерфейс для связи с компьютером. К этому разработчиков вынуждает политика вытеснения USB-интерфейсом иных типов связи на современных типовых компьютерах. Кроме гнезда USB других альтернатив не остается. Поднимаемый мною вопрос не касается тех, кто использует всевозможные промышленные USB-конверторы для сопряжения своих устройств с компьютером. В этом случае компьютер "видит" лишь конвертор и только с ним общается. Аналогичный случай имеет место, когда используются СПЕЦИАЛИЗИРОВАННЫЕ микросхемы-USB-конверторы, встраиваемые непосредственно во внутрь устройства (например, FTDI). В этом случае приходится на стороне компьютера использовать драйверы, поставляемые фирмой-производителем USB-чипа. Поэтому как бы благозвучно не называлось ваше устройство, но в списке устройств оно будет выглядеть весьма неприглядно, типа "USB serial port", или "USB Serial Converter", или "FTDI driver". Ну а самое неприятное, что производителем вашего устройства будет объявлена фирма, производящая USB-контроллер. Все эти выходные данные берутся из в inf-файла, посредством которого ваше устройство регистрируется компьютером при первом подключении. Поскольку inf-файл является обычным текстовым файлом, то отредактировать в нем название устройства и фирму производителя ничего не стоит. Вопрос же состоит в том, имеем ли мы (юридические) права это делать. Я не берусь судить обо всех соглашениях на этот счет, поскольку каждый производитель USB-контроллера может иметь на этот счет свои собственные заморочки. Опять же я не в курсе всех подобных соглашений, т.к. этот вопрос возник у меня только что по необходимости. Поэтому и хотела бы услышать мнение участников форума, которые с этой проблемой уже сталкивались. Я же пока проанализирую аргументы за и против. +1. Первый аргумент "за". Я веду речь не о тех случаях, когда фирма-производитель сотворила СВОЙ СОБСТВЕННЫЙ драйвер (типа ftser2k.sys), который устанавливается на компьютер при инсталляции. - Тут действительно драйвер сама фирма писала, и было бы нарушением ее авторских прав, если бы мы присвоили это авторство себе. Нет! Речь идет как раз о том случае, когда мы используем СТАНДАРТНЫЙ драйвер от Микрософта usbser.sys, который поставляется в составе операционной системы. Т.е. в том случае, когда никакие бинарные драйвера от фирмы производителя USB-контроллера не используются. Используется только текстовый inf-файл, который явно определяет, что данное USB-устройство нуждается в обслуживании стандартным драйвером операционной системы. +2. Второй аргумент "за". Строго говоря, inf-файл представляет именно устройство, а не драйвер к нему! В этом можно убедиться на примере многочисленных USB-модемов. В операционной системе регистрируется именно название самого устройства и его производителя, а вовсе не чип, который используется для USB-связи. Ведь, если бы мы использовали RS-232 интерфейс, то не стали бы регистрировать свое устройство как MAX232? :-) Так почему же в случае USB-интерфейса производитель выходной микросхемы должен иметь какие-то преимущественные права? +3. Третий аргумент "за". В моем случае роль USB-конвертора выполняет МК AT90USB647 (модератор MBedder, это не основание переместить мой поcт в AVR-резервацию!). А здесь я совершенно не связана фиксацией VID и PID, которая имеет место в случае FTDI, - какие захочу номера, те и проставлю! Главное, чтобы номера в прошивке совпадали с номерами в inf-файле. -1. Первый аргумент "против". Номер идентификатора вендора (VID) имеет числовую кодировку из таблицы зарегистрированных вендоров. А я, понятное дело, не такого полета птица, чтобы входить в тот список. Даже если я проставлю в стринге название своей фирмы, то все равно по VID-коду подлог может быть обнаружен. -2. Второй аргумент "против". Фирмы-изготовители USB-контроллеров не разрешают менять свой VID при регистрации. Вот что, например, пишет по этому поводу FTDI:
Customising Drivers For customers wishing to create their own driver release, FTDI can issue you with a block of 8 product IDs (PIDs) for use with FTDI's vendor ID (VID) if you do not have your own vendor ID. This service is free of charge, but the issued PIDs must only be used with FTDI's VID (0x0403).
Следует ли понимать, что FTDI разрешает мне менять VID? Что-то смысл этой цитаты до меня не доходит. Предположим, что у меня был бы свой собственный VID (own vendor ID), то в праве ли я его использовать? У Atmel еще хуже - дурацкие названия типа "AT90USBxxx CDC USB to UART MGM" или "AT90USBxx2 demo". А может я не хочу, чтобы всякий знал, какая микросхема у меня внутри устройства запаяна? Короче говоря, прошу высказаться по поводу того, насколько допустимо писать в inf-файл отсебятину, если предположить, что меня будут за это судить в Гааге :):):).