संगत समय-साझाकरण प्रणाली

प्रतिस्पर्धी का उद्देश्य समय बिताने से है सीटीएसएस का सामान्य उद्देश्य समय साझाकरण संचालन प्रणाली था। तथा संगत समय बिताने का मतलब समय बिताने से है जो प्रचय संसाधन के अनुकूल है यह समवर्ती रूप से समय का साझाकरण और बेवजह दोनों का प्रस्ताव करता है।

सीटीएसएस को एमआइटी संगणना केंद्र में विकसित किया गया था। सीटीएसएस को पहली बार नवंबर 1961 में एमटीआइ के संशोधित आइबीएम 709 पर प्रदर्शित किया गया था तथा हार्डवेयर को 1962 में संशोधित आइबीएम 7090 के साथ बदल दिया गया था और बाद में एक संशोधित आइबीएम 7094 को परियोजना एमएसी सीटीएसएस आइबीएम 7094 से अलग करने के लिए नीली मशीन बनाई गई एमआईटी कॉम्प को नियमित सेवा केंद्र में उपयेाग करने के लिए 1963 की गर्मियों में शुरू किया गया और 1968 तक वहां संचालित रहे।

अक्टूबर 1963 में लाल मशीन में प्राप्त एक अलग आइबीएम 7094 पर सीटीएसएस की दूसरी तैनाती का उपयोग एमआईटी कंप्यूटर विज्ञान और कलात्मक ज्ञान प्रयोगशाला परियोजना एमएसी में 1969 तक किया गया था जब लाल मशीन को सूचना प्रसंस्करण केंद्र में ले जाया गया और 20 जुलाई 1973 तक संचालित किया गया था सीटीएसएस केवल उन दो मशीनों पर चलता था जहाँ एमआईटी के बाहर दूरस्थ सीटीएसएस उपयोगकर्ता थे जिनमें कैलिफोर्निया, दक्षिण अमेरिका, एडिनबर्ग विश्वविद्यालय और ऑक्सफोर्ड विश्वविद्यालय सम्मिलित थे।

इतिहास
मैसाचुसेट्स की तकनीकी संस्था में 1954 के ग्रीष्मकालीन सत्र में जॉन बैकस ने कहा कि साझा करने से एक बड़े कंप्यूटर को कई छोटे कंप्यूटरों के रूप में प्रयोग किया जा सकता है प्रत्येक उपयोगकर्ता के लिए एक पढ़ने का स्थान होना चाहिए। उस समय के कंप्यूटर आइबीएम 704 ऐसी प्रणाली को लागू करने के लिए पर्याप्त शक्तिशाली नहीं थे लेकिन 1958 के अंत में एमआईटी के संगणना केंद्र ने अपने 704 में एक टाइपराइटर इनपुट जोड़ा इससे एक प्रोग्रामर या ऑपरेटर अतिरिक्त उत्तर प्राप्त कर सके मशीन को एक साथ उपयोग करने वाले अन्य कार्यक्रमों के साथ समय-साझाकरण के आधार पर जून 1959 में क्रिस्टोफर स्ट्रेची ने पेरिस में अंतर्राष्ट्रीय संघ के लिए सूचना के स्वरूप इतिहास में बड़ा तेज कम्प्यूटर में एक पेपर समय साझा करने के लिए प्रकाशित किया जहां उन्होंने कंप्यूटर से जुड़े एक समाधान (जैसे तैलिप्रिंटर) पर एक डिबग करने वाले कार्यक्रम की परिकल्पना की जबकि उसी समय दूसरा कार्यक्रम कम्प्यूटर पर चल रहा था।  डिबगिंग कार्यक्रम उस समय एक महत्वपूर्ण समस्या थी क्योंकि बैच के स्वरूप परिणाम प्राप्त करने के लिए एक परिवर्तित संहिता अनुप्राणित करने से एक दिन लग जाता था। जॉन मैककार्थी (कंप्यूटर वैज्ञानिक) ने इसके बारे में एमआईटी में एक मेमो लिखा जिसके बाद एमआईटी में एक प्रारंभिक अध्ययन समिति और एक कार्यकारी समिति की स्थापना की गई जिससे समय साझा करने का विकास किया जा सके। समितियों ने एक ही समय में कंप्यूटर का उपयोग करने वाले कई उपयोगकर्ताओं की परिकल्पना की एमआईटी में ऐसी प्रणाली को लागू करने का विवरण तय किया और प्रणाली का विकास शुरू किया।

