विज्ञापन

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

जो एक दिलचस्प सवाल उठाता है। क्या आप कम या ज्यादा RAM की जरूरत है कितना राम तुम सच में जरूरत है?RAM शॉर्ट टर्म मेमोरी की तरह है। जितना अधिक आप मल्टीटास्क करते हैं, उतना ही आपको आवश्यकता होती है। यह पता करें कि आपके कंप्यूटर में कितना है, इसका सबसे अधिक लाभ कैसे प्राप्त करें, या अधिक कैसे प्राप्त करें। अधिक पढ़ें a पर 32-बिट अनुप्रयोग चलाने के लिए विंडोज का 64-बिट संस्करण 64-बिट कम्प्यूटिंग क्या है?कंप्यूटर या कंप्यूटर हार्डवेयर की पैकेजिंग में तकनीकी शब्दों और बैज के साथ भीड़ होती है। अधिक प्रमुख लोगों में से एक 64-बिट है। अधिक पढ़ें ? इस हफ्ते, ब्रूस एपर को पता चलता है।

एक पाठक पूछता है:

क्या यह सच है कि 64-बिट विंडोज़ सिस्टम पर 32-बिट ऐप चलाने से खपत होती है 1.5 गुना अधिक मेमोरी 32-बिट विंडोज ऑपरेटिंग सिस्टम के तहत 32-बिट ऐप को चलाने की तुलना में?

instagram viewer

ब्रूस का जवाब:

हमने पहले बोर्ड में कुछ और 64-बिट सब कुछ रखने के लाभों और कमियों पर चर्चा की है "मिश्रण और मिलान" के प्रभाव Windows प्रदर्शन हार्डवेयर और सॉफ्टवेयर से कैसे प्रभावित होता हैसिद्धांत रूप में, 32-बिट सॉफ़्टवेयर हार्डवेयर सेटअप के आधार पर, अपने 64-बिट समकक्ष को बेहतर बना सकता है। जटिल लगता है? हम यहां समझ बनाने के लिए हैं और आपको अपने सिस्टम से सर्वश्रेष्ठ प्रदर्शन प्राप्त करने में मदद करते हैं। अधिक पढ़ें . आज हम यह जांचने जा रहे हैं कि विंडोज के 64-बिट संस्करणों पर 32-बिट एप्लिकेशन कैसे निष्पादित होते हैं।

64-बिट विंडोज ऑपरेटिंग सिस्टम कुछ अतिरिक्त मदद के बिना 32-बिट विंडोज प्रोग्राम नहीं चला सकता है। वे बहुत अलग हैं: संकेत और डेटा प्रकार से, सिस्टम कॉल कैसे (प्रोग्राम अंतर्निहित ऑपरेटिंग सिस्टम के संसाधनों का उपयोग कैसे करते हैं) से। आपको उन्हें संगत बनाने के लिए किसी तरह की आवश्यकता है।

समझ WW64

अंतरों की भरपाई करने के लिए विंडोज WoW64 (Windows32 on Windows64) सबसिस्टम का उपयोग करता है। यह प्रभावी रूप से x64 सिस्टम पर 32-बिट विंडोज मिनी-एम्यूलेटर और इटेनियम (IA64) सिस्टम पर एक पूर्ण-एमुलेटर के रूप में काम करता है।

प्रोसेसर निर्देश और मेमोरी पेज साइज (4K में x86 और x64, IA64 में 8K) के अंतर के कारण IA64 सिस्टम को एक पूर्ण एमुलेटर की आवश्यकता होती है। चूंकि x64 प्रोसेसर में x86 प्रोसेसर के सभी निर्देश हैं और एक ही मेमोरी पेज आकार का उपयोग करता है, इसके लिए पूर्ण एमुलेटर की आवश्यकता नहीं है।

दोनों मामलों में, WoW64 64-बिट विंडोज कर्नेल और ntdll.dll के 32-बिट संस्करण के बीच एक इंटरफ़ेस प्रदान करता है (इसमें कोर की एक सूची शामिल है विंडोज कर्नेल फ़ंक्शन), कर्नेल कॉल को इंटरसेप्ट करना और उन्हें बदलना ताकि वे विंडोज द्वारा प्रदान किए गए मूल 64-बिट फ़ंक्शन द्वारा संसाधित किए जा सकें। गिरी।

