dotnext DotNext 2018 Мск (22.11.2018)

So you want to create your own .NET runtime?

img

Running C#/.NET code is something we do all the time. But how does the .exe/.dll file produced by the compiler actually get executed? We’ll explore some of what’s going on inside the dotnet[core]/Mono runtime, giving some insight into the inner workings of .NET.

Running C#/.NET code is something we do all the time. But how does the .exe/.dll file produced by the compiler actually get executed? What’s going on inside the dotnet[core]/Mono runtime?

In an attempt to answer these questions we’ll investigate the contents of a .NET executable file and the things that the runtime needs to have in place in order to execute .NET code. With examples from a very simple interpreted .NET runtime, demonstrating that this may not be as complex as you imagined!

This will be based on the (inefficient, pointless, and obsolete!) [DotNetAnywhere runtime](https://github.com/chrisdunelm/DotNetAnywhere) that Chris wrote many years ago.