बहुत अधिक रैम का उपयोग करके विंडोज, संसाधन हॉग का निदान कैसे करें


73

मेरे पास 16GB सिस्टम रैम है। स्टार्टअप पर कोई एप्लिकेशन नहीं खुला है, जिसमें टास्क-मैनेजर विंडोज को छोड़कर 3 जीबी रैम का उपयोग कर रहा है। मैंने प्रक्रियाओं टैब में देखा, लेकिन कुछ भी सामान्य से बाहर नहीं लगता है। मैं कैसे पता लगा सकता हूं कि मेरा विंडोज इतनी रैम का उपयोग क्यों कर रहा है।

यहाँ छवि विवरण दर्ज करें

सभी उपयोगकर्ताओं से सभी प्रक्रियाएं

यहाँ छवि विवरण दर्ज करें


पूल के सामन से पढ़ने पर ऐसा लगता है कि मेरा वायरलेस ब्रॉडकॉम ड्राइवर लगभग 0.4GB RAM का उपयोग कर रहा है। यहां तक ​​कि अगर मैं इसे हटा देता हूं, तब भी स्टार्ट-अप पर 2.6GB का उपयोग करना होगा, जो अभी भी बहुत अधिक है।

यहाँ छवि विवरण दर्ज करें


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

यहाँ छवि विवरण दर्ज करें


3
सबसे पहले, आपके पास केवल 12GB है। या तो आपके चार में से एक 4GB स्टिक खराब है या खराब बैठा है, या आपका मदरबोर्ड 16GB का समर्थन नहीं करता है। दूसरा, क्या आपने मैलवेयर की जांच के लिए कोई सुरक्षा कार्यक्रम चलाने की कोशिश की है? सिक्योरिटी एसेंशियल बिल्ट-इन है, इसलिए इसकी परिभाषाओं को अपडेट करना और स्कैन चलाना सुनिश्चित करें। रूटकिट विशेष रूप से छिपाने के बाद से कुछ एंटी-रूटकिट कार्यक्रमों को भी आज़माएं (हालांकि वे भी आमतौर पर किसी को ध्यान नहीं देने के लिए कम प्रोफ़ाइल रखने की कोशिश करते हैं, और कुछ गीगाबाइट्स रैम का उपयोग करना मुश्किल से मिश्रित होता है)।
1

आप प्रदर्शन को देखने के लिए चाहते हो सकता है -> संसाधन मॉनिटर
जर्नीमैन गीक

टास्कलिस्ट कमांड को किसी फ़ाइल में इसके आउटपुट को पुनर्निर्देशित करके चलाने की कोशिश करें: C: \ blah> tasklist> aa, फिर फ़ाइल आ को खोलें, आप प्रत्येक प्रक्रिया के लिए योग देखते हैं जैसे 15,100K, उनके बाद K हटाएं और Excel के साथ कुल योग करें। देखें कि क्या कुल इस्तेमाल किए गए आंकड़े से मेल खाता है जो कि कार्य प्रबंधक आपको उपयोग के लिए अपने ग्राफ के पास देता है। मेरे लिए टास्कलिस्ट से कुल 4GB है और कार्य प्रबंधक 4.5GB कहता है। मैं उस विसंगति की व्याख्या नहीं कर सकता जो मेरे पास है, लेकिन यह बहुत बड़ी नहीं है। यदि आपके पास एक बड़ी विसंगति है तो यह दिलचस्प होगा।
बार्लोप

मेरे पास एक्सेल नहीं है
वादेर

1
NDxx टैग ndis.sys हैं। मुझे लगता है कि BRCM ब्रॉडकॉम था। यह आपके नेटवर्क एडेप्टर की समस्या होने की ओर इशारा करेगा।
डेविड मार्शल

जवाबों:


82

आपके पास ड्राइवर के कारण होने वाली मेमोरी लीक है। नॉनपेजेड कर्नेल मेमोरी के उच्च मूल्य को देखें। आपके मामले में यह 3.7 जीबी से अधिक है। आप यह देखने के लिए पूलमोन का उपयोग कर सकते हैं कि कौन सा ड्राइवर उच्च उपयोग का कारण बन रहा है।

