[hydrixOS] : Re: Virtuelle Maschinen

  • From: Friedrich Graeter <webmaster@xxxxxxxxxxx>
  • To: hydrixos@xxxxxxxxxxxxx
  • Date: Mon, 03 Feb 2003 01:08:47 +0100

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: http://www.freelists.org/archives/hydrixos

Other related posts: