क्रैश होने से पहले कंप्यूटर चीजों को कैसे सहेज सकता है?


52

मैं इस धारणा के तहत था कि जब एक कंप्यूटर दुर्घटनाग्रस्त हो गया है, तो कुछ गलत हो गया है और यह अब प्रदर्शन नहीं कर सकता है।

मैं सोच रहा था कि क्रैश होने से पहले कंप्यूटर चीजों को कैसे सहेज सकता है?

क्या कंप्यूटर वास्तव में यह जानने में सक्षम है कि यह कब क्रैश होने वाला है (और इस प्रकार सभी प्रक्रियाओं को सूचित करें : " ASAP सहेजें क्योंकि मैं दुर्घटनाग्रस्त होने वाला हूँ ")?

यदि नहीं, तो यह कैसे संभव है कि कंप्यूटर के दुर्घटनाग्रस्त होने के बाद कार्यक्रम Chromeऔर Microsoft Word"बहाल" सेवाएं प्रदान कर सकते हैं?


13
मुझे पसंद है कि प्रश्न का उत्तर प्रश्न के शीर्षक में कैसे है।
क्रिस

बिजली बंद होने पर इमरजेंसी लाइट कैसे जल सकती है?
जोएलफैन

@JoelFan वे नहीं करते हैं अगर आपकी बैटरी / जनरेटर मर चुका है = P
मेकफ्लैश

जवाबों:


6

जब कोई कंप्यूटर "क्रैश" करता है, तो यह एक "अचानक" बिजली की विफलता (जिसके मामले में कुछ भी नहीं किया जा सकता है) के कारण हो सकता है, यह किसी प्रकार के अनिष्ट आंतरिक घटना (जैसे, दूषित पृष्ठ तालिकाओं) के कारण हो सकता है। इसी तरह कुछ भी करने से रोकता है, या यह कुछ ऐसी स्थिति के कारण हो सकता है जो किसी भी तरह "आगे के संचालन" को रोकता है - शायद नई प्रक्रियाएं शुरू नहीं की जा सकती हैं, शायद प्रदर्शन को अपडेट नहीं किया जा सकता है, शायद सिस्टम बस भंडारण से बाहर चला गया है।

इन बाद की स्थितियों में ओएस अभी भी सीमा के भीतर कार्य कर सकता है, और कम से कम डिस्क संचालन को पूरा कर सकता है जो चल रहे थे, अच्छी तरह से बंद फाइलें, आदि। इसके अलावा, यदि थोड़ा और कार्य संभव है, तो ओएस विभिन्न एप्लिकेशन को बताने में सक्षम हो सकता है। खुद को साफ-सफाई से बंद करने की प्रक्रिया।

लेकिन यहां तक ​​कि अगर सिस्टम "कठिन" हो जाता है, तो एक पूरे और व्यक्तिगत अनुप्रयोगों के रूप में सिस्टम ने "पत्रिकाओं" और / या "चौकियों" की एक प्रणाली को बनाए रखा हो सकता है ताकि सिस्टम की स्थिति को एक पूरे और व्यक्तिगत अनुप्रयोगों के रूप में बहाल किया जा सके। एक "परमाणु" बिंदु पर, जहां सब कुछ "आंतरिक रूप से सुसंगत" है, और जहां न्यूनतम महत्वपूर्ण डेटा खो गया है।

यह सब एक तंत्र के साथ पूरा नहीं हुआ है, लेकिन सिस्टम और अनुप्रयोग स्तर पर कार्यक्षमता की परतों के साथ।

विशेष रूप से बिजली विफलताओं के संबंध में, अग्रिम अधिसूचना नहीं हो सकती है या नहीं हो सकती है, और "अग्रिम" चेतावनी कई मिनट (या यूपीएस या असफल लैपटॉप बैटरी के साथ) का एक अंश हो सकती है। क्या किया जा सकता है यह चेतावनी की मात्रा पर निर्भर करता है।

