PPC vs. Intel (OS X und Anwendungen)

anhe

anhe

Aktives Mitglied
Thread Starter
Dabei seit
13.11.2007
Beiträge
1.899
Reaktionspunkte
309
Hallo liebe Forummitglieder,

Meine Frage ist rein akademischer Natur. Ich würde gerne mal genau die Unterschiede zwischen einer Installation auf einem PPC-Mac und auf einem Intel-Mac verstehen. PPC und Intel sind ja zwei verschiedene Plattformen, dementsprechend muss das OS und auch die Anwendungen entsprechend übersetzt werden. Hierzu gibt es ja die Programme-Quellen als Universal-Binarys, die den Quelltext als PPC und Intel Variante enthalten. Für Anwendungen die nur für PPC übersetzt wurden gibt es unter (Intel) OS X den PPC-Emulator Rosetta.
Das gleiche gilt ja auch für Betriebssystem. So gibt es Installations-CDs für Intel-Macs nur im Zusammenhang mit dem Kauf. Die 10.4 CDs die man noch im Apple-Store kaufen kann ist ausdrücklich nur für PPC geeignet. Hardwaremäßig unterscheiden sich die beiden Systeme ja zum einen in der Möglichkeit von externen Platten booten zu können (PPC: nur IEEE1394; Intel: zuätzlich USB). Sowie der verwendeten Partitionstabellen (PPC: Apple; Intel: GUID). Da auch die Programme aus denen das OS besteht auf der jeweiligen Prozessorarchitektur übersetzt wurden sollten die OS inkompatibel zueinander sein. Unabhängig von der Partitionstabelle.

Nun bin ich beim Verfolgen eines Threads in den letzten Tage informiert worden, dass meine Annahme so nicht ganz richtig ist. Wenn man die Partitionstabelle entsprechend der zu bootenden Architektur einrichtet und die Partition klont, dann ist auch das jeweilig "anders übersetzte" System lauffähig. Wie kann das sein ???

Denen die meinen Beitrag bishier verfolgt haben sei schonmal für die Ausdauer gedankt.

Wie gesagt es geht hier nicht um ein akutes Problem, welches ich beheben möchte. Ich habe nur ein MacBook und werde mir zeitnah auch keinen weiteren Mac anschaffen. Mir geht es einfach um Verständnis.

gruss

André
 
HNun bin ich beim Verfolgen eines Threads in den letzten Tage informiert worden, dass meine Annahme so nicht ganz richtig ist. Wenn man die Partitionstabelle entsprechend der zu bootenden Architektur einrichtet und die Partition klont, dann ist auch das jeweilig "anders übersetzte" System lauffähig. Wie kann das sein ???

die annahme ist auch nicht so ganz richtig.
bei 10.4 z.b. ist nicht alles als universal binary vorliegend, d.h. die installationen sind nicht unbedingt zwischen den plattformen austauschbar...

man kann zwar mit klonen z.b. eine intel mac installation auch von APM oder MBR booten, aber die intel installation würde dann auf einem PPC zu panics führen beim booten...
 
  • Gefällt mir
Reaktionen: anhe
die annahme ist auch nicht so ganz richtig.
bei 10.4 z.b. ist nicht alles als universal binary vorliegend, d.h. die installationen sind nicht unbedingt zwischen den plattformen austauschbar...

man kann zwar mit klonen z.b. eine intel mac installation auch von APM oder MBR booten, aber die intel installation würde dann auf einem PPC zu panics führen beim booten...

Das dachte ich ja auch, dann lies mal diesen Thread hier.

gruss

André

Edit: Link korrigiert !
 
Zuletzt bearbeitet:
Äh, wo genau soll der Link hinführen?
Zirkelbezug ;)
 
Hallo,

Der Link ist korrigiert. Hier auch noch mal ...
 
das ist nicht ganze korrekt, schau mal hier:
http://refit.sourceforge.net/myths/

das liegt eher an der os x installation, nicht an APM usw...
du kannst eine externe platte APM partitionieren, dann deine intel installation darauf klonen und die bootet dann den intel mac ohne probleme...
das gibt nur bei manchen os x updates probleme, weil da GPT bzw die EFI partition erwartet wird...
 
Hallo oneOeight,

