कोड मोबिलिटी

वितरित कंप्यूटिंग में, कोड मोबिलिटी मशीन या एप्लिकेशन से दूसरे मशीन में आंकड़ों का विस्थापन (या स्थानांतरित) होने के लिए कंप्यूटर प्रोग्राम, कोड या ऑब्जेक्ट चलाने की क्षमता होती है। यह संगणक संजाल के नोड्स में मोबाइल कोड को स्थानांतरित करने की प्रक्रिया होती है, जहां वितरित संगणना के विपरीत 'डेटा' को स्थानांतरित किया जाता है।

डेटा के अतिरिक्त प्रणाली के कुछ भागों के मध्य कोड या प्रक्रियाओं के संचलन की आवश्यकता के लिए वितरित प्रणालियों में यह सामान्य अभ्यास किया जाता है।

सामान्यतः कोड मोबिलिटी के उदाहरणों में नेटवर्क पर डाउनलोड किये गये आलेख सम्मिलित होते हैं (उदाहरण के लिए जावाआलेख, वीबीआलेख), जावा एप्लेट्स, एक्टिवएक्स नियंत्रण, फ्लैश एनिमेशन, शॉकवेव मूवीज (अतिरिक्त) और मैक्रोज़ (कंप्यूटर विज्ञान) माइक्रोसॉफ्ट ऑफिस दस्तावेजों के अंदर अंतर्निहित किए गए हैं।

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

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

इस प्रकार कोड मोबिलिटी के अंदर अनेक प्रतिमान या स्थापत्य शैली उपस्थित होती हैं।


 * दूरस्थ मूल्यांकन (रिमोट इवैल्यूएशन) - ग्राहक निष्पादन के लिए दूरस्थ मशीन को कोड भेजता है।
 * कोड ऑन डिमांड - ग्राहक स्थानीय रूप से निष्पादित करने के लिए रिमोट मशीन से कोड डाउनलोड करता है।
 * मोबाइल एजेंट - ऑब्जेक्ट्स या कोड स्वायत्त रूप से मशीनों के मध्य माइग्रेट करने की क्षमता के साथ कार्य करता है।

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

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

यह भी देखें

 * कोड ऑन डिमांड
 * मोबाइल एजेंट
 * दूरस्थ मूल्यांकन (रिमोट इवैल्यूएशन)