विण्डोविंग सिस्टम

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

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

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

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

प्रदर्शन सर्वर प्रोटोकॉल नेटवर्क सक्षम या नेटवर्क पारदर्शिता भी हो सकता है, जो ग्राहकों के कार्यान्वयन की सुविधा प्रदान करते है।

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

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

X11


प्रदर्शन सर्वर का उदाहरण X.Org सर्वर है, जो कर्नेल के शीर्ष का उपयोग करता है (सामान्यतः यूनिक्स जैसा कर्नेल, जैसे लिनक्स या बीएसडी)। यह उपयोगकर्ता इनपुट डेटा प्राप्त करता है (उदाहरण के लिए लिनक्स पर evdev से) एवं इसे अपने ग्राहकों को पास करता है। प्रदर्शन सर्वर अपने ग्राहकों से डेटा भी प्राप्त करता है; एवं डेटा को प्रोसेस करता है, यह कंपोज़िटिंग करता है कि लिनक्स पर यह डेटा को तीन कर्नेल घटकों में पास करता है- प्रत्यक्ष प्रतिपादन प्रबंधक, ग्राफिक्स निष्पादन प्रबंधक या केएमएस चालक है। घटक डेटा को फ्रेम बफर में लिखता है एवं फ्रेम बफर की सामग्री को कनेक्टेड स्क्रीन पर प्रेषित किया जाता है एवं प्रदर्शित किया जाता है। जो एक्स जीएलएक्स पर निर्भर है।

प्रदर्शन सर्वर अवधारणा के कार्यान्वयन में एक्स विंडो प्रणाली है, विशेष रूप से इसका वास्तव में उपयोग किया जाने वाला संस्करण X.Org सर्वर एवं एक्सलिब एवं एक्ससीबी क्लाइंट लाइब्रेरी है। X.Org सर्वर डिस्प्ले सर्वर है, किन्तु इसके वर्तमान कार्यान्वयन में यह कंपोज़िटिंग करने के लिए प्रोग्राम, कंपोज़िटिंग विंडो मैनेजर पर निर्भर करता है। उदाहरण म्यूटर या केविन हैं।

एक्स11 डिस्प्ले सर्वर प्रोटोकॉल को प्रारम्भ करने वाले सर्वर के उल्लेखनीय उदाहरण X.Org सर्वर, एक्सफ्री86, एक्सक्वार्ट्ज एवं सिगविन/एक्स हैं, जबकि एक्स11 डिस्प्ले सर्वर प्रोटोकॉल को प्रारम्भ करने वाले क्लाइंट लाइब्रेरी एक्सलिब एवं एक्ससीबी हैं।

वेलैंड


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

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

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

वेलैंड का कार्यान्वयन एमआईटी लाइसेंस, लीब्वॉयलैंड ग्राहकों एवं लिबवेलैंड-सर्वर लाइब्रेरी के अन्तर्गत उपलब्ध है।

क्रोम ओएस में वेलैंड समर्थन जोड़ने का प्रयास निरंतर है।

मीर
मीर (सॉफ्टवेयर), डिस्प्ले सर्वर प्रोटोकॉल के साथ होता है जो एक्स11 एवं वेलैंड द्वारा उपयोग किए जाने वाले प्रोटोकॉल से भिन्न है। मीर अतिरिक्त रूप से X11 प्रोटोकॉल का समर्थन करता है। यह कैननिकल लिमिटेड द्वारा विकसित किया गया था एवं इसका उद्देश्य उबंटू (ऑपरेटिंग प्रणाली ) के लिए मुख्य डिस्प्ले सर्वर होना था। 2017 तक, इसे उबंटू के डेस्कटॉप संस्करणों के लिए वेलैंड डिस्प्ले सर्वर से परिवर्तित किया गया है।

जीपीएलवी3 के अन्तर्गत उपलब्ध मीर डिस्प्ले सर्वर, लिबमिर-सर्वर एवं लिबमिर-क्लाइंट लाइब्रेरी के कार्यान्वयन हैं।

