Glossário

Glossário

ABI: Application Binary Interface; regras de convenção de chamada, uso de registradores e layout de dados.

Bare-metal: Código rodando direto no hardware (ou emulador) sem sistema operacional.

BSS: Block Started by Symbol; segmento de dados não inicializados, zerado na inicialização.

CSR: Control and Status Register; registradores especiais de controle e estado do RISC-V.

ELF: Executable and Linkable Format; formato padrão de arquivo para binários compilados.

Entry point (_start): Primeiro ponto de execução; símbolo do linker onde a execução começa.

Freestanding: Modo de compilação C sem libc ou suposições de ambiente hospedado.

GCC: GNU Compiler Collection; toolchain usado para compilar os exemplos.

GDB: GNU Debugger; usado para inspecionar e controlar a execução.

ILP32: ABI em que int, long e ponteiros têm 32 bits.

ISA: Instruction Set Architecture; o conjunto de instruções que uma CPU entende.

Linker script: Arquivo que define o layout de memória e o posicionamento de seções no linker.

MMIO: Memory-Mapped I/O; registradores de dispositivo mapeados no espaço de endereços de memória.

QEMU: Quick Emulator; emulador de máquina usado aqui em modo sistema.

RV32I: A ISA base inteira RISC-V de 32 bits.

RV32IM: RV32I com a extensão M (multiplicação/divisão).

Toolchain: Conjunto de compilador, assembler, linker e ferramentas relacionadas.

UART: Universal Asynchronous Receiver/Transmitter; interface serial de saída.

VMA/LMA: Virtual/Load Memory Address; onde seções aparecem em execução vs no arquivo.