code live ausführen
-
Hi
Meine Frage ist ob man über ein Netzwerk Program-Code empfangen kann diesen an eine Speicherstelle schreiben und ihn dann ausführen kann.
Wobei Windows nicht groß daran herum doktorn soll.
Ich bin bis jetzt nur darauf gekommen den Code in Maschienensprache übersetzen zu lassen ganz normal zu transportieren und dan wollte ich die Binärdatei öffnen und den inhalt in ein array schreiben, dann bin ich noch nicht weiter gekommen und ist dieser Ansstz über möglich, die Effizienz spielt dabei keine rolle.
Danke für alle antworten
-
Am Ende der Leitung wird die Eingabe in einen Interpreter geladen, der den Code ausführt.
Das kann ein kleiner selbstgebauter Interpreter sein, aber auch etwas fertiges und mächtiges wie Lua oder PHP.
Direkt den Maschinencode ausführen zu lassen ist bestimmt nicht so einfach und zudem OS abhängig. Damit wäre auch eine Kombination Client (Windows) und Server (Linux) sehr umständlich bis unmöglich.
Mit einer Scriptsprache hättest du all diese Probleme gelöst.
-
Thanks die Idee hatte ich noch garnicht
Ich werde einfach zwei Programme Schreiben mit Bibiliotheken an Funktionen in Maschienensprache und ich werde einfach Interpreter mäßig nur listen in welcher reinfolge diese Funktionen aufgerufen werden sollen übertragen und diese in den Interpreter laden. der jede Funktion mit den übertragenen Variablen seqenziell ausführt.
-
bbbbb schrieb:
Das kann ein kleiner selbstgebauter Interpreter sein, aber auch etwas fertiges und mächtiges wie Lua oder PHP.
Es ist ja nicht so, dass es keine C Interpreter gäbe... (Ob die aber auch "mächtig" sind, weiß ich nicht :D)
-
Phistomefel schrieb:
bbbbb schrieb:
Das kann ein kleiner selbstgebauter Interpreter sein, aber auch etwas fertiges und mächtiges wie Lua oder PHP.
Es ist ja nicht so, dass es keine C Interpreter gäbe... (Ob die aber auch "mächtig" sind, weiß ich nicht :D)
C ist aber als Scriptsprache viel zu komplex und lässt sich schlecht mit eigenen (=externen) Funktionen ausrüsten. Das ist bei Lua anders, das ist sozusagen dafür gemacht.
-
Es gibt Clint der ist wohl recht gut.
Meinst du mit live ausführen Zeile für Zeile? oder schon bisschen mehr auf einmal?
Aber Lua/LuaJIT ist auch eine sehr gute Option (sehr schön integrierbar in eigene Anwendungen)
-
mit live ausführen ist gemeint das ein rechner sozusagen ein programm empfängt es ausführt und das ergebnis dann wieder zurück an den absender schickt.
fertige skriptsprachen funktionieren in dem Fall nicht weil auch zum teil externe Hardware angesteuert wird.
-
m19941 schrieb:
fertige skriptsprachen funktionieren in dem Fall nicht weil auch zum teil externe Hardware angesteuert wird.
Doch, gerade dann sind fertige Skriptsprachen einen Blick wert: Wie schon genannt wurde, kannst du bei lua und ähnlichen Sprachen den Skripten sehr einfach weitere Funktionen zur Verfügung stellen, die dann zum Beispiel eine externe Hardware ansteuern.