x64

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von X86-64)
Wechseln zu: Navigation, Suche

In der Informatik wird die auf dem Intel x86-Befehlssatz (bzw. Befehlssatzarchitektur, englisch Instruction Set Architecture, kurz: ISA) basierende 64-Bit-Architektur als x64, alternativ auch als x86-64 (auch in der Schreibweise „x86_64“) und AMD64 (auch in Kleinschreibung: „amd64“), bezeichnet. Die Befehlssatzerweiterung ergänzt die IA-32-Architektur („Intel Architecture 32-Bit“) um einen 64-Bit-Betriebsmodus.

Die Befehlssatzerweiterung wird implementiert durch:

Geschichtlich wurde die 64-Bit-Befehlssatzerweiterung für die bestehende x86-Architektur, die von Intel IA-32 genannt wird, ab 1999 von AMD unter dem Namen „x86-64“ entwickelt. Auf einigen Systemen wurde sie auch x86_64 genannt, weil ein Bindestrich in einigen Situationen als Trennzeichen interpretiert wird. Dies ist z. B. beim Linux-Kernel der Fall, weshalb auch uname -m die Schreibweise mit Unterstrich ausgibt. Als die ersten Opteron-Prozessoren von AMD 2003 mit der 64-Bit-Erweiterung vorgestellt wurden, änderte AMD den Namen dafür in „AMD64.“[2] Die meisten Linux-Distributionen nutzen daher die Bezeichnung amd64 zur Kennzeichnung von 64-Bit-x86. Für 32-Bit-x86 unterscheidet Linux indes bereits nach den Befehlssatzerweiterungen, die nach dem „i386“ (die erste 32-Bit-Architektur von Intel, ohne Erweiterungen) kamen, etwa „i586“ (i386 mit den Erweiterungen des Pentium) oder „i686“ (die Erweiterungen des Pentium Pro bzw. Pentium II, auch P6-Architektur genannt, d. h. mit zumindest MMX und SSE) oder sogar „i686-pae“ (i686, zusätzlich mit der PAE-Erweiterung). Bei „amd64“ ist auf jeden Fall die SSE2-Erweiterung des Prozessors nutzbar.

Die Bezeichnung x64 (für 64-Bit) wurde, angelehnt an „x86,“ von Microsoft und Sun eingeführt. Teilweise wurde die 32-Bit-x86-Architektur daraufhin auch als „x32“ (für 32-Bit) bezeichnet, da beide technisch gesehen x86-Befehlssätze darstellen. Da Intel die x86-ISA („Instruction Set Architecture“) später als IA-32 benannte und mit IA-64 eine neue, aber inkompatible 64-Bit-Architektur einwickelte, entsteht oft Verwirrung zwischen den Begriffen „x64“ und „IA-64.“ Als Befehlssatzerweiterung ist x64 Teil von IA-32 bzw. x86. IA-64 („Intel Architecture 64-Bit“) hingegen wird auch als die Itanium-Architektur bezeichnet und hat mit x64 nichts zu tun.

Die Implementierungen von AMD und Intel weisen im Detail Unterschiede auf, die jedoch in der Praxis kaum Auswirkungen haben. Nicht nur die Bezeichnung „x64“ (wie z. B. von Windows genutzt), sondern auch „amd64“ (wie z. B. von Linux genutzt) und „x86-64“ (der Entwicklungsname von AMD64) stehen somit für beide Implementierungen gleichermaßen.[2]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Chris Lomont: Introduction to x64 Assembly. In: Intel Developer Zone. Intel, 19. März 2012, abgerufen am 20. November 2016 (englisch): „x64 is a generic name for the 64-bit extensions to Intel's and AMD's 32-bit x86 instruction set architecture (ISA). AMD introduced the first version of x64, initially called x86-64 and later renamed AMD64. Intel named their implementation IA-32e and then EMT64. There are some slight incompatibilities between the two versions, but most code works fine on both versions;“
  2. a b Heise online: 64-Bit-Namen, Christof Windeck, 28. April 2008; abgerufen am 19. November 2016; Zitat: In Bezug auf x86-Prozessoren mit 64-Bit-Erweiterung meinen x86-64, AMD64, EM64T, Intel 64 und x64 praktisch dasselbe.