Можно ли программировать голые металлы на Pi?

Я пытаюсь использовать Pi в качестве учебного инструмента, чтобы узнать о программировании машины с нуля. В идеальном сценарии первая инструкция, выполненная после прошивки на ПЗУ, и все после этого должна быть чем-то пишу .

К сожалению, насколько мне известно, для Pi нет никакого пути. Broadcom застрял в основном все классные вещи в своем блоке с закрытым исходным кодом, который мы вынуждены загружать.

Имея это в виду, есть ли способ сделать то, что должен был сделать Pi? То есть узнать, как работает все это?

Например, рисунок на экран. Из того, что я нашел, низкоуровневое доступное решение на Pi - запросить буфером кадров из VideoCore с использованием системы почтовых ящиков, затем записать в этот буфер, а GPU проверяет этот буфер и магически выводит на экран. Но как содержимое буфера фактически записывается на экран? Это все еще так же, как тайна, как использование чего-то вроде Win32 для создания буфера на экране.

3 голоса | спросил zach 20 SunEurope/Moscow2015-12-20T21:59:29+03:00Europe/Moscow12bEurope/MoscowSun, 20 Dec 2015 21:59:29 +0300 2015, 21:59:29

1 ответ


3

Люди пишут хобби операционные системы и голый код металла с 2012 года для малины Pi. Я думаю, что фиксация на блоке с закрытым исходным кодом GPU ошибочна: отсутствие официальных публичных USB-контроллеров docs стало большим препятствием. Проверьте подфорум Bare Metal на https://www.raspberrypi.org/forums /viewforum.php?f=72 в любом случае.

К комментарию к фреймбуферу: графические процессоры (для меня) - абстракция для себя - записывают в память, и это волшебным образом появляется на экране. Это их цель, если я не ошибаюсь.

Система, например fignition или Parallax Propeller (оба имеют отдельный образовательный аспект), возможно, лучше выбор здесь, потому что более очевидно и прозрачно, как видео создается на самом деле.

Другим вариантом может быть отказ от использования HDMI /Composite и управление дисплеем через GPIO самостоятельно.

ответил flakeshake 21 MonEurope/Moscow2015-12-21T11:51:23+03:00Europe/Moscow12bEurope/MoscowMon, 21 Dec 2015 11:51:23 +0300 2015, 11:51:23

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132