Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1] 2  Все   Вниз
  Печать  
Автор Тема: Превращение Windows в Real Time System  (Прочитано 48185 раз)
0 Пользователей и 1 Гость смотрят эту тему.
creaker
Интересующийся

ua
Offline Offline

« : 27-05-2013 11:17 » 

Доброго времени суток всем.
Есть следующая проблема. Необходимо максимально приблизить Windows к системе реального времени, т.е. сделать винде "обрезание", чтобы получить приемлемое время реакции на события (хотя бы 0,5мс).
Исходные данные:
Windows XP Professional SP3.
В системе больше не будет НИЧЕГО, т.е. система будет развернута специально под единую сейчас создаваемую прикладную задачу. Ни сети, ни антивируса, ни....
Необходимые ресурсы: Графический интерфейс (Qt), работа с дисками, USB и работа со специализированной инструментальной платой. Ну и *уева куча математики. которая не требует никаких ресурсов, кроме проца.
Вроде бы первые шаги понятны. Поотключать ненужные аппаратные ресурсы, поотключать ненужные службы. А еще? да и определить ненужность устройств и служб для меня непросто.
Просьба помочь или конкретными советами по обрезанию винды, или ссылками на подобную информацию. Очень желательно русскоязычную.
Записан
LemmonRus
Помогающий

ru
Offline Offline
В правильно заданном вопросе 90% ответа.


« Ответ #1 : 27-05-2013 14:19 » 

Например:
(Онлайн)
http://www.oszone.net/2517/
(Файл CHM)
http://soft.oszone.net/program/63/Spisok_sluzb_v_Windows_XP/

А так ли нужно реальное время?
Плата работает асинхронно или синхронно?
Дело в том что иногда можно обойтись тем что есть, просто увеличив буфер обмена.
« Последнее редактирование: 27-05-2013 14:23 от LemmonRus » Записан
sss
Специалист

ru
Offline Offline

« Ответ #2 : 27-05-2013 14:24 » 

Их windows RT систему никак не сделать.

Моё мнение: Любая предсказуемая RT система однозадачна, при этом все прерывания запрещены, а ввод вывод аппаратуры выполняется
синхронно периодически из этого самого одного процесса. Тогда Вы сможете предсказать поведение с приемлемой точностью.
Записан

while (8==8)
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 27-05-2013 17:30 » 

Может что и получится: сочетанием, например, драйверов и прикладного не-RT кода.

Вообще условия задачи плохо описаны: плата, диски, USB, графика. Непонятно, например, почему плата увязана с графикой и с дисками. И графика и диски прекрасно поработают вне RT, если использовать достаточно ёмкие буферы. И прикладного смысла для пользователя в RT-графике нету, т.к. за 500 мкс человек не способен ни к какой осмысленной деятельности.

Не указано главное условие: объёмы данных, пропускная способность каналов устройств и процессора как обработчика, приоритеты. Потому как если нагрузка маленькая, работа будет стабильной. А если всё забито под завязку, и не определена иерархия приоритетов, даже RT будет себя вести как не попадающая в заданные интервалы Windows - с пропусками и потерями.
« Последнее редактирование: 27-05-2013 20:26 от Dimka » Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
v2
Помогающий

ua
Offline Offline

« Ответ #4 : 27-05-2013 19:28 » 

Цитата
чтобы получить приемлемое время реакции на события (хотя бы 0,5мс).
Что такое в данном случаи "событие?
Уже моделировали ситуацию -- ~499 мкс достаточно для дальнейшего, после события, выполнения полезной нагрузки?
Ответите на эти вопросы - продолжим дальше Ага

offtop:
Windows в Real Time System - есть уже такая, Windows RT называется  Да-да
Записан
zubr
Гость
« Ответ #5 : 27-05-2013 19:31 » 

Похоже на программатор. В принципе, если ту часть кода, которая требует жестких пауз всунуть в ядро, то должно прокатить.
Записан
v2
Помогающий

ua
Offline Offline

« Ответ #6 : 27-05-2013 21:49 » 

Цитата
куча математики
и без сети, действительно заинтриговал.
Записан
sss
Специалист

ru
Offline Offline

« Ответ #7 : 28-05-2013 01:14 » 

Windows в Real Time System - есть уже такая, Windows RT называется  Да-да