इसे प्राप्त करने के लिए x64 / IA64 सिस्टम पर 3 DLL फ़ाइलों का उपयोग किया जाता है: wow64cpu.dll, wow64win.dll, और wow64.dll। उनके कार्य प्रोसेसर विशेषताओं को सार करते हैं और थ्रक्स प्रदान करते हैं (हम बाद में उनसे मिलेंगे) win32k.sys में जो "विंडो" कार्यक्षमता और ntoskrnl.exe प्रदान करता है जिसमें कार्यकारी, कर्नेल, मेमोरी मैनेजर शामिल है, प्रक्रिया अनुसूचक (नियंत्रण कक्ष से सुलभ टास्क समयबद्धक के साथ भ्रमित नहीं होना), और ऑपरेटिंग के अन्य मूल तत्व प्रणाली।

लोड-DLLs

एक थन एक सबरूटिन है (इन निर्देशों की एक श्रृंखला के रूप में सोचें जो एक ही कार्य करते हैं) जो प्रोग्राम को सिस्टम में एक सामान्य सबरूटीन या फ़ंक्शन को निष्पादित करने की अनुमति देता है।

इस स्थिति में, यह 32-बिट प्रोग्राम के कॉल स्टैक से तर्क निकालता है, उन्हें उनके 64-बिट समकक्षों में परिवर्तित करता है, और 64-बिट सिस्टम कॉल करता है। कॉल से वापस आने पर, यह 64-बिट परिणामों को वापस 32-बिट में परिवर्तित कर देगा और कॉल करने वाले को उपयोग करने के लिए प्रोग्राम के कॉल स्टैक पर वापस धकेल देगा।

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

दूसरा, यह प्रदर्शन प्रभाव को कम कर देता है यदि कर्नेल मोड (ऑपरेटिंग सिस्टम के आवश्यक भागों द्वारा उपयोग किया जाने वाला मोड) को ओवरहेड के बीच स्विच करने के दौरान चलाने के कारण यह होता है उपयोगकर्ता मोड तथा कर्नेल मोड और वापस।

इटेनियम सिस्टम में वापस जाने पर, नोट करने के लिए कुछ अन्य महत्वपूर्ण अंतर हैं। IA64 सिस्टम दो अतिरिक्त फ़ाइलों का उपयोग करता है। IA32exec.bin x86 सॉफ्टवेयर एमुलेटर है और Wowia32x.dll WoW64 और सॉफ्टवेयर एमुलेटर के बीच इंटरफेस प्रदान करता है।

32-बिट प्रक्रिया इन फ़ाइलों के साथ-साथ ntdll.dll के 64-बिट संस्करण को लोड करेगी। ये केवल 64-बिट बायनेरिज़ हैं जिन्हें विंडोज 7 से पहले 32-बिट प्रक्रिया में लोड किया जा सकता है। विंडोज 7 और बाद में एक और DLL, apisetschema.dll भी है, जिसे सभी प्रक्रियाओं में लोड किया जाएगा।

प्रक्रिया-एक्सप्लोरर

जब 32-बिट प्रक्रिया शुरू की जाती है, तो यह Wow64.dll को लोड करेगा जो बदले में ntdll.dll के 32-बिट संस्करण और किसी भी आवश्यक 32-बिट DLL को लोड करता है % Systemroot% \ SysWOW64. इनमें से अधिकांश फाइलें 32-बिट सिस्टम पर बायनेरिज़ के समान हैं, हालांकि कुछ को WOW64 के तहत अलग तरह से व्यवहार करने के लिए फिर से लिखा गया है।

लोड की गई DLL की सूची को देखकर हम देख सकते हैं कि Win64 के तहत प्रक्रिया में 9 DLL लोड किए गए हैं जो Win32 सिस्टम के लिए नहीं हैं।

अब, आपको फ़ाइल आकारों को देखने के लिए लुभाया जा सकता है, उन्हें जोड़ सकते हैं और उपयोग कर सकते हैं कि आपके आधार के रूप में कितनी अतिरिक्त मेमोरी का उपयोग किया जा रहा है, लेकिन आप गलत परिणामों के साथ समाप्त होंगे। इन फ़ाइलों को, उनके स्वभाव से, साझा घटकों के रूप में डिज़ाइन किया गया है और परिणामस्वरूप, DLL की आवश्यकता वाली पहली फ़ाइल इसे मेमोरी में लोड करती है।

