реклама на сайте
подробности

 
 
> варианты ОСей для армов, что лучше?
Playnet
сообщение Jan 9 2007, 21:18
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 132
Регистрация: 10-05-06
Пользователь №: 16 930



Собираем плату на арме и появился вопрос, что лучше использовать как ось?
Есть поддержка у:
Gentoo (на сайте про это почти ничего нет, последние обновления аж в 2005 году)

Debian
Нашел несколько документов. Все ставят toolchain и qemu.

Эти системы на ядре 2.6 используются чаще всего
по доке http://www.opennet.ru/base/sys/linux_xscale.txt.html , очень древняя дока. Написана в 2004...
патчи к ядру ftp://ftp.arm.linux.org.uk/pub/armlinux/s...l-patches/v2.6/ датированы 2004 годом, где тогда брать более свежие..

FreeBSD
"Поддержка всё ещё минимальна, и покрывает только процессор, шину PCI-X, Ethernet-адаптеры em(4), а также таймер и UART.
Обеспечивается минимальная поддержка процессора StrongARM 1100, однако только в границах тех функций, что эмулирует Simics: CPU, UART и часы."
http://www.freebsd.org/ru/platforms/arm.html
Очень негусто.

NetBSD
Тут вообще непонятно, как собирать. Разве что через qemu.

Какие вообще есть утилиты?

uclinux
Уже изначально версия под микроконтроллеры.. Но каковы особенности и через что собсно надо собирать систему под себя?

А вообще, копаясь в инете, у меня сложилось впечатление, что в 2004-05 годах тема была актуальна, а потом ее просто все забросили.. Одно старье.
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 25)
COMA
сообщение Jan 10 2007, 00:49
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 851
Регистрация: 28-08-04
Пользователь №: 559



Лично я выбрал Gentoo.
То что "последние обновления аж в 2005" - вы немножко не правы smile.gif
Gentoo обновляется каждый день.

То что архивы стадии (stage1,2,3) не обновлялись, это не страшно.
emerge world - и у вас самый свежий gentoo smile.gif
Go to the top of the page
 
+Quote Post
spf
сообщение Jan 10 2007, 07:13
Сообщение #3


Странник
****

Группа: Свой
Сообщений: 766
Регистрация: 29-08-05
Из: Екатеринбург
Пользователь №: 8 051



Цитата(Playnet @ Jan 9 2007, 23:18) *
uclinux
Уже изначально версия под микроконтроллеры.

Забыли RTEMS.


--------------------
"Как много есть на свете вещей, которые мне не нужны!" Сократ
Go to the top of the page
 
+Quote Post
jack_avenger
сообщение Jan 10 2007, 15:21
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 170
Регистрация: 30-06-05
Из: Киев
Пользователь №: 6 426



Насчет FreeBSD нужно смотреть сюда http://www.embeddedfreebsd.org/, и у NetBSD дела с АRMом точно не хуже.
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 10 2007, 17:02
Сообщение #5


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



И есть еще eCOS


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
Playnet
сообщение Jan 10 2007, 17:15
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 132
Регистрация: 10-05-06
Пользователь №: 16 930



Цитата(COMA @ Jan 10 2007, 00:49) *
Лично я выбрал Gentoo.
То что "последние обновления аж в 2005" - вы немножко не правы smile.gif
Gentoo обновляется каждый день.

То что архивы стадии (stage1,2,3) не обновлялись, это не страшно.
emerge world - и у вас самый свежий gentoo smile.gif

А где почитать, как ставить именно арм-версию?
Какие надо ставить портажи?

Цитата(spf @ Jan 10 2007, 07:13) *
Цитата(Playnet @ Jan 9 2007, 23:18) *
uclinux
Уже изначально версия под микроконтроллеры.

Забыли RTEMS.

RTEMS users have built the toolset on many host operating systems but the RTEMS Project provides pre-built toolset binaries for the following development hosts:
GNU/Linux in RPM format
Cygwin as bzip'ed tar files
Solaris as bzip'ed tar files
In addition, FreeBSD provides "ports" for the RTEMS toolsets as part of their standard collection.

Интересная штука.. Надо будет попробовать.

Цитата(jack_avenger @ Jan 10 2007, 15:21) *
Насчет FreeBSD нужно смотреть сюда http://www.embeddedfreebsd.org/, и у NetBSD дела с АRMом точно не хуже.

