|
eCOS vs uCOS vs WinCE vs Linux для i586, Выбор реал-тайм ОСи |
|
|
|
Jan 26 2010, 16:10
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 7-04-08
Из: Беларусь
Пользователь №: 36 547

|
Есть плата процессора используемая в составе контроллера формата MicroPC. Нужно определиться с наиболее подходящей реал-тайм ОСью. Процессор класса Pentium 300 мГц, RAM 32 Мб, HDD - CompactFlash 512 Мб, СОМ, Ethernet, VGA, USB. При старте стартует BIOS который запускает систему с CompactFlash. ОСь должна позволять писать-отлаживать программу на целевой плате. Т.е. На этоту плату процессора поставил ОСь, компилятор, подключил клаву и пишу. Причём при отладке должен ставить точки останова, трассировать по шагам. Т.е. работать как за обычной ЭВМ. Графический режим не нужен. Достаточно консоли. Посоветуйте что выбрать. 1. При беглом взгляде на реал-тайм ОСи понравилась eCOS. Но так и не понял можно ли на неё поставить компилятор предназначенный для Линукс? Или для неё монитор с клавой ругательные слова? Везде пишут только как сильно можно её урезать. А писать прямо на ней можно? 2. WinCE симпатична тем что думаю не будет шока как от Линукс. Наверняка много ДОКи и форумов в инете. 3. Линукс, ну тут вариантов просто тьма, самому не разобраться. Пугает полное не понимание чего и как. Но т.к. многие идут в этом направлении, пытаюсь изучать. Начал с Ubuntu. 4. BlueCat Linux, ничего не знаю о ней кроме этого описания. Вроде не реал-тайм. 5. uCOS увидел на этом сайте, но не понял для каких процессоров она. В инете вообще о ней ничего неслышно.
|
|
|
|
|
Jan 28 2010, 12:34
|
Местный
  
Группа: Свой
Сообщений: 466
Регистрация: 21-06-05
Пользователь №: 6 205

|
Цитата 3. Линукс, ну тут вариантов просто тьма, самому не разобраться. Пугает полное не понимание чего и как. Но т.к. многие идут в этом направлении, пытаюсь изучать. Начал с Ubusntu. Для прояснения ситуации советую почитать Building Embedded Linux System. Написано очень просто и понятно. Для "въехать" самое оно. А дальше уже самому будет понятно что делать и куда развиваться.
|
|
|
|
|
Jan 28 2010, 13:41
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 7-04-08
Из: Беларусь
Пользователь №: 36 547

|
Цитата DOS Сечас всё под DOSом и есть. Есть потребность в развитии "что бы не отстать". Под DOSом проблемы с файловой системой, вызвал функцию записать кусок файла и твоя прога стала колом пока всё реально не запишеться. Т.е. не умеет писать файл в фоновом режиме, а мне только сообщить об окончании для получения новой порции. Также есть вопросы по Ethernet и ТСР драйверу, пока использую пакетный драйвер+ТрумплетТСР. Но под новые процессора можно пакетника и не найти (в комплекте идут драйвера только под операционки). Цитата Интересно, а с чем связано требования писать код непосредственно на целевой системе? Удобство отладки!!! Сейчас так и делаю, да и мощность позволяет. Система представляет собой контроллер в виде корзины со слотами. В него вставляется плата процессора и куча плат ввода-вывода и связных RS232/RS485. Процессор должен опрашивать все эти платы постоянно, обмениваться по связи в несколько направлений одновременно. Т.е. я хочу сказать что в программу поступает куча внешних сигналов и при отладке нужно ставить точки останова на события от внешних воздействий и трассировать по шагам. Про uCOS и еCOS так и не ответили, можно ли прямо на них писать? Или это для оч встраиваемых систем, и писать только на компе?
|
|
|
|
|
Jan 28 2010, 13:52
|
Местный
  
Группа: Свой
Сообщений: 466
Регистрация: 21-06-05
Пользователь №: 6 205

|
Цитата Удобство отладки!!! Если брать конкретно Linux, то там можно на целевой платформе запустить GDB сервер (отладчик) и дальше уже не быть привязанным клавиатурой к вашему целевому устройству.Тоже самое и относительно компиляции программ - программа собирается на "большом" компьютере, далее по какому-то из интерфейсов (например ethernet) заливается на целевую платформу. Цитата Про uCOS и еCOS так и не ответили, можно ли прямо на них писать? Скорее всего что нет.
|
|
|
|
|
Jan 28 2010, 13:55
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(vad74 @ Jan 28 2010, 16:41)  Под DOSом проблемы с файловой системой, вызвал функцию записать кусок файла и твоя прога стала колом пока всё реально не запишеться. Т.е. не умеет писать файл в фоновом.... Это просто Вы не умеете их в фоне писать. Может просто научиться??? Цитата Но под новые процессора можно пакетника и не найти Не процессоры, а контроллеры. Реально новых давно уже нет, массовых тем более немного, а накрайняк из похожих ваяются. Я, например, уже за последние годы интеловский десятилетней давности уже раза 3 PID добавлял  . Пакетник штука простая. Цитата(kurtis @ Jan 28 2010, 16:52)  Если брать конкретно Linux, то там можно на целевой платформе запустить GDB сервер (отладчик) и дальше уже не быть привязанным клавиатурой к вашему целевому устройству. Вы не поверите, но это умеет c 80x годов досовский борлондячий отладчик правда только по RS232.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jan 28 2010, 15:05
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 7-04-08
Из: Беларусь
Пользователь №: 36 547

