Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Оси
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы
Страницы: 1, 2, 3
Kornelij
Цитата(murug @ Dec 17 2012, 09:16) *
И еще, вопрос объема используемой памяти оказался все-таки актуальным. Какого порядка объемы флеша и ОЗУ нужны под ядро линукса и под каждую задачу?

Зависит от задачи. Минимум 4МВ флэш и 16МБ RAM но начинать лучше с 8МВ флэш и 64МБ RAM.
TigerSHARC
Цитата(Kornelij @ Dec 18 2012, 10:06) *
но начинать лучше с 8МВ флэш и 64МБ RAM.

это вы с чего взяли? я запускался на AT91+4MBDataFlash+32MB_SDRAM
слабее конфигурацию не пробовал.
demiurg_spb
Цитата(TigerSHARC @ Dec 18 2012, 13:59) *
слабее конфигурацию не пробовал.
Ничего, другие это проделали:-)
http://dmitry.co/index.php?p=./04.Thoughts...nux%20on%208bit
AlexandrY
Цитата(demiurg_spb @ Dec 18 2012, 15:11) *
Ничего, другие это проделали:-)
http://dmitry.co/index.php?p=./04.Thoughts...nux%20on%208bit


Цитата
...uARM is certainly no speed demon. It takes about 2 hours to boot to bash prompt...


Фанатик, что сказать. В Google людям видать больше нечего делать.
SyncLair
Цитата(murug @ Dec 14 2012, 14:25) *
Сугубо практический вопрос на обсуждаемую тему.
Или может быть линукс содержит какие-то вкусности, которые в рамках обрисованной задачи компенсируют время, потраченное на его освоение?

TCP/IP -- помоему одна из действительных вкусностей. А так рекомендую Вам поначалу взять этот чип (если уж вы решились именно на этот), а затем перейти на CotexM3 LPC178x он должен идти ножка в ножку с LPC2478. А FAT32 с USB HOST у меня как одельный поток неплохо работает.

CotexM3 действительно более хорош для более быстрой реакции на прерывания чем LPC2478.

Перифирия у чипов схожая. Если хотите возится с переносимостью кода, то см мой проект.
haker_fox
QUOTE (murug @ Dec 14 2012, 18:25) *
Или может быть линукс содержит какие-то вкусности, которые в рамках обрисованной задачи компенсируют время, потраченное на его освоение?

Еще как содержит. Линук он почти везде. Только называется по разному. А вкусности, да вот некоторые:
1. Разнооразные ФС: классика FAT'ы, ext, EFSL...
2. Сетевые стеки. Некоторые уверяют, что чуть ли не лучшие, но это, наверно эмоции rolleyes.gif
3. Куча приложений: сервера, клиенты, прикладное ПО. Помню на платке с 9 армом запустил дебиан, фильмы, конечно, не тянул толком, но как роутер работал.
4. Графические подсистемы.

5. Ну и потому, что это просто линукс!!! bb-offtopic.gif bb-offtopic.gif bb-offtopic.gif
AlexandrY
Цитата(haker_fox @ Dec 19 2012, 06:16) *
Еще как содержит. Линук он почти везде. Только называется по разному. А вкусности, да вот некоторые:
1. Разнооразные ФС: классика FAT'ы, ext, EFSL...
2. Сетевые стеки. Некоторые уверяют, что чуть ли не лучшие, но это, наверно эмоции rolleyes.gif
3. Куча приложений: сервера, клиенты, прикладное ПО. Помню на платке с 9 армом запустил дебиан, фильмы, конечно, не тянул толком, но как роутер работал.
4. Графические подсистемы.


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

А линукс теперь ни то ни сё. Памяти требует кучу , а приложения - слабое подобие андроида.
Голым стеком TCP теперь никого не удивишь. Вон даже TI уже выпустил открытую RTOS с роутингом.
Важно не наличие маршрутизации, а средства ее конфигурирования, драйвера и средств отладки.
Файловых систем куча это не вкусность, а головная боль.
Почему бы уже не определиться и не использовать единую встраиваемую ФС, как например это умеет делать uC/FS?
murug
Цитата(TigerSHARC @ Dec 17 2012, 09:41) *
смотря с какой частотой прерывания поступают. Навскидку: прерывания до 1кГц только можно "ловить вовремя", быстрее - сложнее. А о частотах порядка мегагерц и речи нет.

Вот подобный ответ я и хотел услышать. Значит, линукс в сад. У нас самое главное прерывание порядка 300 кГц.
TigerSHARC
ну почему сразу в сад. Linux другим хорош(организация верхнего уровня, стеки, фйловая система). Захотели напрмер прикрутить WiFi устройству: воткнули свисток в USB и всё!))

