Development of a Generic Flash Device Driver for Cellular Phones: Requirements, Design, Implementation