Port a Microkernel's Fast Message Path from x86-64 to RISC-V
Overview
What this challenge is about.
Port a Microkernel's Fast Message Path from x86-64 to RISC-V. Expert-level challenge in code. Writing production code that solves real engineering problems, ...
The Brief
What you'll do, and what you'll demonstrate.
Re-implement a microkernel's hand-optimized synchronous fast message path for the RISC-V 64-bit architecture while preserving its exact behavior and measuring its latency against the x86-64 original.
This is not a coding exercise. It is the work a software engineer does between a Jira ticket and a merged PR. That distinction matters to every hiring manager who has seen candidates solve LeetCode problems and none who have shipped production code under real constraints.
When you finish, you will have something most graduates do not: a real-world deliverable, verified by Ewance, that you can show to a hiring manager and say "I did this. Here is the proof."
Earning criteria — what you'll demonstrate
- Translate a hand-optimized assembly fast path between two processor architectures while preserving exact behavior
- Map an architecture-specific calling convention and register-allocation scheme onto the RISC-V 64-bit register file
- Preserve subtle systems invariants — register-only message passing, direct context switch, and capability checks — across a port
- Measure low-latency operations rigorously with pinned cores, repeated runs, and confidence intervals
- Write an architectural reference document that lets maintainers reason about and extend the port
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Aligned coursework coming soon.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
- Microkernels
Apply microkernels to solve real industry problems and demonstrate production-level capability.
- Ipc
Apply ipc to solve real industry problems and demonstrate production-level capability.
- Risc V
Apply risc v to solve real industry problems and demonstrate production-level capability.
- Kernel Development
Apply kernel development to solve real industry problems and demonstrate production-level capability.
- Assembly Programming
Apply assembly programming to solve real industry problems and demonstrate production-level capability.
- Benchmarking
Apply benchmarking to solve real industry problems and demonstrate production-level capability.
Careers
Career paths this challenge builds toward
Completing this challenge demonstrates skills that transfer directly to these roles:
Systems Architect
Porting a performance-critical kernel path teaches you to reason about processor architecture, calling conventions, and system invariants at once — the core judgment a systems architect applies when designing portable, certifiable low-level software.
This challenge sharpens
- microkernels
- kernel-development
- risc-v
Embedded Kernel Engineer
Re-implementing a fast message path in assembly for a new architecture mirrors the daily work of embedded kernel engineers who bring up operating systems on novel safety-critical hardware and must preserve exact behavior across processors.
This challenge sharpens
- assembly-programming
- ipc
- kernel-development
Performance Engineer
Measuring round-trip latency with pinned cores, repeated runs, and confidence intervals, then comparing across architectures, builds the rigorous measurement discipline performance engineers use to defend and improve low-latency systems.
This challenge sharpens
- benchmarking
- ipc
- risc-v