Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
bbx [2023/03/25 17:41] cnigri Incorporacion de QEMU y reorganizacion de dependencias |
bbx [2023/10/19 21:57] (actual) cnigri Aclaracion para caso SD |
||
---|---|---|---|
Línea 5: | Línea 5: | ||
La idea es que el alumno pueda empaparse con el procedimiento básico para la generación de imágenes //custom// de Linux para sistemas embebidos. Cada caso, será particular al embebido en cuestión, pero típicamente consta de lo mismos **macro-pasos** enumerados. | La idea es que el alumno pueda empaparse con el procedimiento básico para la generación de imágenes //custom// de Linux para sistemas embebidos. Cada caso, será particular al embebido en cuestión, pero típicamente consta de lo mismos **macro-pasos** enumerados. | ||
- | |||
- | ====== Mapa de memoria ====== | ||
- | ==== Componentes del sistema ==== | ||
- | * **MLO :** | ||
- | Minimal LOader es un bootloader básico utilizado por TI (Texas Instruments) para las familias OMAP y derivados. Su principal misión es inicializar el hardware, unidades del SOC y | ||
- | periféricos de la placa, mínimo para la operación. Por lo general en este software se configura el controlador de RAM externa, terminal de depuración, | ||
- | |||
- | * **[[http:// | ||
- | Es un bootloader de propósito general destinado principalmente a embebidos. Entre las funciones implementadas se destacan la inicialización de los pines no críticos para la primera etapa de arranque, hardware secundario (USB, display), la copia de la imagen del kernel, rootfs y DTB de la memoria persistente a RAM y su posterior expansión (deflat) | ||
- | |||
- | * **[[http:// | ||
- | Es el binario (Device Tree Blob) asociado al DTS (Device Tree Source) que describe el hardware del sistema | ||
- | |||
- | * **zImage :** | ||
- | Imagen comprimida del kernel de Linux | ||
- | |||
- | * **rootfs :** | ||
- | Imagen del sistema de archivos del sistema. En el mismo se localizan todos los binarios necesarios para operación a nivel usuario (root/user) del sistema, así | ||
- | como tambien aquellos utilizados por el propio OS para su correcta ejecución. | ||
- | |||
- | |||
- | ==== SD ==== | ||
- | |||
- | <code asm> | ||
- | +--------------------------------------+ | ||
- | | | | ||
- | | MLO | | ||
- | | | | ||
- | +--------------------------------------+ | ||
- | | | | ||
- | | | ||
- | | | | ||
- | +--------------------------------------+ | ||
- | | | | ||
- | | DTB | | ||
- | | | | ||
- | +--------------------------------------+ | ||
- | | | | ||
- | | zImage | ||
- | | | | ||
- | +--------------------------------------+ | ||
- | | | | ||
- | | Linux rootfs | ||
- | | | | ||
- | +--------------------------------------+ | ||
- | </ | ||
- | |||
- | ==== RAM ==== | ||
- | {{: | ||
====== Procedimiento ====== | ====== Procedimiento ====== | ||
Línea 126: | Línea 77: | ||
user@machine: | user@machine: | ||
user@machine: | user@machine: | ||
+ | user@machine: | ||
+ | user@machine: | ||
+ | </ | ||
+ | Si se desea trabajar con el entorno visual [[https:// | ||
+ | <code bash> | ||
user@machine: | user@machine: | ||
user@machine: | user@machine: | ||
</ | </ | ||
- | |||
===== Instalación de emulador ===== | ===== Instalación de emulador ===== | ||
Instalar el emulador (responder Y a todo lo requerido) | Instalar el emulador (responder Y a todo lo requerido) | ||
Línea 337: | Línea 292: | ||
==== Preparación de la microSD ==== | ==== Preparación de la microSD ==== | ||
- | Verificar que la tarjeta microSD **no** se encuentre dentro de la lista de [[http:// | + | Verificar que la tarjeta microSD **no** se encuentre dentro de la lista de incompatibles |
**NOTA:** tener cuidado con los comandos a continuación, | **NOTA:** tener cuidado con los comandos a continuación, | ||
Línea 356: | Línea 311: | ||
<code bash> | <code bash> | ||
+ | |||
+ | Para el caso que nuestro dispositivo sea **/ | ||
+ | |||
+ | <code bash> | ||
Con el comando **lsblk** podrán obtener un listado de las unidades de almacenamiento y sus particiones. | Con el comando **lsblk** podrán obtener un listado de las unidades de almacenamiento y sus particiones. | ||
Línea 430: | Línea 389: | ||
=== Root File System === | === Root File System === | ||
- | <code bash> | + | <code bash> |
- | user@machine: | + | user@machine: |
- | user@machine: | + | user@machine: |
- | user@machine: | + | user@machine: |
Crear el archivo uEnv.txt en el directorio local de trabajo, con las siguientes lineas: | Crear el archivo uEnv.txt en el directorio local de trabajo, con las siguientes lineas: |