2014-11-25 5 views
0

Я пишу немного микро-ядро с нуля для моей Raspberry Pi (вот код: https://github.com/yrakcaz/RasPiK/)Где корневое устройство?

Все, кажется, работает хорошо, но у меня есть только небольшая проблема: я хотел бы иметь файловую систему, но я не знаю, как получить адрес корневого устройства. Я знаю, что на архитектуре x86 мы можем получить адрес ROM, используя теги, переданные в аргументе, к основной функции, но я уже разбирал atags и нет ничего интересного ...

Как я могу получить этот адрес?

ответ

0

Просто выберите его. Ничто не является обязательным, когда вы голый металл. Либо вы получите его от вашего загрузчика (тогда вам нужно выбрать его в вашем загрузчике), либо вы решили иметь ramfs в качестве корня вашей файловой системы или вы решили использовать SD-карту, которую вы загружаете, в качестве корневого файла система. Тебе решать.

+0

Спасибо за этот ответ, но я хотел бы знать, где находится корневой раздел sdcard, потому что в конце моего проекта я хотел бы поместить на него двоичные файлы, а затем выполнить это на rpi. Вы знаете, как я могу это сделать? –

+0

Каждый * корневое устройство * отличается. Теперь вы сказали «SD» карту; вы предполагаете, что люди знают все о RPI. По крайней мере, для eMMC (я думаю, SD аналогичен), есть специальная область загрузки. В Linux вы можете использовать 'dd if = kernel.bin of =/dev/mmcblk0 bs = 1k seek = 1', чтобы поместить загрузочный образ. Существует таблица разделов. Затем при некотором смещении на карте есть файловая система, отформатированная для любой из сотен возможных файловых систем. Вам нужно изменить вопрос только на SD-карту, или вы слишком широки. Linux делает их одинаковыми, но под ними есть десятки драйверов и т. Д. –

+0

загрузочный раздел eMMC существует только для встроенных требований. AFAIK, на SD-карте нет такой вещи. Существует два обычных способа использования SD-карты: использование всей SD-карты в виде отдельного раздела или использование ее с несколькими разделами, как это обычно делается с жестким диском. В этом случае первый LBA SD-карты должен содержать MBR. – Jacen

Смежные вопросы