ज्यादातर मामलों में, यूपीएस के बिना एक डेस्कटॉप sysyem के साथ, डिस्क संचालन "क्विज़" करने के लिए सबसे अच्छा समय होता है ताकि कोई डिस्क लेखन के बीच में न हो जब शक्ति अंततः गायब हो जाए। यह डिस्क पर खराब क्षेत्रों को उत्पन्न करने से रोकता है। यह तब हुआ करता था, जब RAM बहुत छोटी थी, कि बिजली से पहले रैम लिखने के लिए पर्याप्त समय हो सकता है (बिजली की आपूर्ति में बड़े कैपेसिटर के साथ, या यहां तक ​​कि डिस्क ड्राइव रोटर में संग्रहीत ऊर्जा का उपयोग करके) रैम को डिस्क में लिखने के लिए। गिरा दिया है, लेकिन जब RAM 100M या तो बड़ा हो गया है कि संभावना बहुत गायब हो गया।

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

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

कुछ पुराने "बड़े लोहे" सिस्टम पर एक अर्ध-हाइबरनेट रणनीति का उपयोग आपातकालीन शटडाउन करने के लिए किया गया था: मेमोरी को ऊपर के रूप में लिखा जाएगा, लेकिन जब बिजली बहाल हो जाती है और मेमोरी तब पढ़ जाती है तो एक मानक शटडाउन होता है। यह इसलिए किया गया क्योंकि सिस्टम स्थिति के कुछ बिट्स (विशेष रूप से I / O नियंत्रकों में) निरंतर संचालन की अनुमति देने के लिए मज़बूती से सहेजे / बहाल नहीं किए जा सकते थे।


82

Chrome और Microsoft Word समय-समय पर आपकी वर्तमान स्थिति को सहेजते हैं जैसे आप काम कर रहे हैं। यदि अनुप्रयोग या कंप्यूटर क्रैश हो जाता है, जब अनुप्रयोग पुनः लोड होते हैं, तो वे डिस्क पर सहेजे गए राज्य की तलाश करते हैं, और आपके लिए इसे पुनर्स्थापित करते हैं। उन्हें दुर्घटना की भविष्यवाणी करने की आवश्यकता नहीं है; वे लगातार आपके राज्य को बचा रहे हैं अगर कुछ गलत हो जाता है।


10
यह केवल आंशिक सच है। ओएस अब अनुप्रयोगों को अपवादों से उबरने में मदद करने के लिए रूपरेखा प्रदान करते हैं।
सर्फस

3
@surfasb: क्या आप अधिक विशिष्ट हो सकते हैं? हम हमेशा यूनिक्स जैसी प्रणालियों में संकेतों को पकड़ने में सक्षम रहे हैं, लेकिन इसके बारे में कुछ भी करने के लिए एप्लिकेशन प्रोग्रामर पर निर्भर है।
डेट्रिच एप

5
यह उत्तर सही है। त्रुटि पुनर्प्राप्ति वाले अधिकांश एप्लिकेशन समय-समय पर अपना डेटा सहेजते हैं। ओएस को पता नहीं चल सकता है कि कब दुर्घटना होने वाली है। और जब पता चलता है, तब तक बहुत देर हो चुकी होती है।
बोगादाकुतु

1
@surfasb, कंप्यूटर के बारे में पूछे गए सवाल (कर्नेल संभवतः) दुर्घटनाग्रस्त हो रहे हैं, न कि एप्लिकेशन को एक अपवाद मिल रहा है, जो आमतौर पर या तो सबकुछ है और सब कुछ ठीक है, या सबसे अच्छा है, प्रक्रिया कोर डंप करता है, आपके दस्तावेजों को बचाता नहीं है।
Psusi

62

EDIT: यह केवल तभी काम करता है जब कोई एप्लिकेशन क्रैश होता है, न कि विंडोज।