सरफेसफ्लिंगर
गूगल एंड्रॉइड के लिए (मुख्य रूप से मोबाइल उपकरणों के लिए अन्य लिनक्स कर्नेल-आधारित ऑपरेटिंग प्रणाली) सरफेसफ्लिंगर नामक डिस्प्ले सर्वर विकसित किया है।

एंड्रॉइड में प्रत्येक सतह पर प्रस्तुत किया जाता है; सतहों को अनुप्रयोगों द्वारा निर्मित किया जाता है जिसे सरफेसफ्लिंगर द्वारा प्रबंधित किया जाता है।

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

एंड्रॉइड में कंपोज़िंग के लिए, सरफेस को सरफेसफ्लिंगर को भेजा जाता है, जो कंपोज़िंग करने के लिए ओपन जीएलईएस का उपयोग करता है।

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

क्वार्ट्ज कंपोजिटर
ऑपरेटिंग प्रणाली के एप्पल के मैक ओएस सदस्य के लिए, क्वार्ट्ज कंपोजिटर विण्डोविंग प्रणाली में डिस्प्ले सर्वर एवं विंडो मैनेजर के कार्यों को पूर्ण करता है।

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

यूनिक्स जैसे ऑपरेटिंग प्रणाली के लिए

 * योजना 9 के लिए 8½ एवं रियो बेल लैब्स प्रणाली
 * फ्रेमबफरयूआई इन-कर्नेल विण्डोविंग प्रणाली
 * एचपी विंडोज/9000 (एचपी-यूएक्स के प्रारंभ संस्करणों पर)
 * सफायर पर्क के लिए
 * प्रबंधक (एमजीआर)
 * मेतीस
 * मीर (सॉफ्टवेयर)
 * एनईडब्ल्यूएस/ओपन विंडोज
 * नेक्स्ट डीपीएस
 * कक्षीय (रेडॉक्स (ऑपरेटिंग प्रणाली ))
 * क्यूटी विस्तारित
 * क्वार्ट्ज कंपोजिटर (मैक ओएस एक्स)
 * सनव्यू
 * ट्विन (विंडो प्रणाली ) (टेक्स्ट विन्डोज़)
 * डब्ल्यू विंडो प्रणाली
 * वेलैंड (प्रदर्शन सर्वर)
 * एक्स विंडो प्रणाली
 * एक्सफ़ास्ट
 * Xynth

विंडोज एनटी के लिए विंडोज एनटी-फैमिली ऑपरेटिंग प्रणाली

 * माइक्रोसॉफ़्ट विंडोज़ (विंडोज विस्टा) में डेस्कटॉप विंडो मैनेजर (डीडब्ल्यूएम)
 * रिएक्टोस
 * क्लासिक शैल
 * पोक्की
 * रेट्रोयूआई
 * तलिस्मान डेस्कटॉप

वर्ल्ड वाइड वेब विण्डोविंग प्रणाली

 * डोजो टूलकिट
 * एक्सट (जावास्क्रिप्ट लाइब्रेरी)
 * टिब्को सॉफ्टवेयर जनरल इंटरफ़ेस
 * वेबडब्ल्यूएम

अन्य

 * डोमेन
 * ग्राफिक्स पर्यावरण प्रबंधक
 * अंतर्ज्ञान (अमिगा)
 * माइक्रोविंडो
 * मिनीजीयूआई
 * ओओएचजी
 * वीसी ऑन
 * ओपन वीएमएस ग्राफिकल यूजर इंटरफेस (वैक्स वर्कस्टेशन सॉफ्टवेयर)

कुछ प्रणाली जैसे माइक्रोसॉफ्ट विंडोज का इतिहास (विन्डोज़ एक्सपी, विंडोज 9x), क्लासिक मैक ओएस (संस्करण मैक ओएस 9 एवं इससे पूर्व), एवं पाम ओएस में विण्डोविंग प्रणाली होती है जो ओएस के साथ एकीकृत होती है।

यह भी देखें

 * प्रदर्शन सर्वरों की सूची
 * ग्राफिकल यूजर इंटरफेस का इतिहास
 * विजेट टूलकिट
 * डेस्कटॉप वातावरण