Wichtige Frage!

Planen wir eine real umsetzare Architektur oder eine reine VM?

Ich diskutiere gerade mit Luki über genau dieses Thema, denn die beiden Ansätze führen zu radikal unterschiedlichen Vorgehensweisen:

Wenn wir eine reale Architektur planen müssen wir darauf achten, daß das Geplante auch umsetzbar ist - einen 32bittigen RISC-Prozessor könnte man mit einem PGA noch selbst konstruieren, aber ein 96bittiger CISCer mit 256 Registern wäre völlig absurd. Außerdem müßten wir uns über Implementierungsdetails Gedanken machen, die man in einer VM nicht braucht: Kriegt der Prozessor Branch Prediction? Über wie viele Pins ist er mit dem Mainboard verbunden? Northbridge: Ja oder nein? Wie viele Pins muß dieser Port haben und ist et parallel oder seriell? Et cetera.
Andererseits könnte es uns hinterher tatsächlich gelingen, einen real funktionierenden Computer mit unserer Architektur zu bauen.

Wenn wir eine reine VM planen kann es uns egal sein, ob der Prozessor so kompliziert ist, daß selbst Intel ihn nicht bauen könnte. Solange der Kram sich in Software emulieren läßt können wir ihn auch umsetzen.
Das hat den Vorteil, daß wir uns viele Implementierungsdetails sparen. Die Arbeit findet auf einer viel höheren Ebene statt. Allerdings können wir dann natürlich keinen realen Computer draus machen.