प्रायोगिक समय साझाकरण प्रणाली
जुलाई 1961 तक गणना केन्द्र के आइबीएम 709 पर कुछ समय साझा करने के आदेश चालू हो गए थे और नवंबर 1961 में फर्नांडो जे कॉर्बेटो ने एमआईटी में प्रदर्शित किया जिसे प्रायोगिक समय साझाकरण प्रणाली कहा जाता था। 3 मई 1962 को एफ जे कॉरबाटो एम एम कॉर्बेटो और आर सी डेले ने संयुक्त कंप्यूटर सम्मेलन में उस प्रणाली के बारे में एक पेपर प्रकाशित किया। रॉबर्ट सी. डेली, पीटर आर. बोस और कम से कम 6 अन्य प्रोग्रामरों ने संचालन प्रणाली को लागू किया जो आंशिक रूप से फोरट्रान मॉनिटर प्रणाली पर आधारित था।

प्रणाली ने आइबीएम 7090 का उपयोग किया जिसे हर्बर्ट एम. टीगर द्वारा संशोधित किया गया उपयोगकर्ता प्रणाली के लिए अतिरिक्त 3 फ्रीडम फ्लेक्सोराइटर और एक प्रोग्राम करने योग्य अंतराल समय के साथ 3 उपयोगकर्ताओं में से प्रत्येक के पास दो आइबीएम729 थे एक उपयोगकर्ता की फाइल निर्देशिका के लिए और एक मेमोरी में कार्यक्रम को डंप करने के लिए प्रणाली कमांड के लिए एक टेप इकाई भी थी तथा डिस्क चालक नहीं थे। उपयोगकर्ताओं के लिए चुंबकीय-कोर मेमोरी 27 बिट शब्द (36-बिट शब्द) और पर्यवेक्षक (संचालन प्रणाली) के लिए 5 बिट शब्द थे। बाधा डालना इस समाधान से इनपुट पर्यवेक्षक में बफर्स को लिखा गया था और जब कैरिज रिटर्न प्राप्त हुआ तो पर्यवेक्षक को नियंत्रण दिया गया जिसने रनिंग कोड को टेप में डाल दिया और तय किया कि आगे क्या चलाना है। उस समय लागू किए गए समाधान तमान थे तथा लॉगिन, लॉगआउट, इनपुट, संपादन, फैप, मैड, मैडट्रन, भार, उपयोग, प्रारम्भ, स्किपपीएम, लिस्टफ, प्रिंटफ, एक्स डंप और एक्स अनडंप।यह संगत समय साझाकरण प्रणाली का प्रारंभिक संस्करण बन गया। जिससे यह समय साझाकरण का पहला सार्वजनिक प्रदर्शन था कुछ विशेष-उद्देश्य प्रणालियों का उल्लेख करते हैं या कोई ज्ञात कागजात प्रकाशित नहीं होते हैं। सीटीएसएस की अनुकूलता एक ही कंप्यूटर पर चलने वाली पृष्ठभूमि की नौकरियों के साथ थी जो आमतौर पर समय-साझाकरण कार्यों की तुलना में अधिक कंप्यूट संसाधनों का उपयोग करती थी।

