(मैं गनोम और एक्स के संबंध में देख रहा हूं। मैं अपनी कुछ समझ साझा करना चाहता हूं। मैं इसे तार्किक तरीके से प्रस्तुत करूंगा जितना मैं कर सकता हूं।)
1. GUI किससे बना है?
नीचे एक जीयूआई के बुनियादी घटकों का चित्रण है।
मुख्य घटक प्रदर्शन सर्वर है । कई डिस्प्ले सर्वर उपलब्ध हैं। जैसे कि:
- X11 (ज्यादातर * निक्स के लिए)
- वेलैंड (ज्यादातर * निक्स के लिए)
- मीर (ज्यादातर * निक्स के लिए)
- सर्फेसफ्लिंगर (यह Google Android के लिए है।)
- क्वार्ट्ज कम्पोज़िटर (यह वही है जो Apple MacOS उपयोग करता है।)
- डेस्कटॉप विंडो मैनेजर (यह माइक्रोसॉफ्ट विंडोज का उपयोग करता है।)
2. एक्स क्या है?
एक्स, एक्स 11 और एक्स विंडो सिस्टम पर्यायवाची हैं। वे सभी एक खिड़की प्रणाली के लिए खड़े हैं । विंडिंग सिस्टम एक प्रकार का ग्राफिकल यूजर इंटरफेस (GUI है, जैसा कि मैंने ऊपर बताया है) जो एक यूजर इंटरफेस के लिए WIMP (विंडोज़, आइकन, मेन्यू, पॉइंटर) प्रतिमान को लागू करता है।
यहां लिनक्स और विंडोज सिस्टम दोनों के लिए प्रमुख विंडोिंग सिस्टम की सूची दी गई है।
किसी भी विंडोिंग सिस्टम के मुख्य घटक को आमतौर पर डिस्प्ले सर्वर कहा जाता है (कोई आश्चर्य नहीं क्योंकि विंडोिंग सिस्टम एक प्रकार का GUI है और डिस्प्ले सर्वर किसी भी GUI का प्रमुख भाग है), हालांकि विंडो सर्वर या कंपोजिटर जैसे अन्य नामों का भी उपयोग किया जाता है।
कोई भी एप्लिकेशन जो अपने GUI को चलाता और प्रस्तुत करता है , वह डिस्प्ले सर्वर का क्लाइंट है । डिस्प्ले सर्वर और उसके क्लाइंट्स संचार प्रोटोकॉल पर एक दूसरे के साथ संवाद करते हैं, जिसे आमतौर पर डिस्प्ले सर्वर प्रोटोकॉल कहा जाता है , डिस्प्ले सर्वर क्लाइंट और उपयोगकर्ता के बीच मध्यस्थ होता है। डिस्प्ले सर्वर कर्नेल से सभी इनपुट प्राप्त करता है, जो कि कर्नेल सभी संलग्न इनपुट डिवाइसों से प्राप्त करता है, जैसे कीबोर्ड, पॉइंटिंग डिवाइस या टचस्क्रीन और इसे सही क्लाइंट तक पहुंचाता है। कंप्यूटर मॉनीटर के लिए डिस्प्ले सर्वर क्लाइंट के आउटपुट के लिए भी जिम्मेदार है। एक प्रदर्शन सर्वर प्रोटोकॉलनेटवर्क सक्षम या नेटवर्क पारदर्शी भी हो सकता है। (इसलिए आप देख सकते हैं, यह अनिवार्य रूप से डेटा प्रवाह और मार्ग के बारे में है, दृश्य डेटा अभी भी डेटा है।)
और यहाँ के अनुसार :
एक एक्स सर्वर एक प्रोग्राम है जो अन्य कार्यक्रमों के लिए डिस्प्ले और उपयोगकर्ता इनपुट सेवाएं प्रदान करता है। इसकी तुलना में, एक फ़ाइल सर्वर फ़ाइल भंडारण उपकरणों तक पहुंच के साथ अन्य कार्यक्रम प्रदान करता है। फ़ाइल सर्वर आमतौर पर एक दूरस्थ स्थान पर स्थित होते हैं और आप उस मशीन से फ़ाइल सर्वर की सेवाओं का उपयोग करते हैं, जिस पर आप स्थित हैं। इसके विपरीत, एक एक्स सर्वर आमतौर पर उस मशीन पर चल रहा है जिसे आप पर स्थित हैं ; प्रदर्शन और उपयोगकर्ता इनपुट सेवाओं को आपके मशीन पर चलने वाले कार्यक्रमों के साथ-साथ दूरस्थ मशीनों पर चलने वाले कार्यक्रमों द्वारा अनुरोध किया जा सकता है ।
तो X से बना है:
- प्रदर्शन सर्वर
- प्रदर्शन सर्वर प्रोटोकॉल
- विकास के लिए कुछ परिवाद
- और बाकी चीज़ें
यहाँ के अनुसार :
जीयूआई पर्यावरण के लिए एक्स बुनियादी ढांचा प्रदान करता है: डिस्प्ले डिवाइस पर खिड़कियां और मूविंग और माउस और कीबोर्ड के साथ इंटरैक्ट करना। एक्स उपयोगकर्ता इंटरफ़ेस को अनिवार्य नहीं करता है - यह व्यक्तिगत कार्यक्रमों द्वारा नियंत्रित किया जाता है। जैसे, एक्स-आधारित वातावरण की दृश्य स्टाइल बहुत भिन्न होती है; अलग-अलग कार्यक्रम मौलिक रूप से अलग-अलग इंटरफेस पेश कर सकते हैं।
दूसरे शब्दों में, X केवल एक प्रोग्राम को ड्राइंग / मूविंग विंडो और इनपुट इंटरेक्शन जैसी बुनियादी चीजों को करने की क्षमता देता है । X दृश्य शैलियों को लागू नहीं करता है। तो आपने जो कहा " ... यह यूआई को प्रस्तुत करने के लिए अनुप्रयोगों के लिए एक मानक देता है ... " गलत है।
3. GNOME / KDE क्या है
GNOME और KDE दोनों लिनक्स डेस्कटॉप एनवायरनमेंट हैं । एक डेस्कटॉप वातावरण ऑपरेटिंग सिस्टम के शीर्ष पर चलने वाले कार्यक्रमों का एक बंडल है, जो एक सामान्य जीयूआई साझा करते हैं ।
लेकिन जैसा कि मैंने ऊपर उल्लेख किया है, X11, एक प्रदर्शन सर्वर के रूप में, केवल Xlib या XBB जैसे कुछ कामों के माध्यम से मूल ड्राइंग की क्षमता प्रदान करता है । ऐसे कार्यों के माध्यम से X11 को सीधे इंटरफ़ेस करने वाले अनुप्रयोगों में मौलिक रूप से भिन्न दृश्य शैलियाँ हो सकती हैं ।
तो आम GUI कैसे बनाये? यहाँ विजेट टूलकिट आता है । जैसे जीटीके + और क्यूटी । वे वायलैंड और X11 विंडोिंग सिस्टम में लोकप्रिय हैं ।
GNOME GTK + का उपयोग करें।
KDE Qt का उपयोग करते हैं।
और यहाँ एक्स विंडो सिस्टम डेस्कटॉप वातावरण की तुलना है।
संक्षेप में...
मैं एक मोटा वैचारिक चित्रण करता हूं। OS के ऊपर के 3 भाग बहुत ही अनुकूलन योग्य हैं। इसलिए इतना लचीलापन (भ्रम) पैदा होता है।
ADD 1 - 1:26 PM 9/21/2018
और यहाँ क्यूटी और जीटीके के बारे में कुछ चर्चा की गई है (शायद इस थ्रेड के लिए ऑफकोप्टिक हालांकि ...)