А если нужно прерывания ловить быстрые, то можно поставить буфер аппаратный (FIFO), который будет быстро, но реже во времени отдавать блоки данных в Linux. Вариантов много...
Mahagam
QUOTE (murug @ Dec 19 2012, 10:34) *
Вот подобный ответ я и хотел услышать. Значит, линукс в сад. У нас самое главное прерывание порядка 300 кГц.


Это что такое так часто дёргает проц за вымя?


TigerSHARC
Цитата(Mahagam @ Dec 19 2012, 13:00) *
Это что такое так часто дёргает проц за вымя?

Да хотябы ацп какойнибудь... прерывание - данные однократного преобразования готовы.
murug
Цитата(Mahagam @ Dec 19 2012, 13:00) *
Это что такое так часто дёргает проц за вымя?


Цитата(TigerSHARC @ Dec 19 2012, 13:07) *
Да хотябы ацп какойнибудь... прерывание - данные однократного преобразования готовы.


Он самый.
TigerSHARC
поскольку задача с реакцией на прерывание превосходно решается в контексте bare metal (ну или какой-нибудь лёгкой RTOS), а использовать Linux с его возможностями ой как охота, то изящным решением представляется OMAP. Два ядра, DSP ядро работает под управлением DSP/BIOS(обрабатывая потоки данных с той же АЦП), а ARM-ядро работает по Linux(обеспечивая коммуникации и интерфейсы пользователя).
TSerg
Ну да, АЦП выступает таймером для всей системы - шикарный подход.sm.gif
TigerSHARC
что подразумевается под таймером?
конечно всё от задачи зависит и возможно OMAP слишком избыточен.
alx2
Цитата(AlexandrY @ Dec 19 2012, 11:35) *
Нынче принято косеть от андроида вообще-то.
Вот где одна сплошная вкусность.

А линукс теперь ни то ни сё. Памяти требует кучу , а приложения - слабое подобие андроида.

Как сие понимать, учитывая, что Android как раз Linux и использует?
AlexandrY
Цитата(alx2 @ Dec 19 2012, 14:29) *
Как сие понимать, учитывая, что Android как раз Linux и использует?


Андроиду этот линукс как телеге пятое колесо.
Андроид приложения уже запускают и под Windows и под Mac OS.
sasamy
Цитата(AlexandrY @ Dec 19 2012, 18:22) *
Андроиду этот линукс как телеге пятое колесо.


Только в данном случае телега самобеглая а пятое колесо и есть ведущее sm.gif сейчас все кто производит мультимедийные процессоры и хочет их продавать Linux BSP делают в первую очередь.
alx2
Цитата(AlexandrY @ Dec 19 2012, 19:22) *
Андроиду этот линукс как телеге пятое колесо.
Андроид приложения уже запускают и под Windows и под Mac OS.

Верно ли я понял, что по-Вашему в настоящее время наиболее предпочтительно устанавливать на embedded-устройства OS Windows или Mac OS, а под ними использовать android-приложения?
Olej
Цитата(juvf @ Dec 9 2012, 19:02) *
Можно и в С/С++ себе в ногу стрельнуть - неправельное обращение к памяти,

или неправИльное использование русской грамматики yeah.gif - и нога прострелена!



Цитата(alx2 @ Dec 19 2012, 16:29) *
Как сие понимать, учитывая, что Android как раз Linux и использует?


Android не может Linux использовать, по той простой причине, что Android - он Linux И ЕСТЬ. 1111493779.gif
Над которым (Linux-ом, самым что ни на есть) - надстроен слой мидлеваре + собственная Java машина, а все приложения Android всего лишь Java-приложения.
Схема то всего этого - элементарная, см.: Android как он внутри.
AlexandrY
Цитата(Olej @ Dec 26 2012, 16:09) *
Android не может Linux использовать, по той простой причине, что Android - он Linux И ЕСТЬ. 1111493779.gif
Над которым (Linux-ом, самым что ни на есть) - надстроен слой мидлеваре + собственная Java машина, а все приложения Android всего лишь Java-приложения.


Это заблуждение.
Просто Андроиду во что бы то ни стало был необходим опенсорс из-за маркетинговых соображений.
Вот и перенесли его на линукс.
Видимо брались бизнес аналогии с открытой платформой PC и IBM.
Само же ядро андроида было разработано под проприетарной RTOS на основе Java ME.
Почитайте историю.
Андроиду глубоко фиолетово что там под ним. Вся сила в его собственной объектной архитектуре и либах.