बाद के प्रोग्राम जिन्हें एक ही DLL की आवश्यकता होती है, पूरे घटक को मेमोरी में लोड नहीं करते हैं। उन्हें पहले से लोड किए गए घटक के लिए एक संकेतक मिलता है, और अतिरिक्त तत्वों के लिए रैम आवंटित करता है जो प्रक्रिया में लोड होते हैं।

हमारे परीक्षण सेटअप

क्या चल रहा है, यह देखने के लिए, मैंने विंडोज 7 अल्टिमेट चलाने वाली दो वर्चुअल मशीनें स्थापित की हैं, जिनमें से प्रत्येक में 2 जीबी रैम आवंटित हैं। उनमें से एक 32-बिट संस्करण है और दूसरा 64-बिट है। दोनों एक ही समान स्थापना और पैचिंग प्रक्रिया से गुजरे।

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

लो-calc

एक प्रतिलिप Sysinternals प्रक्रिया एक्सप्लोरर प्रोसेस एक्सप्लोरर - सबसे शक्तिशाली टास्क मैनेजर रिप्लेसमेंट [विंडोज]आइए ईमानदार हों, विंडोज टास्क मैनेजर आपके कंप्यूटर पर चलने वाली प्रक्रियाओं को समझने और प्रबंधित करने के लिए बहुत अच्छा नहीं है। यहां तक ​​कि विंडोज 8 पर, जहां यह बहुत बेहतर है, कार्य प्रबंधक के करीब नहीं आ सकता ... अधिक पढ़ें दोनों मशीनों पर भी रखा गया था। यह वह उपकरण है जिसका उपयोग मैंने मेमोरी उपयोग की जानकारी इकट्ठा करने के लिए किया था। डिफ़ॉल्ट कॉलम सेटअप को बदल दिया गया था ताकि मैं वर्किंग सेट और डब्लूएस निजी उपयोग को देख सकूं।

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

जिन प्रक्रियाओं की हम जांच कर रहे हैं, वे अकेली नहीं हैं। विभिन्न लिब्रे ऑफिस प्रोग्राम एक और प्रक्रिया, soffice.exe लॉन्च करते हैं, जो अभी तक एक और प्रक्रिया, soffice.bin को निष्पादित करेगा। हमें प्रत्येक कार्यक्रम के प्रभावी स्मृति उपयोग को देखने के लिए सभी तीन प्रक्रियाओं के योगों को देखना होगा।

प्रारंभिक परीक्षण के लिए, मैंने बस लेखक, Calc और इम्प्रेस को व्यक्तिगत रूप से यह देखने के लिए खोला कि वे कितनी मेमोरी का उपभोग करते हैं बिना किसी डेटा को लोड किए और प्रोसेस एक्सप्लोरर से डेटा निर्यात किया। Calc और Impress के साथ, मैंने क्रमशः 3.7 MB .xls फ़ाइल और 3.9 MB .pptx फ़ाइल खोली थी और नए मेमोरी उपयोग को रिकॉर्ड किया था। परिणाम नीचे दी गई तालिका में देखे जा सकते हैं। सभी डेटा KB में है।

स्मृति उपयोग

इम्प्रेस के साथ बड़ा आश्चर्य हुआ। दस्तावेज़ के बिना यह 64-बिट सिस्टम और 9.9% पर 4.1% अधिक रैम का उपयोग कर रहा था कम से दस्तावेज़ के साथ लोड किया गया। मैंने कुछ अन्य प्रस्तुतियों को खोदा और उन सभी के साथ समान परिणाम थे। 64-बिट सिस्टम 32-बिट सिस्टम की तुलना में कम रैम का उपयोग करके समाप्त हो गया।

तो, क्या 32-बिट ऐप चलाने पर विंडोज के 64-बिट संस्करणों को अपने 32-बिट समकक्षों की तुलना में अधिक रैम की आवश्यकता होती है? सामान्य तौर पर, हाँ।

लेकिन क्या आपको अपनी रैम अपग्रेड करने की जरूरत है? शायद ऩही। अंतर वास्तव में यह बड़े पैमाने पर नहीं है यह निश्चित रूप से 1.5 गुना भिन्न नहीं है।

ब्रूस 70 के दशक से इलेक्ट्रॉनिक्स के साथ खेल रहे हैं, 80 के दशक के शुरुआती दिनों से कंप्यूटर, और तकनीक के बारे में सवालों के सही जवाब दे रहे हैं और न ही उन्होंने पूरे समय का उपयोग किया है। वह गिटार बजाने का प्रयास करके खुद को भी परेशान करता है।