roboforum.ru

Технический форум по робототехнике.

uClinux, и с чем его едят.

uClinux, и с чем его едят.

Michael_K » 24 июл 2011, 10:48

Не нашел раздела про программирование. Пусть будет в "микроконтроллерах".

Итак, я знаю, что на форуме есть продвинутые "линуксоиды" и "эмбеддеры".
Возможно, кто-то знает такую операционочку.

Хочется от них получить ликбез по сборке/настройке/конфигу/запуску
uClinux на собственном железе (естественно нестандартном).
Хочется лично мне, но думаю, еще кому-то будет интересно.

Начать нужно с сааамых азов. А дальше как пойдет... может и до программирования приложений под нее дойдем.

Буду рад любой помощи.

Re: uClinux, и с чем его едят.

Grem » 24 июл 2011, 11:17

В гугле забанили?
Когда-то пользовался этим гайдом.

Re: uClinux, и с чем его едят.

Michael_K » 24 июл 2011, 11:34

Таких "гайдов" как раз завались.
Там перечислены шаги, которые нужно сделать, но не написано зачем их делать, почему так, и какой в этом смысл.

Без этого невозможно понять, как изменится процедура, если у меня контроллер AVR32 или LPC24xx, "диск" представляет собой датафлэш на порту SPI4, причем выбор этой флэшки происходит ногой PB0.13, "консоли" нет вообще и т.д.

Это гиды "для эникейщиков" - все равно, что дать схему, но не объяснить, как она работает. Что будет, если у меня другое напряжение питания, как нужно изменить номиналы, если мне нужно заменить транзистор, что будет, если вместо одного килоома я поставлю полтора.

Соответственно, у эникейщика нет никаких шансов отладить/починить/запустить устройство или программу, если "что-то пойдет не так". А оно обязательно пойдет не так.

Re: uClinux, и с чем его едят.

Strijar » 24 июл 2011, 23:20

Если вы не имели дела с Linux до этого - не стоит пытаться запускать его на своем железе. Освойте сначало что нибудь работающее - тогда сможете понять, что и зачем. А затем уже запускайте на своем.

Re: uClinux, и с чем его едят.

Michael_K » 25 июл 2011, 00:06

Я имел дело со встроенным линукс. И даже приложения под него писал.

Только все дело именно ограничивалось "скачать-распаковать-загрузить-пойти в консоль". В случае "стандартного" железа, готового образа и билдрута заточенного под него, естественно, вопросов не возникает.

Всякие "кик-старты" и пошаговые инструкции типа "набери make /config make install и все заработает" меня в данном случае не интересуют.
Понимаете?

Добавлено спустя 2 минуты 31 секунду:
Strijar писал(а):Освойте сначало что нибудь работающее.

Освоить - это очень широкое слово и уровни освоения очень разные.

У меня мозги так устроены, что я не могу понимать что-то "сверху вниз". Мне нужно понимать с самого начала. С битиков, байтиков и ножек и двигаться к функциям, библиотекам, драйверам и операционкам. А не наоборот.

Re: uClinux, и с чем его едят.

Strijar » 25 июл 2011, 08:18

Michael_K писал(а):У меня мозги так устроены, что я не могу понимать что-то "сверху вниз". Мне нужно понимать с самого начала. С битиков, байтиков и ножек и двигаться к функциям, библиотекам, драйверам и операционкам. А не наоборот.


А ну тогда вопрос теряет смысл! - "Что бы научиться бить человеку морду, надо бить человеку морду!" (с) ВДВ ;)
А что бы понимать все с самого начала, нужно наверное взять ПЛИС и делать свою реализацию ARM ;) Вот это и будет с самого начала. Хотя... ;)

Re: uClinux, и с чем его едят.

Michael_K » 25 июл 2011, 08:31

Strijar, а почему, собственно, вы думаете, что я этот этап не прошел?

Re: uClinux, и с чем его едят.

Strijar » 25 июл 2011, 10:24

