|  | 

Segger emFile

emFile è un file system che consente alle applicazioni e ai sistemi embedded di archiviare dati in modo sicuro e affidabile su ogni tipo di dispositivo di memoria. Essendo indipendente rispetto all’hardware, può essere eseguito su qualsiasi target a 16, 32 o 64 bit per il quale sia disponibile un compilatore; inoltre, è supportata la maggior parte dei target a 8 bit.

Sono disponibili driver pronti all’uso per flash NAND e NOR, schede SD, SDHC, SDXC e MMC, dispositivi di archiviazione e.MMC e chiavette USB. emFile include il supporto per i file system exFAT, FAT12, 16 e 32, oltre a BigFat e al sistema proprietario EFS (Embedded File System) di SEGGER, progettato specificamente per soddisfare i requisiti delle moderne applicazioni embedded.

Caratteristiche principali
La libreria emFile è il risultato di quasi trent’anni di sviluppo continuo. Distribuita su centinaia di milioni di dispositivi in tutto il mondo, offre funzionalità avanzate su cui gli sviluppatori possono fare pieno affidamento:

Protezione Fail-safe: emFile è un sistema robusto che rende quasi impossibile la corruzione del file system. I dati godono della massima protezione in caso di interruzione imprevista dell’alimentazione o guasto del dispositivo.

Sicurezza dei dati: Supporta la crittografia per i singoli file o per l’intero dispositivo di memoria. È essenziale per proteggere le informazioni su memorie NAND, NOR e schede SD/MMC.

Flessibilità di archiviazione: Lo strato di astrazione di emFile trasforma operazioni complesse in accessi alla memoria semplici e affidabili. Supporta configurazioni RAID 1 e RAID 5 direttamente sul livello di storage.

Casi d’uso e Struttura Software
emFile è organizzato in 5 livelli (API, File-system, Storage, Device e Hardware) ed è progettato pensando alla sicurezza. Tutte le operazioni di accesso sono atomiche, garantendo la coerenza dei dati anche in caso di interruzioni per guasto.

Componenti avanzati
Journaling: Un componente aggiuntivo che registra tutte le modifiche prima che vengano confermate nel file system principale, garantendo la coerenza dei dati scritti di recente.

RAID 1 e 5: Massima integrità dei dati tramite mirroring (RAID 1) o distribuzione con parità (RAID 5) per proteggere il sistema da difetti fisici dei dispositivi di memoria.

Driver Flash ottimizzati: Include driver specifici per NAND (SLC e universali) e NOR (mappatura a blocchi o a settori) per una gestione efficiente della vita dei supporti flash.

Funzionalità aggiuntive
exFAT®: Implementazione specializzata di Microsoft exFAT ottimizzata per sistemi embedded.

BigFAT: Consente l’archiviazione di file di dimensioni pari o superiori a 4 GB su unità formattate FAT, mantenendo la piena compatibilità con lo standard.

Image Creator per la produzione

Strumenti (Storage Image Creator FAT, NAND/NOR Image Creator) per convertire la struttura dei file del PC in un file binario pronto per la scrittura di massa tramite programmatori come la serie SEGGER Flasher, riducendo errori e passaggi ripetitivi in produzione.

Prestazioni e Risorse
Benchmark: emFile include codice di benchmark per misurare le prestazioni effettive sui target degli utenti (velocità di lettura/scrittura).

Utilizzo risorse: Progettato specificamente per dispositivi con risorse limitate; le funzionalità possono essere incluse o escluse dalla compilazione per adattare il sistema ai requisiti di memoria e design.

Licenze
Modello Commerciale: Disponibile tramite pagamento unico (una tantum), royalty-free e senza abbonamenti. La licenza include sei mesi di aggiornamenti e supporto prioritario.

Friendly License (SFL): emFile è disponibile gratuitamente per scopi non commerciali, di valutazione e didattici. In questa modalità, il prodotto è completamente funzionale e privo di limitazioni tecniche.

Articoli simili

  •  | 

    SEGGER SystemView

    Panoramica SystemView è uno strumento di testing embedded progettato per analizzare e profilare il comportamento dei sistemi real-time. Offre approfondimenti dettagliati sul comportamento a runtime, superando le capacità dei debugger tradizionali. Ideale per sistemi complessi con thread multipli e interrupt, SystemView aiuta gli sviluppatori di software embedded a garantire che i propri sistemi funzionino come…

  •  | 

    SEGGER Flasher PRO / PRO XL

    Panoramica Flasher Pro è uno strumento universale di programmazione In-System (ISP) per la programmazione affidabile di singole unità di microcontrollori e System-on-a-Chip (SoC). Progettato per soddisfare tutti i requisiti industriali di programmazione flash, supporta un’ampia gamma di microcontrollori e tipi di memoria, garantendo la compatibilità con numerosi sistemi embedded. Flasher Pro può programmare oltre 20.000…

  •  |  | 

    Segger emMQTT

    Panoramica Il Message Queuing Telemetry Transport (MQTT) è un protocollo di trasporto messaggi di tipo publish/subscribe (pubblica/iscriviti) progettato per funzionare sopra il protocollo TCP/IP. È semplice, leggero e aperto. Queste caratteristiche lo rendono ideale per molteplici situazioni, inclusi gli ambienti con risorse limitate come la comunicazione Machine to Machine (M2M) e i contesti Internet of…

  •  | 

    Segger Ozone

    Ozone è un ambiente di debugg grafico stand-alone completo per applicazioni embedded. Con Ozone è possibile eseguire il debug di qualsiasi applicazione basata su Arm o RISC-V a livello di sorgente (C, C++ e Rust) e assembly. Ozone può caricare applicazioni create con quasi tutti i tipi di toolchain o ambienti di sviluppo integrati (IDE),…

  •  |  | 

    Segger emRun

    Panoramica La maggior parte delle toolchain che utilizzano GCC o LLVM si appoggia a newlib, newlib-nano o glibc. Sfortunatamente, queste librerie presentano svantaggi significativi rispetto alle librerie di runtime professionali per sistemi embedded. È qui che entra in gioco emRun. Può essere utilizzato con GCC, LLVM e altre toolchain per fornire una libreria di runtime…

  •  |  | 

    Segger emUSB Device

    Panoramica emUSB-Device è un software per dispositivi USB ad alte prestazioni, progettato specificamente per i sistemi embedded. Scritto in codice ANSI C, consente una facile integrazione della funzionalità USB in qualsiasi sistema embedded. Vengono fornite molteplici classi di dispositivi standard, che permettono al sistema di comportarsi come un dispositivo USB standard e garantiscono la comunicazione…