टर्मिनल एमुलेटर: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 1: Line 1:
{{short description|Program that emulates a video terminal}}
{{short description|Program that emulates a video terminal}}
[[File:Xterm.png|thumb|300px|[[xterm|स्ट्रीम]], [[एक्स विंडो सिस्टम]] के लिए डिज़ाइन किया गया एक टर्मिनल इम्यूलेटर]]
[[File:Xterm.png|thumb|300px|[[xterm|स्ट्रीम]], [[एक्स विंडो सिस्टम]] के लिए डिज़ाइन किया गया एक टर्मिनल इम्यूलेटर]]
[[File:Windows Terminal v1.0 1138x624.png|thumb|300px|[[विंडोज टर्मिनल]], [[विंडोज 10]] और [[ विंडोज़ 11 ]] के लिए एक ओपन-सोर्स टर्मिनल एमुलेटर]]एक टर्मिनल एमुलेटर या टर्मिनल एप्लिकेशन, एक [[अनुप्रयोग प्रक्रिया सामग्री]] है जो [[एम्यूलेटर]] एक वीडियो कंप्यूटर टर्मिनल डंब टर्मिनल कुछ अन्य डिस्प्ले आर्किटेक्चर के अंदर है। चूंकि सामान्यतः कमांड-लाइन इंटरफ़ेस या [[ पाठ टर्मिनल ]] का पर्यायवाची शब्द ''टर्मिनल'' ग्राफिकल इंटरफेस सहित सभी दूरस्थ टर्मिनलों को कवर करता है। [[ ग्राफिकल यूज़र इंटरफ़ेस ]] के अंदर एक टर्मिनल एमुलेटर को अधिकांशतः टर्मिनल विंडो कहा जाता है।
[[File:Windows Terminal v1.0 1138x624.png|thumb|300px|[[विंडोज टर्मिनल]], [[विंडोज 10]] और [[ विंडोज़ 11 ]] के लिए एक ओपन-सोर्स टर्मिनल एमुलेटर]]एक टर्मिनल एमुलेटर या टर्मिनल एप्लिकेशन, एक [[अनुप्रयोग प्रक्रिया सामग्री]] है जो [[एम्यूलेटर]] एक वीडियो कंप्यूटर टर्मिनल, डंब टर्मिनल कुछ अन्य डिस्प्ले आर्किटेक्चर के अंदर है। चूंकि सामान्यतः कमांड-लाइन इंटरफ़ेस या[[ पाठ टर्मिनल ]]का पर्यायवाची शब्द ''टर्मिनल'' ग्राफिकल इंटरफेस सहित सभी दूरस्थ टर्मिनलों को कवर करता है। [[ ग्राफिकल यूज़र इंटरफ़ेस ]] के अंदर एक टर्मिनल एमुलेटर को अधिकांशतः टर्मिनल विंडो कहा जाता है।


