ऑपरेटिंग सिस्टम

डिस्‍ट्रीब्‍यूटेड ऑपरेटिंग सिस्‍टम

डिस्‍ट्रीब्‍यूटेड ऑपरेटिंग सिस्‍टम (Distributed Operating System)

डिस्‍ट्रीब्‍यूटेड ऑपरेटिंग सिस्‍टम में यूजर ठीक उसी प्रकार रिमोट रिसोर्सेस का उपयोग करते हैं जिस प्रकार लोकल रिसोर्सेस (local resources) का। एक साइट (site) से दूसरे साइट (site) पर डेटा ओर प्रोसेसेस के माइग्रेशन (migration) को डिस्‍ट्रीब्‍यूटेड ऑपरेटिंग सिस्‍टम ही नियंत्रित करता हैं न कि यूजर।

मान लीजिए साइट A (site A) को कोई यूजर साइट B (site B) के किसी फाइल को एक्‍सेस (access) करना चाहता है। डिस्‍ट्रब्‍यूटेड ऑपरेटिंग सिस्‍टम में किसी फाइल को दो मेथड्स से ट्रान्‍सफर किया जा सकता है। पहले मेथड के तहत पूरे फाइल (entire file) को site B से site A पर ट्रान्‍सफर किया जाता हैं और site A के यूजर को उस फाइल पर लोकल फाइल की तरह सभी एक्‍सेस प्रदान किए जाते हैं। यदि site A का यूजर उस फाइल में कोई मॉडिफिकेशन करता हैं और उसे उस फाइल पर आगे एक्‍सेस करने की कोई आवश्‍यकता नहीं होती है तो उस फाइल की एक कॉपी site B पर वापस भेज दी जाती है। यह एप्रोच Andrew File System में प्रयुक्‍त होती थी।

दूसरे मेथड के तहत site B के फाइल के केवल उन हिस्‍सों (portions) को site A पर स्‍थानान्‍तरित किया जाता है, जो वास्‍तव में इमीडिएट टास्‍क (immediate task) के लिए आवश्‍यक होते हैं। यदि टास्‍क को पूरा करने में फाइल के दूसरे हिस्से (portion) की जरूरत होती है, तो वह हिस्‍सा ट्रान्‍सफर कर दिया जाता है। जब site A के यूजर को उस फाइल को एक्‍सेस करने की जरूरत नहीं रह जाती है, तो फाइल के वे भाग (parts) जिन्‍हें मॉडिफाई किया गया हो, site B को वापस भेज दिए जाते हैं। Sun Micro system का Network File System (NFS) प्रोटोकॉल इस मेथड का प्रयोग करता है।

इन दोनों मेथड्स की पूर्व चर्चा से यह स्‍पष्‍ट कर दूं-यदि सम्‍पूर्ण फाइल (entire file) को एक्‍सेस या ट्रान्‍सफर करना हो तो पहले मेथड तथा यदि बड़े फाइल के कुछ हिस्‍सों को एक्‍सेस या ट्रान्‍सफर करना हो तो दूसरे मेथड का प्रयोग उपयोगी है। यदि दोनों sites एक-दूसरे से कम्‍पेटिबल (compatible) न हो, उदाहरणास्‍वरूप यदि दोनों sites कैरेक्‍टर-कोड के रिप्रेजेन्‍टेशन (Character-Code Representation) के लिए भिन्‍न कैरेक्‍टर कोड का प्रयोग करते हैं, तो ऑपरेटिंग सिस्‍टम को डेटा ट्रान्‍सफर करने के अलावा डेटा को उचित कोड में ट्रान्‍सलेट भी करना पड़ता हैं।

कभी-कभी नेटवर्क में डेटा को ट्रान्‍सफर करने की बजाए कम्‍प्‍यूटेशन (computation) को ट्रान्‍सफर किया जाता है। कम्‍प्‍यूटेशन (computation) को ट्रान्‍सफर करने की प्रक्रिया कम्‍प्‍यूटेशन माइग्रेशन (computation migration) कही जाती है। उदाहरणस्‍वरूप-मान लीजिए किसी जॉब (job) को, विभिन्‍न बड़े फाइलों को, जो विभिन्‍न sites पर हैं, एक्‍सेस करने की आवश्‍यकता हैं। इस परिस्थिति में, विभिन्‍न sites के फाइलों को एक्‍सेस कर उनके परिणामों को उस पर लौटाना अधिक सुविधाजनक हैं, जिस साइट ने कम्‍प्‍यूटेशन को प्रारम्‍भ (initiate) किया हो।

प्रोसेस माइग्रेशन (process migration), कम्‍प्‍यूटेशन माइग्रेशन (computation migration) का लॉजिकल एक्‍सटेंशन (logical extension) है। डिस्‍ट्रीब्‍यूटेड ऑपरेटिंग सिस्‍टम में जब भी किसी प्रोसेस को एक्‍जक्‍यूट किया जाता हैं तो वह प्रोसेस उस site पर पूर्ण रूपेण एक्‍जक्‍यूट नहीं होता हैं, जिस पर उसे प्रारम्‍भ (initiate) किया गया हो। बल्कि वह प्रोसेस विभिन्‍न sites पर उप-प्रोसेसेस (sub-processes) में विभाजित होकर एक्‍जक्‍यूट करता हैं।

प्रोसेस माइग्रेशन (Process Migration) का प्रयोग मुख्‍यत: प्रोसेसेस या उप-प्रोसेसेस को नेटवर्क में प्रोसेस के वर्कलोड (Workload) को बाटने तथा कम्‍प्‍यूटेशन स्‍पीड (Computation) स्‍पीड को बढ़ाने के लिए किया जाता हैं। चूंकि प्रोसेस माइग्रेशन (Process Migration) द्वारा एक प्रोसेस को कई उप-प्रोसेसेस (Sub-Processes) में विभाजित कर नेटवर्क के विभिन्‍न Sites पर एक साथ एक्‍जक्‍यूट किया जाता है। अत: प्रोसेस का कम्‍प्‍यूटेशन स्‍पीड किया जाता है। अत: प्रोसेस का कम्‍प्‍यूटेशन स्‍पीड (Computation speed) बढ़ जाता है।