LINUX.ORG.RU

Ответ на: комментарий от anonymous

AVR ужасно популярны. Никакими сотнями мегагерц там не пахнет, как и мегабайтами флеша. Пихать везде одноплатники до сих пор не всегда рентабельно (микроконтроллеры могут стоит меньше доллара за штуку, а на миллионных партиях это очень заметно).

Какой бы не был компилилятор оптимизирующий, а memory mapped io никто нормально оптимизировать кроме человека не сможет, ибо в си для него есть только одно слово volatile, которое полностью отключает оптимизации. В ядре Linux тоже много ассемблерных вставок, а на МК вся программа сразу и прикладной софт, и ядро, и драйвера.

Наконец, риал тайм. Иногда важно не быстрее/медленнее, а ровно за указанное количество тактов. Простые МК не имеют конвейеров и кешей, так что время исполнения каждой инструкции отлично предсказуемо, а часто вообще указано в даташите. В свою очередь во что превратиться сишный код зависит от опций компиляции, целевого микроконтроллера, версии компилятора и фазы луны. Зачем нужен риал тайм? Да хотя бы для реализации интерфейсов, которые не реализованы аппаратно. Например, посмотри v-usb. Но одним этим применения риал тайма не ограничивается, конечно.

По этой причине иногда даже при наличии одноплатника рядом ставят МК - Linux это не RTOS, а слишком умные процессоры имеют непредсказуемое время исполнения инструкций.

KivApple ★★★★★
()
Последнее исправление: KivApple (всего исправлений: 2)
Ответ на: комментарий от KivApple

Кажется мне, что 8086 был первым процессором с системой команд x86, и уже в 8086 были сегментные регистры. Не слышал, чтобы он мог хоть как-то исполнять программы для 8080. Там же другая система команд.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Бинарной совместимости не было, но асм для 8080 можно однозначно транслировать для 86(когда дело не касается различий железа, системных вызовов итп, конечно).

madcore ★★★★★
()
Ответ на: комментарий от i-rinat

недавно писал для аналога 8080, там памяти было меньше 30Кб, по ком-порту загружалась программа, что-то делала, потом на ее место грузилась другая и т.д., надо было подправить и дополнить наборчик не изучая аналоговую часть аппаратуры (секреты блин).

anonymous
()
Ответ на: комментарий от LongLiveUbuntu

А 32Kb RAM + 128Kb Flash слабо? С тактовой частотой 80 MHz.

скажи мне реальное коммерческое/фактическое применение в 2010+, где ТЫ под ткое писал

я писал под 250мгц и 32мб минимум, начиная с 2012 все уже по 500мгц(и пара ядер) с 512мб

если ты про «типы памяти» в девайсе-так это дело девайса(минимальной ОС если есть) или порта ГЦЦ(и либ) как перекидывать память от процессора в другие уровни

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.