1. A method for rewriting a nonvolatile rewritable memory, comprising the steps of: identifying an application program to be stored in said nonvolatile rewritable memory; writing an indicator value to a first segment of said nonvolatile memory rewritable memory, which comprises a flash memory, said indicator value indicating that data contained in an application portion of said nonvolatile memory contains invalid data; transferring an old application program from said application portion to an auxiliary memory; erasing said application portion of the second segment of said nonvolatile rewritable memory; transferring the application program to the second segment of said nonvolatile rewritable memory; and determining whether the application program was completely written to the nonvolatile rewritable memory; and changing the indicator value in the nonvolatile rewritable memory to another value if in the determining step it is determined the application program is completely written to nonvolatile rewritable memory.