http://www.embeddedfreebsd.org/building.html
NanoBSD, TinyBSD, m0n0wall. Это не совсем фря, а ее "отпочкования". Хоть и близкие к оригиналу..

Нету отзывов по линукс-версиям, там все так грустно? Генту не совсем линух, он сам себя ставит как нечто среднее между линухом и BSD.

А какие есть варианты сборки? Я так понимаю, если собираем особую версию ядра, единственный вариант -- зашить ядро с новой системой в устройство и только там запускать. Можно запустить в qemu, там собрать и отладить. Так?
Go to the top of the page
 
+Quote Post
Andy Great
сообщение Jan 10 2007, 17:26
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 793
Регистрация: 5-11-04
Из: Краматорск, Украина
Пользователь №: 1 057



Чего-чего, а Линукс-версий полнО. OpenWRT, Midge etc (MIPS), FloppyFW (x86). Под АРМ меньше значительно. Насчет запуска под qemu сейчас сильно интересуюсь.
Go to the top of the page
 
+Quote Post
Playnet
сообщение Jan 10 2007, 20:38
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 132
Регистрация: 10-05-06
Пользователь №: 16 930



Какая вообще разница между ОС реального времени и обычными? Что проще и надежнее?
Go to the top of the page
 
+Quote Post
etoja
сообщение Jan 11 2007, 08:52
Сообщение #9


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



ОС реального времени должна обеспечивать заранее известное время реакции на прерывание.
Windows и Linux не являются системами реального времени, так как могут заниматься своими процессами сколь угодно долго. Кроме того, Windows и Linux являются необозримыми системами, то есть даже опытный программист может никогда не разобраться в причине неработоспособности его программы под Linux.
ОС для встроенных систем следует применять только в случае крайней необходимости, например при использовании протоколов FTP/TCP/IP. При этом стоит использовать обозримые ОС с короткими исходными текстами, например uCOS-II.
Гарантию надёжности ОС вам не даст никто.
Почитайте лицензионное соглашение на любую ОС, даже бесплатную (обычно это соглашение никто не читает).
Там написано, что авторы ОС не отвечают за:
- потерю данных
- любой прямой и косвенный ущерб
- повреждение оборудования
- потерю коммерческой выгоды
и оказание технической поддержки пользователю/покупателю не влияет на ответственность авторов ОС.
Go to the top of the page
 
+Quote Post
Playnet
сообщение Jan 11 2007, 15:28
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 132
Регистрация: 10-05-06
Пользователь №: 16 930



Цитата(etoja @ Jan 11 2007, 08:52) *
ОС для встроенных систем следует применять только в случае крайней необходимости, например при использовании протоколов FTP/TCP/IP.

Многие производители используют линух, тот же длинк в точках доступа.. Поэтому и есть альтернативные прошивки.
Получается, CiscoIOS тоже реального времени? smile.gif
Go to the top of the page
 
+Quote Post
V3x
сообщение Jan 11 2007, 18:40
Сообщение #11





Группа: Новичок
Сообщений: 2
Регистрация: 11-01-07
Пользователь №: 24 334



Цитата(Playnet @ Jan 11 2007, 15:28) *
Цитата(etoja @ Jan 11 2007, 08:52) *

ОС для встроенных систем следует применять только в случае крайней необходимости, например при использовании протоколов FTP/TCP/IP.

Многие производители используют линух, тот же длинк в точках доступа.. Поэтому и есть альтернативные прошивки.
Получается, CiscoIOS тоже реального времени? smile.gif


Cisco вовсю используют ядро QNX =) Камни у инх 64bit RISC (от pcm sierra, broadcom может еще какие...)
А что касается оси, то сам пытаюсь выбрать что-нибудь на AT91.
Go to the top of the page
 
+Quote Post
Ivan_Kov
сообщение Jan 12 2007, 10:36
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 174
Регистрация: 30-10-06
Из: г. Курск
Пользователь №: 21 787



Начинаем пользовать uClinux. Собирается из под Linux. Собрать ядро из под Windows нахожу затруднительным. Расчитана на работу в процах без MMU. Ядро 2.4 само весит около метра. 2.6 - еще не пользовал, но в требованиях указан минимальный размер озу - 2 Мб.
Go to the top of the page
 
+Quote Post
V3x
сообщение Jan 12 2007, 12:51
Сообщение #13





