Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: scmRTOS как POSIX thread
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > scmRTOS
Legath
Добрый день.
я вновь вернулся на форум после нескольких лет написания диссертации lol.gif
Пришла мне в голову идея что не плохо бы для отладки поведения прошивки МК эмулировать алгоритм внутри приложения ББ.
Собственно от этого возник вопрос не пытался ли кто нибудь запустить scmRTOS как POSIX процесс?
И если нет, хотелось бы спросить у разработчиков считают ли они такую работу перспективной? Может ли она быть полезной кому то кроме меня?
dxp
QUOTE (Legath @ Jun 2 2015, 21:32) *
Добрый день.
я вновь вернулся на форум после нескольких лет написания диссертации lol.gif
Пришла мне в голову идея что не плохо бы для отладки поведения прошивки МК эмулировать алгоритм внутри приложения ББ.
Собственно от этого возник вопрос не пытался ли кто нибудь запустить scmRTOS как POSIX процесс?
И если нет, хотелось бы спросить у разработчиков считают ли они такую работу перспективной? Может ли она быть полезной кому то кроме меня?

Подобная тема когда-то давно уже поднималась, но я, к стыду своему, как тогда не понимал сути, так и сейчас. Мотив ясен - вынести на РС отладку кода, и в случае обычного вычислительного кода это хорошее и правильное решение, но когда объектом разработки является программа для МК, где свой непростой "проприетарный" контекст - например, конкретная периферия микроконтроллера, то я не понимаю, как это можно отлаживать на РС, где нет ни таймеров, ни последовательных портов, ни контроллера прерываний и т.п.

Если у вас есть идеи, как это сделать, и желание их реализовать, то вы можете принять участие в проекте (вопрос с доступом к репозиторию проекта легко решается).
AHTOXA
ИМХО:
Отладить на ПК какой-то вычислительный алгоритм - это запросто, но для этого не нужны потоки оси и их взаимодействие. А отладка взаимодействия процессов оси на ПК не имеет смысла, потому что для этого уже всяко нужна периферия и её прерывания. Поэтому думаю, что портировать ось на ПК не имеет смысла.
Разве что писать потом программы для ПК. Кстати, периодически при написании программ для ПК ловлю себя на мысли, что "вот здесь было бы удобнее с использованием механизмов scmRTOS" sm.gif
Legath
Цитата(AHTOXA @ Jun 3 2015, 11:23) *
ИМХО:
Отладить на ПК какой-то вычислительный алгоритм - это запросто, но для этого не нужны потоки оси и их взаимодействие. А отладка взаимодействия процессов оси на ПК не имеет смысла, потому что для этого уже всяко нужна периферия и её прерывания. Поэтому думаю, что портировать ось на ПК не имеет смысла.
Разве что писать потом программы для ПК. Кстати, периодически при написании программ для ПК ловлю себя на мысли, что "вот здесь было бы удобнее с использованием механизмов scmrRTOS" sm.gif


В портировании и я не вижу смысла. А вот отладить межпроцессное взаимодействие в рамках проекта, а самое главное сэмулировать работу устройства (JTAG/SWD не берем в рассчет) было бы удобно.
Эмуляцию прерываний я вижу реализуемой через POSIX timers, так же как и SysTick. В этом случае мы можем "более менее" выставить временнЫе соотношения.
Сергей Борщ
Цитата(AHTOXA @ Jun 3 2015, 11:23) *
Кстати, периодически при написании программ для ПК ловлю себя на мысли, что "вот здесь было бы удобнее с использованием механизмов scmRTOS" sm.gif
Я тоже. При этом хотелось бы, чтобы собиралось и под вин и под лин.
Legath
Цитата(Сергей Борщ @ Jun 3 2015, 13:00) *
Я тоже. При этом хотелось бы, чтобы собиралось и под вин и под лин.


mingw ест линуховые исходники хорошо. Думаю это не будет проблемой. но вот за виндовое время реакции я не уверен.
skyspark
Добрый день.

Пробовал сделать по аналогии с FreeRTOS под Qt, но с движком WinAPI. Доделать не успел, и сейчас на это нет времени, код могу выложить на bitbutcket.
Legath
Цитата(skyspark @ Oct 8 2015, 02:12) *
Добрый день.

Пробовал сделать по аналогии с FreeRTOS под Qt, но с движком WinAPI. Доделать не успел, и сейчас на это нет времени, код могу выложить на bitbutcket.

Думаю всем будет интересно
skyspark
Цитата(Legath @ Oct 13 2015, 13:49) *
Думаю всем будет интересно


Выложил https://bitbucket.org/skyspark/scmrtos-mingw-port.
Писал наспех, за вечер, из кода текущего проекта так что есть некоторые актефакты.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.