|
| This Article | ||
| ||
| Share | ||
| Bibliographic References | ||
| Add to: | ||
| | ||
| Search | ||
| ||
| ASCII Text | x | ||
| Shimin Chen, Michael Kozuch, Phillip B. Gibbons, Michael Ryan, Theodoros Strigkos, Todd C. Mowry, Olatunji Ruwase, Evangelos Vlachos, Babak Falsafi, Vijaya Ramachandran, "Flexible Hardware Acceleration for Instruction-Grain Lifeguards," IEEE Micro, vol. 29, no. 1, pp. 62-72, January/February, 2009. | |||
| BibTex | x | ||
| @article{ 10.1109/MM.2009.6, author = {Shimin Chen and Michael Kozuch and Phillip B. Gibbons and Michael Ryan and Theodoros Strigkos and Todd C. Mowry and Olatunji Ruwase and Evangelos Vlachos and Babak Falsafi and Vijaya Ramachandran}, title = {Flexible Hardware Acceleration for Instruction-Grain Lifeguards}, journal ={IEEE Micro}, volume = {29}, number = {1}, issn = {0272-1732}, year = {2009}, pages = {62-72}, doi = {http://doi.ieeecomputersociety.org/10.1109/MM.2009.6}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, } | |||
| RefWorks Procite/RefMan/Endnote | x | ||
| TY - MGZN JO - IEEE Micro TI - Flexible Hardware Acceleration for Instruction-Grain Lifeguards IS - 1 SN - 0272-1732 SP62 EP72 EPD - 62-72 A1 - Shimin Chen, A1 - Michael Kozuch, A1 - Phillip B. Gibbons, A1 - Michael Ryan, A1 - Theodoros Strigkos, A1 - Todd C. Mowry, A1 - Olatunji Ruwase, A1 - Evangelos Vlachos, A1 - Babak Falsafi, A1 - Vijaya Ramachandran, PY - 2009 KW - hardware acceleration VL - 29 JA - IEEE Micro ER - | |||
Instruction-grain lifeguards monitor executing programs at the granularity of individual instructions to quickly detect bugs and security attacks, but their fine-grain nature incurs high monitoring overheads. This article identifies three common sources of these overheads and proposes three techniques that together constitute a general-purpose hardware acceleration framework for lifeguards.
1. A. Chou et al., "An Empirical Study of Operating Systems Errors," Proc. ACM Symp. Operating Systems Principles (SOSP 01), ACM Press, 2001, pp. 73-88.
2. J. Tucek et al., "Triage: Diagnosing Production Run Failures at the User's Site," Proc. ACM Symp. Operating Systems Principles (SOSP 07), ACM Press, 2007, pp. 131-144.
3. F. Qin et al., "Rx: Treating Bugs as Allergies—A Safe Method to Survive Software Failures," ACM Symp. Operating Systems Principles (SOSP 05), ACM Press, 2005, pp. 235-248.
4. N. Nethercote and J. Seward, "Valgrind: A Framework for Heavyweight Dynamic Binary Instrumentation," Proc. Conf. Programming Language Design and Implementation (PLDI 07), ACM Press, 2007, pp. 89-100.
5. C.-K. Luk et al., "Pin: Building Customized Program Analysis Tools with Dynamic Instrumentation," Proc. Conf. Programming Language Design and Implementation (PLDI 05), ACM Press, 2005, pp. 190-200.
6. G. Venkataramani et al., "MemTracker: Efficient and Programmable Support for Memory Access Monitoring and Debugging, Proc. Int'l Symp. High-Performance Computer Architecture (HPCA 07), IEEE CS Press, 2007, pp. 273-284.
7. Y. Zhou et al., "Efficient and Flexible Architectural Support for Dynamic Monitoring," ACM Trans. Architecture and Code Optimization, vol. 2, no. 1, Mar. 2005, pp. 3-33.
8. P. Zhou, R. Teodorescu, and Y. Zhou, "HARD: Hardware-Assisted LockSet-Based Race Detection," Proc. Int'l Symp. High-Performance Computer Architecture (HPCA 07), IEEE CS Press, 2007, pp. 121-132.
9. G.E. Suh et al., "Secure Program Execution via Dynamic Information Flow Tracking," Proc. Int'l Conf. Architectural Support for Languages and Operating Systems (ASPLOS 04), ACM Press, 2004, pp. 85-96.
10. M. Dalton, H. Kannan, and C. Kozyrakis, "Raksha: A Flexible Information Flow Architecture for Software Security," Proc. Int'l Symp. Computer Architecture (ISCA 07), ACM Press, 2007, pp. 482-493.
11. G. Venkataramani et al., "FlexiTaint: A Programmable Accelerator for Dynamic Taint Propagation," Proc. Int'l Symp. High-Performance Computer Architecture (HPCA 08), IEEE CS Press, 2008, pp. 173-184.
12. S. Chen et al., "Log-Based Architectures for General-Purpose Monitoring of Deployed Code," Proc. First Workshop on Architectural and System Support for Improving Software Dependability, ACM Press, 2006, pp. 63-65.
13. M.L. Corliss, E.C. Lewis, and A. Roth, "DISE: A Programmable Macro Engine for Customizing Applications," Proc. Int'l Symp. Computer Architecture (ISCA 03), 2003, IEEE CS Press, pp. 362-373.
14. J. Wilander and M. Kamkar, "A Comparison of Publicly Available Tools for Dynamic Buffer Overflow Prevention," Proc. Network and Distributed System Security Symp. (NDSS 03), The Internet Society, 2003; http://www.isoc.org/isoc/conferences/ndss.

