Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A new non volatile storage system #77930

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Commits on Sep 30, 2024

  1. fs: introduce ZMS a new Memory storage system

    ZMS is the abreviation of Zephyr Memory Storage.
    It is a storage developed to target especially the non erasable devices.
    
    The new memory storage system inherit from the NVS storage multiple
    features and introduce new ones :
    * Inherited features :
     - light key-value based storage
     - cache for entries
     - Wear Leveling of flash memory
     - Resilience to power failures
    * New features :
     - cycle counter for non erasable devices (instead of erase emulation)
     - Keys up to 32-bit
     - Built-in support of CRC32 for data
     - Small size data (<= 8 bytes) integrated within entries
    
    Signed-off-by: Riadh Ghaddab <[email protected]>
    rghaddab committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    7bf5d17 View commit details
    Browse the repository at this point in the history
  2. tests: fs: zms: add testsuite for ZMS storage

    List of added tests :
    - zms.test_delete
    - zms.test_zms_cache_collission
    - zms.test_zms_cache_gc
    - zms.test_zms_cache_hash_quality
    - zms.test_zms_cache_init
    - zms.test_zms_corrupted_sector_close_operation
    - zms.test_zms_corrupted_write
    - zms.test_zms_full_sector
    - zms.test_zms_gc
    - zms.test_zms_gc_3sectors
    - zms.test_zms_gc_corrupt_ate
    - zms.test_zms_gc_corrupt_close_ate
    - zms.test_zms_mount
    - zms.test_zms_write
    
    Signed-off-by: Riadh Ghaddab <[email protected]>
    rghaddab committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    1f4e92c View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2024

  1. samples: fs: zms: add a sample app for ZMS storage system

    This adds a user application that shows the usage of ZMS
    The sample app shows three main functions of ZMS:
    - read/write/delete key/value pairs
    - fill all storage and delete it
    - calculate free remaining space
    
    Signed-off-by: Riadh Ghaddab <[email protected]>
    rghaddab committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    c479fad View commit details
    Browse the repository at this point in the history