wear leveling can also be implemented in software by special-purpose file systems such as jffs2 and yaffs on flash media or udf on optical media. all three are log-structured file systems in that they treat their media as circular logs and write to them in sequential passes. file systems which implement copy-on-write strategies, such as zfs, also implement a form of wear leveling.