Группа: Новичок
Сообщений: 2
Регистрация: 11-01-07
Пользователь №: 24 334



Господа, а что-нибудь кроме RTOS и uCOS можете посоветовать на AT91?
Go to the top of the page
 
+Quote Post
v_shamaev
сообщение Jan 12 2007, 13:40
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 304
Регистрация: 5-07-04
Из: г. Москва
Пользователь №: 259



Цитата(V3x @ Jan 12 2007, 12:51) *
Господа, а что-нибудь кроме RTOS и uCOS можете посоветовать на AT91?

Из свободных - eCos. Наиболее развитая из свободных средних осей - по количеству платформ, по масштабируемости и переносимости идеологии.


--------------------
Водку пьянствовать и безобразия нарушать!!!
Go to the top of the page
 
+Quote Post
jack_avenger
сообщение Jan 20 2007, 12:09
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 170
Регистрация: 30-06-05
Из: Киев
Пользователь №: 6 426



Цитата(Playnet @ Jan 10 2007, 18:15) *
Цитата(jack_avenger @ Jan 10 2007, 15:21) *

Насчет FreeBSD нужно смотреть сюда http://www.embeddedfreebsd.org/, и у NetBSD дела с АRMом точно не хуже.

http://www.embeddedfreebsd.org/building.html
NanoBSD, TinyBSD, m0n0wall. Это не совсем фря, а ее "отпочкования". Хоть и близкие к оригиналу..


Ситуация с поддержкой AT91RM9200 несколько изменилась:

The FreeBSD/arm port has grown support for the Atmel AT91RM9200. Boards based on this machine are booting to multiuser off either NFS or an SD card. The onboard serial ports, PIO, ethernet and SD/MMC card controllers are well supported. Support for the SSC, IIC and SPI flash parts in the kernel will be forthcoming shortly.

In addition to normal kernel support, the port includes a boot loader that can initialize memory and boot off IIC eeprom, SPI DataFlash, BOOTP/TFTP and SD memory cards.

The port will be included in forthcoming commercial products.
Open tasks:

1. Add support for other members of the AT91 family of arm9 processors.
2. Finish support for AT45D* flash parts.
3. Finish support for USB ports
4. Write support for USB Device functionality

Взято отсюда: http://www.freebsd.org/news/status/report-...tmel-AT91RM9200
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Jan 23 2007, 15:25
Сообщение #16


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Цитата(etoja @ Jan 11 2007, 07:52) *
ОС реального времени должна обеспечивать заранее известное время реакции на прерывание.
Windows и Linux не являются системами реального времени, так как могут заниматься своими процессами сколь угодно долго. Кроме того, Windows и Linux являются необозримыми системами, то есть даже опытный программист может никогда не разобраться в причине неработоспособности его программы под Linux.
ОС для встроенных систем следует применять только в случае крайней необходимости, например при использовании протоколов FTP/TCP/IP. При этом стоит использовать обозримые ОС с короткими исходными текстами, например uCOS-II.
Гарантию надёжности ОС вам не даст никто.
Почитайте лицензионное соглашение на любую ОС, даже бесплатную (обычно это соглашение никто не читает).
Там написано, что авторы ОС не отвечают за:
- потерю данных
- любой прямой и косвенный ущерб
- повреждение оборудования
- потерю коммерческой выгоды
и оказание технической поддержки пользователю/покупателю не влияет на ответственность авторов ОС.

Все это так, но хочется дополнить. Win embedded реального времени все же есть, и зовеЦЦо она Windows CE.NET. А для линукс, я так понял, существует модуль превращающий (а вернее дополняющий) ядро в RTOS...


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
Swed
сообщение Jul 12 2007, 11:32
Сообщение #17





Группа: Новичок
Сообщений: 6
Регистрация: 27-06-06
Пользователь №: 18 405



Цитата(V3x @ Jan 12 2007, 15:51) *
Господа, а что-нибудь кроме RTOS и uCOS можете посоветовать на AT91?



Советую eCos. Полно готовых портов. Простенькая ось и есть над чем поработать. Есть свой загрузочный модуль RedBoot, куча драйверов и др.
Go to the top of the page
 
+Quote Post
faa
сообщение Jul 13 2007, 21:21
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 726
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 394