डॉटसिस और ब्रेलएम्बास
डॉटसिस ब्रेल अनुवाद सॉफ्टवेयर का पहला संस्करण सीटीएसएस पर चलता था और एक ब्रेलएम्बास ब्रेल पेज प्रिंटर पर आउटपुट कर सकता था। सीटीएसएस पर डॉटसिस को पहली बार 18 अगस्त 1966 को गोपनीय अध्ययन के एक भाग के रूप में प्रदर्शित किया गया था जहाँ समाचार के रूप में दूरभाष टाइपसेटर टेप को ग्रेड 2 ब्रेल में परिवर्तित किया गया था। अगले महीने दूरभाष टाइपसेटर टेप पर पाठ्यपुस्तक की जानकारी को त्रुटि-मुक्त ग्रेड 2 ब्रेल में परिवर्तित करने की गोपनीयता का सफलतापूर्वक प्रदर्शन किया गया इसलिए एमआईटी सीटीएसएस एक अकादमिक प्रणाली तथा एक शोध वाहन था और वाणिज्यिक कंप्यूटिंग के लिए कोई प्रणाली नहीं थी दो साल बाद सॉफ्टवेयर बंदरगाह के लिए सीटीएसएस निर्भरता से अलग डॉटसिस का एक संस्करण आइबीएम 709 पर ब्लाइंड के लिए अमेरिकन प्रिंटिंग हाउस में प्रिंट करने के लिए प्रयोग किया गया था। दूरभाष टाइपसेटर इनपुट से निर्मित पुस्तक का पहला ब्रेल संस्करण इंक-प्रिंट संस्करण के कुछ ही सप्ताह बाद  सीटीएसएस पर ब्रेल में गणितीय तालिकाओं को प्रिंट करने का एक प्रदर्शन दिखाया गया था । ब्रेलएम्बास ब्रेल पेज प्रिंटर के माध्यम से ब्रेल में इंच से मिलीमीटर तक रूपांतरण तालिका बनाने के लिए एक छोटा फोरट्रान कार्यक्रम लिखा गया था।

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

विशेषताएं

 * मूल एलिजा सीटीएसएस पर चलता था। * CTSS पासवर्ड लॉगिन लागू करने वाला पहला कंप्यूटर सिस्टम था।
 * CTSS में पहले कम्प्यूटरीकृत टेक्स्ट एडिटिंग और फॉर्मेटिंग यूटिलिटीज में से एक था, जिसे TYPSET और RUNOFF (MEMO, MODIFY और DITTO के उत्तराधिकारी) कहा जाता है।
 * CTSS के पास पहला इंटर-यूज़र मैसेजिंग कार्यान्वयन था, जो अग्रणी इलेक्ट्रॉनिक मेल था।
 * CTSS में लिखें (यूनिक्स) के समान पहला तात्कालिक संदेशन सिस्टम था।
 * एमआईटी कंप्यूटेशन सेंटर के स्टाफ सदस्य लुई पौजिन ने सीटीएसएस के लिए रनकॉम नामक एक कमांड बनाया, जिसने एक फाइल में निहित कमांड की एक सूची को निष्पादित किया। RUNCOM ने पैरामीटर प्रतिस्थापन के लिए भी प्रदान किया। बाद में उन्होंने मॉलटिक्स शैल (कंप्यूटिंग) के लिए एक डिज़ाइन तैयार किया जिसे ग्लेंडा श्रोएडर द्वारा लागू किया गया था जिसने बदले में यूनिक्स खोल स्क्रिप्ट को प्रेरित किया।
 * CTSS QED (पाठ संपादक) QED (टेक्स्ट एडिटर), Ed_(text_editor), vi, और Vim_(text_editor) के पूर्ववर्ती केन थॉम्पसन द्वारा जोड़े गए रेगुलर एक्सप्रेशंस का कार्यान्वयन था।

कर्नेल
CTSS ने एक संशोधित IBM 7090 मेनफ्रेम कंप्यूटर का उपयोग किया जिसमें दो 32,768 (32K) 36-बिट-वर्ड (कंप्यूटर आर्किटेक्चर) कोर मेमोरी के बैंक थे जो डिफ़ॉल्ट कॉन्फ़िगरेशन के बजाय केवल एक प्रदान करते थे। एक बैंक समय-साझाकरण पर्यवेक्षी कार्यक्रम के लिए आरक्षित था, दूसरा उपयोगकर्ता कार्यक्रमों के लिए। सीटीएसएस के पास एक संरक्षित-मोड कर्नेल था, ए-कोर (मेमोरी बैंक ए) में पर्यवेक्षक के कार्यों को केवल आधुनिक ऑपरेटिंग सिस्टम की तरह सॉफ्टवेयर इंटरप्ट्स द्वारा बुलाया जा सकता था। मेमोरी-प्रोटेक्शन इंटरप्ट के कारण सॉफ्टवेयर इंटरप्ट के लिए उपयोग किया जाता था। सेंट्रल प्रोसेसिंग यूनिट आवंटन निर्धारण (कंप्यूटिंग) क्वांटम टाइम यूनिट 200 एमएस के साथ, एक बहुस्तरीय फीडबैक कतार द्वारा नियंत्रित किया गया था। इसमें कुछ विशेष मेमोरी-मैनेजमेंट हार्डवेयर, एक क्लॉक इंटरप्ट और कुछ निर्देशों को ट्रैप करने की क्षमता भी थी।

