7.5. ROMFS¶
ROMFS, derleme zamanında kameranın içine yerleştirilen ve /rom/ konumuna bağlanan salt okunur bir dosya sistemidir. Dosya blokları flash bellekte bulunur ve adres alanına eşlenir, dolayısıyla orada bir dosya açmak, baytlarını RAM kopyası olmadan doğrudan flash bellekten açığa çıkarır. Modeller, etiket dosyaları ve Haar kademeleri (cascade) tipik içeriklerdir.
7.5.1. Modeller neden burada bulunur¶
İki neden. İlki zaten belirtilen RAM ödünleşimidir: /rom/ üzerindeki bir model yerinde flash bellekten okunur ve tensör arenası dışında RAM harcamaz, oysa /sdcard/ üzerindeki bir model yükleme sırasında RAM’e kopyalanır ve arenaya ek olarak dosya boyutu kadar maliyete neden olur. Daha küçük kameralarda bu fark genellikle sığmakla sığmamak arasındaki farktır.
İkincisi NPU’dur. N6’nın NPU’su ve AE3’teki Ethos-U, ağırlıklarını doğru hizalamayla belleğe adreslenebilir bir bölgede bekler ve bir modeli bu hızlandırıcılar için derleyen yapı araçları (N6’nın NPU’su için STEdgeAI, AE3’ün Ethos-U’su için Vela) sonucu o düzenle ROMFS’e yerleştirir. /sdcard/ üzerinden yüklenen bir model yığın RAM’inde son bulur; bu, H7 ve RT1062’nin kullandığı CPU yolları için sorun değildir, ancak daha hızlı kameraların etrafında tasarlandığı doğrudan flash bellekten NPU yolundan vazgeçer.
7.5.2. Normal bir MicroPython dosya sistemi¶
Çalışma zamanında ROMFS, bağlanmış diğer herhangi bir MicroPython dosya sistemi gibi davranır: os.listdir(), /rom/ içeriğini listeler, builtins.open() içindeki dosyaları açar ve altındaki bir yol, bir yol kabul eden herhangi bir API’ye geçirilebilir. Tek kısıtlama, betiklerin ona yazamamasıdır – bölüm çalışma zamanında salt okunurdur.
IDE, ROMFS’i düzenleyebilir. Bölümün içeriğini dosya tarayıcısında açığa çıkarır ve orada dosya ekleme, kaldırma ve değiştirmeyi SD kart için yaptığı şekilde destekler. Amaçlanan kullanım, özel modeller, etiket dosyaları, yardımcı betikler ya da uygulamanın kamerayla birlikte gönderilmesi gereken başka herhangi bir kaynak eklemektir. IDE aracılığıyla /rom/ içine bırakılan her şey, önceden yüklenmiş modellerin sahip olduğu aynı doğrudan flash bellekten erişilebilir, NPU tarafından erişilebilir depolamaya kavuşur.