Intel 64 ve AMD64 arasındaki fark nedir?


29

Birisi intel64 ve amd64 mimarileri arasında bir fark olup olmadığını açıklayabilir mi?


3
IA64 = Intel / HP Itanium VLIW mimarisi. AMD64, standart x86 komut setinin AMD tarafından geliştirilen uzantısıdır.

6
Pazarlama. AMD geliştirdi, sonra da Intel'e lisans verdi. AMD, Intel'den x86 lisansı almaktadır ve Intel, AMD'den x64 lisansı almaktadır. Bu, hiçbirinin kendi cpu dizisini satma haklarını kaybetmeden diğerlerini alıkoyamaz, çünkü kendilerini ayağından vururlar.

1
X86-64 veya IA64'ü kastediyor musunuz? Birincisi AMD64 ile aynıdır (kelimenin tam anlamıyla aynı komut seti veya bir CPU veya diğeri için tüm uygulamaları yeniden derlemeniz gerekir) ve ikincisi tamamen farklı bir CPU mimarisidir.
Atılım

2
Yani x86-64. Intel, ilk olarak uygulanmaları için Intel 64'e karar vermeden önce IA-32e ve EM64T adlarını kullandı.
Mayhem

Yanıtlar:


26

Okuduklarımdan, genişletilmiş Bellek 64-bit Teknolojisi (EM64T), Intel'in AMD'nin AMD64'ü uygulamasıdır ve Intel64 ile AMD64 arasındaki farklar şunlardır:

  • EM64T'nin BSF ve BSR komutları, kaynak 0 ve işlenen boyutu 32 bit olduğunda farklı davranır. İşlemci sıfır bayrağını ayarlar ve hedefin üst 32 bitini tanımsız bırakır.

  • AMD64 3DNow'u destekliyor! Talimatlar. Bu, bellek gecikmesini gizlemek için yararlı olan op000F 0x0D ve PREFETCHW opfet kodunu içerir.

  • EM64T kayan nokta durumunun (FXSAVE ve FXRSTOR talimatlarını içeren) azaltılmış (ve böylece daha hızlı) bir versiyonunu kaydetme ve geri yükleme yeteneğine sahip değildir.

  • EM64T, AMD64 için mimari olarak kabul edilen bazı modele özgü kayıtlardan yoksundur. Bunlar SYSCFG, TOP_MEM ve TOP_MEM2'yi içerir.

  • EM64T, 32 bit modundaki gibi mikro kod güncellemesini destekler, AMD64 işlemciler ise farklı bir mikro kod güncelleme formatı kullanır ve MSR'leri kontrol eder.

  • EM64T'nin CPUID komutu, x86 tarzı işlemciler için normal olduğu gibi, satıcıya özeldir.

  • EM64T, Hyper-threading ile daha iyi başa çıkmak için işletim sistemleri tarafından kullanılan MONITOR ve MWAIT talimatlarını destekler.

  • AMD64 sistemleri, AGP açıklığının bir IO-MMU olarak kullanılmasına izin verir. İşletim sistemleri, normal PCI aygıtları DMA'nın 4 GiB üzerindeki hafızaya alınmasını sağlamak için bundan yararlanabilir. EM64T sistemleri daha yavaş olan sıçrama tamponlarının kullanılmasını gerektirir.

  • SYSCALL ve SYSRET ayrıca EM64T'de yalnızca IA-32e modunda (uyumluluk modunda değil) desteklenir. SYSENTER ve SYSEXIT her iki modda da desteklenir.

  • 0 × 66 (işlenecek boyut) öneki olan dalların yakınında farklı davranır. Bir CPU tipi sadece ilk 32 biti, diğeri ise ilk 48 biti temizler.


Bu metni nereden okudunuz?
Tamara Wijsman

4
Eh, bazı forumlar / bloglar + wikipedia ( en.wikipedia.org/wiki/EMT64#Intel_64 ). Ayrıca Intel ve AMD'den bazı el kitaplarına baktım.
Mayhem

@Nubok: Lütfen, teknolojilerin mimarlığın uygulanması yoluyla fark yaratın (elbette 64 bit sürümü)  !
user2284570

IO-MMU çok önemlidir - eksiklik, tamponlama için önemsiz miktarda düşük hafızaya batırmanız gerektiği anlamına gelir (64MB, Linux'taki varsayılan ayardır). Intel daha sonra VT-d'ye benzer bir şey sundu ve can sıkıcı bir ürün segmentasyonu seviyesi için kullandı - ancak kodun güvenilirliği (ve bazı durumlarda silikon) orijinal olarak Linux'ta varsayılan olarak kullanılmamasına neden oldu. amaçlar.
GreenReaper

8

At Wikipedia'nın x86 sayfasında okuyabilir

1999-2003 yıllarında, AMD bu 32 bit mimariyi 64 bit'e genişletti ve ilk belgelerde x86-64 ve daha sonra AMD64 olarak adlandırdı. Intel kısa süre sonra AMD'nin daha sonra EM64T ve en son Intel 64 olarak yeniden adlandırılan IA-32e adı altındaki mimari uzantılarını kabul etti.

Başka bir deyişle, farklılaştırıcı temel olarak pazarlamadır. Komut setinde Intel ve AMD'ye özgü uzantılar vardır, ancak kullanıcı alanına programlar yazdığınız sürece, genellikle farkı bilmeniz gerekmez.


3
you don't generally need to know the differenceYanlış: jenerik talimatları hatta küçük fark çok önemli bugs.chromium.org/p/nativeclient/issues/detail?id=2010
user2284570

4
Yanlış: Genel talimatlardaki küçük farklar bile çok önemlidir . Adil olmak gerekirse, (1), genellikle bu farkları bilmenize gerek olmadığını söyledi . Açıkçası önemli olabileceği özel durumlar var. (2) çoğumuz, mevcut tüm talimat yollarını korumak zorunda olan sertleştirilmiş bir sanal alan yazmıyoruz.
Eric W
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.