SHIPCore:SHIP FS

From Serious Documentation
Jump to: navigation, search
Subsystem Introduced Description
SHIP_FS v4.0 Abstracts widely disparate file systems (FAT, linear, MCU Flash, RAM, etc) into a unified API.

SHIP_FS abstracts into a single unified API (with the expected fopen, fread, fwrite, etc. functions) a wide variety of disparate file systems, including:

  • Segger emFile with FAT and EFS support
  • Linear "1 file" file systems that may reside in RAM, MCU FLASH, Serial FLASH, e.MMC boot partitions, etc.
  • Special subsystems such as the one used to support the SHIP_Persist key/value persistent storage registry

SHIP_FS is part of SHIPCore, the foundational firmware enabling application development for Serious Communications Modules. SHIPCore is bundled in SHIPWare for Serious Communications Modules which adds the OS, BSP, drivers, and glue on top of SHIPCore to create an out-of-the-box embedded application environment.

Major Version Changes

Version Change
v4.0.0 introduced


Files

  • SHIP_Core/SHIP_FS.h is the API definition and is automatically included by SHIP_Essentials.h (see SHIP_Essentials)
  • SHIP_Core/SHIP_FS.c has the common functions that span all implementations, including the main initialization function for all file systems

When implemented, numerous other files will be present to implement this API on a platform, including:

  • Common/SHIP_BSP_FS.h and SHIP_BSP_FS.c which define the various volumes supported by the platform
  • Various SHIP_FS API plug-in implementations, for example Common/SHIP_FS_RFlash.c and SHIP_FS_RFlash.h which implements this API for regions of the Renesas MCU built-in code flash so that applications and data can be read/written through a normal file system API rather than unique flash programming routines

API

Initialization

Examples