Чтобы лучше понять связь линукса и андроида я бы рекомендовал почитать "Android forensics. Investigation analysis and mobile security for google android."
От оси для андроида требуется только пара тройка драйверов, управление памятью и файловая система и все!
Даже не видно чтобы использовался родной TCP стек линукса или видио/аудио подсистемы. Они идут с либами андроида.
sasamy
Цитата(AlexandrY @ Dec 26 2012, 21:48) *
Это заблуждение.
Просто Андроиду во что бы то ни стало был необходим опенсорс из-за маркетинговых соображений.


Истина как всегда по середине sm.gif Исходники Android под лицензией Apache которая несовместима с GPLv2 Linux
http://www.apache.org/legal/3party.html

при этом они же не взяли ядра xBSD с более подходящими лицензиями ?

Цитата
Чтобы лучше понять связь линукса и андроида я бы рекомендовал почитать "Android forensics. Investigation analysis and mobile security for google android."
От оси для андроида требуется только пара тройка драйверов, управление памятью и файловая система и все!


пара-тройка драйверов ? да вы шутите sm.gif рекомендую почитать вот тут
http://www.elinux.org/Android_Architecture

Цитата
Даже не видно чтобы использовался родной TCP стек линукса или видио/аудио подсистемы. Они идут с либами андроида.


ну а это уже откровенное вранье - всё линуксовое. Графическое окружение - да, там свое. В теории конечно Android может работать поверх любого ядра, есть например нативный порт Dalvik на L4 - только вот без драйверов никому он не нужен.
AlexandrY
Цитата(sasamy @ Dec 26 2012, 21:19) *
пара-тройка драйверов ? да вы шутите sm.gif рекомендую почитать вот тут
http://www.elinux.org/Android_Architecture

ну а это уже откровенное вранье - всё линуксовое. Графическое окружение - да, там свое.


Надо же, какое откровение. Эта диаграмка в каждой книге по андроиду присутствует и много чего не объясняет.
Ну найдите мне лучше на этой диаграмке место для линуксового TCP стека.
В курсе, что в андроид фонах нет Ethernet-а ?
sasamy
Цитата(AlexandrY @ Dec 26 2012, 23:35) *
Ну найдите мне лучше на этой диаграмке место для линуксового TCP стека.
В курсе, что в андроид фонах нет Ethernet-а ?


Насчет TCP не знаю, а драйверы нижнего уровня ALSA, VPU, video4linux, OpenGL, USB, storage devices, FS, input devices и т.д. линуксовые. Проще наверно назвать что не линуксовое sm.gif
AlexandrY
Цитата(sasamy @ Dec 26 2012, 22:07) *
Насчет TCP не знаю, а драйверы нижнего уровня ALSA, VPU, video4linux, OpenGL, USB, storage devices, FS, input devices и т.д. линуксовые. Проще наверно назвать что не линуксовое sm.gif


Ну опять что значит линуксовые. Это YAFFS2 (файловая в андроиде для NAND) которую я скажем юзаю вообще без осей считается линуксовой?
Эт че, теперь все, что вы видели под линуксом будем считать самим линуксом? biggrin.gif

Насчет ALSA, video4linux, OpenGL тоже не видно подтверждений использования в андроиде.
sasamy
Цитата(AlexandrY @ Dec 27 2012, 00:24) *
Ну опять что значит линуксовые. Это YAFFS2 (файловая в андроиде для NAND) которую я скажем юзаю вообще без осей считается линуксовой?
Эт че, теперь все, что вы видели под линуксом будем считать самим линуксом? biggrin.gif


вы наверно не в курсе но основная ФС для андроида - ext4

Цитата
Насчет ALSA, video4linux, OpenGL тоже не видно подтверждений использования в андроиде.


так это же все равно - видите вы это или нет, я это видел не на телефонах а при портировании на кастомное устройство.
AlexandrY
Цитата(sasamy @ Dec 26 2012, 22:31) *
вы наверно не в курсе но основная ФС для андроида - ext4

так это же все равно - видите вы это или нет, я это видел не на телефонах а при портировании на кастомное устройство.


А может FAT32? wink.gif
ext4 используют когда вместо NAND ставят блочную память по типу как в SD картах.

А вот что вы там видели и что на самом деле портировали было бы интересно узнать.
sasamy
Цитата(AlexandrY @ Dec 27 2012, 01:15) *
А может FAT32? wink.gif


fat32 требует лицензионных отчислений мокрософту

