Title
FRAMER: A Cache-friendly Software-based Capability Model.
Abstract
Fine-grained memory protection for C and C++ programs must track individual objects (or pointers), and store bounds information per object (pointer). Its cost is dominated by metadata updates and lookups, making efficient metadata management the key for minimizing performance impact. Existing approaches reduce metadata management overheads by sacrificing precision, breaking binary compatibility by changing object memory layout, or wasting space by excessive alignment or large shadow memory spaces. We propose FRAMER, a software capability model for object-granularity memory protection. Its efficient per-object metadata management mechanism enables direct access to metadata by calculating their location from a tagged pointer to the object and, for large objects, a compact supplementary table. The number of bits in this tag and the size of the supplementary table are balanced to minimize both using a novel technique. FRAMER is a general proposal for object metadata management with potential applications in memory safety, type safety, thread safety and garbage collection that improves over previous solutions by (1) increasing locality of reference by having objects carry their metadata, (2) streamlining expensive metadata lookups, (3) saving space by avoiding superfluous alignment and padding, (4) avoiding internal object memory layout changes.
Year
Venue
Field
2018
arXiv: Cryptography and Security
Memory protection,Pointer (computer programming),Metadata,Memory safety,Locality of reference,Computer science,Garbage collection,Metadata management,Shadow memory,Database
DocType
Volume
Citations 
Journal
abs/1810.11622
0
PageRank 
References 
Authors
0.34
0
4
Name
Order
Citations
PageRank
Myoung Jin Nam100.34
David J. Greaves212430.48
Elias Athanasopoulos322.06
Periklis Akritidis445122.09