C++ в kernel-mode от Microsoft?
От: bazis1 Канада  
Дата: 11.08.10 07:26
Оценка:
Случайно наткнулся на примеры аудио-девайсов в WDK. В частности, src\audio\sb16. Вполне себе объектно-ориентированный вполне себе кернел-мод.
Вопрос: что это? Огрызки какого-то C++ framework-а от MS? Object-oriented miniport? Когда это появилось и почему про "C++, Kernel-Mode и Microsoft" все привыкли слышать "выберите любые 2"?
Есди появилось давно и работает, то почему KMDF написана на C?
Короче, есть кто-нибудь в теме?
Re: C++ в kernel-mode от Microsoft?
От: silent_bob  
Дата: 11.08.10 20:21
Оценка: :)
А в http://visualddk.sysprogs.org/ еще и STL предлагают использовать.

Какая по сути разница, драйвер с тем же успехом и на Питоне можно написать.
Re[2]: C++ в kernel-mode от Microsoft?
От: CreatorCray  
Дата: 12.08.10 06:31
Оценка:
Здравствуйте, silent_bob, Вы писали:

_>Какая по сути разница, драйвер с тем же успехом и на Питоне можно написать.

Удачи
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: C++ в kernel-mode от Microsoft?
От: bazis1 Канада  
Дата: 12.08.10 08:27
Оценка:
Здравствуйте, silent_bob, Вы писали:

_>А в http://visualddk.sysprogs.org/ еще и STL предлагают использовать.


Спасибо за ссылку. Всегдя приятно в ответ на четко сформулированный вопрос получить ссылку на собственный проект. Вы исходное сообщение читали?
Когда это появилось и почему про "C++, Kernel-Mode и Microsoft" все привыкли слышать "выберите любые 2"?
От сторонних разработчиков и NuMega Driver Studio есть (точнее, была). Меня интересует вопрос, что за тема от M$.
Re[3]: C++ в kernel-mode от Microsoft?
От: Геннадий Майко США  
Дата: 12.08.10 10:33
Оценка:
Здравствуйте, bazis1,

B>От сторонних разработчиков и NuMega Driver Studio есть (точнее, была). Меня интересует вопрос, что за тема от M$.

--
Ссылка от Microsoft здесь

C уважением,
Геннадий Майко.
Re: C++ в kernel-mode от Microsoft?
От: eagersh  
Дата: 12.08.10 16:09
Оценка: +2
Здравствуйте, bazis1, Вы писали:

B>Случайно наткнулся на примеры аудио-девайсов в WDK. В частности, src\audio\sb16. Вполне себе объектно-ориентированный вполне себе кернел-мод.

B>Вопрос: что это? Огрызки какого-то C++ framework-а от MS? Object-oriented miniport? Когда это появилось и почему про "C++, Kernel-Mode и Microsoft" все привыкли слышать "выберите любые 2"?
B>Есди появилось давно и работает, то почему KMDF написана на C?
B>Короче, есть кто-нибудь в теме?
KMDF написанна на С++.У Microsoft есть тенденция или ограничить написания кода в кернел( примеры — KMDF и порт модель для некоторых типов устройств) или перенесение разработки в user mode( UMDF).В этом есть смысл так как баги в драйверах приводят в нерабочее состояние всю OS.Пользователи винят часто в этом не разработчиков драйверов а Microsoft.Написание драйверов на С++ требует хорошей квалификации и нет гарантии что все разработчики драйверов будут иметь такую квалификацию.
Re: C++ в kernel-mode от Microsoft?
От: mav123  
Дата: 12.08.10 22:41
Оценка: -2
Здравствуйте, bazis1, Вы писали:

В критических системных процессах типа SMSS и CSRSS сейчас классы и даже COM!!!!!! http://rsdn.org/forum/images/anvaka/barf.gif

Еще удивляются чего новые видны такие тормозные
Re[3]: C++ в kernel-mode от Microsoft?
От: Cyberax Марс  
Дата: 12.08.10 23:15
Оценка:
Здравствуйте, CreatorCray, Вы писали:

_>>Какая по сути разница, драйвер с тем же успехом и на Питоне можно написать.

CC>Удачи
В драйвере NVidia целый компилятор С есть, работающий в ядерном режиме

