64-Bit-Architektur
aus Wikipedia, der freien Enzyklopädie
Unter 64-Bit-Architektur versteht man in der EDV eine Prozessorarchitektur, deren Wortbreite 64 Bit beträgt.
Inhaltsverzeichnis |
[Bearbeiten] Architekturen (chronologisch)
- von MIPS (später SGI) die MIPS-Architektur (32 und 64 Bit).
- von DEC die Alpha-Prozessor-Serie.
- von Sun Microsystems die UltraSPARC-Serie.
- von Hewlett-Packard die PA-RISC-Serie.
- von IBM die POWER-Serie und zSeries
- von Apple/IBM/Motorola die PowerPC-Serie (32 und 64 Bit).
- von Intel die IA-64-Familie.
- von AMD die AMD64-Erweiterung der x86-Familie.
[Bearbeiten] Design
Vereinfacht dargestellt bedeutet 64-Bit, dass die Prozessoren durch ihre ALU-Bauart so ausgelegt sind, dass 64 Bit (also 8 Byte) gleichzeitig bzw. während eines Taktes verarbeitet werden können. Das schließt die externe und interne Gestaltung von Datenbus und Adressbus, die Breite des Registersatzes mit ein. Weiterhin ist der Befehlssatz meistens durchgängig auf 64-Bit ausgelegt, insofern keine abwärtskompatiblen Altlasten (siehe x86-Architektur) vorhanden sind. Dies gilt analog für die gängigen Adressierungs-Arten, wobei die Bitbreite der Recheneinheit (ALU) sich prinzipiell von der der Adresseinheit unterscheiden kann (wie bei den meisten 64-Bit-CPUs).
In der PowerPC-Architektur wurde - im Gegensatz zu x86 - die Erweiterung auf 64-Bit von Anfang an vorgesehen, da diese CPU ursprünglich aus dem Bereich der Großrechner (IBM POWER-Architektur) stammt. Auch für die MIPS-Architektur wurde frühzeitig eine 64-Bit-Erweiterung vorgesehen, in beiden Fällen erfolgte die Realisierung als Hardware erst einige Jahre später.
[Bearbeiten] Vorteile
Die Vorteile von 64-Bit-CPUs liegen in der einfacheren Berechnung größerer Integer-Werte (durch die breitere ALU), was zum Beispiel Vorteile bei Verschlüsselungsalgorithmen, grafischen Berechnungen (zum Beispiel Festkommaarithmetik für Computerspiele), 64-Bit-Dateisystemen oder Multimediaformaten (MPEG2, MP3) mit sich bringt.
Zwei wesentliche Vorteile bieten sich gegenüber einer 32-Bit-Architektur: es können mehr als 4 GB Arbeitsspeicher direkt adressiert werden, und bestimmte Anwendungen wie etwa Kryptologie profitieren von der beschleunigten Arithmetik mit großen Zahlen. Nachteile sind ein erhöhter Speicherbedarf der meisten Programme und ein größerer Prozessor-Die, was zu höheren Preisen führt.
[Bearbeiten] Probleme
Ohne speziell angepasste Betriebssysteme wie Windows-XP-64-Bit-Edition, Windows-Vista-64-Bit-Edition, Linux oder MacOS X kann allerdings kein Vorteil durch den Wechsel von 32 Bit auf 64 Bit CPUs gezogen werden. Dies wird insbesondere bei abwärtskompatiblen CPUs wie AMD Athlon64, Pentium D, Pentium EE, Intels Core2 Duo oder den 64-bittigen PowerPC-CPUs deutlich.
Ähnlich wie bei SIMD oder AltiVec-Erweiterungen ist also auch für 64-Bit-Systeme in der Regel speziell angepasste Software nötig.
Jedoch verfügt nicht jedes System mit 64-bittigen Datenpfaden auch über 64-bittige Adresspfade. Diese können im Extremfall weiterhin 32-bittig bleiben (4 GB Adressraum).
[Bearbeiten] Programmiermodell
Unter der Programmiersprache C schlägt sich die Anzahl der Bits sowohl bei der Größe der Zeiger-Typen (z.B. void*) als auch Integer-Typen (insbesondere int und long) nieder. Beim Übergang von einer 32-Bit-Architektur verbreitert man in der Regel den Zeigertyp und den Long-Typ auf 64bit, während der Int-Typ 32bit verbleibt. Dieses nennt man dann abgekürzt LP64. Zur Rückwärtskompabilität mit der 32-Bit-Architektur, die meist als ILP32 ausgeführt wurde, hatte man teils auch den Long-Typ identisch mit dem Int-Typ gelassen, dieserlei Programmiermodelle (wie ILP64) haben sich jedoch nicht durchgesetzt - alle heutigen unixartigen 64-Bit-Betriebssysteme drücken die 64-Bit-Architektur in einem LP64-Typenmodell aus.
Für einige Plattformen besteht die Möglichkeit, Programme von 32-Bit Vorgänger-Systemen ohne Überarbeitung direkt auf einer 64-Bit-Plattform compilieren bzw. ablaufen zu lassen. Die IA-64- und AMD64-Prozessoren etwa bieten hierfür einen 32-Bit-x86-Kompatibilitätsmodus. Um dies zu realisieren, enthalten die Prozessoren zusätzliche Komponenten für die Interpretation des 32-Bit-Befehlssatzes. Moderne Betriebssysteme aktivieren diesen Modus für die jeweiligen Prozesse - eine Markierung an der Programmdatei besagt, ob sie im erweiterten 64-Bit-Modus oder im kompatiblen 32-Bit-Modus auszuführen sind. Wo die Hardware keine Rückwärtskompatibilität anbietet, besteht auch die Möglichkeit, das Ziel der Ausführung von 32-Bit-Programmen über eine vergleichsweise langsame, softwarebasierte Emulation zu realisieren.
[Bearbeiten] Siehe auch
- 32-Bit-Architektur, 16-Bit-Architektur, 8-Bit-Architektur, 4-Bit-Architektur, 1-Bit-Architektur
- AMD64 zur 64-Bit-Architektur bei gängigen Desktoprechnern
[Bearbeiten] Weblinks
- "Data Size Neutrality and 64-bit Support", (englisch) , 32/64bit Programmierersicht, von Andrew Josey, für USENIX, 4. Dez. 1997
- "64-Bit CPUs für's Wohnzimmer: Innovation oder Marketinggeblubber?", von M. Jungowski, Online-Magazin Planet 3DNow, 27. Feb 2002
- "WoW64 Microsofts Starthilfe für 64-Bit Windows", 32/64bit Mischbetrieb, von M. Jungowski, Online-Magazin Planet 3DNow, 14. Jul 2004
- "Viva64 (articles)"
|
|
|