विंडोज डब्लूडीके इंस्टॉल करें , पूलमोन चलाएं, इसे Pपूल प्रकार के माध्यम से सॉर्ट करें ताकि गैर पृष्ठांकित शीर्ष पर हो और Bबाइट्स के बाद उस टैग को देखने के लिए जो सबसे अधिक मेमोरी का उपयोग करता है। उस फ़ोल्डर पर जाएं जहां डब्ल्यूडीके इंस्टॉल है, वहां जाकर टूल को चलाएं (टूल या सी: \ प्रोग्राम फाइल्स (x86) \ Windows किट्स \ 10 \ टूल्स \ x64) पर जाएं और poolmon.exe पर क्लिक करें।

अब यहां देखें कि कौन सा पूलटैग सबसे अधिक मेमोरी का उपयोग करता है:

यहाँ छवि विवरण दर्ज करें

अब एक cmd प्रॉम्प्ट खोलें और findstr कमांड चलाएँ। ऐसा करने के लिए, cmd प्रॉम्प्ट खोलें और बिना उद्धरणों के "cd C: \ Windows \ System32 \ ड्राइवर" टाइप करें। फिर "findstr / s __ टाइप ", जहाँ __ टैग (poolmon में सबसे बाईं ओर नाम) है। यह देखने के लिए कि कौन सा ड्राइवर इस टैग का उपयोग करता है:

यहाँ छवि विवरण दर्ज करें

अब, ड्राइवर फ़ोल्डर पर जाएं (C: \ Windows \ System32 \ ड्राइवर) और प्रश्न में ड्राइवर पर राइट-क्लिक करें (उपरोक्त छवि उदाहरण में intmsd.sys)। गुण पर क्लिक करें, उत्पाद नाम खोजने के लिए विवरण टैब पर जाएं। उस उत्पाद के लिए एक अद्यतन के लिए देखो।

Pooltag केवल Windows ड्राइवरों से पता चलता है या pooltag.txt में सूचीबद्ध है ( "C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x64\triage\pooltag.txt")

आपके पास उपयोग करने के कारणों का पता लगाने के लिए xperf का उपयोग हैविंडोज एसडीके से डब्ल्यूपीटी स्थापित करें , व्यवस्थापक के रूप में एक cmd.exe खोलें और इसे चलाएं:

xperf -on PROC_THREAD + LOADER + POOL -stackwalk PoolAlloc + PoolFree + PoolAllocSession + PoolFreeSession -BufferSize 2048 -MaxFax 1024 -FileMode Circular && timeout -1 && xperf -d C: \ pool.etl

बढ़ने के 30 -60 पर कब्जा। WPA.exe के साथ ETL खोलें, विश्लेषण ग्राफ़ में पूल ग्राफ़ जोड़ें।

पहले स्थान पर पूलटैग कॉलम रखें और स्टैक कॉलम जोड़ें। अब WPA.exe के अंदर प्रतीकों को लोड करें और उस टैग के ढेर का विस्तार करें, जिसे आपने पूलमोन में देखा था।

यहाँ छवि विवरण दर्ज करें

अब अन्य 3 पार्टी ड्राइवरों को ढूंढें जिन्हें आप स्टैक में देख सकते हैं। यहां Threटैग (थ्रेड) का उपयोग जी-डेटा से AVKCl.exe द्वारा किया जाता है। इसे ठीक करने के लिए ड्राइवर / प्रोग्राम अपडेट देखें।


1
मुझे माफ करें। @ जेबेदिया करमान क्या आपने डिस्टेंस कमांड चलाया है? नाम से यह नेटवर्क कार्ड ड्राइवर संबंधित हो सकता है। यदि आपके पास अभी भी समस्याएं हैं, तो RAMMap चलाएं, डेटा को RMP के रूप में संग्रहीत करें, RMP फ़ाइल को संपीड़ित करें और ज़िप अपलोड करें।
जादूंद्रे १

यह बेवकूफ लग सकता है। लेकिन मैं पूलमैन कैसे शुरू करूं। मैं "poolmon.exe" की खोज करने में सक्षम था और
Vader

