Architectural support for software-defined metadata processing

22Citations
Citations of this article
13Readers
Mendeley users who have this article in their library.

Abstract

Optimized hardware for propagating and checking software-programmable metadata tags can achieve low runtime overhead. We generalize prior work on hardware tagging by considering a generic architecture that supports software-defined policies over metadata of arbitrary size and complexity; we introduce several novel microarchitectural optimizations that keep the overhead of this rich processing low. Our model thus achieves the efficiency of previous hardware-based approaches with the flexibility of the software-based ones. We demonstrate this by using it to enforce four diverse safety and security policies-spatial and temporal memory safety, taint tracking, control-flow integrity, and code and data separation-plus a composite policy that enforces all of them simultaneously. Experiments on SPEC CPU2006 benchmarks with a PUMP-enhanced RISC processor show modest impact on runtime (typically under 10%) and power ceiling (less than 10%), in return for some increase in energy usage (typically under 60%) and area for on-chip memory structures (110%).

Cite

CITATION STYLE

APA

Dhawan, U., Hriţcu, C., Rubin, R., Vasilakis, N., Chiricescu, S., Smith, J. M., … DeHon, A. (2015). Architectural support for software-defined metadata processing. In International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS (Vol. 2015-January, pp. 487–502). Association for Computing Machinery. https://doi.org/10.1145/2786763.2694383

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free