romfs — Utilitários auxiliares de ROMFS

O módulo romfs fornece utilitários auxiliares para inspecionar o sistema de arquivos somente leitura (ROMFS) que o firmware da OpenMV monta em /rom. Consulte Trabalhando com ROMFS para uma descrição completa do próprio sistema de arquivos ROMFS, de como as imagens são construídas e implantadas, e das APIs subjacentes vfs.VfsRom / vfs.rom_ioctl().

Este módulo se concentra no layout físico de um ROMFS já montado, em vez de em sua semântica de sistema de arquivos. Como os arquivos de bytecode .mpy em um ROMFS são executados diretamente da flash (mapeados em memória, sem cópia), o MicroPython precisa que o payload de cada arquivo esteja alinhado a um limite suficiente – normalmente 4 bytes para arquivos .mpy simples e até 16 bytes quando um arquivo contém blobs de código nativo ou referências a dados alinhados. ls_romfs() informa o endereço, o tamanho e o maior alinhamento em potência de dois de cada arquivo, para que uma imagem implantada possa ser verificada pontualmente a partir do REPL antes de depender de importações sem cópia.

Funções

romfs.ls_romfs() None

Lista cada arquivo presente no ROMFS montado em /rom e imprime informações de diagnóstico sobre cada entrada em stdout.

Para cada arquivo, as seguintes informações são impressas:

  • addr: O endereço de memória dos dados do arquivo, mascarado para 28 bits e formatado como um valor hexadecimal de 8 dígitos.

  • size: O tamanho do arquivo em bytes, obtido a partir do comprimento de um memoryview do arquivo aberto.

  • alignment: O maior alinhamento em potência de dois (verificado em relação a 128, 64, 32, 16, 8, 4) que o endereço do arquivo satisfaz. Se o endereço não estiver alinhado a nenhum desses limites, NOT aligned é impresso em vez disso.

  • name: O nome do arquivo dentro de /rom.

Esta função não recebe argumentos e retorna None.