А про существование драйвера на OCaml'е у меня есть 100%-е сведения.
Sapienti sat!
Re[2]: C++ в kernel-mode от Microsoft?
От: Евгений Музыченко Франция http://software.muzychenko.net/rus
Дата: 13.08.10 14:04
Оценка:
Здравствуйте, mav123, Вы писали:

M>В критических системных процессах типа SMSS и CSRSS сейчас классы и даже COM!!!!!! http://rsdn.org/forum/images/anvaka/barf.gif

M>Еще удивляются чего новые видны такие тормозные

Классы сами по себе вообще ничего не тормозят — если, конечно, не увлекаться множественным виртуальным наследованием с RTTI. А COM — это да, грустно.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: C++ в kernel-mode от Microsoft?
От: Евгений Музыченко Франция http://software.muzychenko.net/rus
Дата: 13.08.10 14:19
Оценка:
Здравствуйте, bazis1, Вы писали:

B>Случайно наткнулся на примеры аудио-девайсов в WDK. В частности, src\audio\sb16. Вполне себе объектно-ориентированный вполне себе кернел-мод.

B>Вопрос: что это? Огрызки какого-то C++ framework-а от MS? Object-oriented miniport?

Второе.

B>Когда это появилось


Где-то в конце 90-х. Эта модель поддерживалась portcls.sys, который впервые был включен в Win98.

Собственно, первая поддержка C++ появилась еще в Win95DDK — сначала только в виде

#ifdef __cplusplus
extern "C"
#endif


Когда я в 98 году начинал делать драйверы под Win3/95 на C++ — приходилось всю поддержку делать руками (purecall, инициализация статических объектов в стиле C++, _atexit и т.п.), в ядре больше ничего не было. Однако, в ядре NT4 уже были purecall и базовая поддержка SEH. В 2k сделали эти самые OO miniports на виртуальных интерфейсах, и частично включили в эмулируемое NT-ядро в Win98.

B> и почему про "C++, Kernel-Mode и Microsoft" все привыкли слышать "выберите любые 2"?


Скорее всего, потому, что поддержка C++ в ядре и до сих пор очень ограниченная, да и правильно это. По сути, если не пользоваться статическими объектами классов, SEH, RTTI, и использовать только базовое подмножество CRTL — все остальные возможности C++ можно было свободно использовать и в 16-разрядных DRV, и в 32-разрядных VxD под Win 3/95, чем я с успехом и занимался. Но это требует неслабой дисциплины и постоянного слежения за кодом, чуть зазевался — получил либо кучу ошибок от линкера, либо глюк при выполнении из-за ограниченности runtime-поддержки.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: C++ в kernel-mode от Microsoft?
От: ononim  
Дата: 13.08.10 23:49
Оценка:
M>В критических системных процессах типа SMSS и CSRSS сейчас классы и даже COM!!!!!!
В smss и csrss нету кома, там пока все по старинки — на LPC

http://rsdn.org/forum/images/anvaka/barf.gif
M>Еще удивляются чего новые видны такие тормозные
Тормозные потому что bloated. Очень много избыточного функционала.
Как много веселых ребят, и все делают велосипед...
Re[3]: C++ в kernel-mode от Microsoft?
От: mav123  
Дата: 14.08.10 00:08
Оценка:
Здравствуйте, ononim, Вы писали:
O>В smss и csrss нету кома, там пока все по старинки — на LPC
посмотри lsm.exe

O>Тормозные потому что bloated. Очень много избыточного функционала.

ужас
Re[3]: C++ в kernel-mode от Microsoft?
От: Евгений Музыченко Франция http://software.muzychenko.net/rus
Дата: 14.08.10 03:39
Оценка:
Здравствуйте, ononim, Вы писали:

M>>Еще удивляются чего новые видны такие тормозные


O>Тормозные потому что bloated. Очень много избыточного функционала.


Не просто избыточного, а обязательно-избыточного.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: C++ в kernel-mode от Microsoft?
От: ononim  
Дата: 14.08.10 08:26
Оценка:
M>Здравствуйте, ononim, Вы писали:
O>>В smss и csrss нету кома, там пока все по старинки — на LPC
M>посмотри lsm.exe
Посмотрел. Полноценного COMа там тоже нету. Только RPC.

O>>Тормозные потому что bloated. Очень много избыточного функционала.

M>ужас
Как много веселых ребят, и все делают велосипед...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.