Profile avatar
migeel.sk
I help building the .NET runtime at Microsoft. My tweets are my own opinions and/or shitposts, not the official party line.
76 posts 606 followers 119 following
Regular Contributor
Active Commenter

After #flareon11 challenge 7, I got inspired to build tooling for #dotnet Native AOT reverse engineering. As such, I built a #Ghidra Analyzer that can automatically recover most .NET types, methods and frozen objects (e.g., strings). 👉https://blog.washi.dev/posts/recovering-nativeaot-metadata/

A small template to write self-contained Win32 services in C# with NativeAOT: gist.github.com/jbevain/b295...

I've published the third part of my series of articles about writing a .NET garbage collector in C#. In this one, we add a helper method to inspect the objects in memory, learning about thread modes and the DAC. minidump.net/writing-a-ne... #dotnet

After writing a profiler in C#, I've now published the first of a series of articles about how use C# to... write a .NET Garbage Collector. #dotnet minidump.net/2025-28-01-w...

Cool project: a hypervisor-based emulator for Windows x64 user-mode executables. One of my first thoughts upon seeing it - "I wonder if it's also possible to call the Windows hypervisor APIs from C#". github.com/x86matthew/W...

I published part 5 of my "Writing a .NET profiler in C#" series. All the foundations built in the previous articles have been moved to a library named Silhouette. In this new article, we finally have everything we need to write an actual profiler. minidump.net/writing-a-ne... #dotnet

Finally had time over the holidays to realize a long-standing dream of mine: a hex editor that knows about the PE file and .NET metadata format. You can click any byte and it will show you which data structure it is in the tree. Every byte is covered. The parser is at github.com/KirillOsenko...

got my custom sokol-backed c# game engine zinc compiling to wasm using nativeaot-llvm! and for anyone else headed in a similar direction, I spent some time writing up what it took, what bugs I encountered, etc! give it a read here #gamedev #zinc #csharp kylekukshtel.com/csharp-wasm-...

Forgot that the docs are here: www.nuget.org/packages/siz.... To install, simply `dotnet tool install sizoscope --global` but you'll want to read the docs to find out how to create the files this tool operates on.

1/3 New version of sizoscope, my tool to analyze size of .NET native AOT executables, is out! It can now show you sizes of some of the blobs within the executable just to give a more complete picture.

Invoke Mechanism for the .NET CLR, etc. - George Bosworth - 2001/09 www.youtube.com/watch?v=Uimh...

Thanksgiving is approaching in the US and that means time with family. People in your family were presented with this dialog in the past and probably just clicked the button Google wanted them to click. Ask them if they want to browse the web, or if they want web to browse them.

If you're into low level .NET, you should give @xoofx.mastodon.social.ap.brid.gy a follow!

JIT compiled .NET will often be faster than AOT compiled .NET thanks to dynamic PGO. But AOT compilation has some tricks up the sleeve too. In .NET 9, the TechEmpower JSON benchmark ends up a bit faster with AOT.

The C# Community Discord is putting on another virtual conference, and I'll be talking performance. SIMD content guaranteed. Nov 24 @ 17:30 UTC www.youtube.com/watch?v=T4Ao...

1/4 Life hack: uninstalling the Notepad app in Windows 11 gives you back old notepad.exe that starts faster and uses less memory. This Notepad is going to be a bit cursed and registry hacks are needed to uncurse it. 👇

Last time I got free stuff from Microsoft as an employee was when I got a T-shirt for shipping .NET 6.