विंडोज विस्टा के बाद से एक नया एपीआई है जो विंडोज़ को एप्लिकेशन में एक विशेष फ़ंक्शन को कॉल करने की अनुमति देता है जब यह क्रैश हो जाता है तो यह बंद होने से पहले किसी भी डेटा को पुनर्प्राप्त करने का प्रयास कर सकता है। यह इस तरह काम करता है:

  • ऐप शुरू होता है
  • ऐप विंडोज फ़ंक्शन को कॉल करता है: जब मैं क्रैश करता हूं तो कृपया निष्पादित करें RecoverData()
  • ...
  • ऐप क्रैश हो गया
  • विंडोज RecoverData()ऐप में निष्पादित होता है
  • RecoverData() वर्तमान में खोले गए दस्तावेज़ के बारे में डेटा पुनः प्राप्त करने की कोशिश करता है, इस बीच यह बताता है कि यह अभी भी व्यस्त है।
  • जब RecoverData()समाप्त हो गया है / समय समाप्त हो गया है / पिंग करना बंद कर दिया है, तो विंडोज ऐप को समाप्त कर देता है और इसे पुनरारंभ करता है।

अधिक जानकारी: http://msdn.microsoft.com/en-us/library/windows/desktop/aa373351(v=VS.85).aspx


8
+1: यह सबसे दुखद टूल में से एक है जो दुख की बात है। और दुख की बात यह है कि यह सबसे उत्कट जवाब नहीं है ??
सर्फस

2
@ZippyV, हालांकि, क्या यह सच नहीं है कि अगर यह हेट ऐप नहीं है जो दुर्घटनाग्रस्त है, लेकिन खुद को क्रैश करने वाली विंडोज़, कंप्यूटर में कॉल करने की क्षमता नहीं है RecoverData()?
पचेरियर

12
ओपी कंप्यूटर (OS) क्रैश के बारे में पूछ रहा है, एप्लिकेशन क्रैश के बारे में नहीं, इसलिए यह उत्तर अप्रासंगिक है।
वीतुत

सच है, बीएसओडी के मामले में, यह काम नहीं करेगा।
ज़िप्पी

MS जोड़ने के लिए एक मूर्खतापूर्ण API क्या है। एक बार जब यह उस बिंदु पर पहुंच जाता है तो आप किसी भी डेटा को सहेजने के लिए एप्लिकेशन पर भरोसा नहीं कर सकते हैं, यही कारण है कि कुछ भी गलत होने से पहले डेटा को बचाने के लिए दशकों से डिज़ाइन किए गए हैं।
Psusi

16

ठीक है, वे दुर्घटना से पहले बस वर्तमान स्थिति को बचाते हैं । एक ऑटो की तरह हर X सेकंड को बचाएं।

मुझे लगता है कि किसी को वास्तव में अंतर करना होगा:

  • हार्डवेयर क्रैश: केवल पिछली चौकियों से पुनर्प्राप्त करने में सक्षम
  • ओएस क्रैश: डेटा को बचाने के लिए ऐप के लिए कोई रास्ता नहीं है, ओएस कोर डंप की तरह कुछ गिरा सकता है
  • एप्लिकेशन क्रैश: एप्लिकेशन क्रैश के लिए OS सुविधाएँ जानकारी को बचा सकती हैं

हाँ मैं OS / हार्डवेयर क्रैश जैसी अधिक गंभीर दुर्घटनाओं के बारे में बात कर रहा था
Pacerier

10

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

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


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

2
उत्तरार्द्ध भाग बीएसपीडी नहीं, उपयोगकर्ताओं के क्रैश का संदर्भ देता है।
3Doubloons

8

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


पेजिंग डिस्क ड्राइवर के साथ की जाती है - इसके बिना कर्नेल को यह नहीं पता होगा कि डिस्क पर कैसे लिखना है।
Psusi

@psusi जब सिस्टम क्रैश हो जाता है, तो पेजफाइल एकमात्र स्थान होता है जिसे कर्नेल जानता है कि वह सुरक्षित रूप से लिख सकता है।
किनोकिजुफ

हां, और यह वास्तव में डिस्क चालक के माध्यम से लेखन करता है।
Psusi

