>что же что и win32 API
>только Linux API Спасибо, такого счастья под виндовсом хватает.С запасом.А нормальные програмы под линуксом почему-то есть, при том уже сегодня.Странно, да?А Win32 API - всего лишь порт WinAPI из 16-битных версий винды.Со всеми сопутствующими костылями и массой проблем и бестолковостей.Так что в итоге програмеры часто предпочитают не юзать оное напрямую, потому что достаточно геморройно.Более того - если хочется написать программу которая работает в нескольких версиях ОС (9x + NT based) - приходится жестко изъ...ся с чем-то типа loadlibrary+getprocaddress и детектом версии системы, потому что хваленое апи в разных системах несколько отличается и в некоторых либах есть функции а в других фига с маслом :).Поработать с драйверами?!Ха!В 9х и NT это 2 большие разницы.Универсального метода нет нихрена.Зато типов драйверов - хоть ж**й жуй!
Было всего-то навсего несколько типов драйверов:
.SYS файлы времен MS-DOS (самопальный примитивный формат MS-DOS) работали и в 9x.
16-бит драйвера режима пользователя (.drv файлы, по сути 16-bit DLL).
.VxD файлы - LE EXE, преимущественно на асме.Драйверы ядра 3.x и '9x\ME.
NT drivers - .sys файлы, по сути DLLки режима ядра, куски native subsystem.
- Потом кусок ядра засунули в 9x и решили сделать это WDM.Те же драйвера NT но писаные по определенному набору правил чтобы работало и там и сям.
- Потом сделали user-mode драйвера.На этот раз 32-битные.Честно говоря драйверов которые использовали бы User-Mode Driver Framework я не встречал.Но framework такой - есть.
- Этого всего было мало.В висте драйвера видео теперь отдельный особый тип драйверов.Благодаря чему пришлось в спешке переписывать эти драйвера.Ну а в результате MS пеняет на нвидию что дескать 80% крашей висты на их совести.Хотя кто там из них пи...рас а кто Д`Артаньян - пользователям малоинтересно.MS помог облажаться левыми перетрясами API для укрепления DеRьMа а нвидия облажалась.Отличная система!И какая благая цель перетряса апи - юзеру поднасрать!
Я уж молчу о том что по мелочи системы не совместимы даже между одинаковыми линейками систем.Скажем XP и 2003 - хоть у них и в основном общий codebase но небольшие отличия в подсистеме драйверов есть.И их достатчно чтобы установка драйверов стала лотереей.Какие-то работают, какие-то нет.
Если кому-то уж и что-то там говорить про бардаки - то этот кто-то определенно не должен быть MS.Потому что у них своего бардака выше крыши.Не полная задница там только по 1 причине - монопольное положене MS.И то на старую железку хрен драйвер найдешь.Было полно железок для которых дрова только для 9х и они стали потом бесполезны в W2k.Теперь аналогичная тенденция с вистой и XP.
> в текущих версиях Windows предоставляется через Driver Model.
Да уж... осталось уточнить сколько же раз ее перетрясали.И рассказать страждущим юзерам которые плюются что на их новые девайсы нет дров для XP а на старые - нет дров для висты.А в висте дрова от XP катят далеко не всегда.Линукс вообще в этом плане постепенно становится куда менее геморроен - довольно часто все просто работает сразу из коробки.А в виндусе приходится долго диджействовать сидюками...