Kann ich das x86-Betriebssystem in anderen Architekturen verwenden, zB: ppc?

1522

Ich möchte Slackware x86 in einem PC installieren. Kann ich es schaffen?

Wenn nicht, wenn ich nur den Kernel in ppc kompiliere, kann es funktionieren?

Gibt es Möglichkeiten, dies zu erreichen?

Danke für alle Antworten! und entschuldige mich für mein schlechtes Englisch.

1
Als ich slamd64 verwendete, konnte ich x86 32bits und x86 64bits auf dem gleichen Betriebssystem installieren. Warum kann ich das nicht in ppc machen? vor 15 Jahren 0
x86_64 ist eine Obermenge von x86 (irgendwie). Es ist möglich, x86-Code auf x86_64 auszuführen. PPC ist völlig anders. Sie können keinen für x86 kompilierten Code auf PPC ausführen. Colin Pickard vor 15 Jahren 0
Zu Ihrer Information, Sie müssen ein wenig darüber nachdenken, was eine ISA ist, bevor Sie darüber nachdenken. Paul Nathan vor 15 Jahren 0

4 Antworten auf die Frage

7
Colin Pickard

Nein, das kannst du nicht. Sie benötigen Code, der für PPC kompiliert wurde.

Das Slackintosh- Projekt basiert auf Slackware, jedoch für PPC. Möglicherweise möchten Sie sie überprüfen.

SlackIntosh ist sehr alt und ich möchte x86 Slackware-Repository verwenden, keine andere Möglichkeit, dies zu machen? vor 15 Jahren 0
Nein, Sie können das x86-Repository nicht verwenden. Zumindest nicht die kompilierten Binaries, werden sie nicht auf PPC ausgeführt. Sie müssten alles aus dem Quellcode kompilieren. Es gibt moderne PPC-Distributionen, die Sie stattdessen verwenden könnten - Fedora und Debian verwalten beispielsweise aktuelle PPC-Releases (http://fedoraproject.org/en/get-fedora-ppc und http://www.debian.org/releases/stable/. ) Colin Pickard vor 15 Jahren 0
2
iWerner

Sie können einen für x86 kompilierten Kernel nicht auf einer anderen Architektur ausführen, da die andere Architektur über andere Anweisungen verfügt. Es ist fast wie der Versuch, ein Java-Programm mit einem C ++ - Compiler auf einer niedrigeren Ebene zu kompilieren.

Sie können den Kernel für die neue Architektur kompilieren, aber Sie benötigen auch die anderen ausführbaren Dateien, die Sie für Ihre neue Architektur auf Ihrem Kernel ausführen.

2
Aaron Digulla

Sie können einen Emulator wie qemu oder bochs verwenden, um ein zweites Betriebssystem (für eine andere CPU) in Ihrem vorhandenen Betriebssystem zu installieren. Auf diese Weise können Sie das zweite Betriebssystem und alle dafür entwickelten Apps verwenden.

Die einzige Alternative ist, alles noch einmal für Ihre neue CPU zu kompilieren, da CPUs keine Fremdsprachen lernen können.

Nein, das geht nicht! Emulatoren können keinen komplett anderen Chipsatz emulieren! Zumindest nicht ohne großen Leistungsverlust. Wim ten Brink vor 15 Jahren 0
VirtualBox und VMWare sind KEINE Emulatoren - sie ermöglichen Ihnen die Ausführung einer virtuellen Maschine in Ihrem Host-Betriebssystem, das Gast-Betriebssystem jedoch nativ (mit Unterstützung der Hardware-Virtualisierung in der CPU, sofern verfügbar). Sie können dies nicht zum Emulieren einer völlig anderen CPU-Architektur verwenden. vor 15 Jahren 1
Das war 1999 wahr, aber wir sind seitdem ein Stück weit gegangen. Sie können beispielsweise einen JIT-Compiler für den Code ausführen. Sie können bekannte Codeteile durch Aufrufe von Funktionen im realen Betriebssystem ersetzen. Aaron Digulla vor 15 Jahren 0
@Jesper: bochs ist ein weicher Emulator, der überall funktioniert. Aaron Digulla vor 15 Jahren 1
@ Aaron, ich kann nicht herausfinden, wo Bochs behauptet, dass es den PPC unterstützt, obwohl es erwähnt wird, dass es in C ++ erstellt wurde und daher auf einem PPC-System kompiliert werden könnte. Selbst wenn dies wahr wäre, würde ich denken, dass die Leistung aufgrund der mehreren OS-Schichten und des dazwischen liegenden Emulators immer noch sehr schlecht wäre. Selbst mit einem JIT-Compiler wäre es immer noch langsam. Wim ten Brink vor 15 Jahren 0
Er wollte x86-Code auf einem PPC ausführen, und das ist es, was bochs kann. Bochs selbst ist nicht sehr schnell, aber das bedeutet nicht, dass alle Emulatoren langsam sind. Amithlon könnte beispielsweise Amiga-Code auf einem Standard-PC schneller ausführen als jeder Amiga, den Sie erstellen könnten. Es ist also eher eine Frage "Wie schnell ist Ihr Emulator" im Vergleich zu "Wie schnell ist das Originalsystem" und "Wie dringend benötigen Sie die Anwendung". Wenn Ihr Leben von der Ausführung der App abhängt, ist Geschwindigkeit nicht das Hauptproblem. In diesem Fall ist sogar ein sehr langsamer Emulator besser als nichts. Aaron Digulla vor 15 Jahren 0
qemu emuliert ein x86-System auf ppc einfach und viel schneller als bochs, da qemu dynamische Übersetzung / Rekompilierung von Kabeljau durchführt und bochs ein direkter Interpreter ist. ephemient vor 15 Jahren 1
@ephemient: Danke, dass du mich daran erinnert hast. Ich habe meine Antwort aktualisiert. Aaron Digulla vor 15 Jahren 0
1
dreamlax

PPC und x86 verwenden zwei sehr unterschiedliche Befehlssätze. PPC-Prozessoren implementieren nicht einmal die Funktionalität einer modernen x86-CPU, da PPC-Prozessoren nur einen reduzierten Befehlssatz bieten.

Stellen Sie sich vor, Sie haben ein brandneues Mobiltelefon gekauft, aber es ist eine Sprache, die Sie nicht verstehen können, und die mitgelieferte Bedienungsanleitung bezieht sich auf eine völlig andere Marke und ein anderes Modell. So sieht x86 Slackware für einen PPC aus.