Всё же это не Real Time, а Run Time. Или даже вроде бы "Windows для ARM".
« Последнее редактирование: 28-05-2013 02:32 от sss » Записан

while (8==8)
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 28-05-2013 06:27 » 

А тогда такой вопрос: если графика Qt, почему не использовать QNX или Linux?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
LemmonRus
Помогающий

ru
Offline Offline
В правильно заданном вопросе 90% ответа.


« Ответ #9 : 28-05-2013 09:26 » 

А тогда такой вопрос: если графика Qt, почему не использовать QNX или Linux?
Linux в данном случае не сильно подходит.Ибо готовые дистрибутивы не подходят,
 а пилить свой это очень затратно.
QNX в данном случае оптимален но маленькое но.Он дико дорогой для
коммерческого использования..
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #10 : 28-05-2013 09:41 » 

LemmonRus, а XP вообще продаётся для коммерческого использования?

P.S. Ещё лет 5 назад разные "железячники" очень любили Win98 как систему, в которую просто добавить собственные драйвера, и от которой можно не ждать всяких сюрпризов. Да и "подпилить" её под свои нужды гораздо проще. Но, конечно, она не дружит с современными компьютерами: с большой памятью и дисками, многоядерными процессорами, USB-периферией, мощной графической подсистемой и прочими достижениями цивилизации.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
creaker
Интересующийся

ua
Offline Offline

« Ответ #11 : 28-05-2013 11:28 » 

LemmonRus
За ссылки спасибо.
На самом деле задача и система более сложная. Под виндой стоит подсистема реального времени IntervalZero RTX, на которой организован RT процесс. Вся работа идет оттуда. Но! Одна из инструментальных плат оказалась несовместимой с RTX, т.е. RTX не может выделить ей необходимые ресурсы. Поэтому  появилась идея работать с ней из винды. ПО платы организует отдельный поток (НЕ процесс!), асинхронный с основным потоком системы. Поскольку система спроектирована о 80% ПО написано и отлажено, то переделывать все с нуля (на Linux) нерационально или  (на QNX) дорого.
 
Dimka
Во время работы RTS-подсистемы (в нашей задаче) винда вообще не загружена, ждет окончания работы RTS-потока. А поскольку Win и RTS выполняются на разных ядрах проца, то ресурсов под виндой выше крыши.

v2
Событие - аппаратное прерывание от инструментальной платы.
Понятно, что решение корявое (работа из RTX и Win) но... надо выходить из сложившейся ситуации с наименьшими потерями.




Добавлено через 11 минут и 32 секунды:
LemmonRus
Собственно, меня интересует не список служб, а что нужно оставить из служб, чтобы обеспечить только выполнение прикладной задачи. А точнее, нужно обкарнать винду оп самое не хочу, чтобы уменьшить время реакции на события.
« Последнее редактирование: 28-05-2013 11:40 от creaker » Записан
v2
Помогающий

ua
Offline Offline

« Ответ #12 : 28-05-2013 14:00 » 

> Событие - аппаратное прерывание от инструментальной платы.
Это оно для драйвера платы,
>ПО платы организует отдельный поток (НЕ процесс!),
а для Вас в этом потоке, какое событие?

> что нужно оставить из служб
Если у Вас будут проблемы, остановка служб их не решит.

! Средний отклик при ожидании на Event-е в WinNT < 500 мкс (0,5мс)

> Всё же это не Real Time, а Run Time.
Я ж пошутил.
Записан
Ochkarik
Команда клуба

ru
Online Online
Пол: Мужской

« Ответ #13 : 28-05-2013 15:41 » 

creaker, а чей то за плата с RTX не совместимая? как-то я в растерянности даже) какой такой ей ресурс не выделяется то?
на крайний... можно пофантазировать... типа напрямую из драйвера винды в RTX пересылать через память....
« Последнее редактирование: 28-05-2013 15:43 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
sss
Специалист

ru
Offline Offline

« Ответ #14 : 29-05-2013 01:33 » 

Я ж пошутил.

Блин 8)
Записан

while (8==8)
creaker
Интересующийся

ua
Offline Offline

« Ответ #15 : 29-05-2013 18:21 » 