@JebediahKerman मुझे लगता है कि आपने पहले ही ऐसा कर लिया था और टैग मिल गए थे। क्या आपकी पोस्ट की तस्वीर आपके पूल-टाइम की नहीं है?
Magicandre1981

तस्वीर मेरी है। किसी कारण से खोज सूचकांक अधूरा था।
वाडर

@JebediahKerman आपने देखा है कि यह NDFT क्या है? : तुम भी पूल उपयोग पता लगाने के लिए उपयोग कर सकते हैं xperf channel9.msdn.com/Shows/Defrag-Tools/...
magicandre1981

15

ठीक है, पहली बात, इससे पहले कि मैं एक अधिक विस्तृत उत्तर में जाऊं। आपके पहले स्क्रीन शॉट में, आपका नॉन-पेजेड पूल (एक प्रकार का कर्नेल मेमोरी उपयोग) 1.3GB पर है। यह मुझे असामान्य रूप से उच्च लगता है, खासकर बूट के बाद केवल 30 मिनट के लिए। मुझे लगता है कि मैं एनपी पूल को एक विस्तारित मात्रा में उपयोग के बाद या एक छलनी की तरह लीक होने वाले प्रोग्राम के साथ देख सकता था। इसके विपरीत, मेरा एनपी पूल आमतौर पर 100 और 200 मेगाबाइट के बीच होता है, और मेरा पेजेड पूल 400 या 500 के बराबर हो सकता है (और यह मेरे सिस्टम के हफ्तों तक रिबूट के बिना चलने के बाद है।)


आप कॉलम हेडर पर राइट-क्लिक करके और चुनिंदा कॉलम चुनकर टास्क मैनेजर में कुछ अतिरिक्त कॉलम सक्षम कर सकते हैं। आप जोड़ना चाहिए Working Set (private), Working Set (shared), Commit, और NP Pool। मैं सभी उपयोगकर्ताओं से आपकी सभी प्रक्रियाओं के माध्यम से स्कैन करूंगा, और देखूंगा कि उनमें से किसी का NP पूल लगभग 256KB से अधिक है या नहीं। यदि आपको कोई भी, विशेष रूप से ऐसा कोई भी दिखाई देता है जो काफी अधिक है, तो यह समस्या का स्रोत हो सकता है, या कम से कम इसका हिस्सा हो सकता है।

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

नॉन-पेजेड पूल वह मेमोरी है जो भौतिक मेमोरी से बाहर नहीं निकल सकती है और न ही कभी स्वैप की जा सकती है ... यह प्रभावी रूप से आपके स्थायी न्यूनतम मेमोरी मेमोरी उपयोग है। एनपी पूल मेमोरी में अक्सर प्रोग्राम कोड और क्रिटिकल सेक्शन होते हैं जो सही या सुरक्षित रूप से व्यवहार करने के लिए भौतिक मेमोरी में होने चाहिए, विशेष ढेर आदि, 60 प्रक्रियाओं में से, यदि सभी में 256KB की एनपी पूल मेमोरी है, तो आपकी पूर्ण न्यूनतम मेमोरी मेमोरी का उपयोग करें लगभग 15,360KB होगा। ज्यादातर मामलों में एक या दो ऐप में 256KB NP पूल हो सकता है, जबकि अधिकांश में कम, अक्सर काफी कम (या कोई नहीं) होता है। यह अत्यधिक संभावना नहीं है कि सिस्टम कभी भी काम करने वाली सभी प्रक्रियाओं की संपूर्णता को पृष्ठ से बाहर कर देगा, इसलिए कभी भी मेमोरी के उपयोग की उम्मीद न करें।


