Author:
Chen Shimin,Kozuch Michael,Strigkos Theodoros,Falsafi Babak,Gibbons Phillip B.,Mowry Todd C.,Ramachandran Vijaya,Ruwase Olatunji,Ryan Michael,Vlachos Evangelos
Abstract
Instruction-grain program monitoring tools, which check and analyze executing programs at the granularity of individual instructions, are invaluable for quickly detecting bugs and security attacks and then limiting their damage (via containment and/or recovery). Unfortunately, their fine-grain nature implies very high monitoring overheads for software-only tools, which are typically based on dynamic binary instrumentation. Previous hardware proposals either focus on mechanisms that target specific bugs or address only the cost of binary instrumentation. In this paper, we propose a flexible hardware solution for accelerating a wide range of instruction-grain monitoring tools. By examining a number of diverse tools (for memory checking, security tracking, and data race detection), we identify three significant common sources of overheads and then propose three novel hardware techniques for addressing these overheads: Inheritance Tracking, Idempotent Filters, and Metadata-TLBs. Together, these constitute a general-purpose hardware acceleration framework. Experimental results show our framework reduces overheads by 2-3X over the previous state-of-the-art, while supporting the needed flexibility.
Publisher
Association for Computing Machinery (ACM)
Reference42 articles.
1. W. R. Bush J. D. Pincus and D. J. Sielaff. A static analyzer for finding dynamic programming errors. Software - Practice and Experience 30(7) 2000. 10.1002/(SICI)1097-024X(200006)30:7%3C775::AID-SPE309%3E3.0.CO;2-H W. R. Bush J. D. Pincus and D. J. Sielaff. A static analyzer for finding dynamic programming errors. Software - Practice and Experience 30(7) 2000. 10.1002/(SICI)1097-024X(200006)30:7%3C775::AID-SPE309%3E3.0.CO;2-H
2. Log-based architectures for general-purpose monitoring of deployed code
3. An empirical study of operating systems errors
4. DISE
Cited by
14 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. PDIFT++: System-Wide Memory Tracking Using a Single-Process Memory Tracker;SN Computer Science;2024-01-20
2. Raft: Hardware-assisted Dynamic Information Flow Tracking for Runtime Protection on RISC-V;Proceedings of the 26th International Symposium on Research in Attacks, Intrusions and Defenses;2023-10-16
3. Catamaran: Low-Overhead Memory Safety Enforcement via Parallel Acceleration;Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis;2023-07-12
4. SpecTerminator: Blocking Speculative Side Channels Based on Instruction Classes on RISC-V;ACM Transactions on Architecture and Code Optimization;2023-02-10
5. Leveraging Hardware Isolation for Process Level Access Control & Authentication;Proceedings of the 22nd ACM on Symposium on Access Control Models and Technologies;2017-06-07