Michael_K писал(а):Strijar, а почему, собственно, вы думаете, что я этот этап не прошел?


Без обид, из вопросов ;) Я вот наоборот иду сверху-вниз. Тогда есть возможность остановиться на каком угодно уровне. Я остановился на ПЛИС стартуя из ОС. А так с чего "стартовать" вверх - с 155ЛА3? А может с транзистора? А ведь он тоже сделан - из молекул ;)

Re: uClinux, и с чем его едят.

setar » 25 июл 2011, 11:40

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

Re: uClinux, и с чем его едят.

Strijar » 25 июл 2011, 12:33

Кстати, возвращаясь в топпик - процессор то какой вообще? Или перефразируя известно - "Если не указан - значит ARM" ;)
Я вот сейчас занимаюсь uClinux на SPARC V8 (под ПЛИС), потом на него же буду нормальный Linux ставить (хочу включаю MMU, хочу не включаю)

Re: uClinux, и с чем его едят.

Michael_K » 25 июл 2011, 20:30

Strijar писал(а):А так с чего "стартовать" вверх - с 155ЛА3? А может с транзистора? А ведь он тоже сделан - из молекул ;)

И что вас смущает? :)

Какой проц

Для начала АРМ7.
У меня вообще сейчас есть две задачи - одна на LPC2478, а другая на AVR32UC3.
Сами по себе задачи я, конечно, решу и безо всяких осей - это я как раз умею :)
Но с другой стороны, почему бы не продвинуть свой уровень?

Меня в оси привлекают следующие вещи:
- готовая (пусть и кривенькая) многозадачность,
- более-менее стандартный API
- библиотеки-драйвера (файловая система, коммуникации, графика)

Прошу заметить, что все остальное меня волнует гораздо
меньше (а некоторые фичи конкретно напрягают).
И я, честно говоря, не очень понимаю, как "отделить зерна от плевел".

По поводу "кросс-компиляторов", "окружения" и т.п.
Я повторюсь - написать программу по голому железу и зашить в проц я могу.
Тут проблем нет. GCC из-под винды.

Re: uClinux, и с чем его едят.

Сергей » 25 июл 2011, 21:05

Для таких целей подойдет какая-нибудь RTOS в пару файлов кода. Стандартный API? графика и коммуникации? Не для таких систем. А то потом выйдет очередной Android с минимальными требованиями 600МГц. Жалко нет нормальной альтернативы линуксу для железа

Re: uClinux, и с чем его едят.

Michael_K » 25 июл 2011, 21:36

Сергей писал(а):Для таких целей подойдет какая-нибудь RTOS в пару файлов кода.

Да, конечно, подойдет RTOS, подойдет вообще безосная самописка, подойдет уклинукс (я надеюсь).
Если вам что-то известно, почему бы он мог не подойти, то говорите.

Сергей писал(а):Стандартный API? графика и коммуникации? Не для таких систем.

Я не понял, что вы хотели сказать. Не для каких - "не для таких"?

Re: uClinux, и с чем его едят.

Romikgy » 25 июл 2011, 22:46

четкая черта этого форума, это говорить много , но не о том что просят ((((
интересная тема, помогите решить\объеснить вопрос с uclinux, зачем решать за других , нужно им это или нет ?

Re: uClinux, и с чем его едят.

Сергей » 25 июл 2011, 22:48

Я имел ввиду линукс плохо подходит для небольших встраиваемых решений, даже которые оперируют с файловыми системами и графикой. Но это говорю по собственному опыту. Когда-то баловался с ним на NGW100 devboard AVR32. Конечно здорово когда уже все готовое - консоль, драйвера и прочее. Но СТОЛЬКО лишний операций системных вызовов и прочего. Писал модули под ядро - это было не то, чтобы сложно, но тонны документаций на команды сборки, сумасшедший API с килотоннами структур просто вывели меня из себя.


Rambler\'s Top100 Mail.ru counter