creaker, а чей то за плата с RTX не совместимая?
Плата таймеров TMC-12A (ISP DAS). При попытке обеспечить поддержку в RTX последняя не выделяет IRQ.
Собственно, мысль в том и состоит, чтобы обеспечить взаимодействие через Shared Memory. И хочется для этого максимально облегчить винду. По моему скромному разумению, это должно положительно сказаться на взаимодействии. Или нет?
> Событие - аппаратное прерывание от инструментальной платы.
Это оно для драйвера платы,
В RTX взаимодействие с платой происходит на уровне HAL или на аппаратном уровне. Мы работаем непосредственно с регистрами платы.

Добавлено через 4 минуты и 10 секунд:
! Средний отклик при ожидании на Event-е в WinNT < 500 мкс (0,5мс)
"Средний" меня не интересует. Желательно "Гарантированный". Ну а для винды, у которой ничего не гарантировано, хотя бы "максимально приближенный".

Добавлено через 7 минут и 22 секунды:
Как правильно отметил v2, "Средний отклик при ожидании на Event-е в WinNT < 500 мкс (0,5мс)". Это значит, что иногда будет 0.2мс, иногда 2.0, причем последнее тем больше, чем больше мусора в винде. Поэтому вопрос остается актуальным: Как максимально облегчить винду?
« Последнее редактирование: 29-05-2013 18:33 от creaker » Записан
Ochkarik
Команда клуба

ru
Online Online
Пол: Мужской

« Ответ #16 : 29-05-2013 19:31 » 

creaker, а чей то за плата с RTX не совместимая?
Плата таймеров TMC-12A (ISP DAS). При попытке обеспечить поддержку в RTX последняя не выделяет IRQ.
Собственно, мысль в том и состоит, чтобы обеспечить взаимодействие через Shared Memory. И хочется для этого максимально облегчить винду. По моему скромному разумению, это должно положительно сказаться на взаимодействии. Или нет?
> Событие - аппаратное прерывание от инструментальной платы.
Это оно для драйвера платы,
В RTX взаимодействие с платой происходит на уровне HAL или на аппаратном уровне. Мы работаем непосредственно с регистрами платы.
почему... монопольный доступ к IRQ наверное не может получить. можно другой слот попробовать или попытаться сконфигурить винду на неиспользование этого IRQ, хотя я ни разу не пробовал, но вроде "засеренные" галки в винде есть, может и метод ручного конфигурирования имеется.
облегчение винды не уверен, что прям будет настолько необходимо, если у вас два ядра хотя бы и второе - монопольно RTX. а вот может быть лишние драйвера выгрузить - может быть.
ЗЫ драйвер TMC-12A - свой?
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
creaker
Интересующийся

ua
Offline Offline

« Ответ #17 : 29-05-2013 19:59 » 

почему... монопольный доступ к IRQ наверное не может получить. можно другой слот попробовать или попытаться сконфигурить винду на неиспользование этого IRQ
Ни монопольный, ни совместный (я так понял, совместный в пределах RTX, т.к. одновременно из Win и RTX к одному IRQ получить в принципе невозможно), и вообще RTX пишет что-то типа "MSI несовместима" и отказывается выделить любое IRQ.
Пробовал во 2-м и 3-м PCI-слотах, не помогло.
Записан
Ochkarik
Команда клуба

ru
Online Online
Пол: Мужской

« Ответ #18 : 29-05-2013 20:04 » 

ааа... а версия RTX какая? где то была тема про MSI прерывания
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
creaker
Интересующийся

ua
Offline Offline

« Ответ #19 : 29-05-2013 20:08 » 

Другая плата (многофункциональный ввод-вывод) нормально конфигурируется RTX-ом, вешается на тот же IRQ, что и под виндой, и работает без проблем. Отключение этой платы тоже не помогает

Добавлено через 8 минут и 35 секунд:
Версия последняя из доступных (без покупки лицензии). Это 8.1.2 с 5-м апдейтом
« Последнее редактирование: 29-05-2013 20:16 от creaker » Записан
Ochkarik
Команда клуба

ru
Online Online
Пол: Мужской

« Ответ #20 : 29-05-2013 21:43 » 

