İ686 ve x86_64 arasındaki fark nedir?


Yanıtlar:


69

i686, 32 bit sürümdür ve x86_64, işletim sisteminin 64 bit sürümüdür.

64 bit sürümü, özellikle aynı işlemde çok sayıda ram kullanması gereken büyük veritabanları gibi iş yükleri için bellekle daha iyi ölçeklenir. 32 bit bir makinede (önemli) bir veritabanı sunucusu çalıştırmayı düşünmeyin.

Ancak, diğer birçok şey için 32-bit sürümü tamam. 32 bit kod daha az bellek kullanır, bu nedenle başka şeyler için daha fazlasına sahip olursunuz. İşletim sisteminin kullanabileceği bellek üzerindeki sınır farklı değil, sadece işlem başına bellek.

Bu yüzden ne için kullanmak istediğine gerçekten bağlı. Büyük sunucular için yazılım geliştirmeyi veya büyük sunucuları çalıştırmayı planlıyorsanız, 64-bit kullanın. Aksi takdirde 32 kullanın.


1
4GB RAM veya daha az ise, 64-bit işletim sistemi yüklememelisiniz. 4GB'tan fazla RAM varsa, 64 bit bir işletim sistemi yüklemelisiniz. Aksi takdirde, tüm RAM'lere erişemezsiniz.
d -_- b

3
@toor katılmıyorum, 1) 32-bit işletim sistemleri, şimdi standart olan ve şimdi standart olan PAE vb. 4G'den az koç (az) olsa bile 64 bit işletim sistemine sahip olmak yararlı olabilir.
MarkR

3
@toor Kesinlikle, 2-3 Gb özel anonim sayfa içeren tek bir işlem yapmak istiyorsanız, 32 bit işletim sisteminde zorlaşır. Adres alanı tükenmesi, (sanal) belleğin bitmesi yerine, böyle bir sistemde ciddi bir sorundur. Ancak, 64 bit çekirdeğe ve kullanıcı alanına geçmek, görevin hedefinizi aşarak çok daha fazla ram tüketmesine neden olabilir. Belki bazı durumlarda 64 bit çekirdek, 32 bit kullanıcı alanı iyidir.
MarkR

1
64 bit işlemciniz varsa, 64 bit işletim sistemini çalıştırın! ahh, mantıklı görünüyor
Sam Watkins

2
64 bitli ikili dosyaların normalde 64 bitlik montaj desteğiyle derlendiğinden bahsetmemenin garip olması! Bazı durumlarda, 64 bit işlemlerden yararlanabilmek, bir uygulamanın hızını ÖNEMLİ olarak artırabilir. Akla gelen en önemli olan Kripto'dur (OpenSSL vs.). İşlemciniz 64 bit destekliyorsa, 64 bit uygulamaları kullanmak normalde en iyisidir!
Jduncanator

121

Kısa cevap:

i686 = 32-bit Intel x86 arch 
x86_64 = 64-bit Intel x86 arch

18
Bu cevap benim için en faydalı, özellikle de 32bit - 64bit olanları zaten tanıdığımda. Beni fırlatan kısım "i686" idi. Tipik olarak, sadece basit x86 beklerdim
Antony

4
Ve neden x86_64 "86" bölümünü içeriyor?
mmdemirbas

3
Neden "86" hakkında iyi bir soru. Şuna bakmak zorunda kaldım. serverfault.com/questions/188177/...
thrag

8
Vb "80386" gibi cips geri dönersek, "80486" - genellemek "386", "486", "586", "686" Kime - mimarisi için takma
Brad

3
@Brad doğru anlamış :) :) 64-bit (veya bu durumda x86_64'taki _64 bit'i) sadece x86 komut setinin bir uzantısını ifade eder. Yine de aynı montaj (-ish) ancak 64-bit tamsayılar vb. Üzerinde çalışmak için yeni talimatlar ekler. Bu nedenle x86 neden hala alakalı? İnsanlar x86 deyince, çoğu zaman 32-bit demek istiyorlar, çünkü x86, 64-bit makinelere de uygulanabilir.
Jduncanator

31

ix86, işlemci tarafından oluşturulan işlemci talimatının bir göstergesidir. Örneğin: Intel Pentium, Intel Core2Duo, AMD K6. ix86 yıllardan beri var, 2000'den sonra bir işlemciniz varsa, muhtemelen en azından i686 komut setine sahip. Diğer göstergelerin yokluğu bunun 32 bitlik bir versiyon olacağına işaret ediyor.

x86_64, 64 bitlik kayıtların ve adres alanlarının kullanımını gösterir. Eğer 64 bit işlemci varsa, yalnızca bu seçim ve işletim sisteminin 64 bit sürümünü kullanmak istiyorum.

Seçim senin. Tüm AMD Turion işlemcilerin 64 bit desteği olduğuna inanıyorum. Arch Linux'un 64 bit sürümünü ya da 32 bit sürümünü isteyip istemediğinize karar vermeniz yeterlidir.


0

macemoneta açıklar

Temel olarak, farklı çekirdek tanımlamaları, derleyiciye hangi komut setine optimizasyon yapması gerektiğini söyler. Bir i686 CPU i586 ve i386 komutlarını çalıştırabilir, böylece gözlemlediğiniz gibi bir i686 bir i386 çekirdeğini çalıştırabilir. Ancak, bir i686 için özel olarak derlenmiş en iyi şekilde çalışmayabilir.

Bunlar, genellikle kullanacağınız atamalar:

x86_64 İşlemciler

  • AMD'nin Athlon 64, Athlon 64-FX ve Opteron
  • Intel EMT64 işlemciler - Nocona Xeon, Pentium 4 Prescott çekirdeğinin E0 revizyonunu kullanıyor (AKA Pentium 4, model F)

i686 İşlemciler * Tüm Intel 32-bit Pentiumlar (Pentium 1 ve Pentium MMX hariç) * Tüm AMD 32-bit Athlons

i586 İşlemciler

  • Tüm 32-bit AMD K'ler
  • Pentium 1
  • Pentium MMX

i386 İşlemciler

  • Intel 80386 uyumlu CPU'lar için genel "en düşük ortak payda" ataması (yukarıdakilerin tümünü içerir, ancak daha sonraki işlemciler için genişletilmiş talimatlardan yararlanmaz).
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.