Though flash memory is widely used in wireless sensor networking (WSN) deployments and embedded systems applications, it suffers from limitations such as asymmetric granularity of reads/writes and erasures, and limited write lifetimes. This thesis proposes an innovative new approach for designing wear levelled flash file systems. This approach is designed around the use of one way hash chains, which allow the file system to forgo a memory map, while at the same time providing wear levelling by distributing the writes to randomized pages within the flash memory. The resulting flash file system, dubbed Probabilistically Utilized Flash File System (PUFFS), was built and tested under Mantis OS (MOS), running on TelosB wireless sensor motes. Furthermore, this thesis shows that the probabilistic approach to page distribution is superior to linear approaches, and will result in a longer life expectancy of flash memory chips. |