Scalability

THIN is a DOS-compatible flash file system that is designed to be extremely scalable. It allows the developer with limited resources to build precisely the system that is needed, and no more. The system is full-featured; it allows the developer to enable new options as requirements change.
 
It is not possible to give definitive figures for footprints because processors and development tools have major differences. The following estimates are made for the 8-bit 8051 MCU built with the Keil development suite.
 
Code Footprint
 
Depending on the options selected at build time, the code footprint of the file system can be less than 4k for a minimum DOS-compatible system for accessing files on a disk, up to around 20K for a complete file system with all options enabled including disk formatting.
 
Data Footprint
 
THIN works completely independently of any host system. Memory is statically allocated; i.e., there is no need to provide a heap. The typical total data footprint is <1K plus 0.5K for each open file.
 
Stack Requirement
 
Typically the stack requirement for any call to the file system is less than 0.5K. The developer’s guide provides guideline information about the specific stack requirements in different configurations.
  
Options
 
The system contains a large number of build options. These are detailed in the developer’s guide. Some of the options are:
  • F_FAT12
  • F_FAT16
  • F_FAT32
  • F_FORMAT
  • F_LONGFILES
  • F_WRITE
  • F_NAMECHECKING
  • F_WILDCARDS
  • F_DIRECTORIES
  • ... and many, many more
For a complete list consult the developer's guide.

Each and every API call can be included in the build or excluded from the build. This automatically removes unnecessary sub-routines.