Soft-RT можно и на linux и winCE. Все зависит от задачи (и от выбранного камня). Если графика, сеть и прочие прелести не нужны - проще все сваять с нуля smile.gif. Hard-RT с рюшечками (см. выше)- только с использованием доп.железа (FPGA и пр.). Если я не прав - коллеги поправят smile.gif
Go to the top of the page
 
+Quote Post
iit
сообщение Jul 16 2007, 03:49
Сообщение #19


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 8-11-04
Из: Томск
Пользователь №: 1 070



TN Kernel
www.tnkernel.com
Go to the top of the page
 
+Quote Post
compas
сообщение Jul 9 2010, 21:33
Сообщение #20





Группа: Участник
Сообщений: 14
Регистрация: 23-07-05
Пользователь №: 7 039



Есть ещё вариант - Unison RTOS
http://www.rowebots.com/
Доступна шаровая версия, но только в виде библиотеки
Go to the top of the page
 
+Quote Post
s.i.suprun
сообщение Sep 14 2010, 07:14
Сообщение #21


Участник
*

Группа: Validating
Сообщений: 71
Регистрация: 24-06-08
Из: Харьков
Пользователь №: 38 521



Цитата(Playnet @ Jan 10 2007, 00:18) *
Собираем плату на арме и появился вопрос, что лучше использовать как ось?
Есть поддержка у:
Gentoo (на сайте про это почти ничего нет, последние обновления аж в 2005 году)

Debian
Нашел несколько документов. Все ставят toolchain и qemu.

Эти системы на ядре 2.6 используются чаще всего
по доке http://www.opennet.ru/base/sys/linux_xscale.txt.html , очень древняя дока. Написана в 2004...
патчи к ядру ftp://ftp.arm.linux.org.uk/pub/armlinux/s...l-patches/v2.6/ датированы 2004 годом, где тогда брать более свежие..

FreeBSD
"Поддержка всё ещё минимальна, и покрывает только процессор, шину PCI-X, Ethernet-адаптеры em(4), а также таймер и UART.
Обеспечивается минимальная поддержка процессора StrongARM 1100, однако только в границах тех функций, что эмулирует Simics: CPU, UART и часы."
http://www.freebsd.org/ru/platforms/arm.html
Очень негусто.

NetBSD
Тут вообще непонятно, как собирать. Разве что через qemu.

Какие вообще есть утилиты?

uclinux
Уже изначально версия под микроконтроллеры.. Но каковы особенности и через что собсно надо собирать систему под себя?

А вообще, копаясь в инете, у меня сложилось впечатление, что в 2004-05 годах тема была актуальна, а потом ее просто все забросили.. Одно старье.



Извините за вопрос, а АРМ то какой ежели 7-й дак к нему из вашего списка, на сколько мине не изменяет склероз только uclinux подойдет, так как в 7-ке нету менеджера управления памятью, что и реализовано в оной. ежели 9-й то тогда милости просим к остальным, я на AT9260 ставил дебиан, ничего системка, правда для этого проца тяжеловатая, поэтому я тогда остановился на связке ядро линукса+busyBox - легковесная штука, грузится быстро, выполняет все что нужно + опыт по созданию работающей ОС с 0 biggrin.gif
Go to the top of the page
 
+Quote Post
ra9ftm
сообщение Sep 14 2010, 11:38
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 8-01-09
Пользователь №: 43 014



Кто-нибудь пробовал испытывать Realtime патчи для linux? Интересует именно четкая работа с переферией, прерываниями (spi, i2c).
Я накладывал, но вываливалось kernel panic при работе с нестандартным драйвером, поэтому пока что отложил smile.gif

Сообщение отредактировал ra9ftm - Sep 14 2010, 11:39
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Sep 14 2010, 16:17
Сообщение #23


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Цитата(ra9ftm @ Sep 14 2010, 14:38) *
Кто-нибудь пробовал испытывать Realtime патчи для linux? Интересует именно четкая работа с переферией, прерываниями (spi, i2c).
Я накладывал, но вываливалось kernel panic при работе с нестандартным драйвером, поэтому пока что отложил smile.gif

А чем патчили если не секрет? Теми патчами что превращают ядро в ветку RT? Или чо другое есть? Или имеются в виду модули и либы а-ля posix-1b?

