Our work is aimed at developing a fault tolerance policy for embedded mobile devices where we can determine suitability of a fault tolerance mechanism for the application with respect to the needs of user and available resources. More precisely, we are developing methods to define requirements of applications and services offered by a particular fault tolerance mechanism. This helps us in finding compatibility between applications and mechanisms at any given time, and allows us to choose the most suitable mechanism. Another part of out thesis has been to develop two distributed coordinated checkpointing algorithms. The practical implementation of our work has been done on WTK 2.0 with J2ME-MIDP. We have done an implementation of our work with our checkpointing mechanisms and game application. We have also shown how to profile applications and mechanisms to integrate in our work.