Storing a persistent transactional object heap on flash memory

Michal Spivak, Sivan Toledo · 2006

We present the design and implementation of TINYSTORE, a per-sistent, transactional, garbage-collected memory-management sys-tem, designed to be called from the Java virtual machine of a Java Card. The system is designed for flash-based implementations of Java Card, a variant of the Java platform for smart cards. In the Java Card platform, objects are persistent by default. The platform supports transactions: a sequence of accesses to objects can be ex-plicitly declared to constitute a transaction. TINYSTORE supports explicit transactions and atomically executes individual accesses that are not part of transactions; it also supports garbage collection, even on systems with a small constant amount of RAM. TINYS-TORE uses a novel approach and specialized data structures to effi-ciently manage flash memory. We demonstrate its effectiveness by comparing it to a traditional EEPROM-based memory management system for Java Cards.

Read the paper · More papers on PaperTik