romfs — ROMFS-hjälpverktyg

Modulen romfs tillhandahåller hjälpverktyg för att inspektera det skrivskyddade filsystemet (ROMFS) som OpenMV-firmware monterar vid /rom. Se Arbeta med ROMFS för en heltäckande beskrivning av själva ROMFS-filsystemet, hur avbildningar byggs och driftsätts, samt de underliggande API:erna vfs.VfsRom / vfs.rom_ioctl().

Denna modul fokuserar på den fysiska layouten för ett redan monterat ROMFS snarare än dess filsystemssemantik. Eftersom .mpy-bytekodfiler i ett ROMFS exekveras direkt från flashminne (minnesmappade, nollkopiering) behöver MicroPython att varje fils nyttolast är justerad mot en tillräcklig gräns – vanligtvis 4 byte för vanliga .mpy-filer och upp till 16 byte när en fil innehåller blobbar med inbyggd kod eller justerade datareferenser. ls_romfs() rapporterar adressen, storleken och den största tvåpotensjusteringen för varje fil så att en driftsatt avbildning kan stickprovskontrolleras från REPL innan man förlitar sig på nollkopieringsimporter.

Funktioner

romfs.ls_romfs() None

Listar varje fil som finns i det ROMFS som är monterat vid /rom och skriver ut diagnostisk information om varje post till stdout.

För varje fil skrivs följande information ut:

  • addr: Filens datas minnesadress, maskerad till 28 bitar och formaterad som ett 8-siffrigt hexadecimalt värde.

  • size: Filens storlek i byte, erhållen från längden på en memoryview av den öppnade filen.

  • alignment: Den största tvåpotensjusteringen (kontrollerad mot 128, 64, 32, 16, 8, 4) som filens adress uppfyller. Om adressen inte är justerad mot någon av dessa gränser skrivs NOT aligned ut istället.

  • name: Filnamnet inom /rom.

Denna funktion tar inga argument och returnerar None.