реклама на сайте
подробности

 
 
> написание PCI драйвера под Win2K/XP/Vista
o-henry
сообщение Jul 10 2007, 08:56
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 435
Регистрация: 8-03-06
Из: степей Украины
Пользователь №: 15 069



В ближней перспективе мне, возможно, придется заняться написанием драйвера для PCI-ной платы под Windows. Интересует WinXP и Win2K с перспективой переноса на Vista. Для начала на уровне чтения/записи в I/O и обработки прерываний от платы, далее-работа с памятью через DMA . Практического опыта в разработке драйверов нет. Нужна информация по состоянию дел в этой области на сегодняшний день и доступным инструментам.

Как я понимаю, раньше была одна модель драйверов – WDM (VxD не рассматриваем как древность) и 3 варианта разработки дров под нее:
1) С помощью Jungo Windriver
2) С помощью Numega Driver Studio
3) С помощью только DDK.

На сегодня, кроме WDM, у майкрософт появилась новая модель драйверов - Kernel-Mode Driver Framework (KMDF) and User-Mode Driver Framework (UMDF).
Насколько я понял, с моделью KMDF можно работать в WinXP и Vista.
А для Win2K она поддерживается?
На какую модель WDM или KMDF лучше ориентироваться в новых разработках?
С каким из инструментов (Jungo, Numega, чистый DDK) лучше работать (преимущества/недостатки/доступность)?

P.S.
Ссылки на литературу и тематические форумы приветствуются.
Google не предлагать.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
v_mirgorodsky
сообщение Jul 11 2007, 09:37
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 342
Регистрация: 21-02-05
Пользователь №: 2 804



Цитата
Конечно, придется. Но IMHO это меньшее зло, чем WDM.
IMHO конечно, но чем вам так WDM технология не нравится? Поначалу мне тоже было несколько сложно с ней разбираться, но сейчас драйвера получаются простыми и понятными smile.gif


--------------------
WBR,
V. Mirgorodsky
Go to the top of the page
 
+Quote Post
Oldring
сообщение Jul 11 2007, 11:28
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(v_mirgorodsky @ Jul 11 2007, 13:37) *
IMHO конечно, но чем вам так WDM технология не нравится? Поначалу мне тоже было несколько сложно с ней разбираться, но сейчас драйвера получаются простыми и понятными smile.gif


Вы при этом уверены, что Ваши драйвера правильно обрабатывают все требуемые события? PnP? Power? А остановку драйвера для переконфигурирования ресурсов? И делаете это незаметно для клиентов? Ваши драйвера при этом, конечно используют прерывания и DMA?

Я, например, про свои все еще не уверен. Хоть немало сил потратил на изучение тонкостей обработки этих событий, описанных, зачастую, не в хелпе DDK, а в дополнительных статьях, разъясняющих тонкости ядра виндов. В общем, WDM драйвера оставили у меня ощущение кошмара.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
VslavX
сообщение Jul 11 2007, 15:14
Сообщение #4


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(Oldring @ Jul 11 2007, 14:28) *
Я, например, про свои все еще не уверен. Хоть немало сил потратил на изучение тонкостей обработки этих событий, описанных, зачастую, не в хелпе DDK, а в дополнительных статьях, разъясняющих тонкости ядра виндов. В общем, WDM драйвера оставили у меня ощущение кошмара.

А что, пакеты типа Windirver от Jungo, освобождают от необходимости изучать устройство ОС? Если писать серьезный коммерческий драйвер, то в тонкости все равно надо вникать, да и не так их там уж много. ИМХО, "рюшечки" типа WinDiver хороши для стандартных вещей, но если шаг вправо-влево, то разбираться придется по-любому. Так что я бы начал с DDK и упомянутой книжки от Oney. Это немного сложнее (просто больше деталей больше), но оно того стоит.
В свое время bus driver писать для виртуальной шины пришлось (этот тот который PDO рулит и обрабатывает все запросы, которые Ваш FDO драйвер вниз пробрасывает) - получится такой написать с использованием WinDriver? (Хотя, если честно, давно этот пакет не смотрел, может уже и можно)
Насчет уверенности в драйверах - есть пакеты для стресс-тестов, те которые WHQL использует - иногда неплохо помогает. Обработка "ужасно сложных" событий Power/PnP там вполне проверяется на соответствие требованиям системы.
Ну и - Windriver не бесплатный - если драйвер будет продаваться с устройством, то лицензия нужна как ни крути.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- o-henry   написание PCI драйвера под Win2K/XP/Vista   Jul 10 2007, 08:56
- - Oldring   Цитата(o-henry @ Jul 10 2007, 12:56)...   Jul 10 2007, 10:09
|- - Oldring   Цитата(Oldring @ Jul 10 2007, 14:09) KMDF...   Jul 10 2007, 19:31
- - v_mirgorodsky   В свое время я начинал с двух книг. Первая - Edvar...   Jul 10 2007, 10:11
- - v_mirgorodsky   ЦитатаЗаглянул в документацию на последние версии ...   Jul 11 2007, 07:11
|- - Oldring   Цитата(v_mirgorodsky @ Jul 11 2007, 11:11...   Jul 11 2007, 09:09
- - v_mirgorodsky   ЦитатаВы при этом уверены, что Ваши драйвера прави...   Jul 12 2007, 17:59
- - Serhiy_UA   к o-henry Для меня эта тема актуальна. Начал заним...   Jan 26 2010, 09:55
- - o-henry   Мне хватило Windriver, ибо устройство для внутренн...   Jan 26 2010, 10:08
- - AndrewN   Цитата(Serhiy_UA @ Jan 26 2010, 13:55) 4....   Feb 2 2010, 21:23
- - Serhiy_UA   Цитата(AndrewN @ Feb 3 2010, 01:23) Очень...   Feb 3 2010, 06:36
- - AndrewN   Цитата(Serhiy_UA @ Feb 3 2010, 09:36) 4.О...   Feb 3 2010, 11:03
- - Serhiy_UA   Цитата(AndrewN @ Feb 3 2010, 15:03) ... Д...   Feb 5 2010, 09:45
- - ElefantElectronics   Compuware Driver Studio - End Of Line уже года с 2...   Nov 26 2010, 04:09


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 14:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.01453 секунд с 7
ELECTRONIX ©2004-2016