अंत में, अधिक मेमोरी होने का मतलब भौतिक डिस्क पर विस्तारित मेमोरी स्पेस (स्वैप, पेज फाइल) से पेज डेटा के लिए बचने से है। पेजिंग एक ऐसी प्रक्रिया है जिसमें आस-पास आवंटित भौतिक मेमोरी के बढ़ते ब्लॉक शामिल होते हैं, कुछ को डिस्क पर धकेलते हैं, और दूसरों को डिस्क से भौतिक मेमोरी में लाते हैं। पेजिंग है, इसे सरल, अत्यधिक अवांछनीय रखने के लिए। यह "से" खराब नहीं है, लेकिन जब यह बहुत बार होता है, तो यह प्रदर्शन पर एक वास्तविक खींच हो सकता है। किसी सिस्टम में कुल भौतिक रैम को बढ़ाने का अंतिम बिंदु भौतिक स्मृति में उनकी प्रक्रियाओं को और अधिक रखने की अनुमति देना है (बड़ा कामकाजी सेट)। मेमोरी का उपभोग करना कोई समस्या नहीं है, और जब अधिक निष्पादित प्रक्रियाएं अधिक मेमोरी का उपयोग करती हैं, तो कुल सिस्टम प्रदर्शन और सक्रिय प्रक्रिया प्रदर्शन आमतौर पर अधिक होगा,

Windows आपके लिए मेमोरी का प्रबंधन करती है, और आपके लिए और आपके पेज से (स्वैप) फ़ाइल में मेमोरी को स्वचालित रूप से अंदर और बाहर पेज करती है। यदि आप एक ऐसी प्रक्रिया चलाते हैं जिसमें 9GB मेमोरी की आवश्यकता होती है और आपका सिस्टम पहले से ही 4GB (12GB में से) का उपयोग कर रहा है, तो सिस्टम स्वचालित रूप से यह पता लगा लेगा कि किन प्रक्रियाओं को अपने पूरे वर्किंग सेट तक तत्काल पहुंच की आवश्यकता नहीं है, और यह कुछ या सभी को पेज करेगा अपने paged पूल को स्वैप करने के लिए उस अतिरिक्त 1GB को खाली करने के लिए। यदि आपकी बड़ी प्रक्रिया को अंततः अधिक मेमोरी की आवश्यकता होती है, तो विंडोज़ अन्य प्रक्रियाओं के कामकाजी सेट को और कम कर देगा जब तक कि उसके पास नए अनुरोधित ब्लॉक को आवंटित करने के लिए पर्याप्त खाली स्थान न हो। आपकी बड़ी प्रक्रिया अंततः एनपी पूल को छोड़कर सभी उपलब्ध मेमोरी का उपभोग कर सकती है और शायद समय-समय पर प्रक्रियाओं को अंजाम देने के लिए कुछ अतिरिक्त न्यूनतम ओवरहेड जो विंडोज को उनके काम करने वाले सेट (i) से अधिक मुक्त करने की अनुमति नहीं दे रहे हैं। इ। उनके पास लंबित पृष्ठ दोष हैं जिन्हें Windows अन्यथा भौतिक मेमोरी से बाहर कर देगा, लेकिन क्योंकि उनसे अनुरोध किया जा रहा है, उन्हें स्थानांतरित नहीं किया जा सकता है।)

यदि किसी प्रक्रिया को अधिक मेमोरी की आवश्यकता होती है, तो इसे एक्सेस करने की अनुमति दी जाती है (32bit प्रक्रियाएं आमतौर पर 2Gb तक पहुंच सकती हैं, और संवर्धित तकनीकों के साथ 4Gb से कुछ कम, जबकि 64 बिट प्रक्रिया आमतौर पर लगभग 48 जीबी मेमोरी तक पहुंच सकती है, प्रत्येक), तो विंडोज़ कभी-कभी कोशिश करेंगे स्वैप स्थान के साथ इसकी मेमोरी को वर्चुअलाइज करने के लिए। यदि कोई 32 बिट ऐप अपने अधिकतम अनुमत 2Gb स्थान का उपयोग करना चाहता है, लेकिन केवल 1.2Gb उपलब्ध हैं, तो विंडोज़ पेज फ़ाइल में पूर्ण 2Gb को आरक्षित कर देगा, और प्रक्रियाओं को पेज फ़ाइल से अंदर और बाहर की प्रक्रियाओं को स्थानांतरित करने की आवश्यकता है। एप्लिकेशन की मेमोरी उपयोग का समर्थन करें। इस मामले में कुल "मेमोरी" का उपयोग कुल मेमरी द्वारा जाने पर उपलब्ध भौतिक मेमोरी से अधिक हो सकता है। टोटल कमिट आमतौर पर भव्य कुल पृष्ठ फ़ाइल आकार में अधिकतम होता है, जिसे सिस्टम द्वारा प्रबंधित किया जाता है, आमतौर पर भौतिक मेमोरी राशि 2-3x होती है। आपके मामले में,


एक अंतिम बिंदु। आपने अपने जवाब में कहा था कि आपके पास 16 जीबी की रैम है, जहां टास्क मैनेजर के रूप में केवल 12 जीबी रैम ही दिखाई देती है। यहां दो चीजों में से एक है। या तो आपके सिस्टम में वास्तव में केवल 12 जीबी रैम है, या आपकी एक स्टिक ठीक से पंजीकृत नहीं है। यदि राम की एक छड़ी (मैं 4x 4 जी स्टिक मान रहा हूं), तो यह खराब हो सकता है, आपके मदरबोर्ड में पूरी तरह से ठीक से नहीं बैठा जा सकता है, या आपके मदरबोर्ड में मेमोरी डिटेक्शन मुद्दा हो सकता है।

यह जांचने के लिए कि क्या यह बाद की बात है, आपको पहले अपने मदरबोर्ड BIOS को नवीनतम संस्करण में अपडेट करना चाहिए। मुझे भी इसी तरह की समस्या थी ... मेरे छह ट्रिपल-चैनल डीडीआर 3 स्टिक्स ऑफ रैम (6x 2 जीबी) व्यक्तिगत रूप से एक-एक का परीक्षण करने के आधार पर सभी अच्छे थे ... लेकिन मेरी मदरबोर्ड ने बेतरतीब ढंग से हर बार उनमें से एक या दो की गिनती नहीं करने का फैसला किया, अक्सर मुझे केवल 8 जीबी रैम के साथ छोड़कर। एक BIOS अपडेट ने समस्या को ठीक कर दिया है, और अब मेरी मेमोरी के सभी 12 जीबी पर विश्वसनीय पहुंच है।


दिलचस्प..और मैंने अभी देखा कि उसकी नॉन-पेजेड मेमोरी फिर से बहुत बड़ी हो रही है..मैं 539MB पेजेड, 139 एमबी नॉन-पेजेड है। मुझे स्पष्ट रूप से इस बारे में मुझसे ज्यादा जानकारी है .. लेकिन, आप कुल कमिट पर गलत हैं। लिखो "टोटल कमिट आम ​​तौर पर भव्य कुल पृष्ठ फ़ाइल आकार में अधिकतम होगा" मेरी रैम 12 जीबी है। मैंने अपने पेजफाइल को 4000 एमबी (3.8 जीबी?) मिनट और 1.5-2x मेमोरी के रूप में सेट किया है। अधिकतम अधिकतम 15 जीबी (कम = 7) है / 15 वर्तमान में), मेरा पेजफाइल isAbout 4GB या शायद 3.8GB.Max कमिट की तरह थोड़ा कम पेजफाइल आकार + RAM आकार की तरह है। जब मेरा पेजफाइल 12GB था तो मेरी अधिकतम प्रतिबद्धता लगभग 24GB थी। Pagefile लगभग 3.8GB या 4GB अधिकतम प्रतिबद्ध 15GB है
barlop

@barlop: ठीक है, आपको कुछ गलतफहमी है कि क्या है। तकनीकी रूप से बोलना, प्रतिबद्ध प्रभार कुल "लगभग पता योग्य मेमोरी स्पेस" है, जिसमें विस्तारित मेमोरी प्रबंधकों द्वारा समर्थित स्थान और बड़े पते की जागरूकता शामिल है। मैक्स कमिट पृष्ठ फ़ाइल + रैम नहीं होगी, बल्कि इसे कुल सिस्टम प्रबंधित वर्चुअल एड्रेस स्पेस के रूप में वर्णित किया जाएगा। पृष्ठ फ़ाइल को आम तौर पर, कम से कम, कुल भौतिक स्मृति आकार को कवर करना चाहिए, और इसके अतिरिक्त कुल भौतिक स्मृति आकार से परे इसे विस्तारित करना चाहिए। आपके मामले में, मैंने कम से कम 18Gb (1.5x) या 24Gb (2x) होने की उम्मीद की है, लेकिन यह कि ...
jrista

