एआरएम प्रोसेसर आधारित प्रणाली पर विंडोज 7 क्यों नहीं स्थापित किया जा सकता है?


12

आज मैं माइक्रोसॉफ्ट विंडोज 8 के बारे में कुछ समाचार ( 1 , 2 , 3 , 4 ) पढ़ रहा था और देखा कि एक नई विशेषता यह है कि यह एआरएम प्रोसेसर आधारित प्रणाली पर चल सकता है। यह मुझे उन कारणों से आश्चर्यचकित करता है जो इसे विंडोज (सात) के वर्तमान रिलीज़ संस्करण के साथ नहीं किया जा सकता है।

एआरएम प्रोसेसर आधारित प्रणाली पर इसे स्थापित करने के लिए विंडोज 7 की वास्तविक सीमाएं क्या हैं? यह कर्नेल संस्करण, ड्राइवरों, वास्तुकला या इन कारकों के मिश्रण के साथ भी करना होगा?

जब तक मुझे पता है, मैं एक एआरएम पर लिनक्स स्थापित कर सकता हूं, इसलिए मैं एआरएम पर VMWare वर्चुअल मशीन के तहत विंडोज सेवन भी स्थापित नहीं कर सकता हूं?


1
ध्यान दें कि एआरएम पर चलने के लिए विंडोज 8 स्लेटेड है। windows8news.com/2011/01/05/…
JSB '26

1
आप एक एआरएम ऑपरेटिंग सिस्टम में चलने वाली वर्चुअल मशीन में विंडोज 7 स्थापित कर सकते हैं । आपको बस एक वर्चुअल मशीन प्रोग्राम ढूंढना होगा जो दोनों ARM पर चलता हो और x86 गेस्ट को चलाने में सक्षम हो।
ब्रेकथ्रू

जवाबों:


30

एक एआरएम प्रोसेसर पर चलने के लिए बायनेरिज़ के लिए, उन्हें उस प्रोसेसर के लिए विशेष रूप से संकलित किया जाना चाहिए या एक एमुलेटर में चलाया जाना चाहिए।

चूंकि लिनक्स सिस्टम खुला स्रोत है, इसलिए लोग उन्हें विशेष रूप से एआरएम सिस्टम के लिए संकलित कर सकते हैं और किसी भी x86 विशिष्ट कोड को फिर से लिख सकते हैं। क्योंकि विंडोज के लिए स्रोत बंद है, जब तक कि Microsoft एआरएम संस्करण को जारी नहीं करता है, इसे फिर से तैयार नहीं किया जा सकता है और इस पर नहीं चल सकता है।

एआरएम सिस्टम पर जाने के साथ अन्य समस्याएं हैं, लेकिन यह संभवतः सबसे बड़ी है।

जहाँ तक मुझे पता है, VMware एक x86 का अनुकरण नहीं करेगा। मुझे लगता है कि क्यूमू सक्षम हो सकता है, लेकिन मैंने एआरएम के लिए x86 का अनुकरण करने के लिए इसका उपयोग नहीं किया है, सिर्फ एआरएम का अनुकरण करते हुए x86। यदि यह काम करता है तो एक महत्वपूर्ण प्रदर्शन हिट होगा।

हालांकि किसी भी कार्यक्रम को उस आर्किटेक्चर के लिए संकलित करने की आवश्यकता होती है जिस पर इसे चलाया जाता है, एक ऑपरेटिंग सिस्टम को अक्सर विशिष्ट आर्किटेक्चर के लिए बहुत अधिक अनुकूलित करने की आवश्यकता होती है। ऑपरेटिंग सिस्टम शेड्यूलिंग और कार्य स्विचिंग जैसी चीजों के लिए जिम्मेदार हैं, जो प्रोसेसर के साथ बहुत गहरे स्तरों पर काम करते हैं।


8
ध्यान दें कि आप "एआरएम" शब्द को हटाकर पहले वाक्य को सामान्य कर सकते हैं और अभी भी एक सच्चा बयान है - एक नियम के रूप में बायनेरिज़ को या तो उन आर्किटेक्चर के लिए संकलित करना होगा जो वे चल रहे हैं, या फिर एक एमुलेटर या दुभाषिया परत है
शिन्राई

4
@ झुलस्त मैंने पावरपीसी पर x86 का अनुकरण करने के लिए qemu का उपयोग किया है, और, हां, यह अविश्वसनीय रूप से धीमा है।
Cajunluke

माना जाता है कि VPC (जिसे MS ने खरीदा था) ने गतिशील पुनर्संयोजन के साथ PPC पर x86 किया। दी, यह उम्र पहले था, और मैं वास्तव में इसे खुद की कोशिश नहीं की। QEMU अपने पोर्टेबिलिटी IMO के अलावा अन्य भयानक है। यह कुछ चीजों को बहुत अच्छी तरह से करता है (जैसे कर्नेल हुक की आवश्यकता नहीं है) लेकिन यह अक्षम है।
जर्नीमैन गीक

एआरएम होस्ट प्लेटफॉर्म के लिए यह क्यूईएमयू पोर्ट बहुत मुख्यधारा नहीं दिखता है और मुझे कोई अन्य नहीं मिला।
RedGrittyBrick