|
Цитата Может просто научиться? Внимательно слушаю, научите. Я уже доходил до того что писал файл по секторам вызывая BIOS а не DOS. Как ещё быстрее не знаю. Файловая система FAT-16, носитель CompactFlash, подключен через IDE порт. Цитата Я, например, уже за последние годы интеловский десятилетней давности уже раза 3 PID добавлял Не понял, пакетник под каждый контроллер ведь свой. Иначе как он знает как с этой микрухой работать? Да и этот ТСР драйвер под DOS отавляет желать лучшего, может есть другие, подскажите? Цитата Вы не поверите, но это умеет c 80x годов досовский борлондячий отладчик правда только по RS232 Знаю. Причём пользовался. Честно говоря, работать можно но только от без выходности. Цитата Скорее всего что нет Тогда какие остаются варианты из реал-тайм клонов Линукса, посоветуйте из чего смотреть. Писать драйвера наверно придётся. Т.к. нужен прямой доступ к платам, которые установленны в ISA слоты. Ещё хочу спросить есть ли в еCOS текстовый или графический экран?
|
|
|
|
|
Jan 29 2010, 09:11
|
Гуру
     
Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847

|
uCOS - глухой embedded, никаких 'компиляторов на ней' нет и не предвидется
eCOS - аналогично. В eCOS есть встроенный gdb stub - поддерживает удаленную отладку через RS232 или Ethernet. Экран в eCOS есть, текстовый точно, насчет графики не в курсе, вроде тоже что то есть. Update: есть 'Microwindows' (NanoGUI)
eCOS черезвычайно сильно конфигурируемая система - можно из всего, что в ней есть выбрать то, что надо и настроить, как надо
NB. eCOS это не Linux, у них ВООБЩЕ нет ничего общего!
Сообщение отредактировал XVR - Jan 29 2010, 09:15
|
|
|
|
|
Jan 29 2010, 12:37
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 7-04-08
Из: Беларусь
Пользователь №: 36 547

|
Общее у них POSIX совместимость. Так и Linux это совсем не Unix, а только совместим по вызовам API. Вот про удаленную отладку через Ethernet если можно подробнее. Понимаю так: на Таргеге стартует ОСь и запускает сервис который ощается по Ethernet с Хостом(компом). На компе я в чём то пишу и отлаживаю, и это как будто моя прога работает на Таргете. Это мне тоже подходит. Главный вопрос - на компе я должен писать и отлаживаться в строго определённой (для каждой ОСи) проге, или могу использовать любой сторонний компилятор генерящий код для данной ОСи? Нужна такая ОС которая позволяет отлаживаться на чужом компиляторе.
|
|
|
|
|
Jan 29 2010, 13:28
|
Гуру
     
Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847

|
Цитата(vad74 @ Jan 29 2010, 15:37)  Общее у них POSIX совместимость. Неа. У eCOS есть подсистема совместимости (читай эмуляции) posix, но его родное API - не posix, а нечто совершенно свое Цитата Вот про удаленную отладку через Ethernet если можно подробнее. Понимаю так: на Таргеге стартует ОСь и запускает сервис который ощается по Ethernet с Хостом(компом). Нет. Твоя прога линкуется с ядром eCOS'а, получившийся бинарь (образ) грузится на Таргет (например через RedBoot, который кстати, то же является приложением eCos'а) Там оно запускается, после чего к нему можно цепляться дебагером (RedBoot позволяет это сделать на лету) Цитата Главный вопрос - на компе я должен писать и отлаживаться в строго определённой (для каждой ОСи) проге, или могу использовать любой сторонний компилятор генерящий код для данной ОСи? eCOS заточена под gcc и gdb. Цитата Нужна такая ОС которая позволяет отлаживаться на чужом компиляторе. Если этот 'чужой' компилятор поддержит расширения gcc, а 'чужой' отладчик сможет работать с gdb stub'ом - то ради бога  Боюсь только, что врядли найдется второй такой компилятор и отладчик
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|