danke für den Link. Gut OS X benötigt also nicht zwingen GUID bei Intel-Macs. Aber ist tatsächlich die Installation Plattformunabhängig ? Die Probleme mit EFI usw. sind ja auch eher Hardwarespezifisch. Du schreibst ja auch in Post 2 das 10.4 nicht komplett UB vorliegt. Jedenfalls nicht als separate CD zu erwerben. Bei Intel-Macs die mit 10.4 ausgeliefert wurden muss es ja als UB vorliegen. Mich interressiert warum es überhaupt möglich ist PPC OS X auf Intel-Macs laufen zu lassen.

gruss

André
 
plattformunabhängig ist die erst ab 10.5...
bei 10.4 ist es ein furchtbares durcheinander...
da sind nur teile als UB vorhanden und selbst wenn, dann führt das booten einer intel installation auf PPC meistens zu panics, weil dann irgendwelche wichtigen teile nicht das PPC binary dabei haben...
 
warum es überhaupt möglich ist PPC OS X auf Intel-Macs laufen zu lassen.
Hab jetzt nocht alles verfolgt, aber seit wann kann man ein PPC-OSX auf einem Intel-Rechner laufen lassen?
Das dürfte nun wirklich nicht gehen (im Unterschied zu PPC-Programmen, aber dafür gibt es ja dann Rosetta)
 
plattformunabhängig ist die erst ab 10.5...
bei 10.4 ist es ein furchtbares durcheinander...
da sind nur teile als UB vorhanden und selbst wenn, dann führt das booten einer intel installation auf PPC meistens zu panics, weil dann irgendwelche wichtigen teile nicht das PPC binary dabei haben...

Ich dachte immer UB bedeutet, dass die Sourcen sowohl für PPC als auch für Intel vor dem Übersetzen sur Verfügung stehen. Beim Übersetzen wird nur der plattformabhängige Quelltext verwendet. Ich bin davon ausgegangen, dass nach dem Übersetzen die Anwendung nur für eine Plattform ausführbar ist. Oder bedeutet UB, dass die Anwendung auf beiden Plattformen ausführbar ist ?

10.5 steht demnach als UB zur Verfügung und die Programme sind bei einer Installation doppelt vorhanden. Also beim Intel-Mac liegen auch die ganzen PPC-Dateien auf der HD ?

gruss

André

Edit: Ich habs missverstanden. Die Anwendungen werden ja erst UB, weil der gleiche Source für beide Systemen übersetzt wurde . Beim installieren des OS X werden aber doch die Sourcen auf der jeweiligen Plattform übersetzt, die werden doch nicht einfach nur von der CD auf die HD geschaufelt ...
 
Zuletzt bearbeitet:
re

Also bei UB-Apps hast du wirklich zweimal die gleiche Anwendung auf deinen Mac, einmal für die PPC Architektur übersetzt einmal für x86 :) Der Quelltext ist der gleiche, aber dieser wird einfach einmal für PPC und noch ein zweites mal für x86 kompliert, und dann zu einer UB zusammengefast. Und je nachdem auf welcher Architektur du dich bewegst wird beim Programmaufruf jeweils die passende Anwendung aufgerufen.

mfg
Flo
 
  • Gefällt mir
Reaktionen: anhe
UB - oder Universal Binary - hat erstmal nichts mit den Quellen der Programme zu tun*. Ein Programm liegt in OSX als Bundle (also die *.app Pakete) vor. Das ist nichts anderes als ein Ordner, in dem das Programm an sich, aber auch einige (in der Theorie alle) notwendigen Bibliotheken sowie Einstellungen und Resourcen (also Icons etc.) zu finden sind. Bei einem UB enthält dieser Ordner anstelle des einen ausführbaren Programms und seiner Bibliotheken, gleich mehrere Versionen für die verschiedenen Plattformen (eigentlich sind es ja sogar 4 verschiedene (PPC 32 und 64 Bit, sowie x86 32 und 64 Bit).

Btw. wenn ich mir den Inhalt von System/Library/Extensions ansehe glaube ich nicht, das ein Clone meiner PPC Installation nur durch ein anderes Partitionsschema auf einem Intel Mac starten wird. Alle Extensions, die ich mir angesehen habe sind nur für PowerPC. Genauso der Finder (in System/CoreServices).

* Die Quellen müssen natürlich für alle Plattformen übersetzbar sein.
 
  • Gefällt mir
Reaktionen: anhe
re

Also bei UB-Apps hast du wirklich zweimal die gleiche Anwendung auf deinen Mac, einmal für die PPC Architektur übersetzt einmal für x86 :) Der Quelltext ist der gleiche, aber dieser wird einfach einmal für PPC und noch ein zweites mal für x86 kompliert, und dann zu einer UB zusammengefast. Und je nachdem auf welcher Architektur du dich bewegst wird beim Programmaufruf jeweils die passende Anwendung aufgerufen.

