В першу чергу я хотів би зазначити, що я новачок в програмуванні систем у режимі реального часу, тому я не впевнений, чи мої запитання правильні. Вибачте за це, але мені потрібна допомога
Питання коротко: Як реалізувати жорстке програмне забезпечення в реальному часі, щоб бути впевненим, що воно відповідає жорстким строкам? Потрібно використовувати деякі функції QNX? Або достатньо лише написати його для Linux, порту на QNX, і це буде за умовчанням у режимі реального часу?
Повне питання: Ми реалізували складне багатопроцесорне багатопроцесорне програмне забезпечення з міжпроцесорним спілкуванням для Linux, Windows, Android та QNX. Мова програмування - це C ++, ми використовуємо Boost та planty інших libs. Наше програмне забезпечення робить свою роботу добре і швидко, але вона все ще є прототипом. Для виробничих цілей нам потрібно це робити в режимі реального часу. Деякі наші функції повинні бути в режимі реального часу та дуже надійними, оскільки вони дуже важливі, і безпека людей, які використовують наше програмне забезпечення, може залежати від них. Вони працюють досить швидко - до сотні мілісекунд. Але я не впевнений, що наша система насправді в реальному часі через цей факт (я правий?).
Отже, головне питання: як змінити наше програмне забезпечення в режимі реального часу? Я багато в гугле, але досі не маю уявлення, як це зробити.
Деякі додаткові відомості про наші платформи: Linux та Windows, які ми зараз використовуємо лише для тестування. Android - ми все ще не вирішили, чи потрібен він нам. QNX - це наша цільова ОС для виробництва. Я думаю, що відповідь на моє наступне питання - "НІ" :) Але чи взагалі можна реалізувати міжплатформенне програмне забезпечення в режимі реального часу (для ОС в режимі реального часу (RTOS), а також для ОС загального призначення (GPOS))?
Можливо, нам потрібно докласти зусиль для впровадження всіх функцій у режимі реального часу лише для QNX? Але я досі не розумію, як це зробити. Чи може хтось пролити світло на це питання?