очень интересно... почему тогда в User Manual (November 2012 Version 2.6) пишут фразу
"The interrupt of PCI-TMC12(A) is level-trigger. The interrupt signal can be active-low or active-high programmable."
вы уверены что она действительно MSI совместимая?
в последней версии RTX 8.1 поддержка MSI кстати  имелась. правда я не пользовал.
вот тут  "RTX проблемы с прерываниями "в свое время разбирались с одним товарищем, но не знаю чем дело кончилось. видимо ничем. но правда прерывание он таки зарезервировать вроде смог.
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
v2
Помогающий

ua
Offline Offline

« Ответ #21 : 30-05-2013 21:44 » 

Цитата
хотя бы "максимально приближенный".
EventUps.exe 4 2000
(click to show)
https://forum.shelek.ru/index.php?action=dlattach;attach=7090
Usage: EventUps.exe [Threads (def=8)] [CPUinMHz (def=2000)]
Note:  T1 (RDTSC -> us), T2 (QueryPerformanceCounter -> us)
------------------------------------------------------------
30.05.13 21:49:10.048 Start:2128
30.05.13 21:49:10.061 Start:2776
30.05.13 21:49:10.068 Start:1644
30.05.13 21:49:10.075 Start:2584
30.05.13 21:49:10.083 Main Start:2000
30.05.13 21:49:11.084 Event dt:1001000,us --------- (us us)) N:1
1644 : 13 13    Mid: 13 13       Min: 13 13     Max: 13 13
2776 : 36 36    Mid: 36 36       Min: 36 36     Max: 36 36
2128 : 19 45    Mid: 19 45       Min: 19 45     Max: 19 45
2584 : 41 42    Mid: 41 42       Min: 41 42     Max: 41 42
30.05.13 21:49:12.086 Event dt:1002000,us --------- (us us)) N:2
2776 : 15 15    Mid: 25 25       Min: 15 15     Max: 36 36
1644 : 11 11    Mid: 12 12       Min: 11 11     Max: 13 13
2584 : 25 25    Mid: 33 33       Min: 25 25     Max: 41 42
2128 : 47 47    Mid: 33 46       Min: 19 45     Max: 47 47
30.05.13 21:49:13.089 Event dt:1003000,us --------- (us us)) N:3
1644 : 11 11    Mid: 11 11       Min: 11 11     Max: 13 13
2584 : 34 34    Mid: 33 33       Min: 25 25     Max: 41 42
2128 : 50 50    Mid: 38 47       Min: 19 45     Max: 50 50
2776 : 30 31    Mid: 27 27       Min: 15 15     Max: 36 36
30.05.13 21:49:14.093 Event dt:1004000,us --------- (us us)) N:4
2776 : 13 13    Mid: 23 23       Min: 13 13     Max: 36 36
2584 : 20 20    Mid: 30 30       Min: 20 20     Max: 41 42
1644 : 30 30    Mid: 16 16       Min: 11 11     Max: 30 30
2128 : 61 61    Mid: 44 50       Min: 19 45     Max: 61 61
30.05.13 21:49:15.098 Event dt:1005000,us --------- (us us)) N:5
2584 : 19 20    Mid: 27 28       Min: 19 20     Max: 41 42
1644 : 34 34    Mid: 19 19       Min: 11 11     Max: 34 34
2128 : 50 51    Mid: 45 50       Min: 19 45     Max: 61 61
2776 : 30 32    Mid: 24 25       Min: 13 13     Max: 36 36
30.05.13 21:49:16.104 Event dt:1006000,us --------- (us us)) N:6
2584 : 22 23    Mid: 26 27       Min: 19 20     Max: 41 42
1644 : 30 29    Mid: 21 21       Min: 11 11     Max: 34 34
2128 : 49 49    Mid: 46 50       Min: 19 45     Max: 61 61
2776 : 31 32    Mid: 25 26       Min: 13 13     Max: 36 36
30.05.13 21:49:17.111 Event dt:1007000,us --------- (us us)) N:7
2584 : 20 21    Mid: 25 26       Min: 19 20     Max: 41 42
1644 : 28 29    Mid: 22 22       Min: 11 11     Max: 34 34
2128 : 46 47    Mid: 46 50       Min: 19 45     Max: 61 61
2776 : 31 33    Mid: 26 27       Min: 13 13     Max: 36 36
30.05.13 21:49:18.119 Event dt:1008000,us --------- (us us)) N:8
2776 : 31 32    Mid: 27 28       Min: 13 13     Max: 36 36
2584 : 19 20    Mid: 25 25       Min: 19 20     Max: 41 42
1644 : 37 37    Mid: 24 24       Min: 11 11     Max: 37 37
2128 : 51 52    Mid: 46 50       Min: 19 45     Max: 61 61
30.05.13 21:49:19.128 Event dt:1009000,us --------- (us us)) N:9
2776 : 9 9      Mid: 25 25       Min: 9 9       Max: 36 36
2584 : 14 14    Mid: 23 24       Min: 14 14     Max: 41 42
1644 : 457 459  Mid: 72 72       Min: 11 11     Max: 457 459
2128 : 485 486  Mid: 95 98       Min: 19 45     Max: 485 486
30.05.13 21:49:20.138 Event dt:1010000,us --------- (us us)) N:10
2776 : 24 24    Mid: 25 25       Min: 9 9       Max: 36 36
2584 : 30 30    Mid: 24 24       Min: 14 14     Max: 41 42
2128 : 32 32    Mid: 89 92       Min: 19 32     Max: 485 486
1644 : 7 7      Mid: 65 66       Min: 7 7       Max: 457 459
30.05.13 21:49:21.150 Event dt:1011000,us --------- (us us)) N:11
2776 : 11 11    Mid: 23 24       Min: 9 9       Max: 36 36
2584 : 20 21    Mid: 24 24       Min: 14 14     Max: 41 42
2128 : 46 46    Mid: 85 87       Min: 19 32     Max: 485 486
1644 : 51 51    Mid: 64 64       Min: 7 7       Max: 457 459
Цитата
Как максимально облегчить винду?
autoruns.exe
(click to show)

