Palm OS Frederick Penrose, Kevin Wong, and Hoan Do
Overview Memory Management File System Demonstration
Memory Management
ROM vs. RAM ROM nonvolatile memory stores key applications RAM dynamic & storage stand-by mode (power off) no hard drive What are the advantages of only using RAM?
Dynamic RAM size - depends on OS version, available RAM, software, stacks, etc. dynamic heap temporary storage for application global variables, font tables, stacks & structures, library data, buffers (pen & key strokes), etc. no write protection
Storage RAM stores application data & databases persistent contains one or more storage heaps
Heaps header heap ID, status flags, heap size master pointer table dynamically built with persistent handles maps location of each chunk
Memory chunks size: 1byte – ~64KB movable referenced by handles location: beginning of heap defragmentation fixed referenced by pointers location: end of heap
Heap Structure
File Systems
Original File System records & memory chunks database no hierarchy simplicity vs. organization Why did Palm take this approach and what problems could they run into?
Expansion Card VFS (Virtual File System) interfaces with other file systems
New File System NVFS (Non-volatile File System) Tungsten T5 and Treo 650 advantages non-volatile hierarchal file system disadvantage slower fixed number of bytes
Average File Size
Demonstration