Chris Burkert schrieb: > Hallo HydrixOS'ler Hallo, > Da ich viel mit der Programmiersprache Smalltak arbeite, interessiert es > mich, inwieweit sich die Konzepte einer Virtuellen Maschine > (Interpreter) von der des virtuellen Prozessors unterscheiden. Die virtuellen Prozessoren sind Teil des Betriebssystemkerns und müssen nicht zwingend Interpreter sein, sie könnten theoretisch auch Programme übersetzen (was ein erwünschtes Endziel wäre), bzw. Programme, die von der "Host"-CPU verstanden werden, direkt ausführen lassen. > Ich rufe z.B. unter Unix die Smalltalkimplementierung Squeak durch > folgendes Kommando auf: squeak -optionen smalltalk.image > Wie wäre jetzt die Analogie zum virtuellen Prozessor ? Kann ich die > Ausführung eines Images mit Optionen realisieren ? Ein Prozess wird unter HydrixOS beim Erzeugen einem virtuellen Prozessor zugewiesen. Wenn ein Thread dieses Prozesses die CPU-Zeit erhält, führt der jeweilige VPC den Thread aus und beendet die Ausführung, wenn die CPU-Zeit abgelaufen ist, bzw. eine Unterbrechung durch einen IRQ stattfindet. > Wie sieht es mit Java, PHP, Lisp, ... VM's aus ? Ist die VM auf einen > Virtuellen Prozessor 1 zu 1 übertragbar ? Die Funktionen, die ein Interpreter erledigt könnte sicher exakt nachgebildet werden. Da jedoch die VPCs ein Element des Kerns sind, könnte eine vorhandene VM nicht einfach direkt eingebaut werden, zumal die VPCs über eine fest definierte Schnittstelle in den Kern integriert sind. Denkbar wäre es jedoch, dass man die Quellcodes teilweise übernimmt und anpasst. > Gibt es dahingehend schon Bestrebungen? Derzeit nicht. Es existiert derzeit nur ein x86-VPC (reiner Emulator, derzeitiges Ziel ist, dass x86-Programme auf einem x86-Prozessor ohne Emulation laufen können - jedoch ist eine portable Realisierung nicht einfach). > Ich bin an einer Portierung von Squeak/Smalltalk auf > HydrixOS sehr interessiert. Die Frage ist nur, da ich Smalltalk nicht kenne, wie komplex müsste die vorhandene Infrastruktur im Betriebssystem sein, um diese auszuführen? - Denn HydrixOS ist, derzeit mehr oder weniger ein "nakter" Systemkern, der nun langsam anfängt die Wege für die höheren Systemfunktionen freizuschaufeln. Es existiert mittlerweile eine API-Bibliothek, aber weder ein Pageing-Server, noch ein Dateisystem-Server sind vorhanden. (Die nächste Kernel-Release soll die Kernel-seitige Schnittstelle und die Spezifikationen für den Pageing-Dämon umfassen). Wenn dir das jedoch trotzdem möglich wäre, wäre es super! Es würde uns mehr Erfahrung hinsichtlich der VPCs geben und HydrixOS wesentlich erweitern. cu FG -- HydrixOS Developers Mailing List Administration: webmaster@xxxxxxxxxxx Archive: //www.freelists.org/archives/hydrixos