информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеПортрет посетителяСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 С наступающим 
 Серьезная уязвимость в Apache Log4j 
 Крупный взлом GoDaddy 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / sysadmin
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Ну это опять таки проблема криворуких third party-ей 26.09.06 14:40  Число просмотров: 4502
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
> Можно подитожить: везде есть свои преимущества и
> недостатки.
Кстати, проиндексировать все inf-файлы для быстрого поиска нужного hardwareid - совершенно не проблема (даже алгоритмы выдумывать ни фига не надо). С другой стороны даже если использовать devcon и указать КОНКРЕТНЫЙ inf и КОНКРЕТНЫЙ HardwareID в нем, устновка все равно происходит секунд 5. Причем процессор как простаивал так и простаивает. Что то мне подсказывает, что дело отнюдь не в том, что надо до фига вычислять, а в спецификациях шин и прочего железа. Для исключения race-ов вводятся паузы и таймауты.

> Мне по душе системы более кондовые, но навязывать свои
> предпочтения не собираюсь. Кому-то хочется втыкнуть
> устройство, а дальше чтоб система сама сделала все нужное,
> если что не так - регедит в помощь. Меня вполне устроит
Для начала Device Manager, а потом можно и регэдитом поковырять. Главное знать ЧТО делаешь.

> после втыкания устройства скинуть файл с дискетки и
> дописать строчку в конфиге "load \drivers\devdrv.sys".
Забавно, что такая возможность (ручная установка) оставлена в винде. Только зачем делать legacy дрова, если можно написать WDM. End user еще и спасибо скажет.

> Очень рад. Ну пусть будет этот ПнП менеджер. Если есть
> возможность детекта (однозначного) устройств, есть списочек
У каждой шины свои уникальные идентификаторы. Вот например в PCI configuration space устройств жестко записаны Vendor ID, Device ID, Subsystem ID, Subsystem Vendor ID и Revision ID
http://ru.wikipedia.org/wiki/PCI_configuration_space

Vendor/Device ID однозначно идентифицируют тип устройства. Остальные идентификаторы можно использовать для детализации информации об устройстве. В принципе можно сделать дрова для КОНКРЕТНОЙ PCI карточки и эти дрова будут подходить только для нее.

Так вот, драйвер PCI шины знает об этих идентификаторах и на их основании составляет список HardwareIDs и CompatibleIDs

Вот например HardwareIDs для моей интеловской набортной сетевухи:
PCI\VEN_8086&DEV_109A&SUBSYS_81C21043&REV_00
PCI\VEN_8086&DEV_109A&SUBSYS_81C21043
PCI\VEN_8086&DEV_109A&CC_020000
PCI\VEN_8086&DEV_109A&CC_0200

И CompatibleIDs (более generic-овые)
PCI\VEN_8086&DEV_109A&REV_00
PCI\VEN_8086&DEV_109A
PCI\VEN_8086&CC_020000
PCI\VEN_8086&CC_0200
PCI\VEN_8086
PCI\CC_020000
PCI\CC_0200

Процесс поиска совпадения ПОДРОБНО описан в MSDN. Скажу только, что из всех inf-файлов мне подошел тот, который описывал HardwareID

pci\ven_8086&dev_109a (как видно здесь именно пара Vendor/Device и никакой привязки к конкретной сошедшей с конвейера карточке).

> соответствий кодов и драйверов, путь при установки (на
> "горячую" или на "холодную") устройства подгрузит нужный
> файлик. Пытаться дергать кучу файлов-драйверов каждую
> загрузку совсем не следует.
Задерка связана не столько с поиском соответствия (хотя с ней тоже, но этот процесс несложно оптимизировать), сколько с сериализацией и таймаутами при опросах шин.

> Как-то делал зачистку от инсталляции Оракла (8.1), который
> за собой не подчищает, нормально не деинсталируется и
Ну это проблема Оракла, а не реестра все таки. Подозреваю, что больше всего проблем у тебя было с CLSID. Скажу по секрету формат подключей этого ключа тоже отлично задокументирован (правда я его не знаю :-) ибо никогда не писал COM/ActiveX)

> раскидывает сопли по всему реестру. Тяжело это было...
> Нормально формализовать поиск в реестре тяжело, пришлось
> искать просто "oracle", по дороге визуально анализируя,
> чтоб не удалить то, что нужно (ODBC).
Не стоит все ж таки валить с больной головы на здоровую. Если твой случай и говорит о криворукости программеров, то скорее Оракловских, а не майскрософтовских
<sysadmin> Поиск 








Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2022 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach