कोर डंप: Difference between revisions

From Vigyanwiki
(Created page with "{{Short description|Snapshot of computer memory data}} कम्प्यूटिंग में, एक कोर डंप,{{efn|The term Magnetic-core memory | co...")
 
m (18 revisions imported from alpha:कोर_डंप)
 
(17 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Short description|Snapshot of computer memory data}}
{{Short description|Snapshot of computer memory data}}
[[ कम्प्यूटिंग ]] में, एक कोर डंप,{{efn|The term [[Magnetic-core memory | core]] is obsolete on contemporary hardware, but is used on many systems for historical reasons.}} मेमोरी डंप, क्रैश डंप, स्टोरेज डंप, सिस्टम डंप, या ABEND डंप<ref>{{cite web|title=AIX 7.1 information|url=http://pic.dhe.ibm.com/infocenter/aix/v7r1/index.jsp}}{{Dead link|date=July 2020 |bot=InternetArchiveBot |fix-attempted=yes }}</ref> एक विशिष्ट समय पर [[कंप्यूटर प्रोग्राम]] के काम करने वाले [[कंप्यूटर भंडारण]] की रिकॉर्ड की गई स्थिति होती है, आमतौर पर जब प्रोग्राम [[क्रैश (कंप्यूटिंग)]] होता है या अन्यथा असामान्य रूप से समाप्त हो जाता है।<ref>{{man|4|core|Solaris|Process core file}}</ref> व्यवहार में, [[संदर्भ स्विच]] के अन्य प्रमुख टुकड़े आमतौर पर एक ही समय में फेंक दिए जाते हैं, जिसमें [[प्रोसेसर रजिस्टर]] शामिल होते हैं, जिसमें [[ कार्यक्रम गणक ]] और [[ स्टेक सूचक ]], मेमोरी प्रबंधन जानकारी और अन्य प्रोसेसर और ऑपरेटिंग सिस्टम फ़्लैग और जानकारी शामिल हो सकती है। एक स्नैपशॉट डंप (या स्नैप डंप) एक मेमोरी डंप है जिसे [[कंप्यूटर ऑपरेटर]] या चल रहे प्रोग्राम द्वारा अनुरोध किया जाता है, जिसके बाद प्रोग्राम जारी रखने में सक्षम होता है। कंप्यूटर प्रोग्राम में त्रुटियों के निदान और [[डिबगिंग]] में सहायता के लिए अक्सर कोर डंप का उपयोग किया जाता है।
[[ कम्प्यूटिंग | संगणनीयता]] में, कोर डंप, मेमोरी डंप, क्रैश डंप, स्टोरेज डंप, सिस्टम डंप या एबेंड डंप किसी ऐसे निश्चित समय पर [[कंप्यूटर प्रोग्राम]] की कार्य करने वाली मेमोरी की अभिलेखित स्थिति से मिलकर बना होता है, जब प्रोग्राम सामान्यतः अनुपयुक्त रूप से बंद या [[क्रैश (कंप्यूटिंग)|क्रैश]] हो जाता है।<ref>{{cite web|title=AIX 7.1 information|url=http://pic.dhe.ibm.com/infocenter/aix/v7r1/index.jsp}}{{Dead link|date=July 2020 |bot=InternetArchiveBot |fix-attempted=yes }}</ref><ref>{{man|4|core|Solaris|Process core file}}</ref> व्यवहार में, [[संदर्भ स्विच]] के साथ-साथ [[प्रोसेसर रजिस्टर]] के अन्य प्रमुख भाग सामान्यतः एक ही समय में डंप कर दिए जाते हैं, जिसमें [[ कार्यक्रम गणक | प्रोग्राम गणक]] और [[ स्टेक सूचक |स्टेक सूचक]], मेमोरी प्रबंधन जानकारी, अन्य प्रोसेसर, ऑपरेटिंग सिस्टम फ़्लैग और अन्य जानकारियाँ सम्मिलित हो सकती है। स्नैपशॉट डंप या स्नैप डंप एक मेमोरी डंप है जिसे [[कंप्यूटर ऑपरेटर]] या चल रहे प्रोग्राम द्वारा अनुरोध किया जाता है, जिसके बाद प्रोग्राम जारी रहने में सक्षम होता है। कंप्यूटर प्रोग्राम में त्रुटियों के निदान और [[डिबगिंग]] में सहायता के लिए प्रायः कोर डंप का उपयोग किया जाता है।


कई ऑपरेटिंग सिस्टम पर, प्रोग्राम में [[घातक अपवाद]] स्वचालित रूप से कोर डंप को ट्रिगर करता है। विस्तार से, डंप कोर का वाक्यांश कई मामलों में, किसी भी घातक त्रुटि का मतलब बन गया है, भले ही प्रोग्राम मेमोरी का रिकॉर्ड मौजूद हो या नहीं। आगे की परीक्षा या अन्य उद्देश्यों के लिए बड़ी मात्रा में कच्चे डेटा के किसी भी आउटपुट को इंगित करने के लिए कोर डंप, मेमोरी डंप, या सिर्फ डंप शब्द भी शब्दजाल बन गया है।<ref>{{cite web|url=http://www.techopedia.com/definition/23340/database-dump|title=What is a Database Dump? - Definition from Techopedia|author=Cory Janssen|work=Techopedia.com|access-date=29 June 2015|archive-date=20 August 2015|archive-url=https://web.archive.org/web/20150820111721/http://www.techopedia.com/definition/23340/database-dump|url-status=live}}</ref><ref>{{cite web|url=https://www.sophos.com/en-us/support/knowledgebase/111474.aspx|title=पूर्ण मेमोरी डंप कैप्चर करने के लिए कंप्यूटर को कैसे कॉन्फ़िगर करें|date=12 July 2010|work=sophos.com|access-date=29 June 2015|archive-date=1 July 2015|archive-url=https://web.archive.org/web/20150701072810/https://www.sophos.com/en-us/support/knowledgebase/111474.aspx|url-status=live}}</ref>
कई ऑपरेटिंग सिस्टम पर, प्रोग्राम में [[घातक अपवाद|फैटल अपवाद]] स्वचालित रूप से कोर डंप को प्रवर्धित करता है। विस्तृत रूप से कहें तों, अत्यधिक स्तिथियों में, अब "कोर-डम्प" शब्दावली का उपयोग किसी भी विशिष्ट त्रुटि के लिए किया जाना प्रारंभ हो गया है। आगे की परीक्षा या अन्य उद्देश्यों के लिए बड़ी मात्रा में कच्चे डेटा के किसी भी आउटपुट को इंगित करने के लिए कोर डंप, मेमोरी डंप, या मात्र डंप शब्द का प्रयोग होता है।<ref>{{cite web|url=http://www.techopedia.com/definition/23340/database-dump|title=What is a Database Dump? - Definition from Techopedia|author=Cory Janssen|work=Techopedia.com|access-date=29 June 2015|archive-date=20 August 2015|archive-url=https://web.archive.org/web/20150820111721/http://www.techopedia.com/definition/23340/database-dump|url-status=live}}</ref><ref>{{cite web|url=https://www.sophos.com/en-us/support/knowledgebase/111474.aspx|title=पूर्ण मेमोरी डंप कैप्चर करने के लिए कंप्यूटर को कैसे कॉन्फ़िगर करें|date=12 July 2010|work=sophos.com|access-date=29 June 2015|archive-date=1 July 2015|archive-url=https://web.archive.org/web/20150701072810/https://www.sophos.com/en-us/support/knowledgebase/111474.aspx|url-status=live}}</ref>




== पृष्ठभूमि ==
== पृष्ठभूमि ==
नाम [[चुंबकीय-कोर मेमोरी]] से आता है,<ref>[[Oxford English Dictionary]], ''s.v.'' 'core'</ref> 1950 से 1970 के दशक तक [[ रैंडम एक्सेस मेमोरी ]] का प्रमुख रूप। मैग्नेटिक-कोर तकनीक के अप्रचलित होने के बाद यह नाम लंबे समय तक बना रहा।
यह नाम [[चुंबकीय-कोर मेमोरी]] से आता है,<ref>[[Oxford English Dictionary]], ''s.v.'' 'core'</ref> जो 1950 से 1970 के दशक तक [[ रैंडम एक्सेस मेमोरी |रैंडम एक्सेस मेमोरी]] का प्रमुख रूप था। चुंबकीय-कोर तकनीक के अप्रचलित होने के उपरांत यह नाम लंबे समय तक प्रयोग में बना रहा।


शुरुआती कोर डंप पेपर प्रिंटआउट थे<ref>{{cite web|title=भंडारण डंप परिभाषा|url=http://encyclopedia2.thefreedictionary.com/storage+dump|access-date=2013-04-03|archive-date=2013-05-11|archive-url=https://web.archive.org/web/20130511073628/http://encyclopedia2.thefreedictionary.com/storage+dump|url-status=live}}</ref> मेमोरी की सामग्री, आमतौर पर [[अष्टभुजाकार]] या [[हेक्साडेसिमल]] नंबर (एक [[हेक्स डंप]]) के कॉलम में व्यवस्थित होती है, कभी-कभी [[मशीन भाषा]] निर्देश, टेक्स्ट स्ट्रिंग्स, या दशमलव या फ़्लोटिंग-पॉइंट नंबर (cf. [[disassembler]]) के रूप में उनकी व्याख्या के साथ।
प्रारम्भिक कोर डंप, पेपर प्रिंटआउट थे<ref>{{cite web|title=भंडारण डंप परिभाषा|url=http://encyclopedia2.thefreedictionary.com/storage+dump|access-date=2013-04-03|archive-date=2013-05-11|archive-url=https://web.archive.org/web/20130511073628/http://encyclopedia2.thefreedictionary.com/storage+dump|url-status=live}}</ref> जो मेमोरी की सामग्री को सामान्यतः [[अष्टभुजाकार]] या [[हेक्साडेसिमल]] संख्या के खंडों में व्यवस्थित होती थी, कभी-कभी [[मशीन भाषा|यंत्र भाषा]] निर्देश, टेक्स्ट स्ट्रिंग्स, या दशमलव या फ़्लोटिंग-पॉइंट नंबर के रूप में उनकी व्याख्या की जाती है।


चूंकि मेमोरी आकार में वृद्धि हुई और पोस्ट-मॉर्टम विश्लेषण उपयोगिताओं का विकास हुआ, टेप या डिस्क जैसे चुंबकीय मीडिया को डंप लिखा गया।
चूंकि मेमोरी आकार में वृद्धि हुई और मरणोत्तर अभिरंजन विश्लेषण उपयोगिताओं का विकास हुआ, टेप या डिस्क जैसे चुंबकीय मीडिया को डंप लिखा गया था।


केवल लागू मेमोरी की सामग्री को प्रदर्शित करने के बजाय, आधुनिक ऑपरेटिंग सिस्टम आमतौर पर क्रैश प्रक्रिया से संबंधित मेमोरी की छवि वाली फ़ाइल या उस प्रक्रिया से संबंधित [[ पता स्थान ]] के हिस्सों की मेमोरी छवियों के साथ-साथ अन्य जानकारी उत्पन्न करते हैं। क्रैश के मूल कारण को निर्धारित करने में उपयोगी प्रोसेसर रजिस्टरों, प्रोग्राम काउंटर, सिस्टम फ्लैग और अन्य जानकारी के मूल्यों के रूप में। इन फ़ाइलों को पाठ के रूप में देखा जा सकता है, मुद्रित किया जा सकता है, या [[यूनिक्स]] पर एल्फडम्प और यूनिक्स जैसी प्रणालियों, [[लिनक्स]] पर [[ objdump ]] और [[केडम्प (लिनक्स)]], आईबीएम जेड/ओएस पर आईपीसीएस (इंटरएक्टिव प्रॉब्लम कंट्रोल सिस्टम) जैसे विशेष उपकरणों के साथ विश्लेषण किया जा सकता है।<ref>{{cite book |last1=Rogers |first1=Paul |last2=Carey |first2=David |title=z/OS Diagnostic Data Collection and Analysis |date=August 2005 |publisher=IBM Corporation |isbn=0738493996 |pages=77–93 |url=http://www.redbooks.ibm.com/redbooks/pdfs/sg247110.pdf |access-date=Jan 29, 2021 |archive-date=December 21, 2018 |archive-url=https://web.archive.org/web/20181221071420/http://www.redbooks.ibm.com/redbooks/pdfs/sg247110.pdf |url-status=live }}</ref> IBM z/VM पर DVF (डंप देखने की सुविधा),<ref>{{cite book |last1=IBM Corporation |title=z/VM and Linux Operations for z/OS System Programmers |date=October 2008 |page=24 |url=http://www.redbooks.ibm.com/redbooks/pdfs/sg247603.pdf |access-date=Jan 25, 2022}}</ref> Microsoft Windows, [[Valgrind]], या अन्य डिबगर्स पर [[WinDbg]]।
केवल लागू मेमोरी की सामग्री को प्रदर्शित करने के अतिरिक्त, आधुनिक ऑपरेटिंग सिस्टम सामान्यतः क्रैश प्रक्रिया से संबंधित मेमोरी की छवि वाली फ़ाइल या उस प्रक्रिया से संबंधित [[ पता स्थान |पता स्थान]] के भागों की मेमोरी छवियों के साथ-साथ अन्य जानकारी उत्पन्न करते हैं। क्रैश के मूल कारण को निर्धारित करने में उपयोगी प्रोसेसर रजिस्टरों, प्रोग्राम काउंटर, सिस्टम फ्लैग और अन्य जानकारी के मूल्यों के रूप में इन्हे संदर्भित किया जाता है। इन फ़ाइलों को पाठ के रूप में या [[यूनिक्स]] पर एल्फडम्प और यूनिक्स जैसी प्रणालियों, [[लिनक्स]] पर और [[केडम्प (लिनक्स)]], आईबीएम जेड/ओएस पर आईपीसीएस जैसे विशेष उपकरणों के साथ विश्लेषित किया जा सकता है।<ref>{{cite book |last1=Rogers |first1=Paul |last2=Carey |first2=David |title=z/OS Diagnostic Data Collection and Analysis |date=August 2005 |publisher=IBM Corporation |isbn=0738493996 |pages=77–93 |url=http://www.redbooks.ibm.com/redbooks/pdfs/sg247110.pdf |access-date=Jan 29, 2021 |archive-date=December 21, 2018 |archive-url=https://web.archive.org/web/20181221071420/http://www.redbooks.ibm.com/redbooks/pdfs/sg247110.pdf |url-status=live }}</ref>


कुछ ऑपरेटिंग सिस्टम में{{efn|E.g., [[z/OS]]}} एक एप्लिकेशन या ऑपरेटर एप्लिकेशन या ऑपरेटिंग सिस्टम द्वारा उपयोग किए जाने वाले सभी स्टोरेज के बजाय चयनित स्टोरेज ब्लॉक के स्नैपशॉट का अनुरोध कर सकता है।
कुछ ऑपरेटिंग सिस्टम में{{efn|E.g., [[z/OS]]}} एक एप्लिकेशन या ऑपरेटर एप्लिकेशन या ऑपरेटिंग सिस्टम द्वारा उपयोग किए जाने वाले सभी स्टोरेज के अतिरिक्त चयनित स्टोरेज खंड के स्नैपशॉट का अनुरोध किया जा सकता है।


== उपयोग ==
== अनुप्रयोग ==
कोर डंप कई स्थितियों में उपयोगी डिबगिंग एड्स के रूप में काम कर सकता है। शुरुआती स्टैंडअलोन या [[ प्रचय संसाधन ]]|बैच-प्रोसेसिंग सिस्टम पर, कोर डंप ने उपयोगकर्ता को डिबगिंग के लिए (बहुत महंगी) कंप्यूटिंग सुविधा पर एकाधिकार किए बिना एक प्रोग्राम को डीबग करने की अनुमति दी; [[सामने का हिस्सा]] स्विच और लाइट का उपयोग करके डिबगिंग की तुलना में एक प्रिंटआउट अधिक सुविधाजनक हो सकता है।
कोर डंप कई स्थितियों में उपयोगी दोषमार्जन सहाय के रूप में कार्य कर सकता है। प्रारम्भिक स्टैंडअलोन या [[ प्रचय संसाधन |प्रचय संसाधन]] सिस्टम पर, कोर डंप ने उपयोगकर्ता को दोषमार्जन के लिए संगणनीयता सुविधा पर एकाधिकार किए बिना किसी प्रोग्राम को डीबग करने की अनुमति दी; [[सामने का हिस्सा|अग्र फलक]] स्विच और लाइट का उपयोग करके डिबगिंग की तुलना में एक प्रिंटआउट अधिक सुविधाजनक हो सकता है।


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


कोर डंप एक उपयोगकर्ता को बाद में या ऑफ-साइट विश्लेषण या अन्य क्रैश के साथ तुलना के लिए क्रैश को बचाने की अनुमति देता है। [[ अंतः स्थापित प्रणाली ]] के लिए, कंप्यूटर पर ही डिबगिंग का समर्थन करना अव्यावहारिक हो सकता है, इसलिए डंप का विश्लेषण एक अलग कंप्यूटर पर हो सकता है। कुछ ऑपरेटिंग सिस्टम जैसे कि यूनिक्स के शुरुआती संस्करण चल रही प्रक्रियाओं में [[डिबगर]] को जोड़ने का समर्थन नहीं करते थे, इसलिए प्रक्रिया की मेमोरी सामग्री पर डीबगर चलाने के लिए कोर डंप आवश्यक थे।
कोर डंप के द्वारा उपयोगकर्ता किसी क्रैश को बाद में या स्थानांतरित विश्लेषण के लिए सहेज सकते हैं, या उनकी तुलना अन्य क्रैशों के साथ कर सकते हैं। [[ अंतः स्थापित प्रणाली |अंतः स्थापित प्रणालीयों]] के लिए, कंप्यूटर पर संशोधन समर्थन असंभव हो सकता है, इसलिए डंप के विश्लेषण को एक अलग कंप्यूटर पर करना पड़ सकता है। कुछ ऑपरेटिंग सिस्टम जैसे कि यूनिक्स के प्रारम्भिक संस्करण में चल रही प्रक्रियाओं में [[डिबगर]] को संयोजित करने का समर्थन नहीं करते थे, इसलिए प्रक्रिया की मेमोरी सामग्री पर डीबगर चलाने के लिए कोर डंप आवश्यक थे।


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


स्नैप डंप कभी-कभी अनुप्रयोगों के लिए त्वरित और गंदे डिबगिंग आउटपुट रिकॉर्ड करने का एक सुविधाजनक तरीका होता है।
स्नैप डंप कभी-कभी, अनुप्रयोगों के लिए त्वरित और गंदे डिबगिंग निर्गत रिकॉर्ड करने की एक सुविधाजनक विधि होती है।


== विश्लेषण ==
== समीक्षा ==
एक कोर डंप आमतौर पर डंप की गई प्रक्रिया के पता स्थान के डंप किए गए क्षेत्रों की पूरी सामग्री का प्रतिनिधित्व करता है। ऑपरेटिंग सिस्टम के आधार पर, मेमोरी क्षेत्रों की व्याख्या में सहायता के लिए डंप में कुछ या कोई डेटा संरचना नहीं हो सकती है। इन प्रणालियों में, सफल व्याख्या के लिए आवश्यक है कि डंप की व्याख्या करने का प्रयास करने वाला प्रोग्राम या उपयोगकर्ता प्रोग्राम की मेमोरी उपयोग की संरचना को समझे।
एक कोर डंप सामान्यतः डंप की गई प्रक्रिया के पता स्थान के डंप किए गए क्षेत्रों की पूरी सामग्री का प्रतिनिधित्व करता है। ऑपरेटिंग सिस्टम के आधार पर, मेमोरी क्षेत्रों की व्याख्या में सहायता के लिए डंप में कुछ या कोई डेटा संरचना नहीं हो सकती है। इन प्रणालियों में, सफल व्याख्या के लिए आवश्यक है कि डंप की व्याख्या करने का प्रयास करने वाला प्रोग्राम या उपयोगकर्ता प्रोग्राम की मेमोरी उपयोग की संरचना को समझे।


एक डिबगर [[प्रतीक तालिका]] का उपयोग कर सकता है, यदि कोई मौजूद है, प्रोग्रामर को डंप की व्याख्या करने में मदद करने के लिए, प्रतीकात्मक रूप से चर की पहचान करने और स्रोत कोड प्रदर्शित करने के लिए; यदि प्रतीक तालिका उपलब्ध नहीं है, तो डंप की कम व्याख्या संभव है, लेकिन समस्या का कारण निर्धारित करने के लिए अभी भी पर्याप्त संभव हो सकता है। डंप का विश्लेषण करने के लिए [[डंप विश्लेषक]] नामक विशेष प्रयोजन के उपकरण भी हैं। एक लोकप्रिय उपकरण, जो कई ऑपरेटिंग सिस्टम पर उपलब्ध है, GNU बिनुटिल्स का ओब्जडम्प है।
एक डिबगर, [[प्रतीक तालिका]] उपलब्ध है तों इसका उपयोग प्रोग्रामर को डंप की व्याख्या करने में मदद करने के लिए, प्रतीकात्मक रूप से चर की पहचान करने और स्रोत कोड प्रदर्शित करने के लिए किया जा सकता है; यदि प्रतीक तालिका उपलब्ध नहीं है, तो डंप की व्याख्या पर्याप्त रूप से संभव नहीं है, परंतु समस्या का कारण निर्धारित करने के लिए अभी भी है डंप का उपयोग किया जा सकता है। डंप का विश्लेषण करने के लिए [[डंप विश्लेषक]] नामक विशेष प्रयोजन के उपकरण भी हैं। जीएयू बिनुटिल्स का ओब्जडम्प एक ऐसा लोकप्रिय उपकरण है, जो कई ऑपरेटिंग सिस्टम पर उपलब्ध है।


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


लिनक्स सिस्टम से क्रैश डंप के विश्लेषक kdump (Linux) या Linux कर्नेल क्रैश डंप (LKCD) का उपयोग कर सकते हैं।<ref>{{cite book
लिनक्स सिस्टम से क्रैश डंप के विश्लेषक केडम्प या लिनक्स कर्नेल क्रैश डंप का उपयोग कर सकते हैं।<ref>{{cite book
|last= Venkateswaran
|last= Venkateswaran
|first= Sreekrishnan
|first= Sreekrishnan
Line 50: Line 50:
|url-status= live
|url-status= live
}}</ref>
}}</ref>
कोर डंप किसी प्रक्रिया के संदर्भ (स्थिति) को बाद में लौटने के लिए किसी दिए गए राज्य में सहेज सकता है। प्रोसेसर के बीच कोर को स्थानांतरित करके सिस्टम को अत्यधिक उपलब्ध कराया जा सकता है, कभी-कभी स्वयं कोर डंप फ़ाइलों के माध्यम से।


कोर को एक नेटवर्क (जो एक सुरक्षा जोखिम है) पर रिमोट होस्ट पर भी डंप किया जा सकता है।<ref>{{cite book
कोर डंप किसी प्रक्रिया के संदर्भ को बाद में पुनरावर्तित करने के लिए किसी दिए गए स्थिति में सहेज सकता है। कभी-कभी स्वयं कोर डंप फ़ाइलों के माध्यम से प्रोसेसर के बीच कोर को स्थानांतरित करके तंत्र को उपलब्ध कराया जा सकता है, ।
 
कोर को एक नेटवर्क पर दूरस्थ होस्ट पर भी डंप किया जा सकता है।<ref>{{cite book
|author= Fedora Documentation Project
|author= Fedora Documentation Project
|title= Fedora 13 Security Guide
|title= Fedora 13 Security Guide
Line 66: Line 67:
|url-status= live
|url-status= live
}}</ref>
}}</ref>




Line 72: Line 74:
=== प्रारूप ===
=== प्रारूप ===


पुराने और सरल ऑपरेटिंग सिस्टम में, प्रत्येक प्रक्रिया में एक सन्निहित पता-स्थान होता था, इसलिए डंप फ़ाइल कभी-कभी बाइट्स, अंकों, अंकों के अनुक्रम वाली एक फ़ाइल होती थी।{{efn|name=decimal|Some older machines were [[Decimal computer|decimal]].}} पात्र{{efn|name=decimal}} या शब्द। अन्य शुरुआती मशीनों पर एक डंप फ़ाइल में असतत रिकॉर्ड होते थे, प्रत्येक में भंडारण का पता और संबंधित सामग्री होती थी। शुरुआती मशीनों पर, डंप अक्सर एप्लिकेशन या ऑपरेटिंग सिस्टम के बजाय स्टैंड-अलोन डंप प्रोग्राम द्वारा लिखा जाता था।
पुराने और सरल ऑपरेटिंग सिस्टम में, प्रत्येक प्रक्रिया में एक सन्निहित पता-स्थान होता था, इसलिए डंप फ़ाइल कभी-कभी बाइट्स, अंकों, अंकों के अनुक्रम वाली एक फ़ाइल होती थी।{{efn|name=decimal|Some older machines were [[Decimal computer|decimal]].}} अन्य प्रारम्भिक यंत्रों पर किसी डंप फ़ाइल में असतत रिकॉर्ड होते थे, प्रत्येक में भंडारण का पता और संबंधित सामग्री होती थी। प्रारम्भिक मशीनों पर, डंप प्रायः एप्लिकेशन या ऑपरेटिंग सिस्टम के अतिरिक्त स्टैंड-अलोन डंप प्रोग्राम द्वारा लिखा जाता था।
 
IBM सिस्टम/360 पर, मानक ऑपरेटिंग सिस्टम ने स्वरूपित अबेन्ड और स्नैप डंप, पते, रजिस्टर, भंडारण सामग्री आदि के साथ, सभी प्रिंट करने योग्य रूपों में परिवर्तित हो गए। बाद में रिलीज ने अप्रारूपित डंप, जिसे उस समय कोर इमेज डंप कहा जाता था लिखने की क्षमता को संयोजित किया{{efn|In the sense that the records were binary rather than formatted for printing.}}।


<!-- I doubt that this was first; please add older examples if you know of any. --> IBM सिस्टम/360 पर, मानक ऑपरेटिंग सिस्टम ने स्वरूपित ABEND और SNAP डंप लिखे, पते, रजिस्टर, भंडारण सामग्री आदि के साथ, सभी प्रिंट करने योग्य रूपों में परिवर्तित हो गए। बाद में रिलीज ने बिना प्रारूपित लिखने की क्षमता को जोड़ा{{efn|In the sense that the records were binary rather than formatted for printing.}} डंप, जिसे उस समय कोर इमेज डंप कहा जाता था।
आधुनिक ऑपरेटिंग सिस्टम में, एक प्रोसेस पता स्थान में अंतराल हो सकते हैं, और यह अन्य प्रक्रियाओं या फाइलों के साथ पृष्ठ सहभाजित कर सकता है, इसलिए अधिक विस्तृत प्रतिनिधित्व का उपयोग किया जाता है; वे डंप के समय कार्यक्रम की स्थिति के बारे में अन्य जानकारी भी सम्मिलित कर सकते हैं।
आधुनिक ऑपरेटिंग सिस्टम में, एक प्रोसेस एड्रेस स्पेस में अंतराल हो सकते हैं, और यह अन्य प्रक्रियाओं या फाइलों के साथ पेज साझा कर सकता है, इसलिए अधिक विस्तृत प्रतिनिधित्व का उपयोग किया जाता है; वे डंप के समय कार्यक्रम की स्थिति के बारे में अन्य जानकारी भी शामिल कर सकते हैं।


यूनिक्स जैसी प्रणालियों में, कोर डंप आम तौर पर मानक [[निष्पादन]] योग्य छवि-फ़ाइल प्रारूप का उपयोग करते हैं:
यूनिक्स जैसी प्रणालियों में, कोर डंप सामान्यतः मानक [[निष्पादन]] योग्य छवि-फ़ाइल प्रारूप का उपयोग करते हैं:
* a.out यूनिक्स के पुराने संस्करणों में,
* a.out यूनिक्स के पुराने संस्करणों में,
* आधुनिक लिनक्स, [[ यूनिक्स प्रणाली वी ]], [[सोलारिस (ऑपरेटिंग सिस्टम)]], और [[बीएसडी]] सिस्टम में [[निष्पादन योग्य और लिंक करने योग्य प्रारूप]],
* आधुनिक लिनक्स, [[ यूनिक्स प्रणाली वी | यूनिक्स प्रणाली]], [[सोलारिस (ऑपरेटिंग सिस्टम)|सोलारिस]], और [[बीएसडी]] सिस्टम में [[निष्पादन योग्य और लिंक करने योग्य प्रारूप]],
* MacOS में [[Mach-O]], आदि।
* मैक ओएस में मैक-, आदि।


=== {{Anchor|VMCORE}}हम ===
=== नामकरण ===


==== OS/360 और उत्तराधिकारी ====
==== OS/360 तथा परवर्ती ओएस ====
* OS/360 और उत्तराधिकारियों में, एक कार्य मनमाना डेटा सेट नाम (DSNs) ddnames को असाइन कर सकता है <code>SYSABEND</code> और <code>SYSUDUMP</code> स्वरूपित ABEND डंप के लिए और SNAP डंप के लिए स्वैच्छिक ddnames के लिए, या उन ddnames को SYSOUT के रूप में परिभाषित करें।{{efn|SYStem OUTput files (SYSOUT) files are temporary files owned by the [[Spooling|SPOOL]] software.}}
* OS/360 और उसके उत्तरदाताओं में, कोई कार्य <code>SYSABEND</code> और <code>SYSUDUMP</code> के लिए संरूपित एबेंड डंप के लिए अनिश्चित डेटा समुच्चय नाम का उपयोग कर सकता है और स्नैप डंप के लिए अनिश्चित ddnames को SYSOUT के रूप में परिभाषित कर सकता है।{{efn|SYStem OUTput files (SYSOUT) files are temporary files owned by the [[Spooling|SPOOL]] software.}}
* डैमेज असेसमेंट एंड रिपेयर (DAR) सुविधा ने एक स्वचालित असंरूपित जोड़ा{{efn|IBM provided tools for extracting and formatting data from an unformatted dump; those tools{{efn|Initially the batch utility IMDPRDMP; currently the TSO command and [[ISPF]] panel repertoire for Interactive Problem Control System (IPCS).}} often made it easier to deal with an unformatted dump than even a small formatted dump.}} डेटासेट में डंप करें <code>SYS1.DUMP</code>{{efn|Since then, IBM added the ability to have up to a hundred dump datasets named <code>SYS1.DUMPnn</code> (nn from 00 to 99). [[z/OS]] supports multiple system dump data sets with arbitrary dsname patterns under installation and operator<ref>{{cite manual
* डैमेज असेसमेंट एवं रिपेयर (DAR) सुविधा ने विफलता के समय डेटासेट <code>SYS1.DUMP</code>{{efn|Since then, IBM added the ability to have up to a hundred dump datasets named <code>SYS1.DUMPnn</code> (nn from 00 to 99). [[z/OS]] supports multiple system dump data sets with arbitrary dsname patterns under installation and operator<ref>{{cite manual
  | title      = z/OS 2.5 MVS System Commands
  | title      = z/OS 2.5 MVS System Commands
  | id          = SA38-0666-50
  | id          = SA38-0666-50
Line 97: Line 99:
  | access-date = April 6, 2022
  | access-date = April 6, 2022
  }}
  }}
</ref> control.}} विफलता के साथ-साथ ऑपरेटर द्वारा अनुरोधित कंसोल डंप के समय।
</ref> control.}} में स्वचालित रूप से असंरूपित डंप को जोड़ा, जिसे संचालक द्वारा अनुरोधित कंसोल डंप के साथ समाकलित किया गया।{{efn|IBM provided tools for extracting and formatting data from an unformatted dump; those tools{{efn|Initially the batch utility IMDPRDMP; currently the TSO command and [[ISPF]] panel repertoire for Interactive Problem Control System (IPCS).}} often made it easier to deal with an unformatted dump than even a small formatted dump.}}
* नया लेन-देन डंप पुराने प्रकार के डंप के समान है।
* नए ट्रांजैक्शन डंप पुराने प्रकार के डंप के समान है।


==== यूनिक्स की तरह ====
==== यूनिक्स के समान ऑस ====
* सोलारिस 8 के बाद से, सिस्टम उपयोगिता <code>coreadm</code> कोर फाइलों के नाम और स्थान को कॉन्फ़िगर करने की अनुमति देता है।
* सोलारिस 8 के बाद से, सिस्टम उपयोगिता <code>coreadm</code> कोर फाइलों के नाम और स्थान को कॉन्फ़िगर करने की अनुमति देता है।
* उपयोगकर्ता प्रक्रियाओं के डंप पारंपरिक रूप से बनाए जाते हैं <code>core</code>. लिनक्स पर ([[लिनक्स कर्नेल मेनलाइन]] के संस्करण 2.4.21 और 2.6 के बाद से), [[procfs]] के माध्यम से एक अलग नाम निर्दिष्ट किया जा सकता है <code>/proc/sys/kernel/core_pattern</code> विन्यास फाइल; निर्दिष्ट नाम एक टेम्प्लेट भी हो सकता है जिसमें टैग्स को प्रतिस्थापित किया जाता है, उदाहरण के लिए, निष्पादन योग्य फ़ाइल नाम, प्रक्रिया आईडी, या डंप का कारण।<ref>{{cite web
* उपयोगकर्ता <code>core</code> प्रक्रियाओं के डंप, पारंपरिक रूप से बनाए जाते हैं। लिनक्स पर (लिनक्स कर्नल मेनलाइन के 2.4.21 और 2.6 संस्करण से), <code>/proc/sys/kernel/core_pattern</code> विन्यास फ़ाइल का उपयोग करके procfs के माध्यम से एक अलग नाम निर्दिष्ट किया जा सकता है; निर्दिष्ट नाम टेम्पलेट भी हो सकता है जिसमें टैग सम्मिलित होते हैं जो उदाहरण के लिए एक्जीक्यूटेबल फ़ाइल का नाम, प्रोसेस आईडी या डंप के कारण द्वारा प्रतिस्थापित किए जाते हैं। <ref>{{cite web
  | url = http://man7.org/linux/man-pages/man5/core.5.html
  | url = http://man7.org/linux/man-pages/man5/core.5.html
  | title = core(5) – Linux manual page
  | title = core(5) – Linux manual page
Line 112: Line 114:
  | url-status = live
  | url-status = live
  }}</ref>
  }}</ref>
* आधुनिक यूनिक्स जैसी प्रणालियों पर सिस्टम-वाइड डंप अक्सर दिखाई देते हैं <code>vmcore</code> या <code>vmcore.incomplete</code>.
* आधुनिक यूनिक्स जैसी प्रणालियों पर सिस्टम-वाइड डंप <code>vmcore</code> या <code>vmcore.incomplete</code>.प्रायः दिखाई देते हैं


==== अन्य ====
==== अन्य ====
* [[Microsoft Windows]] जैसे सिस्टम, जो [[फ़ाइल नाम एक्सटेंशन]] का उपयोग करते हैं, एक्सटेंशन का उपयोग कर सकते हैं <code>.dmp</code>; उदाहरण के लिए, कोर डंप का नाम दिया जा सकता है <code>memory.dmp</code> या <code>\Minidump\Mini051509-01.dmp</code>.
* माइक्रोसॉफ्ट विंडोज़ जैसे सिस्टम, जो [[फ़ाइल नाम एक्सटेंशन]] का उपयोग करते हैं, <code>.dmp</code> एक्सटेंशन का उपयोग कर सकते हैं ; उदाहरण के लिए, <code>memory.dmp</code> या <code>\Minidump\Mini051509-01.dmp</code> को कोर डंप का नाम दिया जा सकता है


=== विंडोज मेमोरी डंप ===
=== विंडोज मेमोरी डंप ===
Microsoft Windows नीचे वर्णित दो मेमोरी डंप स्वरूपों का समर्थन करता है।
माइक्रोसॉफ्ट विंडोज़ नीचे वर्णित दो मेमोरी डंप स्वरूपों का समर्थन करता है।


==== कर्नेल-मोड डंप ====
==== कर्नेल-डंप विधा ====
{{Main article|Blue Screen of Death}}
{{Main article|नीला स्क्रीन}}


पाँच प्रकार के कर्नेल-मोड डंप हैं:<ref>{{cite web|url=https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/varieties-of-kernel-mode-dump-files|title=कर्नेल-मोड डंप फ़ाइलों की किस्में|publisher=Microsoft|access-date=22 February 2018|archive-date=22 February 2018|archive-url=https://web.archive.org/web/20180222165040/https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/varieties-of-kernel-mode-dump-files|url-status=live}}</ref>
पाँच प्रकार के कर्नेल-डंप विधाए हैं:<ref>{{cite web|url=https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/varieties-of-kernel-mode-dump-files|title=कर्नेल-मोड डंप फ़ाइलों की किस्में|publisher=Microsoft|access-date=22 February 2018|archive-date=22 February 2018|archive-url=https://web.archive.org/web/20180222165040/https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/varieties-of-kernel-mode-dump-files|url-status=live}}</ref>
* पूरी मेमोरी डंप{{snd}} लक्ष्य प्रणाली के लिए पूर्ण भौतिक मेमोरी समाहित करता है।
* पूरी मेमोरी डंप{{snd}} लक्ष्य प्रणाली के लिए पूर्ण भौतिक मेमोरी समाहित करता है।
* कर्नेल मेमोरी डंप{{snd}} क्रैश के समय कर्नेल द्वारा उपयोग की जाने वाली सभी मेमोरी समाहित करता है।
* कर्नेल मेमोरी डंप{{snd}} क्रैश के समय कर्नेल द्वारा उपयोग की जाने वाली सभी मेमोरी समाहित करता है।
* छोटी मेमोरी डंप{{snd}} में स्टॉप कोड, पैरामीटर्स, लोडेड डिवाइस ड्राइवरों की सूची आदि जैसी विभिन्न जानकारी होती है।
* छोटी मेमोरी डंप{{snd}} में स्टॉप कोड, क्षेत्र, भारित उपकरण ड्राइवरों की सूची आदि जैसी विभिन्न जानकारी होती है।
* स्वचालित मेमोरी डंप (विंडोज 8 और बाद में){{snd}} कर्नेल मेमोरी डंप के समान, लेकिन यदि पेजिंग #PAGEFILE-SYS सिस्टम प्रबंधित और कर्नेल मेमोरी डंप को कैप्चर करने के लिए बहुत छोटा है, तो यह स्वचालित रूप से पेजिंग फ़ाइल को कम से कम चार सप्ताह के लिए रैम के आकार में बढ़ा देगा, फिर इसे कम करें छोटे आकार के लिए।<ref>{{Cite web|url=https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/automatic-memory-dump|title=स्वचालित मेमोरी डंप|date=28 November 2017|publisher=Microsoft|language=en-us|access-date=16 March 2018|archive-date=17 March 2018|archive-url=https://web.archive.org/web/20180317102216/https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/automatic-memory-dump|url-status=live}}</ref>
* स्वचालित मेमोरी डंप (विंडोज 8 और बाद में){{snd}} कर्नेल मेमोरी डंप के समान, परंतु यदि पेजिंग प्रणाली प्रबंधित और कर्नेल मेमोरी डंप को कैप्चर करने के लिए अत्यधिक सूक्ष्म है, तो यह स्वचालित रूप से पेजिंग फ़ाइल को कम से कम चार सप्ताह के लिए रैम के आकार में बढ़ा देगा, फिर इसे छोटे आकार के लिए समाकलित किया जा सकता है।<ref>{{Cite web|url=https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/automatic-memory-dump|title=स्वचालित मेमोरी डंप|date=28 November 2017|publisher=Microsoft|language=en-us|access-date=16 March 2018|archive-date=17 March 2018|archive-url=https://web.archive.org/web/20180317102216/https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/automatic-memory-dump|url-status=live}}</ref>
* सक्रिय मेमोरी डंप (Windows 10 और बाद में){{snd}} कर्नेल और उपयोगकर्ता मोड अनुप्रयोगों द्वारा उपयोग की जाने वाली अधिकांश मेमोरी शामिल है।
* सक्रिय मेमोरी डंप (विंडोज 10 और बाद में){{snd}} कर्नेल और उपयोगकर्ता मोड अनुप्रयोगों द्वारा उपयोग की जाने वाली अधिकांश मेमोरी सम्मिलित है।
विंडोज कर्नेल-मोड डंप का विश्लेषण करने के लिए WinDbg का उपयोग किया जाता है।<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/hardware/dn745912(v=vs.85).aspx|title=WinDbg (कर्नेल-मोड) के साथ प्रारंभ करना|access-date=30 September 2014|archive-date=14 March 2016|archive-url=https://web.archive.org/web/20160314141124/https://msdn.microsoft.com/en-us/library/windows/hardware/dn745912(v=vs.85).aspx|url-status=live}}</ref>
विंडोज कर्नेल-मोड डंप का विश्लेषण करने के लिए WinDbg का उपयोग किया जाता है।<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/hardware/dn745912(v=vs.85).aspx|title=WinDbg (कर्नेल-मोड) के साथ प्रारंभ करना|access-date=30 September 2014|archive-date=14 March 2016|archive-url=https://web.archive.org/web/20160314141124/https://msdn.microsoft.com/en-us/library/windows/hardware/dn745912(v=vs.85).aspx|url-status=live}}</ref>




==== {{Anchor|MINIDUMP}}उपयोगकर्ता-मोड मेमोरी डंप ====
==== उपयोगकर्ता-मेमोरी डंप विधा ====
उपयोगकर्ता-मोड मेमोरी डंप, जिसे मिनीडम्प भी कहा जाता है,<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/desktop/ms680369(v=vs.85).aspx|title=मिनीडम्प फ़ाइलें|access-date=30 September 2014|archive-date=27 October 2014|archive-url=https://web.archive.org/web/20141027044054/http://msdn.microsoft.com/en-us/library/windows/desktop/ms680369(v=vs.85).aspx|url-status=live}}</ref> एकल प्रक्रिया का मेमोरी डंप है। इसमें चयनित डेटा रिकॉर्ड शामिल हैं: पूर्ण या आंशिक (फ़िल्टर्ड) प्रक्रिया मेमोरी; उनके [[कॉल स्टैक]] और स्थिति के साथ [[थ्रेड (कंप्यूटिंग)]] की सूची (जैसे प्रोसेसर रजिस्टर या [[Win32 थ्रेड सूचना ब्लॉक]]); कर्नेल ऑब्जेक्ट्स को [[हैंडल (कंप्यूटिंग)]] के बारे में जानकारी; लोडेड और अनलोडेड [[डायनामिक-लिंक लाइब्रेरी]] की सूची। में उपलब्ध विकल्पों की पूरी सूची <code>MINIDUMP_TYPE</code> एनुम।<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/desktop/ms680519(v=vs.85).aspx|title=MINIDUMP_TYPE enumeration|access-date=30 September 2014|archive-date=11 January 2015|archive-url=https://web.archive.org/web/20150111022428/http://msdn.microsoft.com/en-us/library/windows/desktop/ms680519(v=vs.85).aspx|url-status=live}}</ref>
उपयोगकर्ता-विधा मेमोरी डंप, जिसे मिनीडम्प भी कहा जाता है,<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/desktop/ms680369(v=vs.85).aspx|title=मिनीडम्प फ़ाइलें|access-date=30 September 2014|archive-date=27 October 2014|archive-url=https://web.archive.org/web/20141027044054/http://msdn.microsoft.com/en-us/library/windows/desktop/ms680369(v=vs.85).aspx|url-status=live}}</ref> एकल प्रक्रिया का मेमोरी डंप है। इसमें चयनित डेटा रिकॉर्ड जैसे पूर्ण या आंशिक प्रक्रिया मेमोरी; उनके [[कॉल स्टैक]] और स्थिति के साथ [[थ्रेड (कंप्यूटिंग)|थ्रेड]] की सूची; कर्नेल ऑब्जेक्ट्स को [[हैंडल (कंप्यूटिंग)|हैंडल]] के बारे में जानकारी; भारित और अभारित [[डायनामिक-लिंक लाइब्रेरी|लिंक लाइब्रेरी]] <code>MINIDUMP_TYPE</code>में उपलब्ध विकल्पों की सूची सम्मिलित हैं।<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/desktop/ms680519(v=vs.85).aspx|title=MINIDUMP_TYPE enumeration|access-date=30 September 2014|archive-date=11 January 2015|archive-url=https://web.archive.org/web/20150111022428/http://msdn.microsoft.com/en-us/library/windows/desktop/ms680519(v=vs.85).aspx|url-status=live}}</ref>




== अंतरिक्ष मिशन ==
== अंतरिक्ष अभियान ==
डीप स्पेस सेगमेंट में नियमित रूप से कोर डंप सुविधा का उपयोग करने के लिए [[नासा]] वोयाजर कार्यक्रम संभवतः पहला शिल्प था। डीप स्पेस सेगमेंट के लिए कोर डंप फीचर एक अनिवार्य टेलीमेट्री फीचर है क्योंकि यह सिस्टम डायग्नोस्टिक कॉस्ट को कम करने के लिए सिद्ध हो चुका है{{citation needed|date=October 2016}}. वायेजर शिल्प ब्रह्मांडीय किरण घटनाओं से स्मृति क्षति का पता लगाने के लिए नियमित कोर डंप का उपयोग करता है।
डीप स्पेस सेगमेंट में नियमित रूप से कोर डंप सुविधा का उपयोग करने के लिए [[नासा]] वोयाजर कार्यक्रम संभवतः पहला अभियान था। डीप स्पेस सेगमेंट के लिए कोर डंप गुण एक अनिवार्य दूरमिति गुण है क्योंकि यह प्रणाली नैदानिक मूल्य को कम करने के लिए जाना जाता है. वायेजर कार्यक्रम ब्रह्मांडीय किरण घटनाओं से स्मृति क्षति का पता लगाने के लिए नियमित कोर डंप का उपयोग करता है।


स्पेस मिशन कोर डंप सिस्टम ज्यादातर लक्षित सीपीयू या सबसिस्टम के लिए मौजूदा टूलकिट पर आधारित होते हैं। हालांकि, किसी मिशन की अवधि के दौरान कोर डंप सबसिस्टम को मिशन की विशिष्ट आवश्यकताओं के लिए पर्याप्त रूप से संशोधित या बढ़ाया जा सकता है।
स्पेस मिशन कोर डंप प्रणाली अधिकतर लक्षित सीपीयू या सबसिस्टम के लिए उपलब्ध उपकरणों पर आधारित होते हैं। यद्यपि, किसी अभियान की अवधि के समय कोर डंप सबसिस्टम को अभियान की विशिष्ट आवश्यकताओं के लिए पर्याप्त रूप से संशोधित या प्रवर्धित किया जा सकता है।


== यह भी देखें ==
== यह भी देखें ==
Line 145: Line 147:
* हेक्स डंप
* हेक्स डंप
* [[फाइल कॉपी करना]]
* [[फाइल कॉपी करना]]
<!--
 
== Notes ==
{{Reflist|group=NB}}
-->




Line 179: Line 178:
[[Category: Machine Translated Page]]
[[Category: Machine Translated Page]]
[[Category:Created On 26/04/2023]]
[[Category:Created On 26/04/2023]]
[[Category:Vigyan Ready]]

Latest revision as of 07:55, 31 October 2023

संगणनीयता में, कोर डंप, मेमोरी डंप, क्रैश डंप, स्टोरेज डंप, सिस्टम डंप या एबेंड डंप किसी ऐसे निश्चित समय पर कंप्यूटर प्रोग्राम की कार्य करने वाली मेमोरी की अभिलेखित स्थिति से मिलकर बना होता है, जब प्रोग्राम सामान्यतः अनुपयुक्त रूप से बंद या क्रैश हो जाता है।[1][2] व्यवहार में, संदर्भ स्विच के साथ-साथ प्रोसेसर रजिस्टर के अन्य प्रमुख भाग सामान्यतः एक ही समय में डंप कर दिए जाते हैं, जिसमें प्रोग्राम गणक और स्टेक सूचक, मेमोरी प्रबंधन जानकारी, अन्य प्रोसेसर, ऑपरेटिंग सिस्टम फ़्लैग और अन्य जानकारियाँ सम्मिलित हो सकती है। स्नैपशॉट डंप या स्नैप डंप एक मेमोरी डंप है जिसे कंप्यूटर ऑपरेटर या चल रहे प्रोग्राम द्वारा अनुरोध किया जाता है, जिसके बाद प्रोग्राम जारी रहने में सक्षम होता है। कंप्यूटर प्रोग्राम में त्रुटियों के निदान और डिबगिंग में सहायता के लिए प्रायः कोर डंप का उपयोग किया जाता है।

कई ऑपरेटिंग सिस्टम पर, प्रोग्राम में फैटल अपवाद स्वचालित रूप से कोर डंप को प्रवर्धित करता है। विस्तृत रूप से कहें तों, अत्यधिक स्तिथियों में, अब "कोर-डम्प" शब्दावली का उपयोग किसी भी विशिष्ट त्रुटि के लिए किया जाना प्रारंभ हो गया है। आगे की परीक्षा या अन्य उद्देश्यों के लिए बड़ी मात्रा में कच्चे डेटा के किसी भी आउटपुट को इंगित करने के लिए कोर डंप, मेमोरी डंप, या मात्र डंप शब्द का प्रयोग होता है।[3][4]


पृष्ठभूमि

यह नाम चुंबकीय-कोर मेमोरी से आता है,[5] जो 1950 से 1970 के दशक तक रैंडम एक्सेस मेमोरी का प्रमुख रूप था। चुंबकीय-कोर तकनीक के अप्रचलित होने के उपरांत यह नाम लंबे समय तक प्रयोग में बना रहा।

प्रारम्भिक कोर डंप, पेपर प्रिंटआउट थे[6] जो मेमोरी की सामग्री को सामान्यतः अष्टभुजाकार या हेक्साडेसिमल संख्या के खंडों में व्यवस्थित होती थी, कभी-कभी यंत्र भाषा निर्देश, टेक्स्ट स्ट्रिंग्स, या दशमलव या फ़्लोटिंग-पॉइंट नंबर के रूप में उनकी व्याख्या की जाती है।

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

केवल लागू मेमोरी की सामग्री को प्रदर्शित करने के अतिरिक्त, आधुनिक ऑपरेटिंग सिस्टम सामान्यतः क्रैश प्रक्रिया से संबंधित मेमोरी की छवि वाली फ़ाइल या उस प्रक्रिया से संबंधित पता स्थान के भागों की मेमोरी छवियों के साथ-साथ अन्य जानकारी उत्पन्न करते हैं। क्रैश के मूल कारण को निर्धारित करने में उपयोगी प्रोसेसर रजिस्टरों, प्रोग्राम काउंटर, सिस्टम फ्लैग और अन्य जानकारी के मूल्यों के रूप में इन्हे संदर्भित किया जाता है। इन फ़ाइलों को पाठ के रूप में या यूनिक्स पर एल्फडम्प और यूनिक्स जैसी प्रणालियों, लिनक्स पर और केडम्प (लिनक्स), आईबीएम जेड/ओएस पर आईपीसीएस जैसे विशेष उपकरणों के साथ विश्लेषित किया जा सकता है।[7]

कुछ ऑपरेटिंग सिस्टम में[lower-alpha 1] एक एप्लिकेशन या ऑपरेटर एप्लिकेशन या ऑपरेटिंग सिस्टम द्वारा उपयोग किए जाने वाले सभी स्टोरेज के अतिरिक्त चयनित स्टोरेज खंड के स्नैपशॉट का अनुरोध किया जा सकता है।

अनुप्रयोग

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

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

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

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

स्नैप डंप कभी-कभी, अनुप्रयोगों के लिए त्वरित और गंदे डिबगिंग निर्गत रिकॉर्ड करने की एक सुविधाजनक विधि होती है।

समीक्षा

एक कोर डंप सामान्यतः डंप की गई प्रक्रिया के पता स्थान के डंप किए गए क्षेत्रों की पूरी सामग्री का प्रतिनिधित्व करता है। ऑपरेटिंग सिस्टम के आधार पर, मेमोरी क्षेत्रों की व्याख्या में सहायता के लिए डंप में कुछ या कोई डेटा संरचना नहीं हो सकती है। इन प्रणालियों में, सफल व्याख्या के लिए आवश्यक है कि डंप की व्याख्या करने का प्रयास करने वाला प्रोग्राम या उपयोगकर्ता प्रोग्राम की मेमोरी उपयोग की संरचना को समझे।

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

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

लिनक्स सिस्टम से क्रैश डंप के विश्लेषक केडम्प या लिनक्स कर्नेल क्रैश डंप का उपयोग कर सकते हैं।[8]

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

कोर को एक नेटवर्क पर दूरस्थ होस्ट पर भी डंप किया जा सकता है।[9]


कोर-डंप फ़ाइलें

प्रारूप

पुराने और सरल ऑपरेटिंग सिस्टम में, प्रत्येक प्रक्रिया में एक सन्निहित पता-स्थान होता था, इसलिए डंप फ़ाइल कभी-कभी बाइट्स, अंकों, अंकों के अनुक्रम वाली एक फ़ाइल होती थी।[lower-alpha 2] अन्य प्रारम्भिक यंत्रों पर किसी डंप फ़ाइल में असतत रिकॉर्ड होते थे, प्रत्येक में भंडारण का पता और संबंधित सामग्री होती थी। प्रारम्भिक मशीनों पर, डंप प्रायः एप्लिकेशन या ऑपरेटिंग सिस्टम के अतिरिक्त स्टैंड-अलोन डंप प्रोग्राम द्वारा लिखा जाता था।

IBM सिस्टम/360 पर, मानक ऑपरेटिंग सिस्टम ने स्वरूपित अबेन्ड और स्नैप डंप, पते, रजिस्टर, भंडारण सामग्री आदि के साथ, सभी प्रिंट करने योग्य रूपों में परिवर्तित हो गए। बाद में रिलीज ने अप्रारूपित डंप, जिसे उस समय कोर इमेज डंप कहा जाता था लिखने की क्षमता को संयोजित किया[lower-alpha 3]

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

यूनिक्स जैसी प्रणालियों में, कोर डंप सामान्यतः मानक निष्पादन योग्य छवि-फ़ाइल प्रारूप का उपयोग करते हैं:

नामकरण

OS/360 तथा परवर्ती ओएस

  • OS/360 और उसके उत्तरदाताओं में, कोई कार्य SYSABEND और SYSUDUMP के लिए संरूपित एबेंड डंप के लिए अनिश्चित डेटा समुच्चय नाम का उपयोग कर सकता है और स्नैप डंप के लिए अनिश्चित ddnames को SYSOUT के रूप में परिभाषित कर सकता है।[lower-alpha 4]
  • डैमेज असेसमेंट एवं रिपेयर (DAR) सुविधा ने विफलता के समय डेटासेट SYS1.DUMP[lower-alpha 5] में स्वचालित रूप से असंरूपित डंप को जोड़ा, जिसे संचालक द्वारा अनुरोधित कंसोल डंप के साथ समाकलित किया गया।[lower-alpha 7]
  • नए ट्रांजैक्शन डंप पुराने प्रकार के डंप के समान है।

यूनिक्स के समान ऑस

  • सोलारिस 8 के बाद से, सिस्टम उपयोगिता coreadm कोर फाइलों के नाम और स्थान को कॉन्फ़िगर करने की अनुमति देता है।
  • उपयोगकर्ता core प्रक्रियाओं के डंप, पारंपरिक रूप से बनाए जाते हैं। लिनक्स पर (लिनक्स कर्नल मेनलाइन के 2.4.21 और 2.6 संस्करण से), /proc/sys/kernel/core_pattern विन्यास फ़ाइल का उपयोग करके procfs के माध्यम से एक अलग नाम निर्दिष्ट किया जा सकता है; निर्दिष्ट नाम टेम्पलेट भी हो सकता है जिसमें टैग सम्मिलित होते हैं जो उदाहरण के लिए एक्जीक्यूटेबल फ़ाइल का नाम, प्रोसेस आईडी या डंप के कारण द्वारा प्रतिस्थापित किए जाते हैं। [11]
  • आधुनिक यूनिक्स जैसी प्रणालियों पर सिस्टम-वाइड डंप vmcore या vmcore.incomplete.प्रायः दिखाई देते हैं

अन्य

  • माइक्रोसॉफ्ट विंडोज़ जैसे सिस्टम, जो फ़ाइल नाम एक्सटेंशन का उपयोग करते हैं, .dmp एक्सटेंशन का उपयोग कर सकते हैं ; उदाहरण के लिए, memory.dmp या \Minidump\Mini051509-01.dmp को कोर डंप का नाम दिया जा सकता है

विंडोज मेमोरी डंप

माइक्रोसॉफ्ट विंडोज़ नीचे वर्णित दो मेमोरी डंप स्वरूपों का समर्थन करता है।

कर्नेल-डंप विधा

पाँच प्रकार के कर्नेल-डंप विधाए हैं:[12]

  • पूरी मेमोरी डंप – लक्ष्य प्रणाली के लिए पूर्ण भौतिक मेमोरी समाहित करता है।
  • कर्नेल मेमोरी डंप – क्रैश के समय कर्नेल द्वारा उपयोग की जाने वाली सभी मेमोरी समाहित करता है।
  • छोटी मेमोरी डंप – में स्टॉप कोड, क्षेत्र, भारित उपकरण ड्राइवरों की सूची आदि जैसी विभिन्न जानकारी होती है।
  • स्वचालित मेमोरी डंप (विंडोज 8 और बाद में) – कर्नेल मेमोरी डंप के समान, परंतु यदि पेजिंग प्रणाली प्रबंधित और कर्नेल मेमोरी डंप को कैप्चर करने के लिए अत्यधिक सूक्ष्म है, तो यह स्वचालित रूप से पेजिंग फ़ाइल को कम से कम चार सप्ताह के लिए रैम के आकार में बढ़ा देगा, फिर इसे छोटे आकार के लिए समाकलित किया जा सकता है।[13]
  • सक्रिय मेमोरी डंप (विंडोज 10 और बाद में) – कर्नेल और उपयोगकर्ता मोड अनुप्रयोगों द्वारा उपयोग की जाने वाली अधिकांश मेमोरी सम्मिलित है।

विंडोज कर्नेल-मोड डंप का विश्लेषण करने के लिए WinDbg का उपयोग किया जाता है।[14]


उपयोगकर्ता-मेमोरी डंप विधा

उपयोगकर्ता-विधा मेमोरी डंप, जिसे मिनीडम्प भी कहा जाता है,[15] एकल प्रक्रिया का मेमोरी डंप है। इसमें चयनित डेटा रिकॉर्ड जैसे पूर्ण या आंशिक प्रक्रिया मेमोरी; उनके कॉल स्टैक और स्थिति के साथ थ्रेड की सूची; कर्नेल ऑब्जेक्ट्स को हैंडल के बारे में जानकारी; भारित और अभारित लिंक लाइब्रेरी MINIDUMP_TYPEमें उपलब्ध विकल्पों की सूची सम्मिलित हैं।[16]


अंतरिक्ष अभियान

डीप स्पेस सेगमेंट में नियमित रूप से कोर डंप सुविधा का उपयोग करने के लिए नासा वोयाजर कार्यक्रम संभवतः पहला अभियान था। डीप स्पेस सेगमेंट के लिए कोर डंप गुण एक अनिवार्य दूरमिति गुण है क्योंकि यह प्रणाली नैदानिक मूल्य को कम करने के लिए जाना जाता है. वायेजर कार्यक्रम ब्रह्मांडीय किरण घटनाओं से स्मृति क्षति का पता लगाने के लिए नियमित कोर डंप का उपयोग करता है।

स्पेस मिशन कोर डंप प्रणाली अधिकतर लक्षित सीपीयू या सबसिस्टम के लिए उपलब्ध उपकरणों पर आधारित होते हैं। यद्यपि, किसी अभियान की अवधि के समय कोर डंप सबसिस्टम को अभियान की विशिष्ट आवश्यकताओं के लिए पर्याप्त रूप से संशोधित या प्रवर्धित किया जा सकता है।

यह भी देखें


संदर्भ

  1. "AIX 7.1 information".[permanent dead link]
  2. core(4): Process core file – Solaris 10 File Formats Reference Manual
  3. Cory Janssen. "What is a Database Dump? - Definition from Techopedia". Techopedia.com. Archived from the original on 20 August 2015. Retrieved 29 June 2015.
  4. "पूर्ण मेमोरी डंप कैप्चर करने के लिए कंप्यूटर को कैसे कॉन्फ़िगर करें". sophos.com. 12 July 2010. Archived from the original on 1 July 2015. Retrieved 29 June 2015.
  5. Oxford English Dictionary, s.v. 'core'
  6. "भंडारण डंप परिभाषा". Archived from the original on 2013-05-11. Retrieved 2013-04-03.
  7. Rogers, Paul; Carey, David (August 2005). z/OS Diagnostic Data Collection and Analysis (PDF). IBM Corporation. pp. 77–93. ISBN 0738493996. Archived (PDF) from the original on December 21, 2018. Retrieved Jan 29, 2021.
  8. Venkateswaran, Sreekrishnan (2008). Essential Linux device drivers. Prentice Hall open source software development series. Prentice Hall. p. 623. ISBN 978-0-13-239655-4. Archived from the original on 2014-06-26. Retrieved 2010-07-15. Until the advent of kdump, Linux Kernel Crash Dump (LKCD) was the popular mechanism to obtain and analyze dumps.
  9. Fedora Documentation Project (2010). Fedora 13 Security Guide. Fultus Corporation. p. 63. ISBN 978-1-59682-214-6. Archived from the original on 2014-06-26. Retrieved 2010-09-29. Remote memory dump services, like netdump, transmit the contents of memory over the network unencrypted.
  10. "Setting the name-pattern for dump data sets" (PDF). z/OS 2.5 MVS System Commands (PDF). March 25, 2022. pp. 474–475. SA38-0666-50. Retrieved April 6, 2022.
  11. "core(5) – Linux manual page". man7.org. 2015-12-05. Archived from the original on 2013-09-20. Retrieved 2016-04-17.
  12. "कर्नेल-मोड डंप फ़ाइलों की किस्में". Microsoft. Archived from the original on 22 February 2018. Retrieved 22 February 2018.
  13. "स्वचालित मेमोरी डंप" (in English). Microsoft. 28 November 2017. Archived from the original on 17 March 2018. Retrieved 16 March 2018.
  14. "WinDbg (कर्नेल-मोड) के साथ प्रारंभ करना". Archived from the original on 14 March 2016. Retrieved 30 September 2014.
  15. "मिनीडम्प फ़ाइलें". Archived from the original on 27 October 2014. Retrieved 30 September 2014.
  16. "MINIDUMP_TYPE enumeration". Archived from the original on 11 January 2015. Retrieved 30 September 2014.


टिप्पणियाँ

  1. E.g., z/OS
  2. Some older machines were decimal.
  3. In the sense that the records were binary rather than formatted for printing.
  4. SYStem OUTput files (SYSOUT) files are temporary files owned by the SPOOL software.
  5. Since then, IBM added the ability to have up to a hundred dump datasets named SYS1.DUMPnn (nn from 00 to 99). z/OS supports multiple system dump data sets with arbitrary dsname patterns under installation and operator[10] control.
  6. Initially the batch utility IMDPRDMP; currently the TSO command and ISPF panel repertoire for Interactive Problem Control System (IPCS).
  7. IBM provided tools for extracting and formatting data from an unformatted dump; those tools[lower-alpha 6] often made it easier to deal with an unformatted dump than even a small formatted dump.


बाहरी संबंध

Descriptions of the file format

Kernel core dumps: