GitHub
01.09.2021, 16:01 Uhr
C# für die Systemprogrammierung
GitHub zeigt Beispiele wie man C# mit Hilfe der Technologie .NET Native AOT (früher CoreRT genannt) zu nativem Code kompiliert.
Die von GitHub präsentierten Beispiele sind für Entwickler gedacht, die C# verwenden möchten, aber nicht an die Auswahl der normalerweise mit C# gelieferten Basisklassenbibliotheken gebunden sein wollen. Wer nur seine .NET-Anwendungen nativ kompilieren will, findet eine Lösung im Zweig NativeAOT.
no-runtime: Das erste der Beispiele tut zwar nichts sinnvolles, aber es demonstriert, wie man Code in C# schreibt, der ohne Runtime direkt lauffähig ist. Das Hallo-Welt-Beispiel ist am Ende eine 4-5 Kilobyte grosse native EXE-Datei ohne Abhängigkeiten.
Das Beispiel with-runtime kann dagegen tatsächlich nützlich sein. Es beinhaltet die komplette verwaltete und unverwaltete Laufzeit – GC, Ausnahmebehandlung und Interface-Dispatch funktionieren alle. Dieses Beispiel kommt auf etwa 400 KByte, wovon der grösste Teil die C-Laufzeitbibliothek ist.
efi-no-runtime ist eine EFI-Boot-Anwendung, mit der Sie C# auf Bare Metal ohne Betriebssystem ausführen können. Es gelten ähnliche Einschränkungen wie für das No-Runtime-Beispiel.
Den Code der Beispiele sowie Erläuterungen dazu finden Sie auf dieser GitHub-Seite.