Porting

THIN is designed to be very portable. It is tested on several commercial RTOSes and also in a stand-alone system with no RTOS. We are not aware of any RTOS with which it cannot be used.
 
All the code is supplied in ANSI-compliant C. It has been built on four different development environments and run through a syntax checker to ensure the highest level of compatibility.
 
Sample application code is supplied for easy exercise of the system, as well as sample drivers for different media types with clear reference to their hardware dependencies.
 
The developer's guide gives detailed information on all aspects of porting and indicates clearly the areas that may need to be modified for a particular host system. In particular, the host system may provide:
  • a real time clock for time/date information. This is necessary if time/date information is to be stored with files written.
  • a random number generator to provide serial numbers during format. This is recommended only if formatting of media is required.
  • mutexes for mutual exclusion. They are required only in a pre-emptive system.
The developer's guide gives detailed information for scaling the system:
  • which functions to exclude
  • the effect of excluding/including a particular option
  • selecting FAT12/16/32 support
  • selecting long or 8.3 name support
  • a variety of code validation functions