Snabbfakta

    • Cambridge

Ansök senast: 2024-08-25

Short-Term Research Assistant in CHERI/ Morello Software (Fixed Term)

Publicerad 2024-06-26

Fixed-term: The funds for this post are available for 3 months.

We are seeking a Research Assistant with a background in security, language runtimes, and/or compilers to contribute to the CHERI Project in a three-month summer project. The focus will be contributing to the research implementation of the V8 JavaScript language run-time targeting the prototype Arm Morello board, which incorporates CHERI into a high-end superscalar Armv8-a processor. CHERI is the result of a highly successful 14-year collaboration between the University of Cambridge, SRI International, and more recently Arm, to develop new architectural security primitives. The CHERI protection model extends off-the-shelf processor Instruction-Set Architectures (ISAs) and processors with new capability-based security primitives supporting fine-grained C/C++-language memory protection and scalable software compartmentalization.

The V8 engine is a well-known, state-of-the-art JavaScript VM used by many open-source projects, including Node.js and the Chromium web browser. The CHERI memory safe adaptation of the V8 JavaScript VM is an ongoing project of our research team. The V8 engine supports both a compressed and uncompressed pointer encoding for JavaScript, resulting in various trade-offs for performance, memory safety, etc. which will need to be evaluated.

This position will (a) contribute to research on the adaptation of one of the largest software components ever ported to the memory-safe CHERI C/C++ programming model; and (b) the evaluation of performance and security properties of the CHERI V8 language run-time. The focus of this project will be on evaluation techniques to understand the cost and benefits of the CHERI memory-safe V8, as its implementation matures.

As part of this evaluation, the candidate will develop a methodology to measure both performance and security properties of the memory-safe V8 engine, making use of existing benchmarking and CHERI program analysis tools where possible. These activities will also feed back into future ISA and microarchitectural design, as well as real-world software stacks being used by over 70 academic and industrial partners in the UKRI DSbD research programme centred on CHERI. More information on CHERI can be found at:

This position will be an integral part of an international team of researchers spanning multiple institutions in academia and industry. Successful candidates will have research and/or engineering expertise in compiler development, language runtimes. We have a particular interest in experience with the FreeBSD operating system, LLVM compiler suite, and V8 JavaScript runtime, which are used heavily in this project, although background in Linux, GCC, or other Java/JavaScript runtimes will also be suitable for the role.

The position will benefit from existing experience with the C/C++ programming languages; RISC-V, CHERI-RISC-V, Armv8-A, or Morello assembly; revision control using Git; and continuous integration. Strong interpersonal and organisational skills, and the ability to work in an international team at multiple sites, will also be important in this role.

This post is intended to start on 15 July 2024, but there is potential flexibility with respect to earlier or later start dates.

  • Attached as a single combined PDF.
  • The University actively supports equality, diversity and inclusion and encourages applications from all sections of society.

    The University has a responsibility to ensure that all employees are eligible to live and work in the UK.