И что не так с SPI? smile.gif Вот у Вас на компе PCI как на не RT системе работает? ЧОтко? smile.gif Вся эта возня с RT-OS это "борьба" с планированием - т.е. постановкой процессов на выполнение/завершение. В жизни количество процессов стохастично, а время их запуска асинхронно. В обычных системах постановка большого количества задач на выполнение или обработка одной очень ресурсоемкой может вызвать неопределенную задержку. Система тормозит. А в RT-толко определенную. Система тормозит, но не более чем... smile.gif . Все это для пользовательской части - обычных программ. В ядре правда несколько другие законы.

Тупой способ сделать RT в линуксе в условиях заводской лаборатории это написать драйвер аппаратного таймера(свой - чтобы точно понимать как он работает - я, например, не редко не могу понять чужой код с лету), а-ля вотчдог. Выбрать максимальный интервал затормаживания. Выбрать критичные к задержкам задачи. Вотчдог шлет сигналы по-ядру. Процесс в пространстве ядра (сделанный как драйвер - будет неивысший приоритет - никакими ренайсами не достижимый) читает структуру runqueue для каждого запущенного процесса. Как только время задержки относительно нашего таймера для критичных задач превышает 0.75 максимального времени, всем второстепенным программам шлется SIGKILL smile.gif . Как вариант, если есть время листать книжки замазанными машинным маслом руками, длительная борьба с перепланированием - nice/renice или прямо в ядре вызовом соответствующей функции (Бовет-Чезати ст.347).

Но я сделал еще проще - и еще гораздо тупее. smile.gif . У меня на платке точно известно количество задач. Я попробовал - ничего не тормозит. smile.gif . Единственная связь - Ethernet. Шлю только UDP пакеты. В ноут по "проводу" 1м длинной smile.gif . Это даже сервером не назовешь. Если у Вас Web-сервер - то, например, попробуйие отрабатывает ли он 20 соединений при максимальной нагрузке. Если да то поставьте ограничение на 10 - точно отработает. Вот и весь RT-Linux в домашних условиях smile.gif . Недостаток такого подхода - далеко не 100%-ное выжимание ресурсов из процессора/памяти.


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
sasamy
сообщение Sep 14 2010, 17:10
Сообщение #24


Знающий
****

Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858



Цитата(DRUID3 @ Sep 14 2010, 20:17) *
А чем патчили если не секрет? Теми патчами что превращают ядро в ветку RT? Или чо другое есть? Или имеются в виду модули и либы а-ля posix-1b?


Просвещайтесь smile.gif
http://www.ibm.com/developerworks/ru/libra...eal-time-linux/
а то у Вас какое-то однобокое понимание вопроса. Да - soft real time в Linux уже очень давно в основной ветке, я например всегда приимтивные ядра собираю.
Go to the top of the page
 
+Quote Post
dch
сообщение Sep 15 2010, 00:37
Сообщение #25


Профессионал
*****

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



Цитата(Playnet @ Jan 10 2007, 01:18) *
Собираем плату на арме и появился вопрос, что лучше использовать как ось?

а на каком?
Go to the top of the page
 
+Quote Post
ra9ftm
сообщение Sep 15 2010, 03:23
Сообщение #26


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 8-01-09
Пользователь №: 43 014



Цитата(DRUID3 @ Sep 14 2010, 19:17) *
А чем патчили если не секрет? Теми патчами что превращают ядро в ветку RT? Или чо другое есть? Или имеются в виду модули и либы а-ля posix-1b?


Спасибо за ответ развернутый.
Патчили этим http://www.kernel.org/pub/linux/kernel/projects/rt/
После наложения патча в конфигурации ядра кроме CONFIG_PREEMPT появляется CONFIG_PREEMPT_RT.
После можно использовать утилиту "chrt" для изменения Realtime-приоритета процессу (либо использовать системные функции при компиляции). chrt помогает и без накладывания RT-патча.

Вообще задача такая: нужно получать прерывания от внешнего источника (с частотой 800 Гц ) и по ним обращаться к SPI, проделывать необходимые вычисления, обращаться к /dev/ttyS0. Работает но время между прерываниями болтается. В любом случае должен быть драйвер (для обработки прерывания) ввиде какого-то /dev/myinterrupt + пользовательский процесс в системе.

Сообщение отредактировал ra9ftm - Sep 15 2010, 03:26
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 23:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01592 секунд с 7
ELECTRONIX ©2004-2016