romfs — Narzędzia pomocnicze ROMFS

Moduł romfs udostępnia narzędzia pomocnicze do badania tylko-do-odczytu systemu plików (ROMFS), który oprogramowanie układowe OpenMV montuje pod /rom. Zobacz Praca z ROMFS, aby uzyskać kompleksowy opis samego systemu plików ROMFS, sposobu budowania i wdrażania obrazów oraz leżących u podstaw API vfs.VfsRom / vfs.rom_ioctl().

Moduł ten koncentruje się na fizycznym układzie już zamontowanego ROMFS, a nie na semantyce systemu plików. Ponieważ pliki bajtkodu .mpy w ROMFS są wykonywane bezpośrednio z pamięci flash (mapowane w pamięci, bez kopiowania), MicroPython wymaga, aby ładunek każdego pliku był wyrównany do wystarczającej granicy – zazwyczaj 4 bajtów dla zwykłych plików .mpy i do 16 bajtów, gdy plik zawiera bloki kodu natywnego lub wyrównane odwołania do danych. ls_romfs() raportuje adres, rozmiar i największe wyrównanie będące potęgą dwójki każdego pliku, aby wdrożony obraz można było wyrywkowo sprawdzić z poziomu REPL przed poleganiem na importach bez kopiowania.

Funkcje

romfs.ls_romfs() None

Wyświetla listę każdego pliku obecnego w ROMFS zamontowanym pod /rom i drukuje informacje diagnostyczne o każdym wpisie na stdout.

Dla każdego pliku drukowane są następujące informacje:

  • addr: adres pamięci danych pliku, zamaskowany do 28 bitów i sformatowany jako 8-cyfrowa wartość szesnastkowa.

  • size: rozmiar pliku w bajtach, uzyskany z długości memoryview otwartego pliku.

  • alignment: największe wyrównanie będące potęgą dwójki (sprawdzane względem 128, 64, 32, 16, 8, 4), które spełnia adres pliku. Jeśli adres nie jest wyrównany do żadnej z tych granic, drukowane jest zamiast tego NOT aligned.

  • name: nazwa pliku w obrębie /rom.

Ta funkcja nie przyjmuje żadnych argumentów i zwraca None.