पर्यवेक्षक सबरूटीन्स

 * RDFLXA - कंसोल से एक इनपुट लाइन पढ़ें
 * WRFLX - कंसोल के लिए एक आउटपुट लाइन लिखें
 * मृत - स्मृति में कोई कार्यक्रम के बिना, उपयोगकर्ता को मृत स्थिति में रखें
 * DORMNT - मेमोरी में प्रोग्राम के साथ उपयोगकर्ता को निष्क्रिय स्थिति में रखें
 * GETMEM - मेमोरी आवंटन का आकार प्राप्त करें
 * SETMEM - मेमोरी आवंटन का आकार सेट करें
 * TSSFIL - डिस्क पर CTSS सिस्टम फ़ाइलों तक पहुँच प्राप्त करें
 * यूएसआरएफआईएल - उपयोगकर्ता की अपनी निर्देशिका में वापस बदलें
 * GETBRK - छोड़ने पर निर्देश स्थान काउंटर प्राप्त करें

प्रोग्रामिंग लैंग्वेज
CTSS में पहले केवल एक असेंबलर, फोरट्रान विधानसभा कार्यक्रम और एक कंपाइलर, MAD (प्रोग्रामिंग लैंग्वेज) था। इसके अलावा, फोरट्रान # फोरट्रान II कोड को MADTRN का उपयोग करके MAD कोड में अनुवादित किया जा सकता है। बाद में सिस्टम का आधा एमएडी में लिखा गया था। बाद में COMIT, Lisp (प्रोग्रामिंग भाषा) | LISP 1.5 और ALGOL के एक संस्करण सहित अन्य प्रोग्रामिंग भाषाएँ थीं।

फाइल सिस्टम
प्रत्येक उपयोगकर्ता की अपनी निर्देशिका (कंप्यूटिंग) थी, और समान समस्या संख्या वाले लोगों के समूहों के लिए साझा निर्देशिकाएँ भी थीं। प्रत्येक कम्प्यूटर फाइल के दो नाम होते थे, दूसरा उसके प्रकार का संकेत देता था जैसा कि बाद के सिस्टम में फ़ाइल नाम एक्सटेंशन ने किया था। सबसे पहले, प्रत्येक फ़ाइल में चार मोड में से एक हो सकता है: अस्थायी, स्थायी, रीड-ओनली क्लास 1, और रीड-ओनली क्लास 2। रीड-ओनली क्लास 1 ने उपयोगकर्ता को फ़ाइल के मोड को बदलने की अनुमति दी। फ़ाइलों को निर्देशिकाओं के बीच प्रतीकात्मक रूप से भी जोड़ा जा सकता है। सूची द्वारा एक निर्देशिका सूची: 10 फ़ाइलें 20 ट्रैक का उपयोग किया गया दिनांक नाम मोड सं. पटरियों 5/20/63 मुख्य पागल पी 15 5/17/63 DPFA SYMTB P 1 5/17/63 डीपीएफए ​​बीएसएस पी 1 5/17/63 डीपीएफए ​​एफएपी पी 2