डिवाइस ड्राइवर भी एक मुद्दा होगा, विशेष रूप से एआरएम सिस्टम तक सीमित किसी भी अद्वितीय सामान के लिए।
CarlF

8

इसका सरल उत्तर है "MS ने एक पोर्ट जारी नहीं किया है" (हालांकि विंडोज 8 को ARM को पोर्ट किया जाना चाहिए), बस इसका कारण यह है कि उस समय कोई व्यावसायिक समझ नहीं थी। यदि आप में जाना चाहते हैं, यदि एमएस ...

खैर, ऐतिहासिक रूप से, NT परिवार प्रोसेसर की एक श्रृंखला पर चला है - NT अल्फा, PPC और MIPS पर चला गया, और क्लिपर और SPARC आर्किटेक्चर के लिए योजनाबद्ध बंदरगाह थे । यह संभव है क्योंकि विंडोज़ एनटी ने कोड ( एचएएल ) के हार्डवेयर निर्भर भागों को सारगर्भित किया और उस खंड को फिर से लिखना और बाकी सभी चीजों को फिर से लिखना चाल को करना चाहिए (हालांकि सिद्धांत रूप में .NET आधारित सॉफ्टवेयर माना जाता है कि हार्डवेयर स्वतंत्र है)।

लिनक्स के विपरीत, जो, अगर मुझे सही ढंग से याद है कि प्रत्येक वास्तुकला के लिए अलग-अलग कर्नेल शाखाएं हैं, तो माना जाता है कि केवल एचएएल हार्डवेयर विशिष्ट है, और बाकी सामान्य है - मेरा मानना ​​है कि एक बार प्रश्न में एआरएम प्लेटफॉर्म के लिए एचएएल बनाया गया था, यह अपेक्षाकृत होना चाहिए पीसीआई-ई और अन्य उद्योग-मानक इंटरफेस का उपयोग करते हुए, हार्डवेयर के विभिन्न बिट्स के लिए तुच्छ और कोडिंग से अलग नहीं है, खासकर अगर सिस्टम अन्यथा पारंपरिक था।

मान लिया जाये कि माइक्रोसॉफ्ट विंडोज 7 के एक एआरएम बंदरगाह जारी की है, किसी भी सॉफ्टवेयर है कि व्याख्या नहीं है, या JVM, LLVM या CLR की तरह एक तरह के वी एम पर चल फिर कंपाइल किया करने के लिए या एक अनुवाद परत पर चलाने के लिए, की तरह की आवश्यकता होगी Rosetta या पुराने 68K संगतता पुराने macs पर परत , कि x86 विशिष्ट कोड के बारे में पता है (और पारदर्शिता में है कि चलाता है), और अनुवाद के लिए पर्याप्त प्रोसेसर शक्ति है।


.NET सॉफ्टवेयर मोनो का उपयोग करके लगभग किसी भी प्रमुख आर्किटेक्चर पर चल सकता है, जो कि .NET प्रोग्राम के लिए एक ओपन सोर्स कंपाइलर / रनटाइम है जो अधिकांश ऑपरेटिंग सिस्टम के तहत चलता है। यह सीधे मूल प्रश्न के लिए प्रासंगिक नहीं है, निश्चित रूप से।
CarlF

नहीं। यह उस भाग के लिए प्रासंगिक है जहाँ 'सॉफ़्टवेयर को पुन: स्थापित करने की आवश्यकता होगी'। मेरा मानना ​​है कि CLR संभावित रूप से प्लेटफ़ॉर्म स्वतंत्र है, और / या .net कोड इंस्टॉल पर अनुकूलित / संकलित है। मैं पूरी तरह से मोनो के बारे में भूल गया, दुर्भाग्य से, इसकी उन चीजों में से एक है जो पृष्ठभूमि में चुपचाप काम करती है; पी
यात्रा करने वाला गीक

@ चेतावनी यह है कि आप किसी भी win32 बायनेरिज़ का उपयोग करने के लिए P / Invoke का उपयोग नहीं कर सकते हैं। जिस क्षण आपको यह करने की आवश्यकता होती है कि आप अपना क्रॉस प्लेटफॉर्म समर्थन खो देते हैं। यह एक मुद्दे की तुलना में कम है क्योंकि यह .net फ्रेमवर्क बड़ा हो गया है; लेकिन अगर आपके ऐप को किसी भी 3 पार्टी सिस्टम निर्भरता के साथ कसकर इंटरफ़ेस करने की आवश्यकता है, तो देशी कोड काफी सामान्य हो जाते हैं।
दान

2

आप बायनेरिज़ को उन प्रोसेसरों पर नहीं चला सकते हैं, जो आर्किटेक्चर की तुलना में एक अलग आर्किटेक्चर हैं, जहां बायनेरिज़ को संकलित किया गया है।

आप ARM पर AMD64 Linux नहीं चला सकते, जैसे आप i386 (32-बिट) प्रोसेसर पर AMD64 लिनक्स नहीं चला सकते। आपके एकमात्र विकल्प पूरे प्रोसेसर का अनुकरण करना है ( qemu देखें ) और फिर अपना सर्वश्रेष्ठ प्रयास करें।

VMware / VirtualBox प्रोसेसर एमुलेटर नहीं हैं, इस प्रकार आप वहां भी भाग्य से बाहर हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.