टेनेक्स (ऑपरेटिंग सिस्टम)

टेनेक्स एक ऑपरेटिंग सिस्टम है जिसे 1969 में बीबीएन द्वारा पीडीपी-10 के लिए विकसित किया गया था, जिसने बाद में डिजिटल इक्विपमेंट कॉर्पोरेशन के टॉप्स-20 ऑपरेटिंग सिस्टम का आधार बनाया।

पृष्ठभूमि
1960 के दशक में, बीबीएन, डीएआरपीए (DARPA) के लिए लिस्प (LISP)-आधारित कई आर्टिफिशियल इंटेलिजेंस परियोजनाओं में शामिल था, जिनमें से कई की बहुत बड़ी (युग के लिए) मेमोरी आवश्यकताएं थीं। इस समस्या का एक समाधान एलआईएसपी भाषा में पेजिंग सॉफ्टवेयर को जोड़ना था, जिससे बाद में जरूरत पड़ने पर मेमोरी के अप्रयुक्त हिस्से को डिस्क में लिखने की अनुमति मिल सके। बीबीएन में शामिल होने से पहले डैनियल मर्फी द्वारा एमआईटी में पीडीपी-1 के लिए ऐसी एक प्रणाली विकसित की गई थी। प्रारंभिक डीईसी मशीनें 18-बिट शब्द पर आधारित थीं, जिससे पतों को 256 किलोवर्ड मेमोरी के लिए एनकोड किया जा सकता था। मशीनें महँगी कोर मेमोरी पर आधारित थीं और आवश्यक मात्रा के आसपास कहीं भी शामिल नहीं थीं। पेजर ने पेजर के बैकिंग स्टोर के रूप में कार्य करने वाले चुंबकीय ड्रम पर ब्लॉक की एक तालिका को इंडेक्स करने के लिए पते के सबसे महत्वपूर्ण बिट्स का उपयोग किया। यदि आवश्यक हो तो सॉफ़्टवेयर पृष्ठों को लाएगा, और फिर पते को रैम के उचित क्षेत्र में हल करेगा।

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

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

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

डेवलपर टीम- उनमें से डैनियल मर्फी और डैनियल जी. बोब्रो- ने नई प्रणाली के लिए टेनेक्स (टेन-एक्सटेंडेड) नाम चुना। इसमें एक पूर्ण वर्चुअल मेमोरी (अप्रत्यक्ष स्मृति) सिस्टम शामिल था-अर्थात्, न केवल प्रोग्राम 262144 शब्दों के वर्चुअल मेमोरी के पूर्ण 18-बिट एड्रेस स्पेस तक पहुंच सकते थे, बल्कि प्रत्येक प्रोग्राम एक ही समय में ऐसा कर सकता था। पेजर सिस्टम मैपिंग को हमेशा की तरह संभालेगा, बैकिंग स्टोर से डेटा को आवश्यकतानुसार कॉपी करेगा। पेजर को रैम और स्टोर के बीच मैपिंग के कई सेट रखने में सक्षम होने के लिए एकमात्र परिवर्तन की आवश्यकता थी, सिस्टम का उपयोग करने वाले प्रत्येक प्रोग्राम के लिए एक। प्रदर्शन को ट्यून करने के लिए पेजर में एक्सेस समय की जानकारी भी होती है। परिणामी पेजर काफी जटिल था, जिसमें एक पूर्ण-ऊंचाई 19" रैकमाउंट चेसिस भर गया था।

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

टेनेक्स से टॉप्स-20 तक
छोटे पीडीपी-10 बाजार में टेनेक्स काफी लोकप्रिय हो गया, और बाहरी पेजर हार्डवेयर अपने स्वयं के एक छोटे व्यवसाय में विकसित हुआ। 1970 के प्रारंभ में डीईसी ने पीडीपी-10 प्रोसेसर, केआई-10 के उन्नयन पर काम शुरू किया। बीबीएन ने एक बार फिर अप्रत्यक्ष पृष्ठ तालिकाओं के साथ एक जटिल पेजर का समर्थन करने के लिए डीईसी को प्राप्त करने का प्रयास किया, लेकिन इसके बजाय, डीईसी ने एक बहुत ही सरल एकल-स्तरीय पेज मैपिंग सिस्टम पर निर्णय लिया। इस समझौते से सिस्टम की बिक्री प्रभावित हुई; इस बिंदु तक, टेनेक्स सबसे लोकप्रिय ग्राहक-लिखित पीडीपी-10 ऑपरेटिंग सिस्टम था, लेकिन यह नए, तेज़ केआई-10 पर नहीं चलेगा।

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

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

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

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

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

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

यह भी देखें

 * टाइम-शेयरिंग सिस्टम इवोल्यूशन

संदर्भ

 * Some text in this article was taken from The Jargon File entry on "TWENEX", which is in the public domain.

अग्रिम पठन

 * Daniel G. Bobrow, Jerry D. Burchfiel, Daniel L. Murphy, Raymond S. Tomlinson, "TENEX, A Paged Time Sharing System for the PDP-10", Communications of the ACM, Vol. 15, pages 135–143, March 1972.