बाह्य उपकरणों
इनपुट-आउटपुट हार्डवेयर ज्यादातर मानक आईबीएम परिधीय्स थे। इनमें छह डेटा चैनल शामिल हैं जो इससे जुड़ रहे हैं:
 * प्रिंटर, छिद्रित कार्ड रीडर और पंच
 * आईबीएम 729 टेप ड्राइव, एक आईबीएम 1301 डिस्क स्टोरेज, बाद में 38 मिलियन शब्द क्षमता के साथ आईबीएम 1302 में अपग्रेड किया गया
 * 186K शब्दों के साथ एक IBM 7320 ड्रम मेमोरी जो एक सेकंड में 32K-वर्ड मेमोरी बैंक लोड कर सकती है (बाद में 0.25 सेकंड में अपग्रेड किया गया)
 * दो कस्टम हाई-स्पीड वेक्टर ग्राफिक्स प्रदर्शित करता है
 * एक IBM 7750 ट्रांसमिशन कंट्रोल यूनिट, जो IBM 1050 चयनात्मक और टेलेटाइप कॉर्पोरेशन # टेलेटाइप कॉर्पोरेशन सहित 112 टेलीप्रिंटर टर्मिनलों को सपोर्ट करने में सक्षम है। कुछ टर्मिनल दूरस्थ रूप से स्थित थे, और सिस्टम को सार्वजनिक टेलिक्स नेटवर्क का उपयोग करके एक्सेस किया जा सकता था।

प्रभाव
CTSS को 1962 के संयुक्त कंप्यूटर सम्मेलन में प्रस्तुत एक पेपर में वर्णित किया गया था, और इसने अन्य प्रारंभिक समय-साझाकरण प्रणालियों के डिजाइन को बहुत प्रभावित किया।

मौरिस विल्क्स ने CTSS देखा और टाइटन (1963 कंप्यूटर) का डिज़ाइन उसी से प्रेरित था। डेनिस रिची ने 1977 में लिखा था कि UNIX को CTSS के आधुनिक कार्यान्वयन के रूप में देखा जा सकता है। मल्टिक्स, जिसे प्रोजेक्ट मैक द्वारा भी विकसित किया गया था, 1960 के दशक में CTSS के उत्तराधिकारी के रूप में शुरू किया गया था - और बदले में 1969 में यूनिक्स के विकास को प्रेरित किया। CTSS से इन प्रणालियों द्वारा प्राप्त तकनीकी शब्दों में से एक डेमन (कंप्यूटिंग) है।

असंगत टाइमशेयरिंग सिस्टम (ITS), एक और प्रारंभिक, क्रांतिकारी और प्रभावशाली MIT टाइम-शेयरिंग सिस्टम, उन लोगों द्वारा निर्मित किया गया था जो CTSS और बाद में, मल्टिक्स द्वारा ली गई दिशा से असहमत थे; नाम CTSS की हास्यानुकृति था, क्योंकि बाद में यूनिक्स नाम मल्टिक्स की पैरोडी था। CTSS और ITS फाइल सिस्टम में कई डिज़ाइन तत्व समान हैं। दोनों के पास एम.एफ.डी. (मास्टर फ़ाइल निर्देशिका) और एक या अधिक U.F.D. (उपयोगकर्ता फ़ाइल निर्देशिका)। उनमें से किसी में भी नेस्टेड निर्देशिकाएँ (उप-निर्देशिकाएँ) नहीं हैं। दोनों में फ़ाइल नाम हैं जिनमें दो नाम हैं जो अधिकतम छह-वर्ण लंबे हैं। दोनों लिंक की गई फाइलों का समर्थन करते हैं।

यह भी देखें

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

बाहरी संबंध

 * Oral history interview with John McCarthy, Charles Babbage Institute, University of Minnesota. Discusses computer developments at MIT including time sharing.
 * Oral history interview with Fernando J. Corbató, Charles Babbage Institute, University of Minnesota. Discusses many computer developments at MIT including CTSS.
 * Oral history interview with Robert M. Fano, Charles Babbage Institute, University of Minnesota. Discusses computer developments at MIT including CTSS.
 * The IBM 7094 and CTSS: personal memoir of Tom Van Vleck, a system programmer on CTSS
 * CTSS Source version MIT8C0 in Paul Pierce's collection.
 * Dave Pitts' IBM 7094 support – Includes a license-free simulator, cross assembler and linker that can be used to build and run CTSS.
 * Richard Cornwell's CTSS sources and binaries, which run on SIMH. Includes license-free tools
 * CIO: 40 years of Multics, 1969-2009: Interview with CTSS and Multics developer Fernando J. Corbato.
 * Jerome Saltzer's CTSS bookshelf via CSAIL.