romfs — Utilitários auxiliares do ROMFS

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

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

Funções

romfs.ls_romfs() None

Lista todos os ficheiros presentes no ROMFS montado em /rom e imprime informação de diagnóstico sobre cada entrada em stdout.

Para cada ficheiro, a seguinte informação é impressa:

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

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

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

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

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