mfg
Flo

Danke Psycho-Dad,

hatte ich ja gerade auch noch editiert. Habs erst beim zweimaligen "Durch-den-kopf-gehen-lassen" richtig verstanden. Aber, wenn 10.5 vollständig UB, dann habe ich dementsprechend alle Dateien doppelt auf der Platte. Wahrscheinlich nicht, denn oneOeight sagt ja das 10.4 nicht vollständig UB ist und es scheint trotzdem halbwegs zu funktionieren ...

gruss

André

P.S. Wenn der Quelltext identisch ist. Sind dann alle statisch verlinkten Bibliotheken identisch (egal ob PPC oder Intel) ?
 
Aber, wenn 10.5 vollständig UB, dann habe ich dementsprechend alle Dateien doppelt auf der Platte.

die sind nicht doppelt, die binaries sind immer noch alle zusammen in einer datei...

lipo -info /mach_kernel
Architectures in the fat file: /mach_kernel are: i386 ppc
 
die sind nicht doppelt, die binaries sind immer noch alle zusammen in einer datei...

lipo -info /mach_kernel
Architectures in the fat file: /mach_kernel are: i386 ppc

Dann ist eine binary also doppelt so groß ?
 
http://de.wikipedia.org/wiki/Universal_Binaries :)

Mittels Monolingual (http://monolingual.sourceforge.net/) kannst du die die nicht für deine Architektur benötigten Teile löschen um Speicherplatz zu sparen. Ich persönlich würde es aber nicht machen wenn du noch alte PPC Maschinen daheim hast.

EDIT: rein theoretisch könnte man annehmen eine solche binary müssten doppelt so groß sein wie eine für deinen Rechner angepasste. Dieser Wert kann jedoch stark schwanken, die meisten Anwendung auf den Mac bringen ja noch eine Gui mit oder verwenden eigene Iconsets, Grafiken usw. Diese sind bei einer UB auch nur einmal vorhanden.

CYA
Flo
 
  • Gefällt mir
Reaktionen: anhe
http://de.wikipedia.org/wiki/Universal_Binaries :)

Mittels Monolingual (http://monolingual.sourceforge.net/) kannst du die die nicht für deine Architektur benötigten Teile löschen um Speicherplatz zu sparen. Ich persönlich würde es aber nicht machen wenn du noch alte PPC Maschinen daheim hast.

CYA
Flo

Danke Flo, war ja nur interesse. Ich werde da nix löschen. Auch wenn ich keine PPCs habe.

OK, Universal Binary hab ich somit verstanden. Aber zurück zum OS. Ich habe mir mal auf nen PC gentoo Linux installiert. Da wurde eigentlich alles beim installieren auf exakt diesem Rechner übersetzt. Wenn ich jetzt auf meinem MB OS X installiere (also CD einlegen usw.), dann werden doch die Sourcen die auf der CD liegen auf meinem MB übersetzt. Da das nen Intel ist, werden die doch auch nur für Intel übersetzt. Oder übersetzt der die gleich auch nochmal für PPC mit und bündelt die ?

gruss

André
 
Auf der OSX DVD liegen keine Quellcodes (mal abgsehen von eventuellen SDKs bei den Developer Tools).
 
Zusammengefasst ist zu sagen:

Beim Installationsvorgang werden keine Quelltexte übersetzt. Es werden im wesentlichen die Anwendungen (die bei 10.5 alle UB sind) verschoben. 10.5 ist also vollständig UB und man kann eine Installation sowohl auf PPC also auch Intel betreiben.

Dies wäre mit 10.4 auch theoretisch möglich, da es es alle Anwendung sowohl für PPC als auch für Intel übersetzt gibt. Nur eben einzeln und nicht als UB.

Ich danke Euch Allen ...

gruss

André
 
Zuletzt bearbeitet:
Dann ist eine binary also doppelt so groß ?

über den daumen gepeilt schon, aber da die binaries nicht wirklich sehr groß sind (nur ein paar MB) sparst du nicht wirklich platz, wenn du die entfernst...

mit dem genannten monolingual haben sich leute schon mehr kaputt gemacht (rosetta geschrottet etc) als gutes getan...
 
Zurück
Oben Unten