* EventUps.exe (50 Кб - загружено 1052 раз.)
* svc.gif (52.03 Кб - загружено 2171 раз.)
« Последнее редактирование: 30-05-2013 21:49 от v2 » Записан
sss
Специалист

ru
Offline Offline

« Ответ #22 : 31-05-2013 01:31 » 

Вообще можно тупо повторить набор драйверов и служб режима защиты от сбоев... По моему отключение служб не так
важно как, например, выключение поддержки виртуальной памяти, создания системного потока привязанного к конкретному
ядру с приоритетом Real Time и установки фиксированных коротких квантов планирования потоков...
Записан

while (8==8)
sss
Специалист

ru
Offline Offline

« Ответ #23 : 02-06-2013 13:21 » 

Вот тут читал и наткнулся:

Цитата:  Руссинович М., Соломон Д. 2008 Внутреннее устройство Microsoft Windows: Windows Server 2003, Windows XP и Windows 2000. стр.110

Windows и обработка данных в реальном времени
К средам, предназначенным для работы в реальном времени, предъявляются либо жесткие, либо очень жесткие требования к максимально
му времени реакции. Реакция системы реального времени, к которой предъявляются очень жесткие требования (например, системы управ
ления атомной электростанцией), должна быть исключительно быстрой, иначе неизбежны катастрофы, опасные не только для оборудования,
но и для жизни людей. Менее ответственные системы реального времени (например, система экономичного расхода топлива автомобиля)
могут в какойто мере отклоняться от этих требований, но их соблюдение все же желательно. В системах реального времени устройствами
ввода служат датчики, а устройствами вывода — управляющие устройства. Проектировщик компьютерных систем реального времени должен
знать величину максимально допустимого запаздывания между моментом генерации прерывания устройством ввода и ответом управляющего
устройства, контролируемого драйвером. Анализ самых неблагоприятных вариантов должен учитывать как запаздывание операционной системы,
так и запаздывание драйверов и приложений. Поскольку проконтролировать расстановку приоритетов IRQ устройств операционной
системой Windows нельзя, а пользовательские приложения выполняются лишь при IRQL уровня «passive», Windows не всегда подходит для
обработки данных в реальном времени. Максимальное запаздывание определяется в конечном счете устройствамии драйверами системы, а не
самой Windows. Этот фактор становится проблемой при использовании готового оборудования, имеющегося в продаже. Проектировщик может
столкнуться с трудностями при определении максимального времени выполнения ISR или DPC драйвера готового устройства. Даже после
тестирования он не сможет гарантировать, что запаздывание ни при каких обстоятельствах не превысит заданного предела. Более того,
суммарное запаздывание системных DPC и ISR, как правило, существенно превосходит значения, приемлемые для чувствительных к задержкам систем.
Хотя ко многим типам встраиваемых систем (например, к принтерам и автомобильным компьютерам) предъявляются требования, как к системам
реального времени, Windows XP Embedded не обладает соответствующими характеристиками. Это просто версия Windows XP, которая создана
с использованием технологии, лицензированной Microsoft у компании VenturCom, и способна работать в системах с ограниченными ресурсами.
Так, для устройства без сетевых функций исключается вся функциональность Windows XP, связанная с поддержкой работы в сетях, включая средства
управления сетью, драйверы стека протокола и сетевого адаптера.

