Kann jemand erklären, ob es einen Unterschied zwischen der Intel64- und der AMD64-Architektur gibt?
64-bit
cpu-architecture
Chaos
quelle
quelle
Antworten:
Nach dem, was ich unter Extended Memory 64-Bit-Technologie (EM64T) gelesen habe, ist Intels Implementierung von AMD64 AMD64 und die Unterschiede zwischen Intel64 und AMD64 sind:
Die BSF- und BSR-Befehle von EM64T verhalten sich unterschiedlich, wenn die Quelle 0 ist und die Operandengröße 32 Bit beträgt. Der Prozessor setzt das Null-Flag und lässt die oberen 32 Bits des Ziels undefiniert.
AMD64 unterstützt 3DNow! Anleitung. Dies beinhaltet Prefetch mit dem Opcode 0x0F 0x0D und PREFETCHW, die nützlich sind, um die Speicherlatenz auszublenden.
Dem EM64T fehlt die Möglichkeit, eine reduzierte (und damit schnellere) Version des Gleitkommazustands (einschließlich der FXSAVE- und FXRSTOR-Anweisungen) zu speichern und wiederherzustellen.
EM64T fehlen einige modellspezifische Register, die für AMD64 als architektonisch gelten. Dazu gehören SYSCFG, TOP_MEM und TOP_MEM2.
EM64T unterstützt die Mikrocode-Aktualisierung wie im 32-Bit-Modus, während AMD64-Prozessoren ein anderes Mikrocode-Aktualisierungsformat verwenden und MSRs steuern.
Der CPUID-Befehl von EM64T ist sehr herstellerspezifisch, wie es für Prozessoren im x86-Stil üblich ist.
EM64T unterstützt die Anweisungen MONITOR und MWAIT, die von Betriebssystemen verwendet werden, um Hyper-Threading besser zu handhaben.
AMD64-Systeme ermöglichen die Verwendung der AGP-Apertur als IO-MMU. Betriebssysteme können dies ausnutzen, um normale PCI-Geräte über 4 GiB DMA-Speicher zu lassen. EM64T-Systeme erfordern die Verwendung von Bounce-Puffern, die langsamer sind.
SYSCALL und SYSRET werden auch nur im IA-32e-Modus (nicht im Kompatibilitätsmodus) auf dem EM64T unterstützt. SYSENTER und SYSEXIT werden in beiden Modi unterstützt.
Nahe Verzweigungen mit dem Präfix 0 × 66 (Operandengröße) verhalten sich unterschiedlich. Ein CPU-Typ löscht nur die obersten 32 Bits, während der andere Typ die obersten 48 Bits löscht.
quelle
Auf der x86-Seite von Wikipedia können Sie lesen
Mit anderen Worten, das Unterscheidungsmerkmal ist hauptsächlich Marketing. Es gibt Intel- und AMD-spezifische Erweiterungen für den Befehlssatz, aber solange Sie Programme im Benutzerbereich schreiben, müssen Sie den Unterschied im Allgemeinen nicht kennen.
quelle
you don't generally need to know the difference
Falsch: selbst kleiner Unterschied auf allgemeine Anweisungen ist sehr wichtig bugs.chromium.org/p/nativeclient/issues/detail?id=2010