еще найдено. буду разбираться.
"Real time module for Windows 2000/XP"
сайт
http://www.hadcon.ru/rtmintroduc.htmпример,демо и описание
http://www.codeguru.com/cpp/w-p/system/messagehandling/article.php/c14457__1/ (демо так же есть на офф сайте)
демо видимо на 60 дней.
простая конечно, но либеральные цены: 300уе модуль(400 с годовым суппортом) 400уе десять лицензий(57уе - одна)...
в интернет магазине 760уе. странно.
буду разбираться что она умеет...
последняя версия от 10.2007го - то есть годовалой давности. Vista - видимо нет.
PS компания расположена в на "str. Genkina 41a , office 7, Nizni Novgorod, 603105, Russia")))))))))))))))))
Итак. поставил на ноут - увидел BSOD. вывод - либо ноут на CoreDuo не поддерживается, либо у меня в паралель RTX Ardence пытается работать - что кстати тоже похоже)
почитал доку(она совсем куцая) - выводы:
1. установка: драйвер(64кб)+inf файл, с парой настроек:
период RT таймера - 100,200,500,1000мкс. (параметр в inf, а так же функция RT-приложения)
ресурсы: порты, память, какой то параметр(может быть расшариваемость с виндой?)
устройства(платы) - bus,slot,Vendor,Device
то есть inf при старте определяет все ресурсы и устройства с которыми в дальнейшем будем работать.
паралельно есть функции RT для конфигурации используемых в RT устройств.
2. приложения RT представлены в виде библиотеки, причем библиотека содержит секции исполняемые в ring-0 и секции исполняемые в ring-3. (две точки входа, DllMain и extern "C" RTXEntry.
3. функциональность:
таймеры
нити (алгоритм планирования не указан?!) кажется используется планировщик windows. приоритетов нет.
в ring-0 судя по примерам можно использовать функции ядра?
установка обработчика прерываний "void newintr(void *)" для заданного девайса по номеру шины и Vendor-у (напр PCI/ISA)
hook на номер прерывания (обрабтчик такой же)
захват и размещение ресурсов для устройства (напр PCI) - в документации описаны не все функции!!! лентяи.
чтение/запись памяти по физическим адресам.(физический адрес задается 32битами!) получение физ адреса буфера.
две функции для отладки - брекпоинты и пошаговый тик для таймеров.
немножко (штук 15)функций поддержки арифметики с плавающей точкой в double.
немножко (штук 20)функций STD типа memcpy, strstr..
фнкции размещения памяти (ой подозвераю используются ядровые windows)
и... все. действительно все.
видно все остальное - через ядро windows.
в комплекте 3 инклуда и две либы. из них один инклуд 170кб - структуры и функции ядра Windows. либа 130к - видимо оттуда же. остальное копейки.
выводы: тем не менее - жить можно наверное. для совсем простых и бюджетных решений. пришлось бы самому такое разрабатывать - думаю сделал бы похоже. поэтому ругать не стану)))
но продукт явно вырос (недовырос) из частного решения совсем другой конкретной задачи. они там еще железками торгуют - видно для себя делали изначально.
так что скорее всего написано одним человеком - за что его можно только уважать)
не совсем понятно что там с приоритетом нитей, по сравнению с нитями винды, но даже это - не столь страшно, если хотя бы таймеры не вытесняются(об этом правда тоже молчок)
за сим - все) отчитался)
PS да, по косвенным признакам разработка проекта началась году в 2005... впрочем могу ошибаться. в общем привет и уважуха Новгородцам)