I686 और x86_64 के बीच अंतर क्या है?


जवाबों:


67

i686 32-बिट संस्करण है, और x86_64 OS का 64-बिट संस्करण है।

64-बिट संस्करण मेमोरी के साथ बेहतर होगा, विशेष रूप से बड़े डेटाबेस जैसे वर्कलोड के लिए जो एक ही प्रक्रिया में बहुत सारे राम का उपयोग करने की आवश्यकता होती है। 32-बिट मशीन पर (महत्वपूर्ण) डेटाबेस सर्वर चलाने पर विचार न करें।

हालांकि, अधिकांश अन्य चीजों के लिए 32-बिट संस्करण ठीक है। 32-बिट कोड कम मेमोरी का उपयोग करता है, इसलिए आपके पास अन्य चीजों के लिए अधिक होगा। ओएस द्वारा उपयोग की जाने वाली मेमोरी की सीमा अलग नहीं है, बस प्रति प्रक्रिया मेमोरी है।

तो यह वास्तव में निर्भर करता है कि आप इसके लिए क्या उपयोग करना चाहते हैं। यदि आप बड़े सर्वर के लिए सॉफ़्टवेयर विकसित करने या बड़े सर्वर चलाने की योजना बना रहे हैं, तो 64-बिट का उपयोग करें। अन्यथा 32 का उपयोग करें।


1
यदि 4 जीबी रैम या उससे कम है, तो आपको 64-बिट ओएस स्थापित नहीं करना चाहिए। यदि आपके पास 4GB से अधिक रैम है, तो आपको 64-बिट ओएस स्थापित करना चाहिए। अन्यथा आप सभी रैम तक नहीं पहुंच पाएंगे।
d -_- b

3
@ मैं असहमत हूं, 1) 32-बिट ओएस पीएई आदि के साथ 4 जी से अधिक रैम का उपयोग करने में सक्षम हैं, जो अब मानक हैं और 2) प्रक्रिया के पते के सभी स्थान को (अलग) भौतिक रैम में मैप नहीं किया जा सकता है, इसलिए यह 4 जी रैम से कम (थोड़ा) होने पर भी 64-बिट ओएस होना उपयोगी हो सकता है।
मार्क 01

3
@ निश्चित रूप से यदि आप 2-3 गुमनाम निजी पेजों के साथ एकल प्रक्रिया चलाना चाहते हैं, तो 32-बिट ओएस पर मुश्किल हो जाता है। एड्रेस (स्पेस) की कमी ऐसी प्रणाली पर गंभीर रूप से एक समस्या है, बजाय (वर्चुअल) मेमोरी से बाहर निकलने के। हालाँकि, 64-बिट कर्नेल और यूजरस्पेस पर स्विच करने से कार्य के बहुत अधिक राम का उपभोग करने की संभावना है, शायद आपके लक्ष्य से अधिक हो। शायद कुछ स्थितियों में 64-बिट कर्नेल, 32-बिट उपयोगकर्ता स्थान अच्छा है।
21

1
यदि आपके पास 64 बिट प्रोसेसर है, तो 64-बिट OS चलाएं! डुह, समझदार लगता है
सैम वाटकिंस

2
यह अजीब है कि आप सभी यह उल्लेख करने में विफल रहते हैं कि 64-बिट बायनेरिज़ सामान्य रूप से 64-बिट असेंबली के समर्थन के साथ संकलित हैं! कुछ मामलों में, 64-बिट संचालन का उपयोग करने में सक्षम होने से किसी एप्लिकेशन की गति को स्पष्ट रूप से बढ़ाया जा सकता है। एक उल्लेखनीय जो दिमाग में आता है वह है क्रिप्टो (ओपनएसएसएल आदि)। यदि आपका प्रोसेसर 64-बिट अनुप्रयोगों का उपयोग करने के लिए सामान्य रूप से 64-बिट का समर्थन करता है!
jduncanator

120

संक्षिप्त जवाब:

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

18
यह उत्तर मेरे लिए सबसे उपयोगी है, खासकर जब मैं पहले से ही 32 बिट बनाम 64 बिट के बारे में जानता हूं। मुझे फेंकने वाला हिस्सा "i686" था। आमतौर पर, मैं बस x86 की उम्मीद करूंगा
एंटनी

