Um sistema operacional de tempo real (RTOS) compatível com POSIX para dispositivos embarcados, escalável de microcontroladores de 8 a 64 bits.
membrowse/membrowse-action
GitHub Action e CLI em Python que monitora o uso de flash e RAM de firmware embarcado a partir de arquivos ELF e comenta diferenças de memória em pull requests.
- Estrelas
- 50
- Forks
- 2
- Issues abertas
- 0
- Último commit
- há 24 horas
O que é?
O MemBrowse mede quanto de flash e RAM uma imagem de firmware embarcado utiliza. Ele lê o arquivo ELF e o linker script, associa símbolos aos respectivos arquivos-fonte e informa o uso por região de memória, além de listar os maiores símbolos. A CLI pode ser executada localmente sem uma conta, o que é útil para verificar um build na própria máquina do desenvolvedor.
No CI, a GitHub Action envia cada análise ao serviço MemBrowse, que mantém um histórico entre commits. Os pull requests podem receber um comentário mostrando as diferenças de memória, e o build pode falhar quando um limite configurado é excedido. Esses recursos na nuvem exigem uma API key gratuita.
A ferramenta oferece suporte a qualquer toolchain que gere arquivos ELF com informações de debug DWARF, incluindo ARM, Xtensa e RISC-V. Ela analisa scripts GNU LD, arquivos IAR ICF e arquivos de projeto do SEGGER Embedded Studio, identificando o formato pelo conteúdo do arquivo.
Recursos principais
- 01Informa o uso de flash e RAM por região de memória a partir de arquivos ELF
- 02Associa símbolos aos arquivos-fonte em que são definidos
- 03Lê layouts de memória de arquivos GNU LD, IAR ICF e SEGGER emProject
- 04Publica diferenças de memória como comentários em pull requests por meio de uma GitHub Action
- 05Pode fazer builds de CI falharem quando os limites de memória são excedidos
Casos de uso
- Detectar regressões no tamanho do firmware durante a revisão de código
- Verificar se um novo recurso ainda cabe na flash de um microcontrolador
- Comparar o uso de memória entre commits de um projeto embarcado
- Executar análises de memória localmente sem criar uma conta
Início rápido
- 1
Instale o MemBrowse CLI pelo PyPI
pip install membrowse - 2
Analise localmente o arquivo ELF do seu firmware com o script do linker
membrowse report build/firmware.elf "src/linker.ld" - 3
Opcionalmente, adicione o workflow do GitHub Actions para acompanhar o uso de memória no CI
Antes de usar
- Comentários em PRs, acompanhamento histórico e bloqueio por limite de orçamento no CI exigem uma conta e uma chave de API gratuitas do MemBrowse.
- Licenciado sob GPL-3.0, uma licença copyleft que pode restringir alguns usos proprietários.
Em coleções
Tópicos
Perguntas frequentes
- O que é membrowse-action?
- GitHub Action e CLI em Python que monitora o uso de flash e RAM de firmware embarcado a partir de arquivos ELF e comenta diferenças de memória em pull requests. O MemBrowse mede quanto de flash e RAM uma imagem de firmware embarcado utiliza. Ele lê o arquivo ELF e o linker script, associa símbolos aos respectivos arquivos-fonte e informa o uso por região de memória, além de listar os maiores símbolos. A CLI pode ser executada localmente sem uma conta, o que é útil para verificar um build na própria máquina do desenvolvedor.
- membrowse-action é gratuito? Qual é a licença?
- membrowse-action é open source sob a licença GPL-3.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- membrowse-action ainda é mantido?
- Manutenção ativa. O último commit de membrowse-action foi em 6 de nov. de 2026.
- Para que posso usar membrowse-action?
- Detectar regressões no tamanho do firmware durante a revisão de código Verificar se um novo recurso ainda cabe na flash de um microcontrolador Comparar o uso de memória entre commits de um projeto embarcado Executar análises de memória localmente sem criar uma conta
- Como instalar membrowse-action?
- Instale o MemBrowse CLI pelo PyPI: pip install membrowse Analise localmente o arquivo ELF do seu firmware com o script do linker: membrowse report build/firmware.elf "src/linker.ld" Opcionalmente, adicione o workflow do GitHub Actions para acompanhar o uso de memória no CI
- Onde consigo membrowse-action?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/membrowse/membrowse-action
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma implementação enxuta de Python 3 que roda em microcontroladores e outros dispositivos com recursos limitados, com módulos para acesso ao hardware.
Framework oficial de desenvolvimento da Espressif para criar firmware para ESP32 e outros SoCs da Espressif no Windows, Linux e macOS.
Ferramenta de linha de comando multiplataforma e sistema de build para desenvolvimento embarcado, com gerenciamento de bibliotecas, suporte a várias placas e frameworks, depuração e testes unitários.
Pilha USB open source multiplataforma de Host e Device para sistemas embarcados, projetada para oferecer segurança de memória e de threads em mais de 50 famílias de MCU.
Uma caixa de ferramentas para criar aplicações embarcadas em Zig, com uma camada de abstração de hardware e suporte a placas e chips.