... सिस्टम प्रबंधित पेज फ़ाइल के लिए मामला होगा। ऐसा लगता है कि आपने मैन्युअल रूप से अपनी पेज फाइल सेटिंग्स को बदल दिया है, जिस स्थिति में मुझे आपको अपने विशिष्ट कॉन्फ़िगरेशन के बारे में अधिक जानना होगा, यह बताने के लिए कि आपका वर्तमान कमिट 15Gb क्यों है (जैसा कि 3.8 / 4Gb पेज फाइल 16Gb की प्रतिबद्धता का संकेत देगा, न कि 15Gb का ।) यह पूरी तरह से संभव है कि कोई पृष्ठ फ़ाइल या मैन्युअल रूप से कोई फ़ाइल फ़ाइल कॉन्फ़िगर न करें, जो बहुत छोटा हो, और इससे विषम प्रदर्शन समस्याएँ और स्मृति आबंटन समस्याएँ हो सकती हैं। जब तक आपके पास अत्यधिक विशिष्ट सर्वर (यानी डेटाबेस) सेटअप नहीं है, तब तक सर्वश्रेष्ठ अनुशंसा, विंडोज़ को उसकी पृष्ठ फ़ाइल को प्रबंधित करने की अनुमति देता है।
१२:१३

एक अंतिम नोट। अधिकतम प्रदर्शन के लिए, खिड़कियों को समय से पहले अधिकतम पृष्ठ फ़ाइल आकार आवंटित करना सबसे अच्छा है। यह आमतौर पर SQL सर्वर डेटाबेस की तरह सर्वर सेटअप पर किया जाता है, जहां आप 64Gb या अधिक (आमतौर पर 2x को भौतिक रैम आकार, इसलिए शायद 128Gb या 256Gb) को उस पृष्ठ फ़ाइल में भी प्रचारित कर सकते हैं जो अधिकतम प्रदर्शन के लिए समान भौतिक डिस्क के बीच समान रूप से वितरित की जाती है। । वितरित पृष्ठ फाइलें, विशेष रूप से जब अधिकतम आकार के लिए प्रचारित किया जाता है, तो सभी भाग लेने वाले डिस्क पर इंटरलेडेड रीड / राइट्स की अनुमति देता है, इस प्रकार समानांतर I / O के माध्यम से बेहतर पेजिंग प्रदर्शन की अनुमति देता है।
०३

एक भारी मेमोरी लोड के उदाहरण के रूप में, मेरे सिस्टम में वर्तमान में है: 7.5 / 12 जीबी भौतिक मेमोरी का उपयोग; 14.7 / 23.3 जीबी कमिट; 491mb पीडेड पूल; 145mb एनपी पूल। यह 146 प्रक्रियाओं के लिए है, अधिकतम पृष्ठांकित पूल 2276k अधिकतम np पूल 263k। सबसे बड़ा प्रतिबद्ध आकार 696,396k, और उसी प्रक्रिया के लिए WS 714,256k (एक ओपेरा टैब प्रक्रिया है।) (मेरी उच्च प्रक्रिया गिनती वेब ब्राउज़र के कारण है ... वे इन दिनों प्रक्रिया के माध्यम से टैब को अलग करते हैं, और मैं एक हाइपरटैबर हूं। ... एक बार में दर्जनों खुले, तो दर्जनों अतिरिक्त प्रक्रियाएँ।)
१२:०४

12

मैं कैसे पता लगा सकता हूं कि मेरा विंडोज इतनी रैम का उपयोग क्यों कर रहा है।

