Ruslan Bukin, a research engineer at the University of Cambridge Computer Laboratory has committed kernel support for the FreeBSD RISC-V port to the FreeBSD source tree. This is the latest in a series of commits including user space support, making his work at the University of Cambridge more accessible to the broader open-source hardware and software communities. RISC-V is an exciting new open-source Instruction-Set Architecture (ISA) developed at the University of California at Berkeley, which is seeing increasing interest in the embedded systems and hardware-software research communities. Ruslan’s work at Cambridge allows FreeBSD to boot on Berkeley’s Spike simulator, and makes the FreeBSD Project the first operating-system vendor to include formal, in-tree support the RISC-V architecture. Ruslan has recently given a talk on the FreeBSD port at the RISC-V workshop in the San Francisco Bay Area, and his work was highlighted in EE Times in January 2016.
The current FreeBSD RISC-V port is able to boot to multi-user mode on Spike, and allows a range of userspace commands and services such as SSH, mail delivery, and a user shell to run reliably. His next steps are to add multicore support to the port, and bring up FreeBSD on early hardware platforms becoming available for RISC-V, such as as FPGA simulations of the Cambridge’s open-source LowRISC System-on-Chip. FreeBSD ports and packages will appear over coming days allowing others in the community to reproduce the work, and making it easy for developers interested in contributing to the project to join the effort.
Ruslan’s work has been supported by the UK Higher Education Innovation Fund (HEIF5) and DARPA CTSRD project at the University of Cambridge, with participation in the RISC-V workshop supported by the FreeBSD Foundation. Other contributors to the FreeBSD RISC-V porting effort include Ed Maste (FreeBSD Foundation), Arun Thomas (BAE Systems), Andrew Turner (ABT Systems Ltd.), and Robert Watson (University of Cambridge).