Цитата
ext4 используют когда вместо NAND ставят блочную память по типу как в SD картах.


так ее все чаще и применяют - eMMC например, а на NAND и ubifs можно использовать

Цитата
А вот что вы там видели и что на самом деле портировали было бы интересно узнать.


портирование - громко сказано, это слишком большая работа чтобы весь HAL написать, мне конечно это не под силу, порт в исходниках уже был для процессора - я делал кастомизацию.
alx2
Цитата(Olej @ Dec 26 2012, 19:09) *
Android не может Linux использовать, по той простой причине, что Android - он Linux И ЕСТЬ. 1111493779.gif
Linux - это ядро. По крайней мере я в своем сообщении именно такой смысл вкладывал в это слово.
Android - операционная система, которая (очень упрощенно) состоит из ядра и некой надстройки (библиотек, утилит/приложений и т.п.).
Так вот, в качестве ядра авторы Android'а могли использовать много чего (включая написать свое собственное). Но они выбрали Linux. Именно это я имел в виду, когда написал, что Android как раз Linux и использует.
juvf
Цитата(alx2 @ Dec 27 2012, 12:56) *
Linux - это ядро. ...
Android как раз Linux и использует.

+1
Olej
Цитата(AlexandrY @ Dec 26 2012, 21:48) *
Просто Андроиду во что бы то ни стало был необходим опенсорс из-за маркетинговых соображений.
Вот и перенесли его на линукс.
Видимо брались бизнес аналогии с открытой платформой PC и IBM.
Само же ядро андроида было разработано под проприетарной RTOS на основе Java ME.

См. Знакомство с версиями 3.3 и 3.4 ядра Linux
Цитата
Из-за проблем координации работы группы, отвечающей за поддержку Linux, и Google, привели к тому, что в течение нескольких лет платформа Android развивалась самостоятельно. В начале 2012 года был запущен проект Android Mainlining, задачей которого стала интеграция драйверов и возможностей Android в основное ядро Linux. Результаты этой работы были представлены в версии 3.3, но интеграция будет продолжена в версии 3.5.
Android также представил несколько улучшений для Linux, которые усилят позиции Linux на рынке мобильных платформ. В качестве примеров можно упомянуть быстрое межпроцессное взаимодействие (IPC), улучшенное управление памятью приложений, и решение для проблемы, связанной с управлением большими непрерывными фрагментами памяти.

Цитата
То, что Android удалось вернуть обратно в ядро Linux, это ещё один пример гибкости ядра Linux (от встраиваемых систем и мобильных устройств до крупнейших мэйнфреймов и суперкомпьютеров). Вместе с более чем 300 миллионами Android-устройств, используемых прямо сейчас, Linux продолжает развиваться как универсальная платформа.



Цитата(AlexandrY @ Dec 26 2012, 21:48) *
Вся сила в его собственной объектной архитектуре и либах.

"В чём сила, бат?!"(с) yeah.gif

Цитата(AlexandrY @ Dec 26 2012, 21:48) *
Андроиду глубоко фиолетово что там под ним.

"Если бы, да кабы, да во рту росли грибы... "(с) 1111493779.gif


Цитата(alx2 @ Dec 27 2012, 11:56) *
Linux - это ядро. По крайней мере я в своем сообщении именно такой смысл вкладывал в это слово.
Android - операционная система, которая (очень упрощенно) состоит из ядра и некой надстройки (библиотек, утилит/приложений и т.п.).

А то, что в составе практически любого Android устройства присутствует набор утилит BusyBox с GNU/POSIX набором консольных команд, или ifconfig к TCP/IP подсистеме, и ещё другие подобные ... артефакты - это всё тоже ЯДРО?

Цитата(alx2 @ Dec 27 2012, 11:56) *
Так вот, в качестве ядра авторы Android'а могли использовать много чего (включая написать свое собственное). Но они выбрали Linux. Именно это я имел в виду, когда написал, что Android как раз Linux и использует.

"могли бы да кабы..." - это очень содержательный уровень обсуждения, я здесь кому то уже подсказывал laughing.gif
juvf
Цитата(Olej @ Dec 27 2012, 15:09) *
А то, что в составе практически любого Android устройства присутствует набор утилит BusyBox с GNU/POSIX набором консольных команд, или ifconfig к TCP/IP подсистеме, и ещё другие подобные ... артефакты - это всё тоже ЯДРО?

Да речь не от том. Андроид на ядре Линукс. Это факт. И что там пятое колесо у телеги и андроиду на линукс фиолетово - это заблужение.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.