Тем не менее третьи фирмы поставляют версии ядра реального времени для Windows. Их подход заключается в том, что они встраивают ядро реального
времени в собственный HAL и выполняют Windows как задачу в операционной системе реального времени. Windows, выполняемая в таком виде, служит
в качестве пользовательского интерфейса системы и имеет меньший приоритет по сравнению с задачами, ответственными за управление нужным
устройством. Пример расширения ядра Windows реального времени можно увидеть на Webсайте VenturCom www.venturcom.com.
« Последнее редактирование: 02-06-2013 13:25 от sss » Записан

while (8==8)
Ochkarik
Команда клуба

ru
Online Online
Пол: Мужской

« Ответ #24 : 03-06-2013 08:38 » 

sss, VenturCom - это как раз тот самый RTX, которую несколько лет назад перекупила IntervalZero. весчь очень прикольная и реально работающая. единственное, что надо учитывать - работу сторонних дров под Windows в использовании ресурсов шины, которая у обоих систем расшаренная, поэтому полного отсутствия влияния процессов Win на процессы RTX достичь конечно не удается. но в целом все очень неплохо)
PS есть еще несколько подобных систем. где то я в разделе встраиваемых систем их описывал из того что находил.
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
sss
Специалист

ru
Offline Offline

« Ответ #25 : 03-06-2013 12:34 » 

Ochkarik, ничего ранее не слышал даже  об этом! Может есть где summary на русском об RTX?
Записан

while (8==8)
creaker
Интересующийся

ua
Offline Offline

« Ответ #26 : 03-06-2013 20:47 » 

Ochkarik, спасибо за https://forum.shelek.ru/index.php/topic,27044.msg259927.html. Попробую перебросить завтра плату на 1-й слот, где у меня стоит другая плата. Но это не есть хорошо.
"Not all PCI slots can be set to an IRQ disposition of Device Exclusive. If you want your interrupt device to have an unshared IRQ, you should try to locate an empty, unshared PCI slot. Some interrupt devices, such as PCI NIC devices, may need an unshared, bus-mastering PCI slot."
Если это так, то с двумя платами работать будет проблематично.
Записан
Ochkarik
Команда клуба

ru
Online Online
Пол: Мужской

« Ответ #27 : 04-06-2013 09:41 » 

sss, вот тут разбирался немного Тема: RTOS for Windows  с тех пор все сильно улучшилось)
creaker  мож лишние девайсы на уровне биоса попробовать отрубить?
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
sss
Специалист

ru
Offline Offline

« Ответ #28 : 04-06-2013 10:58 » 

Ochkarik, спасибо!
Записан

while (8==8)
creaker
Интересующийся

ua
Offline Offline

« Ответ #29 : 04-06-2013 11:17 » 

В общем, я тут немного поковырялся в железе, и пришел к нерадостным выводам.
1. Под Win XP: устанавливаю в 1 и 2 PCI-слоты инструментальные платы. Винда нормально выделяет им ресурсы, в том числе IRQ (разные, 17 и 18).
2. Реализую поддержку плат RTX-ом (через inf). В 1-м слоте для любой из плат выделяется IRQ, во втором-нет. Ни в монопольном, ни в расшаренном режиме.
Попытка ручками назначить RTX-у неиспользуемый виндой IRQ ни к чему не приводит. Засада!
И что делать, если нужно работать с двумя платами? И вообще, откуда такая избирательность RTX-а?
Может, у кого-нибудь будут советы, как победить эту проблему. Советы просьба излагать поподробнее и попроще, я не гуру.
Записан
Страниц: [1] 2  Все   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines