वितरित ऑपरेटिंग सिस्टम
वितरित ऑपरेटिंग सिस्टम स्वतंत्र सॉफ़्टवेयर, नेटवर्क, संचारक, इंटर-प्रोसेस संचार और भौतिक रूप से अलग कम्प्यूटेशनल नोड्स के संग्रह पर सिस्टम सॉफ़्टवेयर है। इस प्रकार अनेक सीपीयू द्वारा सेवित नौकरियों को संभाला जाता हैं।[1] और प्रत्येक व्यक्तिगत नोड वैश्विक समग्र ऑपरेटिंग सिस्टम विशिष्ट सॉफ़्टवेयर द्वारा सबसमुच्चय रखता है। और प्रत्येक सबसमुच्चय दो अलग-अलग सेवा प्रदाताओं का संयोजन करता है।[2] इसलिए पहला सर्वव्यापी न्यूनतम कर्नेल (ऑपरेटिंग सिस्टम), या माइक्रोकर्नेल होते है, जो उस नोड के हार्डवेयर को सीधे नियंत्रित करता है। दूसरा सिस्टम प्रबंधन घटकों का उच्च-स्तरीय संग्रह है जो नोड की व्यक्तिगत और सहयोगी गतिविधियों का समन्वय करता है। ये घटक सार माइक्रोकर्नेल कार्य करते हैं और उपयोगकर्ता अनुप्रयोगों का समर्थन करते हैं।[3]
माइक्रोकर्नेल और प्रबंधन घटक संग्रह मिलकर साथ काम करते हैं। इस प्रकार से कुशल और स्थिर सिस्टम में कई संसाधनों और प्रसंस्करण कार्य क्षमता को एकीकृत करने के सिस्टम के लक्ष्य का समर्थन करते हैं।
रेफरी नाम = Fortier1986 >{{cite book|last=Fortier|first=Paul J.|title=डिस्ट्रीब्यूटेड ऑपरेटिंग सिस्टम का डिजाइन: कॉन्सेप्ट्स एंड टेक्नोलॉजी|url=https://books.google.com/books?id=F7QmAAAAMAAJ%7Cyear=1986%7Cpublisher=Intertext Publications|isbn=9780070216211}</ref> एक वैश्विक प्रणाली में अलग-अलग नोड्स के इस सहज एकीकरण को पारदर्शिता, या एकल सिस्टम छवि के रूप में संदर्भित किया जाता है; एक कम्प्यूटेशनल इकाई के रूप में वैश्विक प्रणाली की उपस्थिति के उपयोगकर्ताओं को प्रदान किए गए संदेह का वर्णन करना होगा।
विवरण
वितरित ओएस ओएस के लिए आवश्यक आवश्यक सेवाएं और कार्यक्षमता प्रदान करता है, किन्तु अतिरिक्त आवश्यकताओं जैसे कि बढ़े हुए पैमाने और उपलब्धता का समर्थन करने के लिए यह सभी विशेषताओं और विशेष कंप्यूटर कॉन्फ़िगरेशन को जोड़ता है। उपयोगकर्ता के लिए, वितरित ओएस एकल-नोड, अखंड कर्नेल के समान विधि से काम करता है। अर्थात्, चूंकि इसमें अनेक नोड उपयुक्त होते हैं, यह उपयोगकर्ताओं और अनुप्रयोगों को एकल-नोड के समान में दिखाई देता है।
इस प्रकार अतिरिक्त उपयोगकर्ता-स्तरीय मॉड्यूलर सेवाओं से न्यूनतम सिस्टम-स्तरीय और उसकी कार्य क्षमता को बढाता है। और यह तंत्र और नीति को अलग करता है। किन्तु तंत्र और नीति की व्याख्या केवल इस रूप में की जा सकती है कि क्रमशः क्या किया जाता है "बनाम" कैसे कुछ किया जाता है। यह अलगाव अनुकूल और मापनीयता बढ़ाता है।
सिंहावलोकन
कर्नेल
प्रत्येक लोकेल (कंप्यूटर हार्डवेयर) (के अतिरिक्त नोड) पर, कर्नेल नोड के अंतर्निहित हार्डवेयर और संसाधनों को संचालित करने के लिए आवश्यक नोड-स्तरीय उपयोगिताओं का न्यूनतम पूर्ण समुच्चय प्रदान करता है। इन तंत्रों में नोड के संसाधनों, प्रक्रियाओं, संचार, और इनपुट/आउटपुट प्रबंधन समर्थन कार्यों का आवंटन, प्रबंधन और स्वभाव सम्मिलित किया जाता है।[4] कर्नेल के भीतर, वितरित ओएस के लिए संचार उप-सिस्टम का सबसे महत्वपूर्ण महत्व है।[3]
वितरित ओएस में, कर्नेल अधिकांशतः निम्न-स्तरीय पता स्थान प्रबंधन, थ्रेड (कंप्यूटिंग) प्रबंधन, और अंतर-प्रक्रिया संचार (आईपीसी) सहित कार्यों के न्यूनतम समुच्चय का समर्थन करता है। इस डिज़ाइन के कर्नेल को माइक्रोकर्नेल कहा जाता है।[5][6] इसकी मॉड्यूलर प्रकृति वितरित ओएस के लिए आवश्यक सुविधाओं, विश्वसनीयता और सुरक्षा को बढ़ाती है।[7]
सिस्टम प्रबंधन
सिस्टम प्रबंधन घटक सॉफ्टवेयर प्रक्रियाएं हैं जो नोड की नीतियों को परिभाषित करती हैं। ये घटक कर्नेल के बाहर ओएस को प्रदर्शित करती हैं। ये घटक उच्च स्तरीय संचार, प्रक्रिया और संसाधन प्रबंधन, विश्वसनीयता, प्रदर्शन और सुरक्षा प्रदान करते हैं। वितरित वातावरण में आवश्यक पारदर्शिता को जोड़ते हुए घटक एकल-इकाई सिस्टम के कार्यों से मेल खाते हैं।[3]
ओएस की वितरित प्रकृति को वैश्विक सिस्टम के लिए नोड की का समर्थन करने के लिए अतिरिक्त सेवाओं की आवश्यकता होती है। इसके अतिरिक्त, सिस्टमप्रबंधन घटक विश्वसनीयता, उपलब्धता और दृढ़ता की रक्षात्मक उतरदायित्व को स्वीकार करते हैं। इस प्रकार के उतरदायित्व आपस में टकरा सकती हैं। और सुसंगत दृष्टिकोण, संतुलित परिप्रेक्ष्य और समग्र सिस्टम की गहरी समझ हरसमान प्रतिफल की पहचान करने में सहायता करती है। इस प्रकार की नीति और तंत्र का पृथक्करण ऐसे संघर्षों को कम करता है।[8]
एक ऑपरेटिंग सिस्टम के रूप में एक साथ काम करना
वितरित ऑपरेटिंग सिस्टम की वास्तुकला और डिजाइन को अलग-अलग नोड से वैश्विक सिस्टम और लक्ष्यों दोनों का एहसास होना चाहिए। वास्तुकला और डिजाइन को नीति और तंत्र को अलग -अलग करने के अनुरूप ढंग से संपर्क में लीया जाना चाहिए। ऐसा करने में, वितरित ऑपरेटिंग सिस्टम कुशल और विश्वसनीय वितरित कंप्यूटिंग ढांचा प्रदान करने का प्रयास करता है जो अंतर्निहित कमांड और नियंत्रण प्रयासों के पूर्ण न्यूनतम उपयोगकर्ता जागरूकता की अनुमति देता है।[7]
कर्नेल और सिस्टम प्रबंधन घटकों के बीच बहु-स्तरीय सहयोग, और बदलाव में वितरित ऑपरेटिंग सिस्टम में अलग-अलग नोड्स के बीच वितरित ऑपरेटिंग सिस्टम की कार्यात्मक छमताओ का उपयोग किया जाता है। सिस्टम में यही वह बिंदु है जिसे उद्देश्य के पूर्ण सामंजस्य को बनाए रखना चाहिए, और साथ ही कार्यान्वयन से मंशा को समान स्थति से अलग रखना चाहिए। यह चुनौती विश्वसनीय, कुशल, उपलब्ध, शक्तिशाली , एक्स्टेंसिबल और स्केलेबल सिस्टम के लिए नींव और रूपरेखा तैयार करने के लिए वितरित ऑपरेटिंग सिस्टम का उपयोग करता है। चूंकि, यह अवसर जटिलता में बहुत अधिक मूल्य पर आता है।
जटिलता का मूल्य
वितरित ऑपरेटिंग सिस्टम में, अंतर्निहित जटिलता की असाधारण डिग्री किसी भी उपयोगकर्ता के लिए पूरे सिस्टम को सरलता से आपत्ति बना सकती है। जैसे, वितरित संचालन सिस्टम को साकार करने की तार्किक मूल्य की गणना अनेक क्षेत्रों में और कई स्तरों पर बड़ी मात्रा में जटिलता पर नियंत्रण पाने के संदर्भ में की जानी चाहिए। इस गणना में गहराई, चौड़ाई, और डिज़ाइन निवेश की सीमा और वास्तुशिल्प योजनाओ को भी सम्मिलित किया जाता है जो कि सबसे सामान्य कार्यान्वयन को प्राप्त करने के लिए आवश्यक होते है।[9]
इस प्रकार यह डिजाइन और विकास विचार महत्वपूर्ण और अक्षम्य होती हैं। उदाहरण के लिए, असाधारण प्रारंभिक बिंदु पर वितरित ऑपरेटिंग सिस्टम के समग्रह वास्तु शिल्प और डिजाइन विवरण की अधिक समझ आवश्यक होती है।[1] किन्तु यह वितरित ऑपरेटिंग सिस्टम के विकास में डिजाइन विचारों की थकाऊ सरणी निहित है। इनमें से प्रत्येक डिजाइन विचार संभावित रूप से कई अन्य महत्वपूर्ण डिग्री तक प्रभावित कर सकता है। यह व्यक्तिगत डिजाइन विचारों और उनके कई क्रम परिवर्तनों के संदर्भ में संतुलित दृष्टिकोण में बड़े माप पर प्रयास करता है। इस प्रयास में सहायता के रूप में, अधिकांश वितरित कंप्यूटिंग शक्ति में प्रलेखित अनुभव और अनुसंधान पर निश्चय करते हैं।
इतिहास
अनुसंधान और प्रयोग के प्रयास में 1970 के दशक में गंभीरता से प्रारंभ हुए और यह 1990 के दशक के समय निरंतर चलते रहे, किन्तु 1980 के दशक के अंत में केंद्रित रुचि अधिक सीमा पर थी। इस अवधि के समय कई वितरित ऑपरेटिंग सिस्टम को प्रस्तुत किया गया है ; अतः , इनमें से बहुत कम कार्यान्वयनों ने सामान्य व्यावसायिक सफलता भी प्राप्त की।
इस प्रकार यह 1950 के दशक की प्रराम्भिक्ताओ में आदिम वितरित ऑपरेटिंग सिस्टम घटक अवधारणाओं के मौलिक और अग्रणी कार्यान्वयन है ।[10][11][12] इनमें से कुछ व्यक्तिगत पद सीधे वितरित कंप्यूटिंग पर केंद्रित नहीं थे, और उस समय, अनेक लोगों को उनके महत्वपूर्ण प्रभाव का एहसास नहीं हुआ होगा। इन अग्रणी प्रयासों ने महत्वपूर्ण आधार तैयार किया गया , और वितरित कंप्यूटिंग से संबंधित क्षेत्रों में निरंतर अनुसंधान को प्रेरित किया गया था ।[13][14][15][16][17][18]
किन्तु 1970 के दशक के मध्य में, अनुसंधान ने वितरित कंप्यूटिंग में महत्वपूर्ण प्रगति प्रदान की गयी थी । इन सफलताओं ने उन प्रयासों के लिए ठोस, स्थिर आधार प्रदान किया जो 1990 के दशक तक जारी रहे।
बहु मल्टी-प्रोसेसर और मल्टी-कोर प्रोसेसर सिस्टम रिसर्च के तेजी से प्रसार ने वितरित ओएस अवधारणा के पुनरुत्थान का नेतृत्व किया गया।
डाइसैक
पहले प्रयासों में से डाइसैक, सामान्य-उद्देश्य वाला तुल्यकालन (कंप्यूटर विज्ञान) कंप्यूटर था। संगणक तंत्र संस्था के प्रारंभिक प्रकाशनों में से , अप्रैल 1954 में, राष्ट्रीय मानक ब्यूरो के शोधकर्ता – अब राष्ट्रीय निस्ट (निस्ट) – ने डाइसैक का विस्तृत विवरण प्रस्तुत किया। परिचय लचीले संचार सहित इच्छित अनुप्रयोगों की आवश्यकताओं पर केंद्रित है, किन्तुअन्य कंप्यूटरों का भी उल्लेख किया गया है:
अंत में, बाहरी उपकरणों में डाइसैक के समान डिजिटल भाषा को नियोजित करने वाले अन्य पूर्ण-स्तरीय कंप्यूटर भी सम्मिलित प्रोग्राम होते हैं। उदाहरण के लिए, सैक या इसके समान अन्य कंप्यूटरों को डाइसैक के लिए उपयोग किया जा सकता है और समन्वित प्रोग्राम के उपयोग से एक सामान्य कार्य पर आपसी सहयोग से एक साथ काम करने के लिए बनाया जा सकता है ... परिणामस्वरूप [,] कंप्यूटर का उपयोग विविध समन्वय के लिए किया जा सकता है इस प्रकार एक प्रभावी दिखावा और ऑपरेशन में सभी बाहरी उपकरणों की गतिविधियो का उपयोग किया जाता है ।
— एलन एल लाइनर, डीवाईएसईएसी के लिए सिस्टम विनिर्देश
विनिर्देश ने मल्टी-कंप्यूटर सिस्टम के वास्तुकला पर चर्चा की, मास्टर-स्लेव के अतिरिक्त पीयर-टू-पीयर को प्राथमिकता दी गयी ।
अलग-अलग कंप्यूटरों के ऐसे परस्पर समूह का प्रत्येक सदस्य किसी भी समय सिस्टम में अपने किसी भी भागीदार को विशेष नियंत्रण आदेश आरंभ करने और भेजने के लिए स्वतंत्र करते है। परिणामस्वरूप, सामान्य कार्य पर पर्यवेक्षी नियंत्रण सामिल में पूरे सिस्टम में शिथिल रूप से वितरित किया जा सकता है और फिर अस्थायी रूप से एक कंप्यूटर में केंद्रित हो सकता है, या जरूरत पड़ने पर एक मशीन से दूसरी मशीन में तेजी से पारित हो सकता है। …विभिन्न व्यवधान सुविधाएं जिनका वर्णन किया गया है, वे कंप्यूटर और उसके सहायक बाहरी उपकरणों के बीच आपसी सहयोग पर आधारित हैं, और केवल एक साधारण मास्टर-स्लेव संबंध को प्रतिबिंबित नहीं करती हैं।
— एलन एल लाइनर, डाइसैक के लिए सिस्टम विनिर्देश
यह वितरित नियंत्रण वाले कंप्यूटर के प्रारंभिक उदाहरणों में से होते है। सेना की रिपोर्ट के विभाग ने इसे विश्वसनीय प्रमाणित किया और यह अप्रैल 1954 में सभी स्वीकृति परीक्षणों में उत्तीर्ण हुआ।[19] इसे पूरा किया गया और मई 1954 में समय पर वितरित किया गया। यह पोर्टेबल कंप्यूटर था, जिसे ट्रैक्टर-ट्रेलर में रखा गया था। जिसमें 2 सहायक वाहन और 6 टन प्रशीतन क्षमता थी।।
लिंकन टीएक्स-2
प्रायोगिक इनपुट-आउटपुट सिस्टम के रूप में वर्णित, लिंकन टीएक्स-2 ने आरामदायक होने क साथ साथ परिचालन इनपुट-आउटपुट उपकरण , अर्थात मल्टीप्रोग्रामिंग पर जोर दिया। टीएक्स-2 का डिज़ाइन मॉड्यूलर था, जो उच्च स्तर के संशोधन और विस्तार का समर्थन करता था।[11]
सिस्टम ने मल्टीपल-सीक्वेंस प्रोग्राम विधि को नियोजित किया गया । इस विधि ने प्रत्येक सहयोगी को प्रोग्राम कोड के 32 संभावित अनुक्रमों में से के साथ कई प्रोग्राम काउंटर की अनुमति दी। इन स्पष्ट रूप से प्राथमिकता वाले अनुक्रमों को इंटरलीव किया जा सकता है और समवर्ती रूप से निष्पादित किया जा सकता है, न केवल प्रक्रिया में गणना को प्रभावित करता है, बल्कि अनुक्रमों के नियंत्रण प्रवाह और उपकरणों के स्विचिंग को भी प्रभावित करता है। उपकरण सीक्वेंसिंग से जुड़ी अधिक चर्चा की गयी।
डाइसैक के समान टीएक्स-2 अलग-अलग प्रोग्राम किए गए उपकरण साथ काम कर सकते हैं, जिससे THROUGHPUT बढ़ सकता है। केंद्रीय इकाई की पूरी शक्ति किसी भी उपकरण के लिए उपलब्ध थी। टीएक्स-2 वितरित नियंत्रण प्रदर्शित करने वाली सिस्टम का और उदाहरण था, इसकी केंद्रीय इकाई के पास समर्पित नियंत्रण नहीं था।
इंटरकम्युनिकेटिंग सेल
मेमोरी एक्सेस को अमूर्त करने का प्रारंभिक प्रयास इंटरकम्युनिकेटिंग सेल था, जहां सेल कंप्यूटर आंकड़े भंडारण तत्वों के संग्रह से बना था। मेमोरी तत्व मूल रूप से बाइनरी इलेक्ट्रॉनिक फ्लिप-फ्लॉप (इलेक्ट्रॉनिक्स) | फ्लिप-फ्लॉप या रिले था। सेल के अंदर दो प्रकार के मेमोरी एलिमेंट होते हैं, प्रतीक और सेल। प्रत्येक सेल संरचना डेटा को प्रतीकों के स्ट्रिंग (कंप्यूटर विज्ञान) में संग्रहीत करती है, जिसमें पहचानकर्ता और मापदंडों का समुच्चय होता है। सूचना सेल संघों के माध्यम से जुड़ी हुई है।[12]
सिद्धांत ने तर्क दिया कि संबोधित करना व्यर्थ और गैर-मूल्यवान संकेत है। सूचना को दो विधियों से एक्सेस किया गया था, प्रत्यक्ष और क्रॉस-पुनर्प्राप्ति। प्रत्यक्ष पुनर्प्राप्ति नाम स्वीकार करती है और पैरामीटर समुच्चय लौटाती है। क्रॉस-रिट्रीवल प्रोजेक्शन (गणित) पैरामीटर समुच्चय के माध्यम से और पैरामीटर के दिए गए सबसमुच्चय वाले नामों का समुच्चय देता है। यह संशोधित हैश तालिका डेटा संरचना के समान था जिसने प्रत्येक अद्वितीय कुंजी (नाम) के लिए एकाधिक मान (गणित) (पैरामीटर) की अनुमति दी गयी थी।
यह कंप्यूटर कॉन्फ़िगरेशन वितरित सिस्टम के लिए आदर्श कहा गया। भंडारण और पुनर्प्राप्ति के लिए मेमोरी के माध्यम से निरंतर समय प्रक्षेपण स्वाभाविक रूप से परमाणु संचालन और पारस्परिक बहिष्करण था। सेलुलर मेमोरी की आंतरिक वितरित विशेषताएं अमूल्य होगा। प्रयोक्ता इंटरफ़ेस , कंप्यूटर हार्डवेयर/परिधीय , या अप्लिकेशन प्रोग्रामिंग अंतरफलक पर प्रभाव अप्रत्यक्ष था। लेखक वितरित प्रणालियों पर विचार कर रहे थे, उन्होंने कहा:
हम यहां एक वितरित तर्क प्रणाली के सामान रूप से विचारों को प्रस्तुत करना चाहते थे ... तार्किक डिजाइन की मैक्रोस्कोपिक अवधारणा, स्कैनिंग से दूर, खोज में , पता लगाने से, और यह गिनती से, समान रूप से महत्वपूर्ण होती है। हमें हर प्रयास पर, विस्तृत स्थानीय समस्याओं के बोझ से स्वयं को मुक्त करना चाहिए, जो केवल मशीनों के विकासवादी माप पर कम मशीन को शोभा देती हैं।
— चुंग-येओल (सी.वाई.) ली, इंटरकम्युनिकेटिंग सेल, बेसिस फॉर ए डिस्ट्रीब्यूटेड लॉजिक कंप्यूटर
मूलभूत कार्य
सुसंगत मेमोरी अब्सट्रैक्शन
शेयर्ड-मेमोरी मल्टीप्रोसेसरों पर स्केलेबल सिंक्रोनाइज़ेशन के लिए एल्गोरिदम [20]
फाइल सिस्टम अब्सट्रैक्शन
वितरित फाइल सिस्टम का मापन[21]
मेमोरी सुसंगतता शेयर्ड वर्चुअल मेमोरी सिस्टम में [22]
ट्रांसजेक्सन अब्सट्रैक्शन
ट्रांसजेक्सन
सगास [23]
ट्रांसजेक्सन मेमोरी
संगत मेमोरी ट्रांसजेक्सन[24]
ट्रांजेक्शनल मेमोरी: लॉक-फ्री डेटा स्ट्रक्चर्स के लिए आर्किटेक्चरल सपोर्ट [25]
डायनेमिक-साइज़ डेटा स्ट्रक्चर्स के लिए सॉफ़्टवेयर ट्रांसेक्शनल मेमोरी[26]
सॉफ्टवेयर ट्रांसजेक्सन मेमोरी[27]
दृढ़ता अब्सट्रैक्शन
ओशनस्टोर: वैश्विक स्तर पर स्थायी भंडारण के लिए वास्तुकला [28]
समन्वयक अब्सट्रैक्शन
प्रतिकृति डेटा के लिए भारित वोटिंग [29]
आंशिक तुल्यकालन की उपस्थिति में सहमति [30]
विश्वसनीयता अब्सट्रैक्शन
विवेक की जाँच करता है
बीजान्टिन जनरलों की समस्या [31]
फेल-स्टॉप प्रोसेसर: दोष-सहिष्णु कंप्यूटिंग सिस्टम डिजाइन करने के लिए दृष्टिकोण [32]
पुनर्प्राप्ति
वितरित स्नैपशॉट: वितरित सिस्टम की वैश्विक स्थिति का निर्धारण[33]
वितरित प्रणालियों में ओप्तिमिस्टिक सुधार [34]
वितरित कंप्यूटिंग मॉडल
तीन मूलभूत वितरण
इस बिंदु को उत्तम ढंग से समझाने के लिए, तीन सिस्टम सॉफ़्टवेयर वास्तुशिल्प की जाँच करें; केंद्रीकृत, विकेंद्रीकृत और वितरित। इस परीक्षा में, तीन संरचनात्मक पहलुओं पर विचार करें: संगठन, संबंध और नियंत्रण। संगठन सिस्टम की भौतिक व्यवस्था विशेषताओं का वर्णन करता है। कनेक्शन नोड्स के बीच संचार मार्गों को जोड़ते है। नियंत्रण पहले के दो विचारों के संचालन का प्रबंधन करता है।
संगठन
केंद्रीकृत कंप्यूटिंग में संरचना का स्तर होता है, जहां सभी घटक तत्व सीधे नियंत्रण तत्व पर निर्भर होते हैं। विकेंद्रीकृत सिस्टम पदानुक्रमित है। निचला स्तर सिस्टम की संस्थाओं के सबसमुच्चय को एकजुट करता है। बदले में ये इकाई उपसमुच्चय उच्च स्तर पर गठबंधन करते हैं, अंततः केंद्रीय मास्टर तत्व पर समाप्त होते हैं। वितरित सिस्टम स्वायत्त तत्वों का संग्रह है जिसमें स्तरों की कोई अवधारणा नहीं है।
कनेक्शन
केंद्रीकृत प्रणालियां हब और स्पोक फैशन में घटकों को सीधे केंद्रीय मास्टर इकाई से जोड़ती हैं। विकेन्द्रीकृत सिस्टम ( नेटवर्क ऑपरेटिंग सिस्टम) में घटक तत्वों और केंद्रीय इकाई के बीच प्रत्यक्ष और अप्रत्यक्ष पथ सम्मिलित होते हैं। विशिष्ट रूप से इसे किन्हीं भी दो तत्वों के बीच केवल सबसे छोटे पथ के साथ पदानुक्रम के रूप में कॉन्फ़िगर किया गया है। अंत में, वितरित ऑपरेटिंग सिस्टम को किसी पैटर्न की आवश्यकता नहीं है; किसी भी दो तत्वों के बीच प्रत्यक्ष और अप्रत्यक्ष संबंध संभव हैं। 1970 के दशक की घटना " स्ट्रिंग आर्ट " या पूरी तरह से जुड़े नेटवर्क के रूप में स्पाइरोग्राफ ड्राइंग पर विचार करें, और आंशिक रूप से जुड़े सिस्टम के उदाहरण के रूप में अमेरिकी शहरों के बीच मकड़ी का जाला या अंतरराज्यीय राजमार्ग सिस्टम आदि है।
नियंत्रण
केंद्रीकृत और विकेन्द्रीकृत प्रणालियों ने सॉफ्टवेयर प्रवाह नियंत्रण को केंद्रीय इकाई से और उसके लिए निर्देशित किया है, जबकि वितरित सिस्टम मनमाने रास्तों के साथ संवाद करते हैं। यह तीसरे विचार की मुख्य धारणा है। नियंत्रण में दक्षता, उत्तरदेही और जटिलता को संतुलित करने वाले सिस्टम तत्वों को कार्य और डेटा आवंटित करना सम्मिलित है।
केंद्रीकृत और विकेन्द्रीकृत प्रणालियाँ अधिक नियंत्रण प्रदान करती हैं, विकल्पों को सीमित करके प्रशासन को संभावित रूप से आसान बनाती हैं। वितरित सिस्टम को स्पष्ट रूप से नियंत्रित करना अधिक जटिल होता है, किन्तु उत्तम क्षैतिज रूप से स्केल करें और सिस्टम-व्यापी विफलता के कम अंक प्रदान करें। एसोसिएशन इसके डिजाइन द्वारा लगाए गए जरूरतों के अनुरूप हैं, किन्तु संगठनात्मक अराजकता से नहीं
डिजाइन विचार
पारदर्शिता
पारदर्शिता या सिंगल-सिस्टम इमेज किसी एप्लिकेशन की उस सिस्टम को ट्रीट करने की क्षमता को संदर्भित करता है, जिस पर वह बिना इस बात की परवाह किए कि यह वितरित है या हार्डवेयर या अन्य कार्यान्वयन विवरणों के संबंध में संचालित होता है। पहुँच, स्थान, प्रदर्शन, नामकरण और प्रवासन सहित सिस्टम के कई क्षेत्र पारदर्शिता से लाभान्वित हो सकते हैं। पारदर्शिता का विचार सीधे वितरित ऑपरेटिंग सिस्टम के डिजाइन के हर पहलू में निर्णय लेने को प्रभावित करता है। पारदर्शिता कुछ आवश्यकताओं और/या अन्य डिज़ाइन विचारों पर प्रतिबंध लगा सकती है।
विशिष्ट अनुप्रयोग आवश्यकताओं को पूरा करने के लिए सिस्टम वैकल्पिक रूप से अलग-अलग डिग्री तक पारदर्शिता का उल्लंघन कर सकते हैं। उदाहरण के लिए, वितरित ऑपरेटिंग सिस्टम कंप्यूटर पर C: के रूप में हार्ड ड्राइव और दूसरे कंप्यूटर पर G: के रूप में ड्राइव प्रस्तुत कर सकता है। उपयोगकर्ता को उपकरण ड्राइवर्स या ड्राइव के स्थान के बारे में किसी भी ज्ञान की आवश्यकता नहीं है; एप्लिकेशन के दृष्टिकोण से दोनों उपकरण ही तरह से काम करते हैं। कम पारदर्शी इंटरफ़ेस के लिए एप्लिकेशन को यह जानने की आवश्यकता हो सकती है कि कौन सा कंप्यूटर ड्राइव को होस्ट करता है। पारदर्शिता डोमेन:
- स्थान पारदर्शिता - स्थान पारदर्शिता में पारदर्शिता, नामकरण पारदर्शिता और उपयोगकर्ता गतिशीलता के दो अलग-अलग पहलू सम्मिलित हैं। नामकरण पारदर्शिता की आवश्यकता है कि किसी भी सिस्टम इकाई के लिए भौतिक या तार्किक संदर्भों में कुछ भी इकाई के स्थान, या उपयोगकर्ता या एप्लिकेशन के स्थानीय या दूरस्थस्थ संबंध के किसी भी संकेत को उजागर नहीं करना चाहिए। उपयोगकर्ता की गतिशीलता के लिए सिस्टम संस्थाओं के लगातार संदर्भ की आवश्यकता होती है, तथापि सिस्टम स्थान जहाँ से संदर्भ उत्पन्न होता है।[7]: 20
- एक्सेस पारदर्शिता - उपयोगकर्ता इंटरफ़ेस के माध्यम से देखे जाने पर स्थानीय और दूरस्थस्थ सिस्टम संस्थाओं को अलग-अलग नहीं रहना चाहिए। वितरित ऑपरेटिंग सिस्टम, सिस्टम इकाई के लिए एकल एक्सेस तंत्र के संपर्क के माध्यम से इस धारणा को बनाए रखता है, तथापि वह इकाई उपयोगकर्ता के लिए स्थानीय या दूरस्थस्थ हो। पारदर्शिता यह तय करती है कि किसी विशेष सिस्टम इकाई तक पहुँचने के विधियों में कोई अंतर - या तो स्थानीय या दूरस्थस्थ - उपयोगकर्ता द्वारा अदृश्य और अनडिटेक्टेबल दोनों होना चाहिए।[3]: 84
- स्थानांतरण पारदर्शिता - संसाधन और गतिविधियां पूरी तरह से सिस्टम द्वारा नियंत्रित और उपयोगकर्ता/एप्लिकेशन ज्ञान या क्रिया के बिना तत्व से दूसरे तत्व में स्थानांतरित हो जाती हैं।[35]: 16
- प्रतिकृति पारदर्शिता - प्रक्रिया या तथ्य यह है कि किसी संसाधन को किसी अन्य तत्व पर डुप्लिकेट किया गया है, सिस्टम नियंत्रण के अनुसार और उपयोगकर्ता/एप्लिकेशन ज्ञान या हस्तक्षेप के बिना होता है।[35]: 16
- समवर्ती पारदर्शिता - उपयोगकर्ता/अनुप्रयोग अन्य उपयोगकर्ताओं की उपस्थिति/गतिविधियों से अनजान और अप्रभावित हैं।[35]: 16
- विफलता पारदर्शिता - सिस्टम विफलताओं का पता लगाने और उपचार के लिए सिस्टम उत्तरदाई है। समस्या को हल करने के लिए सिस्टम की प्रतीक्षा करने के अतिरिक्त कोई उपयोगकर्ता ज्ञान/क्रिया सम्मिलित नहीं है।[8]: 30
- प्रदर्शन पारदर्शिता - स्थानीय या वैश्विक प्रदर्शन की कमी का पता लगाने और उपचार के लिए सिस्टम उत्तरदाई है। ध्यान दें कि सिस्टम नीतियां कुछ उपयोगकर्ताओं/उपयोगकर्ता वर्गों/कार्यों को दूसरों पर पसंद कर सकती हैं। कोई उपयोगकर्ता ज्ञान या सहभागिता नहीं। सम्मिलित है।[7]: 23
- आकार/पैमाने की पारदर्शिता - बिना किसी आवश्यक उपयोगकर्ता ज्ञान या बातचीत के सिस्टमअपनी भौगोलिक पहुंच, नोड्स की संख्या, नोड क्षमता के स्तर के प्रबंधन के लिए उत्तरदाई है।[7]: 23
- संशोधन पारदर्शिता - उपयोगकर्ता ज्ञान या कार्रवाई के बिना सिस्टम के उन्नयन और संशोधन और सिस्टम के मूलभूतढांचे में परिवर्तन के लिए सिस्टम उत्तरदाई है।[8]: 30
- नियंत्रण पारदर्शिता - सिस्टम सभी उपयोगकर्ताओं और अनुप्रयोगों के लिए सुसंगत उपस्थिति, अर्थ और अर्थ में सभी सिस्टम जानकारी, स्थिरांक, गुण, कॉन्फ़िगरेशन समुच्चयिंग्स आदि प्रदान करने के लिए उत्तरदाई है।[3]: 84
- डेटा पारदर्शिता - सिस्टम जहां इसे संग्रहीत करता है, उससे संबंधित उपयोगकर्ता ज्ञान या कार्रवाई के बिना अनुप्रयोगों को डेटा प्रदान करने के लिए सिस्टम उत्तरदाई है।[3]: 85
- समानांतरवाद पारदर्शिता - उपयोगकर्ता ज्ञान या सहभागिता के बिना कार्य निष्पादन को समानांतर करने की किसी भी क्षमता का दोहन करने के लिए सिस्टम उत्तरदाई है। तर्कसंगत रूप से पारदर्शिता का सबसे जटिल पहलू, और तनेनबाउम द्वारा वितरित सिस्टम डिजाइनरों के लिए पवित्र कंघी बनानेवाले की रेती के रूप में वर्णित।[36]: 23–25
अंतर-प्रक्रिया संचार
इंटर-प्रोसेस कम्युनिकेशन (आईपीसी) नोड के अंदरऔर वितरित ओएस में नोड्स के बीच थ्रेड (कंप्यूटर विज्ञान) और/या प्रक्रिया (कंप्यूटिंग) दोनों के बीच सामान्य संचार, प्रक्रिया इंटरैक्शन और डेटा प्रवाह का कार्यान्वयन है। इंट्रा-नोड और इंटर-नोड संचार आवश्यकताएं निम्न-स्तरीय IPC डिज़ाइन को संचालित करती हैं, जो पारदर्शिता का समर्थन करने वाले संचार कार्यों को प्रयुक्त करने के लिए विशिष्ट दृष्टिकोण है। इस अर्थ में, वितरित ऑपरेटिंग सिस्टम के निम्न-स्तरीय डिज़ाइन विचारों में इंटरप्रोसेस संचार सबसे बड़ी अंतर्निहित अवधारणा है।
प्रक्रिया प्रबंधन
प्रक्रिया प्रबंधन (कंप्यूटिंग) वितरित प्रक्रियाओं के बीच संसाधनों के प्रभावी और कुशल साझाकरण के लिए नीतियां और तंत्र प्रदान करता है। ये नीतियां और तंत्र प्रक्रियाओं और होस्ट के आवंटन और डी-आवंटन को प्रोसेसर के साथ-साथ चलाने, निलंबित करने, माइग्रेट करने, रोकने या प्रक्रिया निष्पादन को फिर से प्रारंभ करने के लिए संचालन का समर्थन करते हैं। जबकि ये संसाधन और संचालन दूसरे के संबंध में स्थानीय या दूरस्थस्थ हो सकते हैं, वितरित ओएस सिस्टम में सभी प्रक्रियाओं पर राज्य और सिंक्रनाइज़ेशन बनाए रखता है।
उदाहरण के रूप में, लोड संतुलन (कंप्यूटिंग) सामान्य प्रक्रिया प्रबंधन कार्य है। लोड बैलेंसिंग नोड के प्रदर्शन की निगरानी करता है और सिस्टम के संतुलन से बाहर होने पर गतिविधि को नोड्स में स्थानांतरित करने के लिए उत्तरदाई होता है। लोड बैलेंसिंग फ़ंक्शन स्थानांतरित करने के लिए प्रक्रिया चुन रहा है। कर्नेल प्राथमिकता-आधारित पसंद सहित कई चयन तंत्रों को नियोजित कर सकता है। यह तंत्र 'नवीनतम अनुरोध' जैसी नीति के आधार पर प्रक्रिया का चयन करता है। सिस्टम नीति को प्रयुक्त करता है
संसाधन प्रबंधन
संसाधन (कंप्यूटर विज्ञान) जैसे कि मेमोरी, फाइलें, उपकरण आदि पूरे सिस्टम में वितरित किए जाते हैं, और किसी भी समय, इनमें से किसी भी नोड में हल्के से निष्क्रिय वर्कलोड हो सकते हैं। लोड शेयरिंग और लोड बैलेंसिंग के लिए कई नीति-उन्मुख निर्णयों की आवश्यकता होती है, जिसमें निष्क्रिय सीपीयू खोजने से लेकर, कब स्थानांतरित करना है और किसे स्थानांतरित करना है। इन निर्णयों में सहायता के लिए कई एल्गोरिदम उपस्थितहैं; चूँकि, यह परिदृश्य के लिए सबसे उपयुक्त एल्गोरिदम और परिदृश्य के आसपास की स्थितियों को चुनने में निर्णय लेने की नीति के दूसरे स्तर की अनुरोध करता है।
विश्वसनीयता
वितरित ओएस उच्च स्तर की विश्वसनीयता, या त्रुटियों को रोकने और/या पुनर्प्राप्त करने की क्षमता प्राप्त करने के लिए आवश्यक संसाधन और सेवाएं प्रदान कर सकता है। दोष (प्रौद्योगिकी) भौतिक या तार्किक दोष हैं जो सिस्टम में त्रुटियों का कारण बन सकते हैं। सिस्टम के विश्वसनीय होने के लिए, उसे किसी तरह दोषों के प्रतिकूल प्रभावों को दूरस्थ करना चाहिए।
दोषों से निपटने के प्राथमिक विधियों में दोष से बचाव, दोष-सहिष्णुता डिजाइन और दोष का पता लगाना और पुनर्प्राप्ति सम्मिलित है। दोष परिहार में दोषों की घटना को कम करने के लिए किए गए सक्रिय उपाय सम्मिलित हैं। ये सक्रिय उपाय ट्रांसजेक्सन प्रसंस्करण, प्रतिकृति (कंप्यूटर विज्ञान) और प्रतिकृति (कंप्यूटर विज्ञान) यह प्राथमिक-बैकअप और बहु-प्राथमिक प्रतिकृति के रूप में हो सकते हैं। दोष सहनशीलता दोष की उपस्थिति में संचालन जारी रखने के लिए सिस्टम की क्षमता है। घटना में, सिस्टम को पूर्ण कार्यक्षमता का पता लगाना चाहिए और पुनर्प्राप्त करना चाहिए। किसी भी घटना में, की गई किसी भी कार्रवाई को एकल सिस्टम छवि को बनाए रखने के लिए हर संभव प्रयास करना चाहिए।
उपलब्धता
उपलब्धता समय का वह अंश है जिसके समय सिस्टम अनुरोधों का उत्तर दे सकता है।
प्रदर्शन
कई बेंचमार्क (कंप्यूटिंग) कंप्यूटर के प्रदर्शन को मापते हैं; थ्रूपुट, प्रतिक्रिया समय, प्रति यूनिट समय कार्य पूर्णता, सिस्टम उपयोग, आदि। वितरित ओएस के संबंध में, प्रदर्शन अधिकांशतः समानांतर कंप्यूटिंग और आईपीसी के बीच संतुलन के लिए आसवित होता है।[citation needed] ग्रैन्युलैरिटी का प्रबंधन या समर्थन के लिए आवश्यक संदेशों के समझदार संबंध में समानता की गणना में अत्यंत प्रभावी है।[citation needed] इसके अतिरिक्त, यह पहचानना कि कब डेटा कॉपी करने के अतिरिक्त अपने डेटा में माइग्रेशन को प्रोसेस करना अधिक लाभदायक होता है, प्रभावी भी होता है।[citation needed]
तुल्यकालन
सहयोगी समवर्ती कंप्यूटिंग में सिंक्रोनाइज़ेशन (कंप्यूटर विज्ञान) की अंतर्निहित आवश्यकता है, जो यह सुनिश्चित करता है कि परिवर्तन सही और पूर्वानुमेय फैशन में हों। इस आवश्यकता के सीमा को परिभाषित करने वाली तीन मूलभूतस्थितियाँ:
- या से अधिक प्रक्रियाओं को जारी रखने के लिए या अधिक प्रक्रियाओं को निश्चित बिंदु पर सिंक्रनाइज़ करना चाहिए,
- जारी रखने के लिए या अधिक प्रक्रियाओं को अतुल्यकालिक स्थिति के लिए प्रतीक्षा करनी चाहिए,
- या प्रक्रिया को साझा संसाधन तक विशेष पहुंच स्थापित करनी चाहिए।
अनुचित तुल्यकालन से कई विफलता मोड हो सकते हैं जिनमें परमाणुता, स्थिरता, अलगाव और स्थायित्व की हानि, गतिरोध, लाइवलॉक और क्रमबद्धता की हानि सम्मिलित है।
अनुकूल
वितरित ऑपरेटिंग सिस्टम में अनुकूल (इंजीनियरिंग) वितरित ओएस की मॉड्यूलर विशेषताओं के माध्यम से और उच्च-स्तरीय सेवाओं का समृद्ध समुच्चय प्रदान करके बढ़ाया जाता है। कर्नेल/माइक्रोकर्नेल की पूर्णता और गुणवत्ता ऐसी सेवाओं के कार्यान्वयन को सरल बनाती है, और संभावित रूप से सेवा प्रदाताओं को ऐसी सेवाओं के लिए प्रदाताओं की अधिक पसंद करने में सक्षम बनाती है।[citation needed]
अनुसंधान
घटक वस्तु मॉडल के लिए विस्तारित प्रतिकृति मॉडल
E1 वितरित ऑपरेटिंग सिस्टमका आर्किटेक्चरल डिज़ाइन[37]
क्रोनस वितरित ऑपरेटिंग सिस्टम[38]
मिनिक्स वितरित ऑपरेटिंग सिस्टमका डिजाइन और विकास[39]
स्वीकृत उत्तरदायित्व के माध्यम से जटिलता/विश्वास जटिल परिस्थिति
- डेनाली अलगाव कर्नेल में स्केल और प्रदर्शन।[40]
बहु/कई-कोर केंद्रित प्रणालियां
- मल्टीकर्नेल: स्केलेबल मल्टीकोर सिस्टम के लिए नया ओएस आर्किटेक्चर।[41]
- कोरी: कई कोर के लिए ऑपरेटिंग सिस्टम।[42]
- अल्मोस: सीसी-नुमा मैनी-कोर के लिए उन्नत स्थानीयता प्रबंधन ऑपरेटिंग सिस्टम।[43]
विषमता में अधिक सीमाओं पर वितरित प्रसंस्करण
- Helios: उपग्रह गुठली के साथ विषम मल्टीप्रोसेसिंग।[44]
जटिलता के कई स्तरों में प्रभावी और स्थिर
- टेसलेशन: कई कोर क्लाइंट ओएस में स्पेस-टाइम विभाजन।[45]
यह भी देखें
- वितरित अभिकलन
- हार्मोनीओएस
- बेल लैब्स से प्लान 9
- इन्फर्नो (ऑपरेटिंग सिस्टम)
- मिनिक्स
- सिंगल सिस्टम इमेज (एसएसआई)
- कंप्यूटर सिस्टम आर्किटेक्चर
- मल्टी कर्नेल
- ऑपरेटिंग सिस्टम प्रोजेक्ट्स
- वितरित कम्प्यूटिंग में एडजर डब्ल्यू. दिज्क्स्ट्रा पुरस्कार
- वितरित कंप्यूटिंग सम्मेलनों की सूची
- स्वयंसेवी कंप्यूटिंग परियोजनाओं की सूची
संदर्भ
- ↑ 1.0 1.1 Tanenbaum, Andrew S (September 1993). "Distributed operating systems anno 1992. What have we learned so far?". Distributed Systems Engineering. 1 (1): 3–10. Bibcode:1993DSE.....1....3T. doi:10.1088/0967-1846/1/1/001.
- ↑ Nutt, Gary J. (1992). केंद्रीकृत और वितरित ऑपरेटिंग सिस्टम. Prentice Hall. ISBN 978-0-13-122326-4.
- ↑ 3.0 3.1 3.2 3.3 3.4 3.5 Gościński, Andrzej (1991). वितरित ऑपरेटिंग सिस्टम: तार्किक डिजाइन. Addison-Wesley Pub. Co. ISBN 978-0-201-41704-3.
- ↑ Hansen, Per Brinch, ed. (2001). Classic Operating Systems: From Batch Processing to Distributed Systems. Springer. ISBN 978-0-387-95113-3.
- ↑ Using LOTOS for specifying the CHORUS distributed operating system kernel Pecheur, C. 1992. Using LOTOS for specifying the CHORUS distributed operating system kernel. Comput. Commun. 15, 2 (Mar. 1992), 93-102.
- ↑ COOL: kernel support for object-oriented environments Habert, S. and Mosseri, L. 1990. COOL: kernel support for object-oriented environments. In Proceedings of the European Conference on Object-Oriented Programming on Object-Oriented Programming Systems, Languages, and Applications (Ottawa, Canada). OOPSLA/ECOOP '90. ACM, New York, NY, 269-275.
- ↑ 7.0 7.1 7.2 7.3 7.4 Sinha, Pradeep Kumar (1997). Distributed Operating Systems: Concepts and Design. IEEE Press. ISBN 978-0-7803-1119-0.
- ↑ 8.0 8.1 8.2 Chow, Randy; Theodore Johnson (1997). वितरित ऑपरेटिंग सिस्टम और एल्गोरिदम. Addison Wesley. ISBN 978-0-201-49838-7.
- ↑ Surajbali, B., Coulson, G., Greenwood, P., and Grace, P. 2007. Augmenting reflective middleware with an aspect orientation support layer. In Proceedings of the 6th international Workshop on Adaptive and Reflective Middleware: Held At the ACM/IFIP/USENIX international Middleware Conference (Newport Beach, CA, November 26–30, 2007). ARM '07. ACM, New York, NY, 1-6.
- ↑ Leiner, Alan L. (April 1954). "DYSEAC के लिए सिस्टम विनिर्देश". Journal of the ACM. 1 (2): 57–81. doi:10.1145/320772.320773.
- ↑ 11.0 11.1 Forgie, James W. (February 26–28, 1957). लिंकन TX-2 इनपुट-आउटपुट सिस्टम. Western Joint Computer Conference: Techniques for Reliability. Los Angeles, California: Association for Computing Machinery. pp. 156–160. doi:10.1145/1455567.1455594. ISBN 9781450378611.
- ↑ 12.0 12.1 C. Y. Lee (December 4–6, 1962). इंटरकम्युनिकेटिंग सेल, एक वितरित लॉजिक कंप्यूटर के लिए आधार. Fall Joint Computer Conference. Philadelphia, Pennsylvania: Association for Computing Machinery. pp. 130–136. doi:10.1145/1461518.1461531.
- ↑ Dreyfus, Phillippe (1958-05-08) [1958-05-06], written at Los Angeles, "System design of the Gamma 60" (PDF), Proceedings of the May 6–8, 1958, Western Joint Computer Conference: Contrasts in Computers, ACM, New York, NY, USA, pp. 130–133, IRE-ACM-AIEE '58 (Western), archived (PDF) from the original on 2017-04-03, retrieved 2017-04-03
- ↑ Leiner, A. L., Notz, W. A., Smith, J. L., and Weinberger, A. 1958. Organizing a network of computers to meet deadlines. In Papers and Discussions Presented At the December 9–13, 1957, Eastern Joint Computer Conference: Computers with Deadlines To Meet (Washington, D.C., December 09–13, 1957). IRE-ACM-AIEE '57
- ↑ Leiner, A. L., Smith, J. L., Notz, W. A., and Weinberger, A. 1958. PILOT, the NBS multicomputer system. In Papers and Discussions Presented At the December 3–5, 1958, Eastern Joint Computer Conference: Modern Computers: Objectives, Designs, Applications (Philadelphia, Pennsylvania, December 03–05, 1958). AIEE-ACM-IRE '58 (Eastern). ACM, New York, NY, 71-75.
- ↑ Bauer, W. F. 1958. Computer design from the programmer's viewpoint. In Papers and Discussions Presented At the December 3–5, 1958, Eastern Joint Computer Conference: Modern Computers: Objectives, Designs, Applications (Philadelphia, Pennsylvania, December 03–05, 1958). AIEE-ACM-IRE '58 (Eastern). ACM, New York, NY, 46-51.
- ↑ Leiner, A. L., Notz, W. A., Smith, J. L., and Weinberger, A. 1959. PILOT—A New Multiple Computer System. J. ACM 6, 3 (Jul. 1959), 313-335.
- ↑ Estrin, G. 1960. Organization of computer systems: the fixed plus variable structure computer. In Papers Presented At the May 3–5, 1960, Western Joint IRE-AIEE-ACM Computer Conference (San Francisco, California, May 03–05, 1960). IRE-AIEE-ACM '60 (Western). ACM, New York, NY, 33-40.
- ↑ Martin H. Weik, "A Third Survey of Domestic Electronic Digital Computing Systems," Ballistic Research Laboratories Report No. 1115, pg. 234-5, Aberdeen Proving Ground, Maryland, March 1961
- ↑ Mellor-Crummey, J. M. and Scott, M. L. 1991. Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Trans. Comput. Syst. 9, 1 (Feb. 1991), 21-65.
- ↑ Baker, M. G., Hartman, J. H., Kupfer, M. D., Shirriff, K. W., and Ousterhout, J. K. 1991. Measurements of a distributed file system. In Proceedings of the Thirteenth ACM Symposium on Operating Systems Principles (Pacific Grove, California, United States, October 13–16, 1991). SOSP '91. ACM, New York, NY, 198-212.
- ↑ Li, K. and Hudak, P. 1989. Memory coherence in shared virtual memory systems. ACM Trans. Comput. Syst. 7, 4 (Nov. 1989), 321-359.
- ↑ Garcia-Molina, H. and Salem, K. 1987. Sagas. In Proceedings of the 1987 ACM SIGMOD international Conference on Management of Data (San Francisco, California, United States, May 27–29, 1987). U. Dayal, Ed. SIGMOD '87. ACM, New York, NY, 249-259.
- ↑ Harris, T., Marlow, S., Peyton-Jones, S., and Herlihy, M. 2005. Composable memory transactions. In Proceedings of the Tenth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (Chicago, IL, USA, June 15–17, 2005). PPoPP '05. ACM, New York, NY, 48-60.
- ↑ Herlihy, M. and Moss, J. E. 1993. Transactional memory: architectural support for lock-free data structures. In Proceedings of the 20th Annual international Symposium on Computer Architecture (San Diego, California, United States, May 16–19, 1993). ISCA '93. ACM, New York, NY, 289-300.
- ↑ Herlihy, M., Luchangco, V., Moir, M., and Scherer, W. N. 2003. Software transactional memory for dynamic-sized data structures. In Proceedings of the Twenty-Second Annual Symposium on Principles of Distributed Computing (Boston, Massachusetts, July 13–16, 2003). PODC '03. ACM, New York, NY, 92-101.
- ↑ Shavit, N. and Touitou, D. 1995. Software transactional memory. In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing (Ottawa, Ontario, Canada, August 20–23, 1995). PODC '95. ACM, New York, NY, 204-213.
- ↑ Kubiatowicz, J., Bindel, D., Chen, Y., Czerwinski, S., Eaton, P., Geels, D., Gummadi, R., Rhea, S., Weatherspoon, H., Wells, C., and Zhao, B. 2000. OceanStore: an architecture for global-scale persistent storage. In Proceedings of the Ninth international Conference on Architectural Support For Programming Languages and Operating Systems (Cambridge, Massachusetts, United States). ASPLOS-IX. ACM, New York, NY, 190-201.
- ↑ Gifford, D. K. 1979. Weighted voting for replicated data. In Proceedings of the Seventh ACM Symposium on Operating Systems Principles (Pacific Grove, California, United States, December 10–12, 1979). SOSP '79. ACM, New York, NY, 150-162
- ↑ Dwork, C., Lynch, N., and Stockmeyer, L. 1988. Consensus in the presence of partial synchrony. J. ACM 35, 2 (Apr. 1988), 288-323.
- ↑ Lamport, L., Shostak, R., and Pease, M. 1982. The Byzantine Generals Problem. ACM Trans. Program. Lang. Syst. 4, 3 (Jul. 1982), 382-401.
- ↑ Schlichting, R. D. and Schneider, F. B. 1983. Fail-stop processors: an approach to designing fault-tolerant computing systems. ACM Trans. Comput. Syst. 1, 3 (Aug. 1983), 222-238.
- ↑ Chandy, K. M. and Lamport, L. 1985. Distributed snapshots: determining global states of distributed systems. ACM Trans. Comput. Syst. 3, 1 (Feb. 1985), 63-75.
- ↑ Strom, R. and Yemini, S. 1985. Optimistic recovery in distributed systems. ACM Trans. Comput. Syst. 3, 3
- ↑ 35.0 35.1 35.2 Galli, Doreen L. (2000). Distributed Operating Systems: Concepts and Practice. Prentice Hall. ISBN 978-0-13-079843-5.
- ↑ Tanenbaum, Andrew S. (1995). वितरित ऑपरेटिंग सिस्टम. Prentice Hall. ISBN 978-0-13-219908-7.
- ↑ L.B. Ryzhyk, A.Y. Burtsev. Architectural design of dE1 distributed operating system. System Research and Information Technologies international scientific and technical journal, October 2004, Kiev, Ukraine.
- ↑ Vinter, S. T. and Schantz, R. E. 1986. The Cronus distributed operating system. In Proceedings of the 2nd Workshop on Making Distributed Systems Work (Amsterdam, Netherlands, September 08–10, 1986). EW 2. ACM, New York, NY, 1-3.
- ↑ Ramesh, K. S. 1988. Design and development of MINIX distributed operating system. In Proceedings of the 1988 ACM Sixteenth Annual Conference on Computer Science (Atlanta, Georgia, United States). CSC '88. ACM, New York, NY, 685.
- ↑ Whitaker, A., Shaw, M., and Gribble, S. D. 2002. In Proceedings of the 5th Symposium on Operating Systems Design and Implementation
- ↑ Baumann, A., Barham, P., Dagand, P., Harris, T., Isaacs, R., Peter, S., Roscoe, T., Schüpbach, A., and Singhania, A. 2009. In Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles (Big Sky, Montana, USA, October 11–14, 2009). SOSP '09.
- ↑ S. Boyd-Wickizer, H. Chen, R. Chen, Y. Mao, F. Kashoek, R. Morris, A. Pesterev, L. Stein, M. Wu, Y. Dai, Y. Zhang, and Z. Zhang. Proceedings of the 2008 Symposium on Operating Systems Design and Implementation (OSDI), December 2008.
- ↑ Almaless, G. and Wajsbürt, F. 2011. In Proceedings of the 5th national seminar of GDR SoC-SIP, Lyon, France, 2011.
- ↑ Nightingale, E. B., Hodson, O., McIlroy, R., Hawblitzel, C., and Hunt, G. 2009. In Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles (Big Sky, Montana, USA, October 11–14, 2009). SOSP '09.
- ↑ Rose Liu, Kevin Klues, and Sarah Bird, University of California at Berkeley; Steven Hofmeyr, Lawrence Berkeley National Laboratory; Krste Asanović and John Kubiatowicz, University of California at Berkeley. HotPar09.
अग्रिम पठन
- Chow, Randy; Theodore Johnson (1997). Distributed Operating Systems and Algorithms. Addison Wesley. ISBN 978-0-201-49838-7.
- Sinha, Pradeep Kumar (1997). Distributed Operating Systems: Concepts and Design. IEEE Press. ISBN 978-0-7803-1119-0.
- Galli, Doreen L. (2000). Distributed Operating Systems: Concepts and Practice. Prentice Hall. ISBN 978-0-13-079843-5.
बाहरी संबंध