1
नहीं, यह एक विशेष "डंप_टापी.साइस" (आपके SCSI नियंत्रक के लिए स्थानापन्न atapi) चालक के माध्यम से करता है, न कि मानक डिस्क चालक के रूप में। मुझे लगता है कि यह भी इंट 13h का उपयोग करता है।
किनोकिजुफ

6

मैं इस धारणा के तहत था कि जब एक कंप्यूटर दुर्घटनाग्रस्त हो गया है, तो कुछ गलत हो गया है और यह अब प्रदर्शन नहीं कर सकता है।

जी हां, यह पूरी तरह से सच है। हालाँकि, तार्किक दृष्टिकोण से, आपका प्रोग्राम कंप्यूटर पर अप्रतिबंधित नहीं चल रहा है। कार्यक्रम ऑपरेटिंग सिस्टम के तहत चल रहा है!

मैं सोच रहा था कि क्रैश होने से पहले कंप्यूटर चीजों को कैसे सहेज सकता है? क्या कंप्यूटर वास्तव में यह जानने में सक्षम है कि यह कब क्रैश हो रहा है (और इस प्रकार सभी प्रक्रियाओं को सूचित करें: "ASAP सहेजें क्योंकि मैं दुर्घटनाग्रस्त होने वाला हूँ")?

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

व्यक्तिगत अनुप्रयोग स्वयं दुर्घटनाग्रस्त हो जाते हैं जब प्रोग्राम द्वारा फेंका गया एक अखंड अपवाद होता है, जो ऑपरेटिंग सिस्टम में फैलता है। इस स्थिति में, ओएस प्रोग्राम के निष्पादन को रोक देगा, और किसी भी खुली मेमोरी / फ़ाइल हैंडल को बंद कर देगा।

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

यदि नहीं, तो यह कैसे संभव है कि कंप्यूटर के दुर्घटनाग्रस्त होने के बाद क्रोम और माइक्रोसॉफ्ट वर्ड जैसे कार्यक्रम "बहाल" सेवाएं दे सकते हैं?

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

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


"उस स्थिति में, ऑपरेटिंग सिस्टम सभी प्रक्रियाओं को निष्पादित करने के लिए कहता है, रैम की सामग्री को डिस्क पर बचाता है, और कंप्यूटर को सुरक्षित रूप से बंद या फिर से चालू करता है।" - रैम सामग्री जो डिस्क में सहेजी जाती है, उन्हें "बहाल" कब किया जाता है?
पचेरियर

1
वे घटनाओं के सामान्य पाठ्यक्रम में नहीं हैं। हालाँकि, यदि आपका कंप्यूटर नियमित रूप से क्रैश हो रहा है, तो एक कुशल प्रोग्रामर इस फ़ाइल का उपयोग करने में सक्षम हो सकता है ताकि इसका कारण पता लगाया जा सके।
किंडल

@Pacerier के रूप में kindallकहा गया है, वे बहाल नहीं किए जाते हैं (चूंकि यदि आपने किया था राम बहाल, आप एक ही निष्पादन राज्य जो पहली जगह में दुर्घटना कंप्यूटर की वजह से में होगा!)। आप सिस्टम गुण के तहत विंडोज में डिस्क पर क्या लिखा है इसे बदल सकते हैं -> उन्नत -> स्टार्टअप और रिकवरी। और फिर से kindallकहा गया है, यह जानकारी ज्यादातर डेवलपर्स के लिए उपयोगी है जो यह निर्धारित करने की कोशिश कर रहे हैं कि त्रुटि का कारण क्या है।
ब्रेकथ्रू

3

हाँ, डेटा को पुनर्स्थापित करने की प्रक्रिया सिर्फ कंप्यूटर क्रैश के लिए नहीं है, यह पावर आउटेज, प्रोग्राम क्रैश, बिना बचत के छोड़ने, और बहुत कुछ के लिए है।

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

मैं (स्पष्ट रूप से) Microsoft या Google के लिए काम नहीं करता, लेकिन यह शायद तरीका है (या रास्ते के करीब) यह काम करता है।


