Hallo, ich möchte hier mein Projekt L1VM (1.0.11) vorstellen. L1VM ist eine kleine virtuelle Maschine mit 64 Bit Kern.
Es gibt 61 Befehle, wovon zwei Interrupts mit Unterbefehlen sind. Man kann Module einbinden die man in C schreibt.
Die VM braucht wenig Resourcen, man kann ohne die SDL Bibliotheken Programme in nur 2MB RAM laufen lassen.

NEU: Es gibt jetzt Buildscripte für Debian, Fedora und Windows 10 WSL Debian.
Die VM läuft also auch in Windows 10 WSL! Bei anderen Linux Distros muss man die
benötigten Bibliotheken selbst installieren.

Für die Grundrechenarten und ein paar andere Befehle gibt es einen JIT-Compiler.
Die Geschwindigkeit von dem compilierten Code ist sehr hoch.

Module gibt es für:
Cells - verlinkte neurale Netze mit FANN library
endianess - Little Endian, Big Endian
fann - FANN neurale Netze
file - Dateien I/O
genann - Genann neuronale Netze
gpio - Raspberry Pi GPIO Modul
math - Mathe Funktionen
mem - Arrays
mem-vect - Vector Arrays
mpfr-c++ - MPFR Mathe Bibliothek, rechnen mit großen Fließkommazahlen. Mehr als 80 Mathefunktionen
net - TCP/IP Sockets
process - neuen Prozess starten
rs232 - RS232 seriellen Port
sdl - Grafikbibliothek komplett mit GUI
string - Stringfunktionen
time - Zeit/Datum

Man kann in einer Header Datei festlegen wie abgeschottet die VM sein soll.
Z.B. mit Array Überlaufschutz und bei Zahlen Überlauf, wenn die Werte überschritten sind.

Hier gibt es mehr Infos auf meinem Blog: https://midnight-koder.net/blog/
Der Sourcecode in ist auf GitHub: https://github.com/koder77/l1vm