टैनेनबॉम-टॉरवॉल्ड्स वार्ता

टैनेनबॉम - ट्रोवाल्ड्स वार्ता ऐन्ड्रू टैनेनबॉम और लिनस ट्रोवाल्ड्स के बीच एक बहस थी। यह बहस लिनक्स और कर्नल आर्किटेक्चर के बारे में था। टटनेनबॉम ने इस बहस की शुरुवात १९९२ में Usenet के डिस्कशन ग्रुप comp.os.minix में शुरू किया था। उन्होंने यह तर्क दिया की माइक्रोकर्नल मोनोलिथिक कर्नल से बेहतर हैं इसलिए उस समय १९९२ में भी लिनक्स ओबसोलिट (obsolete) हैं। दूसरे जाने मने हैकर जिन्होंने इस बहस में भाग लिया वह थे डेविड एस मिलर और थिओडोर त्सो ।

बहस 

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

इस बहस को पहली बार २९, जनवरी, १९९२ को रिकॉर्ड किया गया जब टैनेनबॉम ने comp.minix.os में लिनक्स कर्नल की आलोचना करते हुए एक पोस्ट किया था। इसमें उन्होंने लिखा था की कैसे लिनक्स कर्नल का मोनोलिथिक होना उसकी क्षमताओ को हानि पहुँचाता हैं। इस पोस्ट का शीर्षक उन्होंने लिनक्स इस ओब्सोलिट(Linux is Obsolete) रखा था। बहस के शुरुवात में तकनिकी बारीकियों में न जाते हुए उन्होंने इतना कहा की उन्हें लगता हैं कि माइक्रोकर्नल डिज़ाइन मोनोलिथिक कर्नल से बेहतर हैं। इसका कारण  उन्होंने पोर्टेबिलिटी बताया, और यह भी कहा की लिनक्स कर्नल x86 प्रोसेसर्स से कुछ ज़्यादा ही जुड़ा हुआ हैं। उन्हें x86 प्रोसेसर्स का भविष्य उज्जवल नहीं लगता था। अपने तर्क को रखने के लिए उन्होंने यहाँ तक कहा की, १९९१ में मोनोलिथिक कर्नल लिखना " एक बड़ा कदम पीछे हैं -- १९७० के दशक के तरफ "।

यह आलोचना एक पब्लिक न्यूज़ग्रुप में पोस्ट की गयी थी इसलिए लिनस इसका सीधा जवाब दे सकते थे। अगले दिन लिनस ने यही किया, लिनस ने तर्क दिया की MINIX के डिज़ाइन में कुछ अंधरुनी खामिया हैं (उदाहरण के तौर पर उन्होंने मल्टीथ्रेडिंग का ना होना बताया। लेकिन उन्होंने यह भी माना की सैद्धांतिक और सौंदर्यात्मक दृष्टिकोण से माइक्रोकर्नल का डिज़ाइन बेहतर हैं। लिनस ने यह भी कहा क्यूंकि वह खाली समय में लिनक्स कर्नल बना रहे हैं और उसे फ्री सॉफ्टवेयर के तौर पर सबको दे रहे हैं (उस समय MINIX फ्री नहीं था।) इसलिए टैनेनबॉम को उनके कोशिशो पर आपत्ति नहीं होनी चाहिए। इसके बाद लिनस ने यह बताया उन्होंने कैसे लिनक्स Intel 80386 प्रोसेसर के लिए ख़ास रूप से बनाया हैं और यह ट्रोवाल्ड्स के अभयास का भी एक हिस्सा था। ट्रोवाल्ड्स ने यह कहा की ऐसा करने से लिनक्स कर्नल MINIX से कम पोर्टेबल हो गया हैं। लिनस ने यह दावा किया की यह स्वीकार्य डिज़ाइन सिद्धांत हैं क्यूंकि इससे एप्लीकेशन प्रोग्रामिंग इंटरफ़ेस  ज़्यादा सरल और पोर्टेबल बन जाता हैं। इसलिए ट्रोवाल्ड्स ने यह भी कहा की " लिनक्स मिनिक्स से ज़्यादा पोर्टेबल हैं"।

लिनस के इस उत्तर के बाद, टैनेनबॉम ने यह तर्क दिया की प्रोफेसर होने के नाते उन्हें MINIX में कुछ सीमाये रखनी पड़ी। MINIX (मिनिक्स) को उन्हें एक साधारण स्टूडेंट के पास उपलब्ध हार्डवेयर के अनुसार बनाना था, जो की उस समय INTEL 8088 प्रोसेसर वाला कंप्यूटर था। इन कम्प्यूटर्स में कभी कभी तो हार्ड ड्राइव भी नहीं होता था। उस समय लिनक्स खासकर INTEL 80386 प्रोसेसर वाले कंप्यूटर के लिए बनाया गया था। यह प्रोसेसर ज़्यादा शक्तिशाली (और महंगा) था। टैनेनबॉम ने यह भी लिखा "[… ] एक साल पहले तक मिनिक्स के दो वर्शन थे एक PC के लिए (इनमे ३६० KB के डिस्केट्स इस्तेमाल हुए थे ) और एक INTEL 286 /386 (इनमे 1.2 MB के डिस्केट्स इस्तेमाल हुए थे )प्रोसेसर के लिए। PC वर्शन 286 /386 वर्शन से दुगना बिक रहा था "। टैनेनबॉम ने यह भी लिखा की लिनक्स फ्री सॉफ्टवेयर ज़रूर था, लेकिन ज़्यादातर विद्यार्थी इसका उपयोग नहीं कर पाएंगे क्यूंकि वे इसे इस्तेमाल करने के लिए ज़्यादा महंगा हार्डवेयर नहीं खरीद पाएंगे और मिनिक्स "एक रेगुलर 4.77 MHz प्रोसेसर वाले बिना हार्ड ड्राइव के मशीन पर भी इस्तेमाल की जा सकती हैं "।

इस पर USENET के एक और यूजर केविन ब्राउन ने टैनेनबॉम को जवाब दिया की लिनक्स का ३८६ आर्किटेक्चर से जुड़ा होना डिज़ाइनरस की पसन्द थी प्रचालन तन्त्र का ज्ञान न होना नहीं। उन्होंने लिखा था "[…] लिनक्स के डिज़ाइन का एक लक्ष्य था की ३८६ प्रोसेसर के विशेषताओं का फायदा उठाना था। तो आप क्या कहना चाहते हैं ? अलग अलग डिज़ाइन गोल्स आपको अलग अलग डिज़ाइन देगा "। ब्राउन ने यह भी कहा की सस्ते हार्डवेयर के लिए विशिस्ट सिस्टम डिज़ाइन बनाना भविष्य में उस सिस्टम की पोर्टेबिलिटी मुश्किल  बनाती हैं। हालांकि मिनिक्स नए हार्डवेयर को सपोर्ट नहीं करती थी फिर भी टैनेनबॉम ने यह तर्क दिया की x86 आर्किटेक्चर को भविष्य में दूसरे आर्किटेक्चर पीछे छोड़ देंगे इसलिए उन्हें इस बारे में कुछ करने की ज़रुरत नहीं हैं। टैनेनबॉम ने कहा " ५ साल बाद परिस्थिति अलग होगी सब अपने 200 MIPS, 64 SPARCstation 5 पर फ्री GNU प्रचालन तन्त्र इस्तेमाल कर रहे होंगे।

लिनक्स