Mobius – writing your own .NET runtime running on .NET Core
summary
A .NET runtime implemented in C# runs on top of .NET Core/5 as a vertical proof‑of‑concept that actually executes IL by emitting native code; it uses threaded-code JIT rather than a full optimizer, reads metadata with PENet, assembles instructions via the Iced library, and bridges native/managed calls with function‑pointer tricks like GetFunctionPointerForDelegate. The runtime is single‑threaded, plugin‑friendly for GC and JIT experiments, currently slow compared with production runtimes but fast enough for debugging, learning, and prototyping.
AI-written summary · about
chapters (15)
- 0:00Intro
- 0:33About me
- 3:02What is .NET...?
- 6:36What is .NET runtime aka Virtual Execution System (VES)?
- 9:23NET runtime & C++
- 15:35NET runtime & no-C++
- 22:24Design fundamentals - what to share
- 29:12Design fundamentals - JIT or interpret
- 30:23Design fundamentals - interpreted
- 32:21Design fundamentals - real JIT
- 33:22Design fundamentals - Threaded code
- 38:19Design - the metadata
- 39:12Design - the JIT
- 53:42When...?
- 57:03Materials
related talks
59mMobius — Building a Custom .NET Runtime on .NET Core
56m.NET 5: runtimes
53mSo you want to create your own .NET runtime?
01h 02mSo you want to create your own .NET runtime?
51m.NET and WebAssembly: Back to the browser?
50mDemystifying the Core of .NET Core
50mWhy I'm Not Leaving .NET
01h 15mPanel discussion on the future of .NET