2

एक प्रोग्राम डिस्क पर एक झंडा लिख ​​सकता है जो बस कुछ ऐसा कहता है जैसे "बूटअप पर, अगर यह झंडा सेट है तो कुछ गलत हो गया है"। बूटअप पर उस झंडे की जाँच की जाती है कि यह सेट है या नहीं। यदि ऐसा है, तो कार्यक्रम कुछ गलत हो गया है जानता है।

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


2

जैसे @bamboom कहता है, कई अलग-अलग प्रकार के कंप्यूटर "क्रैश" हैं जिन्हें अलग-अलग तरीके से हैंडल करना पड़ता है। प्रभावी रूप से एक पावर आउटेज शून्य त्रुटि से एक पूर्णांक विभाजन से, बहुत अलग है।

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


2

मैं यहां एक निम्न-स्तर के बिंदु पर जाना चाहूंगा, क्योंकि फाइलसिस्टम का एक टैग है।

आपको विंडोज ओएस याद हो सकता है जिसमें एफएटी / एफएटी 16 / एफएटी 32 फाइल सिस्टम का उपयोग किया गया था। जब कभी-कभी किसी उपयोगकर्ता को पावर आउटेज का अनुभव होता है और संपूर्ण सिस्टम डाउन हो जाता है तो समस्याएँ होती हैं। रिबूट करने की कोशिश करने के बाद यह कहेंगे कि एक फ़ाइल गायब थी और बूट करना संभव नहीं है। ऐसा इसलिए हुआ क्योंकि FAT32 उन ऑपरेशन्स पर नज़र नहीं रखता था जो वह ट्रांसेक्शनल तरीके से कर रहा था।

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


1

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

अन्य एप्लिकेशन ऑटो सेव या दोनों के संयोजन का उपयोग करते हैं - यह इन संकेतों को पकड़ने के लिए प्रोग्राम और प्लेटफ़ॉर्म समर्थन की जरूरतों पर निर्भर करता है।


संकेत: विंडोज उनके पास नहीं है।
किनोकिजुफ

1

एक सिस्टम क्रैश केवल एक और रूटीन है जो OS द्वारा चलाया जाता है। "क्रैश" होने का कारण यह है कि एक प्रोग्राम या लाइब्रेरी लोड करने में विफल रहा या ठीक से लोड नहीं हुआ और सिस्टम फ़ाइलों को स्थायी नुकसान पहुंचाने की क्षमता है। इसलिए सुरक्षा एहतियात के तौर पर, विंडोज़ शटडाउन / रिस्टार्ट करती है और सिस्टम फाइल को लिखने से रोकती है, इससे पहले कि कोई फाइल इन प्रोग्रामों / लाइब्रेरी द्वारा संपादित की जाए।

शट डाउन / रीस्टार्ट करने से पहले, यह एक नियमित शटडाउन / रिस्टार्ट: अर्थात सेविंग सिस्टम फाइल्स आदि के समान कार्य करता है।

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


1

आप बिजली की हानि के कारण ओएस बंद होने की बात कर सकते हैं। यकीनन यह एक तरह की दुर्घटना है।

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

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

राइट-बफ़र करने वाले फ़ाइल सिस्टम का एक बड़ा लाभ यह है कि राइटिंग को छाँटकर, यह हार्ड डिस्क ड्राइव पर आर्म मूवमेंट को कम कर सकता है, जिससे वे कम और कम दूर हो सकते हैं।

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


0

ऐप्स C में सिग्नल पकड़ सकते हैं और कुछ डेटा सहेज सकते हैं। एक संकेत जो आपको गलती से मिल सकता है वह है SIGFPE फ्लोटिंग-पॉइंट अंकगणितीय अपवाद (ANSI)। त्रुटियों में शून्य और अतिप्रवाह द्वारा विभाजन शामिल है। एक अन्य एकल SIGINT है जो कंसोल या टर्मिनल पर ctrl + C दबाकर उठाया जाता है जो ऐप को मारता है

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