4
और x86_64 में "86" भाग क्यों है?
mmemirbas

3
"86" के बारे में अच्छा सवाल। देखना था कि मेरे स्व। serverfault.com/questions/188177/…
4

8
सामान्य रूप से "386", "486", "586", "686" - आर्किटेक्चर के लिए उपनाम - "80386", "80486", आदि जैसे चिप्स पर वापस जाना
ब्रैड

3
@ ब्रैड इसे सही मिला :) 64-बिट (या इस मामले में _64 बिट x86_64 में) बस x86 इंस्ट्रक्शन सेट के एक एक्सटेंशन को संदर्भित करता है। यह अभी भी एक ही विधानसभा (-ish) है, लेकिन यह 64-बिट पूर्णांक आदि पर काम करने के लिए नए निर्देश जोड़ता है, इसलिए x86 अभी भी प्रासंगिक क्यों है। जब लोग x86 कहते हैं, तो अधिकांश समय उनका वास्तव में मतलब 32-बिट होता है क्योंकि x86 64-बिट मशीनों पर भी लागू होता है।
jduncanator

31

ix86 प्रोसेसर की पीढ़ी द्वारा निर्धारित प्रोसेसर इंस्ट्रक्शन का एक संकेत है। उदाहरण के लिए: इंटेल पेंटियम, इंटेल Core2Duo, AMD K6। ix86 लगभग कई वर्षों से है, यदि आपके पास 2000 के बाद एक प्रोसेसर है, तो संभवतः कम से कम i686 निर्देश सेट है। अन्य संकेतकों की अनुपस्थिति यह संकेत देती है कि यह 32 बिट संस्करण होगा।

x86_64 64 बिट रजिस्टरों और एड्रेस स्पेस के उपयोग का संकेत दे रहा है। इसे केवल तभी चुनें जब आपके पास 64 बिट प्रोसेसर हो और आप ऑपरेटिंग सिस्टम के 64 बिट संस्करण का उपयोग करना चाहते हों।

चुनना आपको है। मेरा मानना ​​है कि सभी AMD Turion प्रोसेसर में 64 बिट सपोर्ट है। आपको बस यह तय करने की आवश्यकता है कि आप 64 बिट संस्करण या आर्क लिनक्स के 32 बिट संस्करण चाहते हैं।


0

macemoneta बताते हैं

मूल रूप से, विभिन्न कर्नेल पदनाम यह पहचानते हैं कि संकलक को किस निर्देश के लिए अनुकूलित करने के लिए कहा गया था। एक i686 CPU i586 और i386 निर्देश चला सकता है, इसलिए, जैसा कि आपने देखा, एक i686 एक i386 कर्नेल चला सकता है। हालाँकि, यह विशेष रूप से i686 के लिए संकलित के रूप में बेहतर रूप में निष्पादित नहीं हो सकता है।

ये वे पदनाम हैं, जिन पर आप आमतौर पर चलेंगे:

x86_64 प्रोसेसर

  • AMD का Athlon 64, Athlon 64-FX, और Opteron
  • इंटेल EMT64 प्रोसेसर - नोकोना ज़ीओन, पेंटियम 4 में प्रेस्कॉट कोर (AKA पेंटियम 4, मॉडल एफ) के E0 संशोधन का उपयोग किया गया है

i686 प्रोसेसर * सभी इंटेल 32-बिट पेंटियम (पेंटियम 1 और पेंटियम एमएमएक्स को छोड़कर) * सभी एएमडी 32-बिट एथलोन

i586 प्रोसेसर

  • सभी 32-बिट AMD Ks
  • पेंटियम 1
  • पेंटियम एमएमएक्स

i386 प्रोसेसर

  • इंटेल 80386 संगत सीपीयू के लिए एक सामान्य "सबसे कम सामान्य भाजक" पदनाम (उपरोक्त सभी शामिल हैं, लेकिन बाद में उन सीपीयू पर विस्तारित निर्देशों का लाभ नहीं उठाते हैं)।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.