Brei Geschrieben 16. April 2003 Teilen Geschrieben 16. April 2003 Hi, ich weiß nicht, ob das hier reinpasst. Ich schreib einfach mal. Ich hab unter diesem link http://www.heise.de/newsticker/foren/go.shtml?read=1&msg_id=3289502&forum_id=41211 das gelesen: Zitat: "Mit einem modernen Emulator kann man den gesamten Prozessor inklusive Speicher emulieren. Unter Umgehung des Prozessors und des Speichers kommt man dann ganz ohne Hardware aus. Mit einem Turbo-Kit kan der Pentium 4 heute schon mit 5 GHz emuliert werden. So warm können sich Intel & Co. gar nicht anziehen! Im Bootstrap-Verfahren kann dann aufsetzend auf einem emulierten 5 Ghz-System ein System mit noch höherer Taktfrequenz emuliert werden. Das ganze fuktioniert natürlich nur unter Ausnützung der Hyperthread-Emulation, so dass ein hohes Maß an Parallelität erreicht wird. Die nächste Stufe werden Vektorrechner- und Supercomputer-Emulationen sein. Ist natürlich alles noch geheim und im Hintergrund gibt es schon seit längerem das Gerangel zwischen Emulatorherstellern und Hardwareherstellern, die diese Entwicklung am liebsten ganz unterdrücken würden. Problematisch ist zur Zeit nur noch die Emulation von Bildschirm, Tastatur, Maus und Drucker, aber das wird mit der nächsten Generation auch gelöst sein." Zitat: Ende Kann man Hardware einfach so emulieren? Beim Prozessor zum Beispiel: Man braucht ja trotzdem eine CPU, die dann das rechnet. Also ist das emulieren kein Erstatz für eine CPU, höchstens ermöglicht es eine bessere Ausnutzung der Kapazität. Versteh ich das richtig? Und nen Bildschirm, Maus emulieren? Wie darf ich mir das vorstellen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Orffi Geschrieben 16. April 2003 Teilen Geschrieben 16. April 2003 Hallo b-r-e, Du bist auf einen Artikel "hereingefallen", der nicht ganz ernst gemeint war. Natürlich brauchst Du ein funktionierendes System, auf dem Du dann etwas anderes emulieren kannst. Du kannst zum Beispiel einen C64 auf Deinem aktuellen PC emulieren und die Spiele von "damals" spielen. Der Code des C64-Spiels wird vom Emulator in x86er Code übersetzt, der dann ausgeführt werden kann. Es aber nicht so, daß Du durch Emulation schneller wirst. Natürlich wirst Du langsamer, weil Du keinen Code hast, der nativ ausgeführt wird, sondern einen Schicht dazwischen hast, die den Code der emulierten Maschine in den Code Deiner tatsächlichen Maschine transformiert. Wenn man den Artikel zu Ende denken würde, würde es bedeuten, daß ich mit meinem Athlon 900 einen Pentium 4 5 GHz emulieren kann von dem aus ich eine noch schnelleren Prozessor emulieren kann. (Juhu, ich brauche nie wieder einen schnelleren Rechner, ich emuliere mir einfach einen schnelleren...) Das kann natürlich nicht funktionieren. HTH Jan Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Florian_K Geschrieben 16. April 2003 Teilen Geschrieben 16. April 2003 Original geschrieben von Orffi Hallo b-r-e, Du bist auf einen Artikel "hereingefallen", der nicht ganz ernst gemeint war.[...]Hallo alle! Zunächst: Es ist gar kein Artikel, sondern ein Foreneintrag. Ich kann hier in dem Forum auch behaupten, man kann ein Notebook-Lüfter so einstellen, dass das Notebook auf einem Luftkissen 3 Meter über dem Boden schwebt. Man sollte (überall im Leben) zunächst etwas den Verstand einschalten und drüber nachdenken. Nicht alles glauben funktioniert ganz gut bei: Bild-Zeitung, Internet, CNN, meiner Freundin, wenn sie sagt "Ich hab nur ein Teil zum Umtauschen, das geht ganz schnell beim H&M". Also denne, Machts besser! Florian Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
nic_power Geschrieben 16. April 2003 Teilen Geschrieben 16. April 2003 Original geschrieben von b-r-e Kann man Hardware einfach so emulieren? Beim Prozessor zum Beispiel: Man braucht ja trotzdem eine CPU, die dann das rechnet. Also ist das emulieren kein Erstatz für eine CPU, höchstens ermöglicht es eine bessere Ausnutzung der Kapazität. Versteh ich das richtig? Und nen Bildschirm, Maus emulieren? Wie darf ich mir das vorstellen? Man sollte nicht jeden Artikel bei Heise für bare Münze nehmen (schon gar nicht den von Dir zitierten . Um eine CPU emulieren zu können, benötigst Du immer eine bestimmte Hardwarevoraussetzung und dazu gehört ein Prozessor auf dem die Emulation läuft. Im Prinzip ist eine Emulation nichts anderes als ein Stück Software, welches ein Stück Hardware so gut wie möglich nachahmt. Wenn die Emulation gut ist, merkt die in ihr installierte Software nicht, dass es sich um Wirklichkeit nicht um eine reale CPU handelt sondern nur um eine Nachahmung. Das ermöglicht Dir beispielsweise unter Windows eine Emulation laufen zu lassen, die einen kompletten PC emuliert, in dem dann wiederum ein anderes Betriebssystem laufen kann (Linux z.B.). Um möglichst hohe Geschwindigkeite zu erzielen sollte Host-CPU und emulierte CPU identisch sein, da Du ansonsten den kompletten Befehlssatz in Software nachbauen musst, was extrem viel Rechenzeit kostet (bochs [1] ist hier ein sehr nettes Beispiels, bei mir läuft Bochs auf einer HP-Workstation unter HP-UX und in Bochs läuft ein Original Dos für Intel, alternativ auch Linux oder BSD). Neben dem Prozessor müssen auch noch andere Dinge emuliert werden, unter anderem ein Tastatur-Interface, Soundkarte, Grafikkarte, Festplatte, usw. Besitzt das Hostsystem keine Soundkarte, läßt sich diese zwar emulieren, aber hören wirst Du dennoch nichts. Der Vorteil einer Emulation ist, dass immer eine identische Plattform emuliert wird (egal auf was für einem Host-OS die Emulation läuft). Kommerzielle Produkte sind beispielsweise Virtual PC [3] oder auch vmware [2], frei erhältlich ist "bochs". [1] http://bochs.sourceforge.net/ [2] http://www.vmware.com [3] http://www.connectix.com Nic Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Crush Geschrieben 16. April 2003 Teilen Geschrieben 16. April 2003 Tatsache ist, daß die Emulation von Bildschirm, Tastatur, Maus und Drucker, bzw. einiger simpler IO-Chips wesentlich einfacher ist als die der CPU oder komplizierterer Grafikchips (Blitter & 3D-Hardware), v.a. wenn es um dynamische Recompilation geht (also Beschleunigung, indem der Code nach einmaligem Übersetzen in die Maschinensprache der emulierenden CPU ohne weitere Übersetzungsvorgänge sozusagen mit voller Leistung ablaufen kann - statische Recompilation ist zwar noch etwas schneller, aber dafür weniger kompatibel). Mit einer Emulation eine noch schnellere CPU zu emulieren ist totaler Blödsinn. Nur das Hyperthreading ist tatsächlich schon real, wird hier allerdings irgendwie etwas sinnmißbraucht, weil das eher ein CPU-effektiverer Ersatz für das Software-Multi-Tasking sein soll, wobei wohl v.a. Register- & Flagwechsel beim Umschalten zum nächsten Thread Prozessor-intern ablaufen, somit überflüssig werden sollen und dadurch etwas mehr an Geschwindigkeit rausgeholt wird. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.