एक टर्मिनल विंडो उपयोगकर्ता को टेक्स्ट टर्मिनल और इसके सभी एप्लिकेशन जैसे [[ कमांड लाइन इंटरफेस ]] (सीएलआई) और [[टेक्स्ट यूजर इंटरफेस]] (टीयूआई) एप्लिकेशन तक पहुंचने की अनुमति देती है। ये या तो एक ही मशीन पर या [[टेलनेट]], [[ सुरक्षित खोल ]], डायल-अप या डायरेक्ट [[ आनुक्रमिक द्वार ]] के माध्यम से अलग मशीन पर चल सकते हैं। यूनिक्स जैसे ऑपरेटिंग सिस्टम पर, स्थानीय मशीन से जुड़े एक या अधिक टर्मिनल विंडो होना आम बात है।
एक टर्मिनल विंडो उपयोगकर्ता को टेक्स्ट टर्मिनल और इसके सभी एप्लिकेशन जैसे [[ कमांड लाइन इंटरफेस ]] (सीएलआई) और [[टेक्स्ट यूजर इंटरफेस]] (टीयूआई) एप्लिकेशन तक पहुंचने की अनुमति देती है। ये या तो एक ही मशीन पर या [[टेलनेट]], [[ सुरक्षित खोल ]], डायल-अप या डायरेक्ट [[ आनुक्रमिक द्वार ]] के माध्यम से अलग मशीन पर चल सकते हैं। यूनिक्स जैसे ऑपरेटिंग सिस्टम पर, स्थानीय मशीन से जुड़े एक या अधिक टर्मिनल विंडो होना आम बात है।
Line 14: Line 14:
{{main|इको (कंप्यूटिंग) #टर्मिनल इम्यूलेटर}}
{{main|इको (कंप्यूटिंग) #टर्मिनल इम्यूलेटर}}


टर्मिनल एमुलेटर एक इको (कंप्यूटिंग) फ़ंक्शन को प्रयुक्त कर सकते हैं, जो इको (कंप्यूटिंग) हो सकता है पारिभाषिक भ्रम: इको डुप्लेक्स को डुप्लेक्स (दूरसंचार) नहीं कहा जाता है #हाफ डुप्लेक्स|हाफ-डुप्लेक्स, या अभी भी थोड़ा गलत इकोप्लेक्स (जो औपचारिक रूप से एक त्रुटि है) इनपुट डिस्प्ले विकल्प के अतिरिक्त डिटेक्शन मैकेनिज्म)।{{sfn|Daintith|2004|p=171}}{{sfn|Weik|2000|loc="echo" p. 478}}{{sfn|Weik|2000|loc="echoplex" p. 479}}{{sfn|Weik|2000|loc="echoplex mode" p. 479}}
टर्मिनल एमुलेटर एक इको (कंप्यूटिंग) फ़ंक्शन को प्रयुक्त कर सकते हैं, जो इको (कंप्यूटिंग) हो सकता है पारिभाषिक भ्रम: इको डुप्लेक्स को डुप्लेक्स (दूरसंचार) नहीं कहा जाता है यह एक हाफ डुप्लेक्स है, या अभी भी थोड़ा गलत इकोप्लेक्स जो औपचारिक रूप से एक त्रुटि है (इनपुट डिस्प्ले विकल्प के अतिरिक्त डिटेक्शन मैकेनिज्म)।{{sfn|Daintith|2004|p=171}}{{sfn|Weik|2000|loc="echo" p. 478}}{{sfn|Weik|2000|loc="echoplex" p. 479}}{{sfn|Weik|2000|loc="echoplex mode" p. 479}}


== लाइन-एट-ए-टाइम मोड/स्थानीय संपादन ==
== लाइन-एट-ए-टाइम मोड/स्थानीय संपादन ==
{{main|कंप्यूटर टर्मिनल#मोड्स}}
{{main|कंप्यूटर टर्मिनल#मोड्स}}


टर्मिनल एमुलेटर स्थानीय संपादन को प्रयुक्त कर सकते हैं, जिसे लाइन-एट-ए-टाइम मोड के रूप में भी जाना जाता है। इसे गलती से हाफ-डुप्लेक्स भी कहा जाता है। इस मोड में, टर्मिनल इम्यूलेटर केवल इनपुट की पूरी लाइन होस्ट सिस्टम को भेजता है। उपयोगकर्ता एक पंक्ति में प्रवेश करता है और संपादित करता है, किन्तुइसे स्थानीय रूप से टर्मिनल एमुलेटर के अंदर आयोजित किया जाता है क्योंकि इसे संपादित किया जा रहा है। यह तब तक प्रसारित नहीं होता जब तक कि उपयोगकर्ता इसके पूरा होने का संकेत नहीं देता, सामान्यतः इसके साथ {{keypress|Enter}} कुंजीपटल पर कुंजी या उपयोगकर्ता इंटरफ़ेस में किसी प्रकार का भेजें बटन। उस बिंदु पर, पूरी लाइन प्रसारित होती है। लाइन-एट-ए-टाइम मोड का तात्पर्य स्थानीय प्रतिध्वनि से है, क्योंकि अन्यथा उपयोगकर्ता लाइन को देखने में सक्षम नहीं होगा क्योंकि इसे संपादित और निर्मित किया जा रहा है।{{sfn|Daintith|2004|p=171}}{{sfn|Bangia|2010|p=324}} चूंकि, लाइन-एट-ए-टाइम मोड इको मोड से स्वतंत्र है और स्थानीय इको की आवश्यकता नहीं है। पासवर्ड अंकित करते समय, उदाहरण के लिए, स्थानीय संपादन के साथ लाइन-एट-ए-टाइम प्रविष्टि संभव है, किन्तुस्थानीय प्रतिध्वनि बंद है (अन्यथा पासवर्ड प्रदर्शित होगा)।{{sfn|Stevens|Wright|1994|p=413}}
टर्मिनल एमुलेटर स्थानीय संपादन को प्रयुक्त कर सकते हैं, जिसे लाइन-एट-ए-टाइम मोड के रूप में भी जाना जाता है। इसे गलती से हाफ-डुप्लेक्स भी कहा जाता है। इस मोड में, टर्मिनल इम्यूलेटर केवल इनपुट की पूरी लाइन होस्ट सिस्टम को भेजता है। उपयोगकर्ता एक पंक्ति में प्रवेश करता है और संपादित करता है, किन्तु इसे स्थानीय रूप से टर्मिनल एमुलेटर के अंदर आयोजित किया जाता है क्योंकि इसे संपादित किया जा रहा है। यह तब तक प्रसारित नहीं होता जब तक कि उपयोगकर्ता इसके पूरा होने का संकेत नहीं देता, सामान्यतः इसके साथ {{keypress|Enter}} कुंजीपटल पर कुंजी या उपयोगकर्ता इंटरफ़ेस में किसी प्रकार का बटन दबाये। उस बिंदु पर, पूरी लाइन प्रसारित होती है। लाइन-एट-ए-टाइम मोड का तात्पर्य स्थानीय प्रतिध्वनि से है, क्योंकि अन्यथा उपयोगकर्ता लाइन को देखने में सक्षम नहीं होगा क्योंकि इसे संपादित और निर्मित किया जा रहा है।{{sfn|Daintith|2004|p=171}}{{sfn|Bangia|2010|p=324}} चूंकि, लाइन-एट-ए-टाइम मोड इको मोड से स्वतंत्र है और स्थानीय इको की आवश्यकता नहीं है। पासवर्ड अंकित करते समय, उदाहरण के लिए, स्थानीय संपादन के साथ लाइन-एट-ए-टाइम प्रविष्टि संभव है, किन्तु स्थानीय प्रतिध्वनि बंद है (अन्यथा पासवर्ड प्रदर्शित होगा)।{{sfn|Stevens|Wright|1994|p=413}}


लाइन-एट-ए-टाइम मोड की जटिलताओं को टेलनेट प्रोटोकॉल में लाइन-एट-ए-टाइम मोड विकल्प द्वारा उदाहरण दिया गया है। इसे सही ढंग से प्रयुक्त करने के लिए, टर्मिनल इम्यूलेटर प्रोग्राम द्वारा प्रदान किया गया नेटवर्क वर्चुअल टर्मिनल कार्यान्वयन एक लाइन को स्थानीय रूप से संपादित करने के बीच में आने वाली रुकावट और गर्भपात की घटनाओं को पहचानने और ठीक से निपटने में सक्षम होना चाहिए।{{sfn|Miller|2009|p=590, 591}}
लाइन-एट-ए-टाइम मोड की जटिलताओं को टेलनेट प्रोटोकॉल में लाइन-एट-ए-टाइम मोड विकल्प द्वारा उदाहरण दिया गया है। इसे सही ढंग से प्रयुक्त करने के लिए, टर्मिनल इम्यूलेटर प्रोग्राम द्वारा प्रदान किया गया नेटवर्क वर्चुअल टर्मिनल कार्यान्वयन एक लाइन को स्थानीय रूप से संपादित करने के बीच में आने वाली रुकावट और कठिनाई की घटनाओं को पहचानने और ठीक से निपटने में सक्षम होना चाहिए।{{sfn|Miller|2009|p=590, 591}}


== तुल्यकालिक टर्मिनल ==
== तुल्यकालिक टर्मिनल ==
Line 34: Line 34:


== अनुकरणीय टर्मिनलों के उदाहरण ==
== अनुकरणीय टर्मिनलों के उदाहरण ==
[[VT52|वीटी52]], [[VT100|वीटी100]], [[VT220|वीटी220]], [[VT320|वीटी320]], आईबीएम 3270|आईबीएम 3270/8/9/E, आईबीएम 5250, [[IBM 3179G|आईबीएम 3179G]], [[Data General|डाटा जर्नल]] D211, [[Hewlett Packard|हेवलेट-पैकर्ड]] HP700/92, स्पेरी / यूनिसिस 2000 जैसे टर्मिनलों के लिए कई टर्मिनल एमुलेटर विकसित किए गए हैं। श्रेणी [[ युनिस्कोप ]], बरोज/यूनिसिस ए-श्रेणी टी27/टीडी830/ईटी1100, [[एप्लाइड डिजिटल डेटा सिस्टम]] व्यूपॉइंट, [[सन माइक्रोसिस्टम्स]] कंसोल, [[क्यूएनएक्स]], एटी386, एससीओ-एएनएसआई, एसएनआई 97801, [[ टेलीटेक्स्ट ]] और वायस 50/60। इसके अतिरिक्त, अन्य टर्मिनल इम्यूलेटर जैसे स्ट्रीम और मिश्रित कंसोल टर्मिनल (जैसे, [[Linux|लिनक्स]] के लिए) का अनुकरण करने के लिए प्रोग्राम विकसित किए गए हैं। अंत में, कुछ एमुलेटर केवल एक मानक को संदर्भित करते हैं, जैसे [[एएनएसआई एस्केप कोड]]। इस तरह के कार्यक्रम कई प्लेटफार्मों पर उपलब्ध हैं जिनमें डॉस और [[यूनिक्स]] से लेकर [[ माइक्रोसॉफ़्ट विंडोज़ ]] और मैकओएस से लेकर सेलफोन और औद्योगिक हार्डवेयर में पाए जाने वाले एम्बेडेड ऑपरेटिंग सिस्टम  सम्मिलित  हैं।
[[VT52|वीटी52]], [[VT100|वीटी100]], [[VT220|वीटी220]], [[VT320|वीटी320]], आईबीएम 3270|आईबीएम 3270/8/9/E, आईबीएम 5250, [[IBM 3179G|आईबीएम 3179G]], [[Data General|डाटा जर्नल]] डी211, [[Hewlett Packard|हेवलेट-पैकर्ड]] एचपी700/92, स्पेरी / यूनिसिस 2000 जैसे टर्मिनलों के लिए कई टर्मिनल एमुलेटर विकसित किए गए हैं। श्रेणी [[ युनिस्कोप ]], बरोज/यूनिसिस ए-श्रेणी टी27/टीडी830/ईटी1100, [[एप्लाइड डिजिटल डेटा सिस्टम]] व्यूपॉइंट, [[सन माइक्रोसिस्टम्स]] कंसोल, [[क्यूएनएक्स]], एटी386, एससीओ-एएनएसआई, एसएनआई 97801, [[ टेलीटेक्स्ट ]] और वायस 50/60। इसके अतिरिक्त, अन्य टर्मिनल इम्यूलेटर जैसे स्ट्रीम और मिश्रित कंसोल टर्मिनल (जैसे, [[Linux|लिनक्स]] के लिए) का अनुकरण करने के लिए प्रोग्राम विकसित किए गए हैं। अंत में, कुछ एमुलेटर केवल एक मानक को संदर्भित करते हैं, जैसे [[एएनएसआई एस्केप कोड]]। इस तरह के कार्यक्रम कई प्लेटफार्मों पर उपलब्ध हैं जिनमें डॉस और [[यूनिक्स]] से लेकर [[ माइक्रोसॉफ़्ट विंडोज़ ]] और मैकओएस से लेकर सेलफोन और औद्योगिक हार्डवेयर में पाए जाने वाले एम्बेडेड ऑपरेटिंग सिस्टम  सम्मिलित  हैं।


== कार्यान्वयन विवरण ==
== कार्यान्वयन विवरण ==


=== यूनिक्स जैसी प्रणाली ===
=== यूनिक्स जैसी प्रणाली ===
अतीत में, यूनिक्स और यूनिक्स जैसी प्रणालियाँ सीरियल पोर्ट उपकरणों जैसे [[RS-232|आरएस-232]] पोर्ट का उपयोग करती थीं, और प्रदान की जाती थीं  {{Code|/dev/*}} उनके लिए [[डिवाइस फ़ाइल]]ें।<ref>{{Cite web|title=A Brief History of Terminal Emulation {{!}} Turbosoft|url=https://www.ttwin.com/blog/270-history-terminal-emulation|access-date=2021-10-04|website=www.ttwin.com}}</ref>
अतीत में, यूनिक्स और यूनिक्स जैसी प्रणालियाँ सीरियल पोर्ट उपकरणों जैसे [[RS-232|आरएस-232]] पोर्ट का उपयोग करती थीं, और प्रदान की जाती थीं  {{Code|/dev/*}} उनके लिए [[डिवाइस फ़ाइल]]<ref>{{Cite web|title=A Brief History of Terminal Emulation {{!}} Turbosoft|url=https://www.ttwin.com/blog/270-history-terminal-emulation|access-date=2021-10-04|website=www.ttwin.com}}</ref> टर्मिनल इम्यूलेटर के साथ उन डिवाइस फ़ाइलों को [[ छद्म टर्मिनल ]] डिवाइस की एक जोड़ी का उपयोग करके अनुकरण किया जाता है। इस जोड़ी का उपयोग होस्ट कंप्यूटिंग एंडपॉइंट के लिए एक भौतिक पोर्ट/कनेक्शन का अनुकरण करने के लिए किया जाता है - ऑपरेटिंग सिस्टम एपीआई द्वारा प्रदान किया गया कंप्यूटर का हार्डवेयर, कुछ अन्य सॉफ़्टवेयर जैसे कि  [[rlogin|लॉगिन]], टेलनेट या सिक्योर सेल या अन्य।<ref name=":0">{{Cite web|title=Ubuntu Manpage: tty — general terminal interface|url=http://manpages.ubuntu.com/manpages/bionic/man4/tty.4freebsd.html|access-date=2021-10-04|website=manpages.ubuntu.com}}</ref> उदाहरण के लिए, लिनक्स सिस्टम में ये होंगे {{Code|/dev/ptyp0}} (मास्टर साइड के लिए) और {{Code|/dev/ttyp0}} (गुलाम पक्ष के लिए) क्रमशः स्यूडोटर्मिनल डिवाइस।
टर्मिनल इम्यूलेटर के साथ उन डिवाइस फ़ाइलों को [[ छद्म टर्मिनल ]] डिवाइस की एक जोड़ी का उपयोग करके अनुकरण किया जाता है। इस जोड़ी का उपयोग होस्ट कंप्यूटिंग एंडपॉइंट के लिए एक भौतिक पोर्ट/कनेक्शन का अनुकरण करने के लिए किया जाता है - ऑपरेटिंग सिस्टम एपीआई द्वारा प्रदान किया गया कंप्यूटर का हार्डवेयर, कुछ अन्य सॉफ़्टवेयर जैसे कि  [[rlogin|लॉगिन]], टेलनेट या सिक्योर सेल या अन्य।<ref name=":0">{{Cite web|title=Ubuntu Manpage: tty — general terminal interface|url=http://manpages.ubuntu.com/manpages/bionic/man4/tty.4freebsd.html|access-date=2021-10-04|website=manpages.ubuntu.com}}</ref> उदाहरण के लिए, लिनक्स सिस्टम में ये होंगे {{Code|/dev/ptyp0}} (मास्टर साइड के लिए) और {{Code|/dev/ttyp0}} (गुलाम पक्ष के लिए) क्रमशः स्यूडोटर्मिनल डिवाइस।


विशेष वर्चुअल कंसोल फ़ाइलें भी हैं जैसे <code>/dev/console</code>. टेक्स्ट मोड में, फ़ाइल में लिखना वर्चुअल कंसोल पर टेक्स्ट प्रदर्शित करता है और फ़ाइल से पढ़ने से उपयोगकर्ता द्वारा वर्चुअल कंसोल पर लिखे गए टेक्स्ट को वापस कर दिया जाता है। अन्य टेक्स्ट टर्मिनल की तरह, विशेष [[ बचने का क्रम ]], [[ नियंत्रण चरित्र ]] और [[सिस्टम कॉल]] भी हैं जिनका उपयोग एक प्रोग्राम पुस्तकालय के माध्यम से सबसे आसानी से कर सकता है जैसे [[ncurses|एन कोर्सेस]]। अधिक जटिल संचालन के लिए, प्रोग्राम कंसोल और टर्मिनल विशेष [[ioctl|आईओसीटीएल]] सिस्टम कॉल का उपयोग कर सकते हैं। कोई भी पैटर्न वीसीएस (वर्चुअल कंसोल स्क्रीन) और वीसीएसए (एट्रिब्यूट्स के साथ वर्चुअल कंसोल स्क्रीन) का उपयोग करके उपकरणों की तुलना कर सकता है जैसे कि <code>/dev/vcs1</code> और <code>/dev/vcsa1</code>.<ref>{{cite web|title=स्क्रीन डंप|url=https://tldp.org/HOWTO/Keyboard-and-Console-HOWTO-20.html|access-date=2008-07-31|work=The Linux keyboard and console HOWTO|publisher=The [[Linux Documentation Project]]|quote=The current contents of the screen of /dev/ttyN can be accessed using the device /dev/vcsN (where `vcs' stands for `virtual console screen'). [...] From a program it is usually better to use /dev/vcsaN (`virtual console screen with attributes') instead - it starts with a header giving the number of rows and columns and the location of the cursor. See vcs(4).}}</ref> कुछ टर्मिनल इम्यूलेटर में टर्मिनल के व्यवहार को कॉन्फ़िगर करने के लिए एस्केप सीक्वेंस भी  सम्मिलित  होते हैं, जिससमुच्चयर्मिनल और इसके अंदर चल रहे प्रोग्राम के बीच अच्छे इंटरऑपरेशन को सुविधाजनक बनाया जा सके, उदाहरण के लिए [[ब्रैकेटिंग पेस्ट करें]] को कॉन्फ़िगर करना।
विशेष वर्चुअल कंसोल फ़ाइलें भी हैं जैसे <code>/dev/console</code>. टेक्स्ट मोड में, फ़ाइल में लिखना वर्चुअल कंसोल पर टेक्स्ट प्रदर्शित करता है और फ़ाइल से पढ़ने से उपयोगकर्ता द्वारा वर्चुअल कंसोल पर लिखे गए टेक्स्ट को वापस कर दिया जाता है। अन्य टेक्स्ट टर्मिनल की तरह, विशेष [[ बचने का क्रम ]], [[ नियंत्रण चरित्र ]] और [[सिस्टम कॉल]] भी हैं जिनका उपयोग एक प्रोग्राम पुस्तकालय के माध्यम से सबसे आसानी से कर सकता है जैसे [[ncurses|एन कोर्सेस]]। अधिक जटिल संचालन के लिए, प्रोग्राम कंसोल और टर्मिनल विशेष [[ioctl|आईओसीटीएल]] सिस्टम कॉल का उपयोग कर सकते हैं। कोई भी पैटर्न वीसीएस (वर्चुअल कंसोल स्क्रीन) और वीसीएसए (एट्रिब्यूट्स के साथ वर्चुअल कंसोल स्क्रीन) का उपयोग करके उपकरणों की तुलना कर सकता है जैसे कि <code>/dev/vcs1</code> और <code>/dev/vcsa1</code>.<ref>{{cite web|title=स्क्रीन डंप|url=https://tldp.org/HOWTO/Keyboard-and-Console-HOWTO-20.html|access-date=2008-07-31|work=The Linux keyboard and console HOWTO|publisher=The [[Linux Documentation Project]]|quote=The current contents of the screen of /dev/ttyN can be accessed using the device /dev/vcsN (where `vcs' stands for `virtual console screen'). [...] From a program it is usually better to use /dev/vcsaN (`virtual console screen with attributes') instead - it starts with a header giving the number of rows and columns and the location of the cursor. See vcs(4).}}</ref> कुछ टर्मिनल इम्यूलेटर में टर्मिनल के व्यवहार को कॉन्फ़िगर करने के लिए एस्केप सीक्वेंस भी  सम्मिलित  होते हैं, जिस समुच्चय शृंखला और इसके अंदर चल रहे प्रोग्राम के बीच अच्छे इंटरऑपरेशन को सुविधाजनक बनाया जा सके, उदाहरण के लिए [[ब्रैकेटिंग पेस्ट करें]] को कॉन्फ़िगर करना।


वर्चुअल कंसोल को फ़ाइल में कॉन्फ़िगर किया जा सकता है <code>/etc/inittab</code> [[init|इनइट]] द्वारा पढ़ा गया -- सामान्यतः यह कई वर्चुअल कंसोल के लिए टेक्स्ट मोड [[लॉगिंग (कंप्यूटर सुरक्षा)]] प्रक्रिया [[Getty (Unix)|गेटी (यूनिक्स)]] शुरू करता है। X विंडो सिस्टम में कॉन्फ़िगर किया जा सकता है <code>/etc/inittab</code> या एक [[एक्स डिस्प्ले मैनेजर (प्रोग्राम प्रकार)]] द्वारा। कई लिनक्स वितरण इनइट के अतिरिक्त [[systemd|सिस्टम]] का उपयोग करते हैं, जो वर्चुअल कंसोल कॉन्फ़िगरेशन की भी अनुमति देता है।
वर्चुअल कंसोल को फ़ाइल में कॉन्फ़िगर किया जा सकता है <code>/etc/inittab</code> [[init|इनइट]] द्वारा पढ़ा गया -- सामान्यतः यह कई वर्चुअल कंसोल के लिए टेक्स्ट मोड [[लॉगिंग (कंप्यूटर सुरक्षा)]] प्रक्रिया [[Getty (Unix)|गेटी (यूनिक्स)]] शुरू करता है। एक्स विंडो सिस्टम में कॉन्फ़िगर किया जा सकता है <code>/etc/inittab</code> या एक [[एक्स डिस्प्ले मैनेजर (प्रोग्राम प्रकार)]] द्वारा। कई लिनक्स वितरण इनइट के अतिरिक्त [[systemd|सिस्टम]] का उपयोग करते हैं, जो वर्चुअल कंसोल कॉन्फ़िगरेशन की भी अनुमति देता है।


==== सीएलआई उपकरण ====
==== सीएलआई उपकरण ====
Line 54: Line 53:


==== सिस्टम लोड हो रहा है ====
==== सिस्टम लोड हो रहा है ====
प्रोग्राम [[startx|स्टारएक्स]] X विंडो सिस्टम को एक नए वर्चुअल कंसोल पर शुरू करता है। अन्य ग्राफिकल प्रोग्राम भी हैं जो कंसोल से शुरू हो सकते हैं (जैसे [[LinuxTV|लिनक्स टीवी]] और [[MPlayer|एम प्लेयर]] आदि)
प्रोग्राम [[startx|स्टारएक्स]] एक्स विंडो सिस्टम को एक नए वर्चुअल कंसोल पर शुरू करता है। अन्य ग्राफिकल प्रोग्राम भी हैं जो कंसोल से शुरू हो सकते हैं (जैसे [[LinuxTV|लिनक्स टीवी]] और [[MPlayer|एम प्लेयर]] आदि)


== यह भी देखें ==
== यह भी देखें ==

Revision as of 22:45, 22 March 2023

स्ट्रीम, एक्स विंडो सिस्टम के लिए डिज़ाइन किया गया एक टर्मिनल इम्यूलेटर
विंडोज टर्मिनल, विंडोज 10 और विंडोज़ 11 के लिए एक ओपन-सोर्स टर्मिनल एमुलेटर

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

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

टर्मिनल सामान्यतः रंग, कर्सर (कंप्यूटर) की स्थिति आदि को नियंत्रित करने के लिए भागने के क्रम के एक समुच्चय का समर्थन करते हैं। उदाहरणों में टर्मिनल नियंत्रण अनुक्रम मानकों का परिवार सम्मिलित है जिन्हें इसीऍमए-48, एएनएसआई एक्स3.64 या आईएसओ/आईईसी 6429 के रूप में जाना जाता है।

इतिहास

कंप्यूटर टर्मिनल

एमुलेटर

स्थानीय प्रतिध्वनि

टर्मिनल एमुलेटर एक इको (कंप्यूटिंग) फ़ंक्शन को प्रयुक्त कर सकते हैं, जो इको (कंप्यूटिंग) हो सकता है पारिभाषिक भ्रम: इको डुप्लेक्स को डुप्लेक्स (दूरसंचार) नहीं कहा जाता है यह एक हाफ डुप्लेक्स है, या अभी भी थोड़ा गलत इकोप्लेक्स जो औपचारिक रूप से एक त्रुटि है (इनपुट डिस्प्ले विकल्प के अतिरिक्त डिटेक्शन मैकेनिज्म)।[1][2][3][4]

लाइन-एट-ए-टाइम मोड/स्थानीय संपादन

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

लाइन-एट-ए-टाइम मोड की जटिलताओं को टेलनेट प्रोटोकॉल में लाइन-एट-ए-टाइम मोड विकल्प द्वारा उदाहरण दिया गया है। इसे सही ढंग से प्रयुक्त करने के लिए, टर्मिनल इम्यूलेटर प्रोग्राम द्वारा प्रदान किया गया नेटवर्क वर्चुअल टर्मिनल कार्यान्वयन एक लाइन को स्थानीय रूप से संपादित करने के बीच में आने वाली रुकावट और कठिनाई की घटनाओं को पहचानने और ठीक से निपटने में सक्षम होना चाहिए।[7]

तुल्यकालिक टर्मिनल

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

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

सिंक्रोनस टर्मिनलों के अन्य उदाहरणों में आईबीएम 5250, इंटरनेशनल कंप्यूटर्स लिमिटेड 7561, Honeywell Bull VIP7800 और हेवलेट-पैकर्ड 700/92 सम्मिलित हैं।

वर्चुअल कंसोल

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

अनुकरणीय टर्मिनलों के उदाहरण

वीटी52, वीटी100, वीटी220, वीटी320, आईबीएम 3270|आईबीएम 3270/8/9/E, आईबीएम 5250, आईबीएम 3179G, डाटा जर्नल डी211, हेवलेट-पैकर्ड एचपी700/92, स्पेरी / यूनिसिस 2000 जैसे टर्मिनलों के लिए कई टर्मिनल एमुलेटर विकसित किए गए हैं। श्रेणी युनिस्कोप , बरोज/यूनिसिस ए-श्रेणी टी27/टीडी830/ईटी1100, एप्लाइड डिजिटल डेटा सिस्टम व्यूपॉइंट, सन माइक्रोसिस्टम्स कंसोल, क्यूएनएक्स, एटी386, एससीओ-एएनएसआई, एसएनआई 97801, टेलीटेक्स्ट और वायस 50/60। इसके अतिरिक्त, अन्य टर्मिनल इम्यूलेटर जैसे स्ट्रीम और मिश्रित कंसोल टर्मिनल (जैसे, लिनक्स के लिए) का अनुकरण करने के लिए प्रोग्राम विकसित किए गए हैं। अंत में, कुछ एमुलेटर केवल एक मानक को संदर्भित करते हैं, जैसे एएनएसआई एस्केप कोड। इस तरह के कार्यक्रम कई प्लेटफार्मों पर उपलब्ध हैं जिनमें डॉस और यूनिक्स से लेकर माइक्रोसॉफ़्ट विंडोज़ और मैकओएस से लेकर सेलफोन और औद्योगिक हार्डवेयर में पाए जाने वाले एम्बेडेड ऑपरेटिंग सिस्टम सम्मिलित हैं।

कार्यान्वयन विवरण

यूनिक्स जैसी प्रणाली

अतीत में, यूनिक्स और यूनिक्स जैसी प्रणालियाँ सीरियल पोर्ट उपकरणों जैसे आरएस-232 पोर्ट का उपयोग करती थीं, और प्रदान की जाती थीं /dev/* उनके लिए डिवाइस फ़ाइल[8] टर्मिनल इम्यूलेटर के साथ उन डिवाइस फ़ाइलों को छद्म टर्मिनल डिवाइस की एक जोड़ी का उपयोग करके अनुकरण किया जाता है। इस जोड़ी का उपयोग होस्ट कंप्यूटिंग एंडपॉइंट के लिए एक भौतिक पोर्ट/कनेक्शन का अनुकरण करने के लिए किया जाता है - ऑपरेटिंग सिस्टम एपीआई द्वारा प्रदान किया गया कंप्यूटर का हार्डवेयर, कुछ अन्य सॉफ़्टवेयर जैसे कि लॉगिन, टेलनेट या सिक्योर सेल या अन्य।[9] उदाहरण के लिए, लिनक्स सिस्टम में ये होंगे /dev/ptyp0 (मास्टर साइड के लिए) और /dev/ttyp0 (गुलाम पक्ष के लिए) क्रमशः स्यूडोटर्मिनल डिवाइस।

विशेष वर्चुअल कंसोल फ़ाइलें भी हैं जैसे /dev/console. टेक्स्ट मोड में, फ़ाइल में लिखना वर्चुअल कंसोल पर टेक्स्ट प्रदर्शित करता है और फ़ाइल से पढ़ने से उपयोगकर्ता द्वारा वर्चुअल कंसोल पर लिखे गए टेक्स्ट को वापस कर दिया जाता है। अन्य टेक्स्ट टर्मिनल की तरह, विशेष बचने का क्रम , नियंत्रण चरित्र और सिस्टम कॉल भी हैं जिनका उपयोग एक प्रोग्राम पुस्तकालय के माध्यम से सबसे आसानी से कर सकता है जैसे एन कोर्सेस। अधिक जटिल संचालन के लिए, प्रोग्राम कंसोल और टर्मिनल विशेष आईओसीटीएल सिस्टम कॉल का उपयोग कर सकते हैं। कोई भी पैटर्न वीसीएस (वर्चुअल कंसोल स्क्रीन) और वीसीएसए (एट्रिब्यूट्स के साथ वर्चुअल कंसोल स्क्रीन) का उपयोग करके उपकरणों की तुलना कर सकता है जैसे कि /dev/vcs1 और /dev/vcsa1.[10] कुछ टर्मिनल इम्यूलेटर में टर्मिनल के व्यवहार को कॉन्फ़िगर करने के लिए एस्केप सीक्वेंस भी सम्मिलित होते हैं, जिस समुच्चय शृंखला और इसके अंदर चल रहे प्रोग्राम के बीच अच्छे इंटरऑपरेशन को सुविधाजनक बनाया जा सके, उदाहरण के लिए ब्रैकेटिंग पेस्ट करें को कॉन्फ़िगर करना।

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

सीएलआई उपकरण

वर्चुअल कंसोल तक पहुँचने के लिए उपयोग किए जाने वाले विशिष्ट लिनक्स सिस्टम प्रोग्राम में सम्मिलित हैं:

  • chvt वर्तमान वर्चुअल कंसोल स्विच करने के लिए
  • openvt नए वर्चुअल कंसोल पर प्रोग्राम चलाने के लिए
  • deallocvt वर्तमान में अप्रयुक्त वर्चुअल कंसोल को बंद करने के लिए

सिस्टम लोड हो रहा है

प्रोग्राम स्टारएक्स एक्स विंडो सिस्टम को एक नए वर्चुअल कंसोल पर शुरू करता है। अन्य ग्राफिकल प्रोग्राम भी हैं जो कंसोल से शुरू हो सकते हैं (जैसे लिनक्स टीवी और एम प्लेयर आदि)

यह भी देखें

टिप्पणियाँ

  1. 1.0 1.1 Daintith 2004, p. 171.
  2. Weik 2000, "echo" p. 478.
  3. Weik 2000, "echoplex" p. 479.
  4. Weik 2000, "echoplex mode" p. 479.
  5. Bangia 2010, p. 324.
  6. Stevens & Wright 1994, p. 413.
  7. Miller 2009, p. 590, 591.
  8. "A Brief History of Terminal Emulation | Turbosoft". www.ttwin.com. Retrieved 2021-10-04.
  9. "Ubuntu Manpage: tty — general terminal interface". manpages.ubuntu.com. Retrieved 2021-10-04.
  10. "स्क्रीन डंप". The Linux keyboard and console HOWTO. The Linux Documentation Project. Retrieved 2008-07-31. The current contents of the screen of /dev/ttyN can be accessed using the device /dev/vcsN (where `vcs' stands for `virtual console screen'). [...] From a program it is usually better to use /dev/vcsaN (`virtual console screen with attributes') instead - it starts with a header giving the number of rows and columns and the location of the cursor. See vcs(4).


संदर्भ


बाहरी संबंध

Template:Terminal emulator