Linux console
लिनक्स कंसोल लिनक्स कर्नेल का आंतरिक सिस्टम कंसोल है। सिस्टम कंसोल वह उपकरण है जो सभी कर्नेल संदेशों और चेतावनियों को प्राप्त करता है और जो एकल उपयोगकर्ता मोड में लॉगिन की अनुमति देता है। लिनक्स कंसोल कर्नेल और अन्य प्रक्रियाओं के लिए उपयोगकर्ता को पाठ आउटपुट भेजने और उपयोगकर्ता से पाठ इनपुट प्राप्त करने का एक तरीका प्रदान करता है। उपयोगकर्ता आम तौर पर कंप्यूटर कीबोर्ड के साथ पाठ दर्ज करता है और कंप्यूटर मॉनिटर पर आउटपुट पाठ पढ़ता है। लिनक्स कर्नेल आभासी कंसोल का समर्थन करता है-ऐसे कंसोल जो तार्किक रूप से अलग होते हैं, लेकिन जो एक ही भौतिक कीबोर्ड और प्रदर्शन का उपयोग करते हैं। लिनक्स कंसोल (और लिनक्स वर्चुअल कंसोल) को लिनक्स कर्नेल के वीटी (वर्चुअल टर्मिनल) सबसिस्टम द्वारा लागू किया जाता है, और वे किसी भी यूजर स्पेस सॉफ्टवेयर पर निर्भर नहीं होते हैं। यह एक टर्मिनल एमुलेटर के विपरीत है, जो एक उपयोगकर्ता स्थान प्रक्रिया है जो एक टर्मिनल का अनुकरण करती है, और आमतौर पर एक चित्रमय प्रदर्शन वातावरण में उपयोग की जाती है। लिनक्स कंसोल कर्नेल की पहली विशेषताओं में से एक था और मूल रूप से 1991 में लिनस टोरवाल्ड्स द्वारा लिखा गया था (लिनक्स का इतिहास देखें)। दो मुख्य कार्यान्वयन हैंः फ्रेमबफर और टेक्स्ट मोड। फ्रेमबफर कार्यान्वयन आधुनिक लिनक्स वितरण में डिफ़ॉल्ट है, और कर्नेल मोड सेटिंग के साथ, डिस्प्ले हार्डवेयर और सुविधाओं जैसे कि ग्राफिक्स दिखाने के लिए कर्नेल-स्तर का समर्थन प्रदान करता है जब सिस्टम बूट हो रहा होता है। लीगेसी टेक्स्ट मोड कार्यान्वयन का उपयोग सीजीए, ईजीए, एमडीए और वीजीए ग्राफिक्स कार्ड के साथ पीसी-संगत प्रणालियों में किया गया था। गैर-x86 वास्तुकला फ्रेमबफर मोड का उपयोग करते थे क्योंकि उनके ग्राफिक्स कार्ड पाठ मोड को लागू नहीं करते थे। लिनक्स कंसोल निश्चित आकार के बिटमैप, मोनोस्पेस फोंट का उपयोग करता है, जो आमतौर पर प्रति वर्ण 8x16 पिक्सेल तक डिफ़ॉल्ट होता है। लिनक्स कंसोल एक वैकल्पिक कर्नेल सुविधा है, और अधिकांश एम्बेडेड लिनक्स सिस्टम इसे सक्षम नहीं करते हैं। ये प्रणालियाँ आम तौर पर एक वैकल्पिक उपयोगकर्ता इंटरफेस प्रदान करती हैं (जैसे। वेब आधारित), या तुरंत एक ग्राफिकल यूजर इंटरफेस में बूट करें और इसे उपयोगकर्ता के साथ बातचीत करने के प्राथमिक साधन के रूप में उपयोग करें। लिनक्स कंसोल के अन्य कार्यान्वयनों में रिफ्रेश करने योग्य ब्रेल डिस्प्ले और सीरियल पोर्ट कंसोल का समर्थन करने के लिए ब्रेल कंसोल शामिल है। उद्देश्य लिनक्स कंसोल कर्नेल और अन्य प्रक्रियाओं के लिए उपयोगकर्ता को पाठ-आधारित संदेशों को आउटपुट करने और उपयोगकर्ता से पाठ-आधारित इनपुट प्राप्त करने का एक तरीका प्रदान करता है। लिनक्स में, कई उपकरणों का उपयोग सिस्टम कंसोल के रूप में किया जा सकता हैः एक वर्चुअल टर्मिनल, सीरियल पोर्ट, यूएसबी सीरियल पोर्ट, टेक्स्ट-मोड में वीजीए, फ्रेमबफर। कुछ आधुनिक लिनक्स-आधारित प्रणालियों में कर्नेल आधारित पाठ-मोड इनपुट और आउटपुट को पदावनत किया गया है, और इसके बजाय एक चित्रमय लोगो या प्रगति पट्टी दिखाती है जब सिस्टम बूट हो रहा होता है, जिसके बाद एक चित्रमय उपयोगकर्ता इंटरफेस (जैसे. डेस्कटॉप वितरण पर X.Org सर्वर, या एंड्रॉइड पर सर्फेसफ़्लिंगर)। कर्नेल बूट के दौरान, कंसोल का उपयोग आमतौर पर कर्नेल के बूट लॉग को प्रदर्शित करने के लिए किया जाता है। बूट लॉग में पता लगाए गए हार्डवेयर के बारे में जानकारी और बूट प्रक्रिया की स्थिति पर अपडेट शामिल हैं। इस समय, कर्नेल एकमात्र सॉफ्टवेयर है जो चल रहा है, और इसलिए उपयोगकर्ता-स्थान के माध्यम से लॉग इन करें (जैसे। syslog) संभव नहीं है, इसलिए कंसोल इस जानकारी को आउटपुट करने के लिए एक सुविधाजनक स्थान प्रदान करता है। एक बार जब कर्नेल बूटिंग समाप्त कर लेता है, तो यह init प्रक्रिया चलाता है (कंसोल को आउटपुट भी भेजता है), जो किसी भी पृष्ठभूमि डेमन को शुरू करने सहित बाकी सिस्टम के बूटिंग को संभालता है। इनित बूट प्रक्रिया पूरी होने के बाद, कंसोल का उपयोग कई आभासी टर्मिनलों को मल्टीप्लेक्स करने के लिए किया जाएगा (सी. टी. आर. एल.-ऑल्ट-एफ1, सी. टी. आर. एल.-ऑल्ट-एफ2 आदि, सी. टी. आर. एल.-ऑल्ट-लेफ्टएरो, सी. टी. आर. एल.-ऑल्ट-राइटएरो, या सी. एच. वी. टी. का उपयोग करके सुलभ)। प्रत्येक आभासी टर्मिनल पर, एक गेटी प्रक्रिया चलाई जाती है, जो बदले में उपयोगकर्ता को प्रमाणित करने के लिए/बिन/लॉगिन चलाती है। प्रमाणीकरण के बाद, एक कमांड शेल चलाया जाएगा। आभासी टर्मिनल, कंसोल की तरह, लिनक्स कर्नेल स्तर पर समर्थित हैं। लिनक्स कंसोल एक अंतिम प्रकार के "लिनक्स" को लागू करता है और इसके द्वारा उपयोग किए जाने वाले पलायन अनुक्रम कंसोल _ कोड्स मैन पेज में होते हैं। वर्चुअल कंसोल कई टेक्स्ट बफ़र्स के भंडारण की अनुमति देते हैं, जिससे विभिन्न कंसोल प्रोग्राम एक साथ चल सकते हैं लेकिन विभिन्न संदर्भों में उपयोगकर्ता के साथ बातचीत कर सकते हैं। उपयोगकर्ता के दृष्टिकोण से, यह कई स्वतंत्र कंसोल का भ्रम पैदा करता है। प्रत्येक आभासी कंसोल का अपना चरित्र सेट और कीबोर्ड लेआउट हो सकता है। लिनक्स 2.6 ने प्रत्येक आभासी कंसोल के लिए एक अलग फ़ॉन्ट लोड करने की क्षमता पेश की (कर्नेल संस्करण 2.6 से पहले केवल मांग पर फ़ॉन्ट बदलते हैं)। टेक्स्ट मोड कंसोल टेक्स्ट मोड कार्यान्वयन का उपयोग पीसी-आधारित प्रणालियों पर एक पुराने सीजीए/ईजीए/एमडीए/वीजीए वीडियो कार्ड के साथ किया जाता है जो टेक्स्ट-आधारित वीडियो मोड को लागू करता है। टेक्स्ट मोड में, कर्नेल वीडियो कार्ड में वर्णों की एक 2डी सरणी भेजता है, और वीडियो कार्ड प्रदर्शन के लिए वर्णों को पिक्सेल में बदल देता है। फॉन्ट, कैरेक्टर सेट और कीबोर्ड लेआउट टेक्स्ट बफर वीजीए मेमोरी का एक हिस्सा है जो कोड पॉइंट और कैरेक्टर विशेषताओं के संदर्भ में टेक्स्ट स्क्रीन की सामग्री का वर्णन करता है। टेक्स्ट बफर और फ़ॉन्ट में कोड बिंदु आम तौर पर स्क्रीन पर वर्णों को रखने के लिए टेक्स्ट टर्मिनल शब्दार्थ में उपयोग किए जाने वाले एन्कोडिंग के समान नहीं होते हैं। स्क्रीन पर ग्लिफ का सेट वर्तमान फ़ॉन्ट द्वारा निर्धारित किया जाता है। टेक्स्ट स्क्रीन को और ड्राइवरों द्वारा नियंत्रित किया जाता है। फोंट और टर्मिनल एनकोडिंग को बदलने के लिए एक उपयोगिता है जिसे कहा जाता है। लिनक्स कर्नेल (ड्राइवर) में कीबोर्ड इनपुट (कीबोर्ड लेआउट) के लिए लगभग पूरा समर्थन है, लेकिन यह थोड़ा असंगत रहता है क्योंकि यह विभिन्न वर्ण सेटों के साथ बुरी तरह से बातचीत करता है। लेआउट उपयोगिता द्वारा लोड किए जाते हैं। ये दोनों उपयोगिताएँ और संबंधित डेटा फ़ाइलें कई लिनक्स वितरणों के साथ भेजे गए लिनक्स कंसोल टूल्स http://lct.sourceforge.net में पैक की जाती हैं। कर्नेल स्तर पर लिनक्स के अंतर्राष्ट्रीयकरण के प्रयास 1994 में मार्कस कुह्न और एंड्रीज़ ब्रोवर द्वारा शुरू किए गए थे। टेक्स्ट मोड लिनक्स कंसोल किसी भी वीजीए-शैली के टेक्स्ट मोड का समर्थन करने में सक्षम है, लेकिन कर्नेल के पास इन मोड को सेट करने के लिए बहुत सीमित साधन हैं। एस. वी. जी. ए. टेक्स्टमोड मानक ई. जी. ए. और वी. जी. ए. मोड की तुलना में अधिक जटिल पाठ मोड को सक्षम करने में मदद करता है। यह कंसोल टूल्स के साथ पूरी तरह से संगत है, लेकिन डोसेमु, एस. वी. जी. ए. एल. बी. और डिस्प्ले सर्वर के साथ कुछ संघर्ष है। वर्तमान में, विभिन्न आभासी कंसोल पर विभिन्न मोड के लिए कोई समर्थन नहीं है। विंडोज और डी. ओ. एस. माइक्रोसॉफ्ट विंडोज (किसी भी संस्करण के) की तुलना में कंसोल का पूरी तरह से कार्यात्मक समर्थन नहीं है। वहाँ तुलनीय विशेषता, लेकिन केवल अनुप्रयोग सॉफ्टवेयर के लिए, विन 32 कंसोल है। यूनिकोड विंडोज एन. टी. आधारित प्रणालियों के बाद से समर्थित है, जो कोड पृष्ठों को बदलने और यूनिकोड का उपयोग करने की अनुमति देते हैं, लेकिन केवल विंडो मोड में। इसके अलावा, एन. टी. सिस्टम वी. जी. ए. के साथ असंगत अपने स्वयं के टेक्स्ट बफर प्रारूप का उपयोग करते हैं, जो हार्डवेयर टेक्स्ट मोड में एक ओवरहेड उत्पन्न करता है। विंडोज के गैर-एन. टी. संस्करणों में कोई यूनिकोड समर्थन नहीं है क्योंकि गैर-ए. एस. सी. आई. आई. कीबोर्ड लेआउट को त्रुटिपूर्ण कार्यान्वयन के कारण फिर से लोड किया जाना चाहिए। हाल के कर्नेल में कर्नेल मोड सेटिंग इसे कुछ वीडियो हार्डवेयर के लिए अधिक व्यावहारिक बनाती है। लिनक्स फ्रेमबफर कंसोल लिनक्स फ्रेमबफर (एफ. बी. डी. वी.) एक ग्राफिक हार्डवेयर-स्वतंत्र अमूर्त परत है, जिसे मूल रूप से लिनक्स कर्नेल को ऐप्पल मैकिनटोश जैसे सिस्टम पर एक टेक्स्ट कंसोल का अनुकरण करने की अनुमति देने के लिए लागू किया गया था, जिसमें टेक्स्ट-मोड डिस्प्ले नहीं है। अब यह किसी भी प्लेटफॉर्म पर कर्नेल स्पेस टेक्स्ट मोड एमुलेशन प्रदान करता है। (वर्तमान में अप्रचलित) एस. वी. जी. ए. टी. टेक्सटमोड पर इसका लाभ एक निर्भरता और बेहतर हार्डवेयर संगतता है। यह वीजीए टेक्स्ट मोड के सभी तकनीकी प्रतिबंधों को दूर करने की भी अनुमति देता है। लिनक्स फ्रेमबफर कंसोल केवल वर्णों को चित्रित करने के तरीकों में वीजीए कंसोल से अलग होता है। कीबोर्ड आयोजनों और आभासी कंसोल के समर्थन का प्रसंस्करण बिल्कुल समान है। लिनक्स सीरियल पोर्ट कंसोल लिनक्स सीरियल कंसोल सीरियल पोर्ट के माध्यम से एक कंसोल कार्यान्वयन है, जो कर्नेल विन्यास में CONFIG _ SERIAL _ CONSOLE विकल्प द्वारा सक्षम है। इसका उपयोग कुछ अंतर्निहित प्रणालियों और सर्वरों पर किया जा सकता है, जहां ऑपरेटर के साथ सीधे बातचीत की उम्मीद नहीं है। सीरियल कंसोल सिस्टम के लिए पहुँच के समान मोड की अनुमति देता है, लेकिन आमतौर पर आरएस-232 की छोटी बैंडविड्थ के कारण धीमी गति से। एक सीरियल कंसोल का उपयोग अक्सर एम्बेडेड सिस्टम के लिए सॉफ्टवेयर के विकास के दौरान किया जाता है, और कभी-कभी इसे डीबग पोर्ट के माध्यम से सुलभ छोड़ दिया जाता है। नियंत्रण वर्ण कंसोल कई नियंत्रण वर्णों का जवाब देता हैः इसके लिए एस्केप कुंजी दबाएँ। कंसोल विस्तारित पलायन अनुक्रम, ए. एन. एस. आई. सी. एस. आई. मोड अनुक्रम और डी. ई. सी. निजी मोड अनुक्रमों का भी समर्थन करता है। ये विस्तारित अनुक्रम रंगों, पलक झपकाने, रेखांकित करने, तीव्रता और व्युत्क्रम वीडियो, घंटी टोन आवृत्ति और अवधि, वीईएसए स्क्रीन ब्लैंकिंग अंतराल जैसे दृश्य प्रभावों को नियंत्रित कर सकते हैं। टेक्स्ट ब्लैंकिंग के अलावा, वीजीए एडाप्टर को स्टैंडबाय में रखने का कोई ज्ञात तरीका नहीं है। भविष्य की योजनाएं के. एम. एस. सी. एन. परियोजनाओं का उद्देश्य लिनक्स कंसोल के लिए एक आधुनिक उपयोगकर्ता-स्थान प्रतिस्थापन बनाना है। विकास प्राथमिकताओं में मल्टी-मॉनिटर सेटअप के लिए समर्थन, पैंगो के साथ यूनिकोड फ़ॉन्ट प्रतिपादन, एक्सकेबी कीबोर्ड हैंडलिंग और जीपीयू ओपनजीएल त्वरण शामिल हैं। वर्तमान कर्नेल कार्यान्वयन के बारे में शिकायतों में शामिल हैं "कि यह कर्नेल-स्पेस में एक उपयोगकर्ता-इंटरफेस है, कोड खराब रूप से बनाए रखा गया है, कीबोर्ड को बुरी तरह से संभालता है, खराब फ़ॉन्ट प्रतिपादन उत्पन्न करता है, मोड-सेटिंग और मल्टी-हेड समर्थन से चूक जाता है, इसमें कोई बहु-सीट जागरूकता नहीं है, और केवल सीमित हॉट-प्लगिंग हैंडलिंग है, जो वीटी 102 अनुपालन तक सीमित है।" कंसोल से संबंधित/देव/प्रविष्टियों की सूची विंडोज कंसोल संदर्भ कंप्यूटर टर्मिनल लिनक्स कर्नेल टेक्स्ट यूजर इंटरफेस भी देखें।