Cómo escribir un SO para una frambuesa PI 3 modelo B

¿Por qué quieres escribir un sistema operativo completo desde cero?

Puede tener un sistema mínimo e instalar sus propias herramientas en él (eso se llama construir una distribución de Linux).

Para construir una distribución de Linux para un procesador ARM, necesitaría un zImage compilado del kernel de Linux o uImage (depende de la arquitectura ARM), puede obtener estas imágenes compiladas de una construcción exitosa del kernel de Linux.

Entonces necesitaría dos particiones, un sistema de archivos ext4 y un sistema de archivos vfat para el arranque (en el caso de las placas Raspberry Pi).

En general, sugeriría, para simplificar, obtener una imagen de raspbian del sitio web de Raspberry Pi, montarla en su disco duro y comenzar a jugar con el sistema de archivos eliminando / agregando las herramientas que desee, de esa manera construye su propio raspbian- distribución basada. Si estás un poco avanzado usando Linux, te sugiero que hagas lo mismo con ARM Arch Linux.

Si eres totalmente nuevo en todo esto, te sugiero que leas sobre LinuxFromScratch. Este proyecto está destinado a enseñarle cómo construir su distribución de Linux completamente desde cero, comenzando desde Compilar el kernel de Linux, descargar la fuente de las herramientas que le gustaría tener en su distribución y luego agregar todo eso para tener una sistema funcional

Como siempre, es muy ambicioso escribir un SO desde cero, pero en el caso de Raspberry Pi, toda la documentación del hardware está aquí: Raspberry Pi Hardware. Buena suerte.

Sin embargo, es posible que desee comenzar en un lugar más fácil: Arch Linux está disponible para Raspberry Pi (Raspberry Pi – ArchWiki), que le dará un Linux mínimo en el que puede construir.

Para realizar las pruebas, puede ser más fácil configurar su Pi en la red (o comprar otra) y tener una selección de tarjetas SD para ello. Puede ejecutar Raspbian en QEMU, por lo que probablemente sea posible ejecutar Arch, pero mi experiencia es que es más fácil obtener otro Pi.