DocumentCode
177289
Title
The CHERI capability model: Revisiting RISC in an age of risk
Author
Woodruff, Jonathan ; Watson, R.N.M. ; Chisnall, David ; Moore, Simon W. ; Anderson, Jon ; Davis, Brian ; Laurie, Ben ; Neumann ; Norton, Robert ; Roe, Michael
Author_Institution
Univ. of Cambridge, Cambridge, UK
fYear
2014
fDate
14-18 June 2014
Firstpage
457
Lastpage
468
Abstract
Motivated by contemporary security challenges, we reevaluate and refine capability-based addressing for the RISC era. We present CHERI, a hybrid capability model that extends the 64-bit MIPS ISA with byte-granularity memory protection. We demonstrate that CHERI enables language memory model enforcement and fault isolation in hardware rather than software, and that the CHERI mechanisms are easily adopted by existing programs for efficient in-program memory safety. In contrast to past capability models, CHERI complements, rather than replaces, the ubiquitous page-based protection mechanism, providing a migration path towards deconflating data-structure protection and OS memory management. Furthermore. CHERI adheres to a strict RISC philosophy: it maintains a load-store architecture and requires only single-cycle instructions, and supplies protection primitives to the compiler, language runtime, and operating system. We demonstrate a mature FPGA implementation that runs the FreeBSD operating system with a full range of software and an open-source application suite compiled with an extended LLVM to use CHERI memory protection. A limit study compares published memory safety mechanisms in terms of instruction count and memory overheads. The study illustrates that CHERI is performance-competitive even while providing assurance and greater flexibility with simpler hardware.
Keywords
field programmable gate arrays; operating systems (computers); reduced instruction set computing; security of data; CHERI hybrid capability model; CHERI memory protection; FPGA implementation; FreeBSD operating system; MIPS ISA; OS memory management; RISC era; byte-granularity memory protection; capability hardware enhanced RISC instruction; compiler; data-structure protection; fault isolation; field programmable gate array; in-program memory safety; instruction count; instruction set architecture; language memory model enforcement; language runtime; load-store architecture; memory overhead; open-source application suite; reduces instruction set computing; single-cycle instructions; ubiquitous page-based protection mechanism; Abstracts; Coprocessors; Ground penetrating radar; Registers; Safety;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Architecture (ISCA), 2014 ACM/IEEE 41st International Symposium on
Conference_Location
Minneapolis, MN
Print_ISBN
978-1-4799-4396-8
Type
conf
DOI
10.1109/ISCA.2014.6853201
Filename
6853201
Link To Document