यह बहुत रैम का उपयोग कर रहा है क्योंकि यह ऐसा करने के लिए डिज़ाइन किया गया है। रैम का उपयोग करने से जुड़ी कोई कीमत नहीं है। वास्तव में, प्रयुक्त रैम मुफ्त रैम से बेहतर है क्योंकि ऑपरेटिंग सिस्टम को इसका उपयोग करने के लिए कुछ भी नहीं करना पड़ता है। मुफ्त रैम का उपयोग करने के लिए इसे उपयोग करने की आवश्यकता होती है जो प्रयास करता है।

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

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


12
अगर मेरा विंडोज़ 7 सिस्टम स्टार्टअप पर 3 जी की रैम का उपयोग कर रहा है, तो कोई भी ऐप नहीं खुला है, तो कुछ गलत हो सकता है
वादेर

5
@JebediahKerman आप ऐसा क्यों कहते हैं? मैं आपको यह समझाने की कोशिश में कुछ प्रयास करता हूं कि ऐसा क्यों नहीं है और विंडोज को ऐसा करने के लिए क्यों बनाया गया है। क्या आप मेरी व्याख्या नहीं समझ पाए? या, यदि आप इससे असहमत हैं, तो क्या आप बता सकते हैं कि आपको कहां लगता है कि मैं गलत हूं?
डेविड श्वार्ट्ज 3

11
@DavidSchwartz पूरी तरह से गलत जवाब। उसके पास एक ड्राइवर द्वारा मेमोरी लीक है
Magicandre1981

9
@DavidSchwartz: आपके द्वारा वर्णित व्यवहार (रैम का आवंटन जो पुन: उपयोग किया जा सकता है) को आवश्यक रूप से स्मरणीय स्मृति से बनाया जाना चाहिए। चिंताजनक आंकड़ा 1.3 जीबी गैर-पंजीकृत मेमोरी का है। आप बस अन्य संसाधनों के लिए, उन 1.3 जीबीबीट को कहां से मुक्त कर सकते हैं? "नॉनपेज़्ड" होने का मतलब है कि स्वयंवर ने कहा "ये बाइट्स बहुत महत्वपूर्ण हैं, आप उन्हें डिस्क पर भी नहीं डाल सकते हैं, अकेले छोड़ दें"।
एमएसलेटर

25
यह "उत्तर" इतना उच्च क्यों है? यह पूरी तरह से बात याद आती है। उपयोग किए गए विशिष्ट शब्दों के बावजूद (जो कि इसके साथ शुरू करने के लिए पूरी तरह से स्पष्ट थे), सवाल यह नहीं है “Why is Windows using RAM?”, सवाल “Why do the RAM usage numbers not add up; why is one part reporting a higher usage than another part?”यह है कि यह पोस्ट सबसे अच्छी तरह से एक टिप्पणी होनी चाहिए क्योंकि यह वास्तविक प्रश्न को संबोधित नहीं करता है या यहां तक ​​कि इसका जवाब देने का प्रयास नहीं करता है; यह केवल थोड़ी सी सलाह के साथ झंकार करता है, और उस पर बुरी सलाह है क्योंकि अगर ओपी ने सुझाव के अनुसार इसे अनदेखा किया है, तो स्मृति रिसाव की खोज नहीं की जाएगी।
सिंटेक

2

ऊपर उल्लेखित एक कारण हाइपर-वी नहीं है।

मैं इसे उत्कृष्ट उपयोगिता के साथ पहचानने में सक्षम था RamMap :

यहाँ छवि विवरण दर्ज करें

स्क्रीनशॉट बाद से है। "ड्राइवर लॉक" मेमोरी 6GB से अधिक होने से पहले, इस विशेष मशीन में 80% से अधिक रैम थी। मुझे हाइपर-वी मैनेजर में जाना पड़ा और "डायनेमिक मेमोरी" को निष्क्रिय करना पड़ा। उत्सुकता से, इसे फिर से सक्षम करने के बाद भी, "ड्राइवर लॉक किया गया" मेमोरी कम रही - मैं केवल पूर्व उदाहरणों को बढ़ा सकता हूं और कहा कि हाइपर- V स्वचालित रूप से अपनी आवंटित मेमोरी को कम नहीं करता है:

यहाँ छवि विवरण दर्ज करें

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