दृढ़ता (कंप्यूटर विज्ञान)
This article needs additional citations for verification. (September 2014) (Learn how and when to remove this template message) |
कंप्यूटर विज्ञान में, दृढ़ता प्रणाली के स्टेट (कंप्यूटर विज्ञान) की विशेषता को संदर्भित करती है, जो इसे बनाने वाली प्रक्रिया कंप्यूटिंग के रूप में जीवित रहती है। और इस प्रकार व्यवहार में इसे कंप्यूटर डेटा भंडारण में स्टेट के डेटा के रूप में भंडारण द्वारा प्राप्त किया जाता है। प्रोग्राम को स्टोरेज उपकरण से डेटा स्थानांतरण करना होता है और नेटिव प्रोग्रामिंग लैंग्वेज डेटा संरचना से स्टोरेज उपकरण तक मैपिंग उपलब्ध कराना होता है।[1][2]
उदाहरण के लिए इसे चित्र संपादन प्रोग्राम या शब्द प्रोसेसर अपने दस्तावेज़ों को कम्प्यूटर फाइल में सहेज कर स्टेट कंप्यूटर विज्ञान की दृढ़ता प्राप्त करते है।
ऑर्थोगोनल या पारदर्शी दृढ़ता
दृढ़ता को ऑर्थोगोनलिटी # कंप्यूटर विज्ञान या पारदर्शी कहा जाता है जब इसे किसी कार्यक्रम के निष्पादन वातावरण की आंतरिक संपत्ति के रूप में लागू किया जाता है। एक ऑर्थोगोनल दृढ़ता पर्यावरण को अपने स्टेट (कंप्यूटर विज्ञान) को पुनः प्राप्त करने या बचाने के लिए इसमें चल रहे कार्यक्रमों द्वारा किसी विशिष्ट क्रिया की आवश्यकता नहीं होती है।
गैर-ऑर्थोगोनल दृढ़ता के लिए एक प्रोग्राम में विशिष्ट निर्देशों का उपयोग करके भंडारण से और पढ़ने के लिए डेटा की आवश्यकता होती है, जिसके परिणामस्वरूप सकर्मक क्रिया के रूप में बने रहना: पूरा होने पर, प्रोग्राम डेटा को बनाए रखता है।
ऑर्थोगोनल दृढ़ता वातावरण का लाभ सरल और कम त्रुटि-प्रवण कार्यक्रम है।[citation needed]
लगातार शब्द पहली बार एटकिंसन और मॉरिसन द्वारा प्रस्तुत किया गया था[1]ऑर्थोगोनल दृढ़ता के अर्थ में: उन्होंने डेटा की संपत्ति के रूप में दृढ़ता पर जोर देने के लिए एक क्रिया के अतिरिक्त एक विशेषण का उपयोग किया, जो एक प्रोग्राम द्वारा की गई अनिवार्य क्रिया से अलग है। सकर्मक क्रिया का उपयोग जारी रहता है (एक कार्यक्रम द्वारा की गई क्रिया का वर्णन करना) एक बैक-फॉर्मेशन है।
दत्तक ग्रहण
हाइबरनेशन (कंप्यूटिंग) के लिए ऑपरेटिंग सिस्टम और स्टेट सेविंग के लिए VMware और VirtualBox जैसे मंच वर्चुअलाइजेशन सिस्टम में ऑर्थोगोनल दृढ़ता को व्यापक रूप से अपनाया जाता है।
PS-algol, Napier88, Fibonacci और pJama जैसी अनुसंधान प्रोटोटाइप भाषाओं ने प्रोग्रामरों के लाभों के साथ अवधारणाओं का सफलतापूर्वक प्रदर्शन किया।
दृढ़ता तकनीक
सिस्टम इमेज
सिस्टम छवियों का उपयोग करना सबसे सरल दृढ़ता रणनीति है। नोटबुक हाइबरनेट (OS सुविधा) एक सिस्टम छवि का उपयोग करते हुए ऑर्थोगोनल हठ का एक उदाहरण है क्योंकि इसे मशीन पर चल रहे प्रोग्रामों द्वारा किसी भी क्रिया की आवश्यकता नहीं होती है। एक सिस्टम छवि का उपयोग करते हुए गैर-ऑर्थोगोनल हठ का एक उदाहरण एक साधारण पाठ संपादन प्रोग्राम है जो पूरे दस्तावेज़ को फ़ाइल में सहेजने के लिए विशिष्ट निर्देशों को निष्पादित करता है।
कमियां: संपूर्ण सिस्टम स्थिति को होल्ड करने के लिए पर्याप्त RAM की आवश्यकता होती है। सिस्टम की अंतिम छवि सहेजे जाने के बाद सिस्टम में किए गए स्टेट परिवर्तन सिस्टम विफलता या शटडाउन के स्थितियों में खो जाते हैं। प्रत्येक बदलाव के लिए एक छवि को सहेजना अधिकांश प्रणालियों के लिए बहुत समय लेने वाला होगा, इसलिए छवियों को महत्वपूर्ण प्रणालियों के लिए एकल दृढ़ता तकनीक के रूप में उपयोग नहीं किया जाता है।
पत्रिकाओं
Using journals is the second simplest persistence technique. Journaling is the process of storing events in a log before each one is applied to a system. Such logs are called journals.
On startup, the journal is read and each event is reapplied to the system, avoiding data loss in the case of system failure or shutdown.
The entire "Undo/Redo" history of user commands in a picture editing program, for example, when written to a file, constitutes a journal capable of recovering the state of an edited picture at any point in time.
पत्रिकाओं are used by journaling file systems, prevalent systems and database management systems where they are also called "transaction logs" or "redo logs".
Shortcomings: When journals are used exclusively, the entire (potentially large) history of all system events must be reapplied on every system startup. As a result, journals are often combined with other persistence techniques.
गंदा लिखता है
यह तकनीक सिस्टम स्थिति के केवल उन हिस्सों के भंडारण के लिए लेखन है जिन्हें उनके अंतिम लेखन के बाद संशोधित किया गया है (गंदे हैं)। परिष्कृत दस्तावेज़ संपादन अनुप्रयोग, उदाहरण के लिए, दस्तावेज़ के केवल उन हिस्सों को सहेजने के लिए गंदे लेखन का उपयोग करेंगे जो वास्तव में अंतिम सहेजे जाने के बाद बदले गए थे।
कमियां: इस तकनीक के लिए एक कार्यक्रम के भीतर स्टेट परिवर्तनों को बाधित करने की आवश्यकता होती है। यह गैर-पारदर्शी विधि से विशिष्ट स्टोरेज-एपीआई कॉल की आवश्यकता के द्वारा या स्वचालित प्रोग्राम परिवर्तन के साथ पारदर्शी विधि से प्राप्त किया जाता है। इसका परिणाम कोड में होता है जो मूल कोड से धीमा होता है और डीबग करने के लिए अधिक जटिल होता है।
हठ परतें
कोई भी परत (ऑब्जेक्ट-ओरिएंटेड डिज़ाइन) जो किसी प्रोग्राम के लिए अपनी स्थिति को बनाए रखना आसान बनाती है, उसे सामान्य रूप से एक दृढ़ता परत कहा जाता है। अधिकांश दृढ़ता परतें सीधे दृढ़ता प्राप्त नहीं करेंगी लेकिन एक अंतर्निहित डेटाबेस प्रबंधन प्रणाली का उपयोग करेंगी।
सिस्टम प्रचलन
सिस्टम प्रसार एक ऐसी तकनीक है जो अपनी सीमाओं को दूर करने के लिए ऊपर वर्णित सिस्टम छवियों और लेनदेन पत्रिकाओं को जोड़ती है।
कमियां: एक प्रचलित सिस्टम में संपूर्ण सिस्टम स्थिति को होल्ड करने के लिए पर्याप्त रैंडम एक्सेस मेमोरी होनी चाहिए।
डेटाबेस प्रबंधन प्रणाली (डीबीएमएस)
डीबीएमएस ऊपर वर्णित गंदे लेखन और लेन-देन जर्नलिंग तकनीकों के संयोजन का उपयोग करते हैं। वे न केवल दृढ़ता प्रदान करते हैं बल्कि अन्य सेवाएं जैसे प्रश्न, ऑडिटिंग और अभिगम नियंत्रण भी प्रदान करते हैं।
लगातार ऑपरेटिंग सिस्टम
परसिस्टेंट ऑपरेटिंग सिस्टम वे ऑपरेटिंग सिस्टम होते हैं जो किसी क्रैश या अनपेक्षित शटडाउन के बाद भी लगातार बने रहते हैं। इस क्षमता को नियोजित करने वाले ऑपरेटिंग सिस्टम में सम्मलित हैं
- कीकोस
- अत्यधिक विश्वसनीय ऑपरेटिंग सिस्टम, KeyKOS का उत्तराधिकारी
- Capros, EROS का संशोधन
- काइओट , EROS का उत्तराधिकारी
- मॉलटिक्स अपने एकल-स्तरीय स्टोर के साथ
- फैंटम ओस
- आईबीएम सिस्टम/38
- आईबीएम आई
- टिड्डी ओएस [1]
- मून ओएस
- तहरपप्पी - 6.0.5
यह भी देखें
- लगातार डेटा
- लगातार डेटा संरचना
- लगातार पहचानकर्ता
- सतत स्मृति
- लिखने पर नकल
- बनाएं, पढ़ें, अपडेट करें और हटाएं
- जावा डेटा ऑब्जेक्ट्स
- जावा दृढ़ता एपीआई
- सिस्टम प्रचलन
- ऑर्थोगोनलिटी # कंप्यूटर साइंस
- सेवा डेटा वस्तु
- स्नैपशॉट (कंप्यूटर भंडारण)
संदर्भ
- ↑ 1.0 1.1 Atkinson, M.P.; Bailey, P.J.; Chisholm, K.J.; Cockshott, W.P.; Morrison, R. (1983). "PS-algol: A Language for Persistent Programming" (pdf). Proceedings 10th Australian National Computer Conference. 10th Australian National Computer Conference. Melbourne, Australia. p. 70–79.
- ↑ Balzer, Stephanie (November 17, 2005). "अनुबंधित लगातार वस्तु प्रोग्रामिंग" (PDF). University of Glasgow - School of CS - Research. ETH Zürich. Archived from the original (PDF) on December 31, 2006. Retrieved September 21, 2015.