क्या लिनक्स कर्नेल के विकास के 25 साल आम आदमी की शर्तों में योग्य या सारगर्भित हो सकते हैं? [बन्द है]


12

लिनक्स कर्नेल लगभग 25 साल पुराना है । अगर मुझे 1991 से (इसकी स्थापना की तारीख) के बाद से लिनक्स कर्नेल के विकास के इतिहास पर लघु संस्करण के साथ आना था, और 1994 (आज) तक आंशिक रूप से, अच्छी तरह से मैं नहीं कर सका। सबसे अच्छा मैं हर एक कर्नेल रिलीज नोट्स को पढ़ने में कमी कर सकता हूं, यह निम्नलिखित प्रदान करने के लिए होगा जो कि सामान्य रिलीज़ फीचर्स हैं । कर्नेल को संस्करण 3.11 तक जोड़ा गया है (नोट्स और लिंक छोड़ा गया):

  • लिनक्स कर्नेल का संस्करण 1.0 14 मार्च 1994 को जारी किया गया था। लिनक्स कर्नेल की यह रिलीज़ केवल सिंगल-प्रोसेसर i386- आधारित कंप्यूटर सिस्टम का समर्थन करती है। पोर्टेबिलिटी एक चिंता का विषय बन गया, और इसलिए संस्करण 1.2 (7 मार्च 1995 को जारी किया गया) ने अल्फा, SPARC और MIPS आर्किटेक्चर के आधार पर प्रोसेसर का उपयोग करते हुए कंप्यूटर सिस्टम के लिए समर्थन प्राप्त किया।
  • संस्करण 2.0 को 9 जून 1996 को रिलीज़ किया गया था। श्रृंखला में 41 रिलीज़ हुए थे। 2.0 की प्रमुख विशेषता थी एसएमपी सपोर्ट (यानी एक सिस्टम में कई प्रोसेसर के लिए सपोर्ट) और अधिक प्रकार के प्रोसेसर के लिए सपोर्ट।
  • संस्करण 2.2 (26 जनवरी 1999 को जारी) ने वैश्विक स्पिनलॉक को हटा दिया और बेहतर एसएमपी समर्थन प्रदान किया, और एम 68k और पावरपीसी आर्किटेक्चर के साथ-साथ नई फाइल सिस्टम (माइक्रोसॉफ्ट के एनटीएफएस के लिए केवल पढ़ने के लिए समर्थन सहित) के लिए समर्थन जोड़ा।
  • संस्करण 2.4.0 , 4 जनवरी 2001 को जारी किया गया, जिसमें आईएसए प्लग एंड प्ले, यूएसबी और पीसी कार्ड का समर्थन था। इसमें हेवलेट-पैकार्ड से पीए-आरआईएससी प्रोसेसर के लिए समर्थन भी शामिल था। 2.4.x के लिए विकास में थोड़ा बदलाव आया कि श्रृंखला की पूरी अवधि में और अधिक सुविधाएँ उपलब्ध कराई गईं, जिनमें शामिल हैं: ब्लूटूथ, लॉजिकल वॉल्यूम मैनेजर (LVM) संस्करण 1, RAID सपोर्ट, इंटरमेज़ो और ext3 फ़ाइल सिस्टम के लिए समर्थन।
  • संस्करण 2.6.0 18 दिसंबर 2003 को जारी किया गया था। 2.6.x के लिए विकास श्रृंखला की अवधि के दौरान नई विशेषताओं को शामिल करते हुए और बदल गया। 2.6 श्रृंखला में किए गए परिवर्तनों में से हैं: मेनलाइन कर्नेल स्रोतों में into क्लिनक्स का एकीकरण, पीएई समर्थन, सीपीयू की कई नई लाइनों के लिए समर्थन, मेनलाइन कर्नेल स्रोतों में एएलएसए का एकीकरण, 2 32 उपयोगकर्ताओं के लिए समर्थन ( 2 16 से ऊपर ), 2 29 प्रक्रिया आईडी तक का समर्थन (64-बिट केवल, 32-बिट मेहराब अभी भी 2 से 15 तक सीमित है)), काफी हद तक डिवाइस प्रकार और प्रत्येक प्रकार के उपकरणों की संख्या में वृद्धि हुई, 64-बिट समर्थन में सुधार हुआ, फ़ाइल सिस्टम के लिए समर्थन जो 16 टेराबाइट्स तक फ़ाइल आकार का समर्थन करता है, इन-कर्नेल प्रीमेशन, मूल निवासी पॉज़िशन थ्रेड लाइब्रेरी के लिए समर्थन (NPTL), मेनलाइन कर्नेल स्रोतों में उपयोगकर्ता-मोड लिनक्स एकीकरण, मेनलाइन कर्नेल स्रोतों में SELinux एकीकरण, InfiniBand समर्थन और काफी अधिक। 2.6.x रिलीज़ के दौरान कई फ़ाइल सिस्टम के अलावा उल्लेखनीय भी हैं: FUSE, JFS, XFS, ext4 और अधिक। 2.6 कर्नेल श्रृंखला के इतिहास पर विवरण 2.6 कर्नेल श्रृंखला स्रोत कोड k रिलीज़ के क्षेत्र में ChangeLog फ़ाइलों में पाया जा सकता है।
  • संस्करण 3.0 22 जुलाई 2011 को जारी किया गया था। टॉर्वाल्ड्स ने घोषणा की कि बड़ा बदलाव था, "कुछ भी नहीं। बिल्कुल कुछ भी नहीं।" 30 मई 2011 ने टोर्वाल्ड्स की घोषणा करते हुए कहा, "... आइए हम सुनिश्चित करें कि हम वास्तव में अगली रिलीज को न केवल एक नया चमकदार नंबर बनाएं, बल्कि एक अच्छा कर्नेल भी बनाएं।" अपेक्षित 6-7 सप्ताह की विकास प्रक्रिया के बाद, इसे लिनक्स की 20 वीं वर्षगांठ के पास जारी किया जाएगा।
  • दिसंबर 2012 में, Torvalds ने i386 प्रोसेसर के लिए समर्थन को हटाकर कर्नेल जटिलता को कम करने का निर्णय लिया, जिससे 3.7 कर्नेल श्रृंखला अभी भी मूल प्रोसेसर का समर्थन कर रही है। उसी श्रृंखला ने एआरएम प्रोसेसर के लिए एकीकृत समर्थन किया।
  • 2 सितंबर 2013 को जारी किया गया संस्करण 3.11 , अस्थायी फ़ाइल कमजोरियों को कम करने के लिए ओपन (2) के लिए नए O_TMPFILE फ्लैग जैसे कई नए फीचर्स जोड़ता है, प्रायोगिक AMD Radeon डायनेमिक पॉवर मैनेजमेंट, लो-लेटेंसी नेटवर्क पोलिंग, और zswap (कंप्रेस्ड लैप कैश)।

मैं यह भी जोड़ सकता हूं कि कई वर्षों से अब लिनक्स फाउंडेशन कर्नेल विकास पर रिपोर्टिंग कर रहा है । ये हैं 2012-2013 कर्नेल डेवलपमेंट हाइलाइट्स:

  • 536 निगमों का प्रतिनिधित्व करने वाले 3,738 व्यक्तिगत डेवलपर्स से लगभग 92,000 परिवर्तन किए गए हैं (जो हम जानते हैं)।
  • महत्वपूर्ण नई सुविधाओं की एक विशाल सरणी को मेनलाइन में मिला दिया गया है। इनमें एआरएम के लिए फुल टिक्लेस ऑपरेशन, यूजर नेमस्पेस, KVM और Xen वर्चुअलाइजेशन, शेड्यूलर में प्रति-यूनिट लोड ट्रैकिंग, यूजर-स्पेस चेकपॉइंट / रिस्टार्ट, 64-बिट ARM आर्किटेक्चर सपोर्ट, F2FS फ्लैश-ओरिएंटेड फाइलसिस्टम, कई नेटवर्किंग सुधार के उद्देश्य से शामिल हैं विलंबता और बफरब्लोट की समस्याओं पर, दो स्वतंत्र सबसिस्टम, ब्लॉक स्टोरेज डिवाइस के लिए तेजी से कैशिंग प्रदान करते हैं, और बहुत कुछ।
  • एंड्रॉइड-विशिष्ट कर्नेल सुविधाओं पर लंबे समय तक स्क्वैबल बैकग्राउंड में पूरी तरह से फीका पड़ गया है। बहु-चर्चित "वैकलॉक्स" फीचर को चुपचाप एक अलग मेनलाइन समाधान द्वारा बदल दिया गया है जो नवीनतम एंड्रॉइड डिवाइसों में उपयोग किया जाता है।
  • विकास गुठली में कीड़े खोजने के लिए स्वचालित उपकरणों का उपयोग इस अवधि के दौरान काफी बढ़ गया है। "ट्रिनिटी" फ़ज़ टेस्टर और शून्य-दिन बिल्ड-एंड-बूट सिस्टम जैसे उपकरण प्री-रिलीज़ कर्नेल में बड़ी संख्या में बग ढूंढ रहे हैं, विकास चक्र को छोटा कर रहे हैं और समुदाय को उच्च-गुणवत्ता वाले रिलीज़ वितरित करने में सक्षम कर रहे हैं।
  • मोबाइल और एम्बेडेड उद्योगों से योगदान में वृद्धि जारी है। उदाहरण के लिए, लिनोरो, सैमसंग और टीआई ने मिलकर इस पेपर के पिछले संस्करण में 4.4% परिवर्तन किए; 3.10 तक की अवधि के लिए, उन्होंने सभी परिवर्तनों में लगभग 11% का योगदान दिया।
  • कर्नेल परियोजना ने पहली बार महिलाओं के लिए आउटरीच कार्यक्रम में भाग लिया, जिसमें 7 उपलब्ध पदों के लिए 41 आवेदन थे। आवेदन प्रक्रिया के दौरान, 374 पैच कर्नेल को जमा किए गए थे, और उन पैच में से 1/3 को 3.10 कर्नेल रिलीज में स्वीकार किया गया था। अब इंटर्न प्रक्रिया चल रही है, लेकिन इसके परिणाम भविष्य के कर्नेल जारी होने तक दिखाई नहीं देंगे।

इसके अलावा, कर्नेल को क्या हो रहा है , यह निर्धारित करना बहुत कठिन नहीं है क्योंकि हमारे पास व्यक्तिगत कमिट से परे मैट्रिक्स हैं । उदाहरण के लिए, हम जानते हैं कि 1994 में 1.0.0 कर्नेल में कोड की 176 250 लाइनें थीं; और हम जानते हैं कि एक समकालीन कर्नेल जैसे 3.10 में कोड की 15 803 499 लाइनें हैं। बहुत अधिक। कर्नेल रिलीज़ आवृत्ति बढ़ी है (3.10 के लिए 63 दिन), साथ ही साथ परिवर्तन की दर (9 घंटे या उससे अधिक जो हम बोलते हैं)। लिनक्स फाउंडेशन को उद्धृत करने के लिए:

वर्षों से परिवर्तन की इस दर को बनाए रखने की क्षमता किसी भी पिछले सार्वजनिक सॉफ्टवेयर परियोजना में अभूतपूर्व है।

लेकिन यह सब मेरी राय में थोड़ा अंतर्दृष्टि लाता है। इसलिए, मैं पूछूंगा:

  1. क्या एक सदी के विकास की यह तिमाही सभी सूचीबद्ध विशेषताओं के रैखिक जोड़ से परे योग्य हो सकती है जो समय के साथ इस कर्नेल को बनाते हैं?
  2. और क्या यह कोई अंतर्दृष्टि लाता है कि लिनक्स कर्नेल क्या है, या यह कहाँ जा रहा है? 25 वर्षों के विकास के बाद निश्चित रूप से कुछ निष्कर्ष निकाले जा सकते हैं?

आम आदमी के शब्दों में एक अमूर्त उत्तर की तलाश में जो सब कुछ कहने का सहारा लिए बिना कहता है।


"229 प्रोसेस आईडी के लिए समर्थन" मेरे ऊपर उछल गया, इसलिए मैंने इसे नजरअंदाज कर दिया और एकमात्र संदर्भ यह है, ऐसा लगता है, उस पैराग्राफ का मूल स्रोत है । मैंने सोचा था कि आईडी की एक (हस्ताक्षरित) 16-बिट रेंज है, अर्थात ~ 16,000, लेकिन यह वास्तव में इससे कहीं अधिक हो सकता है । यह निश्चित रूप से कुछ सौ नहीं है।
गोल्डीलॉक्स

3
यह प्रश्न बहुत व्यापक है क्योंकि यह इस विषय पर विकिपीडिया लेख की तलाश कर रहा है।
गिल्स एसओ- बुराई को रोकें '

क्या आप यहां पेपर लिखने का इरादा कर रहे हैं? यह ठीक है, लेकिन यह आपको सलाह देने में मदद करेगा, यदि आप विशिष्ट हैं कि आप क्या करने की कोशिश कर रहे हैं। मुझे लगता है कि स्थानीय पानी के छेद में आपकी अगली शाम के लिए एक अच्छा सारांश तैयार नहीं है;)
गोल्डीलॉक्स

1
मैं अस्पष्ट रूप से याद करता हूं कि कम से कम कुछ लोग इस या इस तरह के शोध प्रबंध लिखने की योजना बना रहे हैं। मुझे संदेह है कि आपको इस विषय पर अकादमिक साहित्य मिलेगा ... मौजूदा प्रकाशनों की ओर इशारा करने के अलावा, ऐसा लगता है कि आपके सवालों के जवाब देने के लिए महीनों शोध करना होगा।
derobert

आपके प्रश्न पर, शायद आपको हमें यहां एक अच्छा उत्तर प्राप्त करने के लिए, आम आदमी की शर्तों के बारे में बताने की आवश्यकता है। इसके अलावा, इसे lkml पर पोस्ट करें और अपनी कालक्रम पर उनकी प्रतिक्रिया प्राप्त करें। यदि आप कुछ महत्वपूर्ण चूक गए हैं, तो वे आपको बताएंगे।
बनगुंगिन

जवाबों:


11

तुम पूछो:

क्या एक सदी के विकास की यह तिमाही सभी सूचीबद्ध विशेषताओं के रैखिक जोड़ से परे योग्य हो सकती है जो समय के साथ इस कर्नेल को बनाते हैं? और क्या यह कोई अंतर्दृष्टि लाता है कि लिनक्स कर्नेल क्या है, या यह कहाँ जा रहा है?

मुझे संदेह है कि इस तरह के सवालों के अच्छी तरह से परिभाषित जवाब हैं। हालांकि, मुझे लगता है कि लिनक्स कर्नेल के विकास को चलाने वाली ताकतों को समझना मुश्किल नहीं है।

सबसे पहले, कंप्यूटर तेजी से महत्वपूर्ण चीजें हैं। चॉम्स्की ने टिप्पणी की कि वे किसी भी औद्योगिक अर्थव्यवस्था के लिए केंद्रीय हैं। एक कंप्यूटर एक ऑपरेटिंग सिस्टम के बिना कुछ भी नहीं है, जो इस प्रकार ऑपरेटिंग सिस्टम को महत्वपूर्ण बनाता है।

80 और 90 के दशक में एक समय के लिए, मालिकाना ऑपरेटिंग सिस्टम आरोही हो गया। यह कुछ मायने में एक अप्राकृतिक स्थिति थी। Microsoft का Windows एक समय प्रभावी था, और एक मायने में अभी भी है, लेकिन इसने केवल नेटवर्क प्रभाव का उपयोग करके अपनी स्थिति को बनाए रखा।

इंटरनेट के उदय के साथ, सामुदायिक ऑपरेटिंग सिस्टम का उत्पादन संभव हो गया। हालांकि, इस तरह के एक ऑपरेटिंग सिस्टम केवल उपयोगी होगा अगर यह बदले में मालिकाना नहीं हो सकता है। ऑपरेटिंग सिस्टम का बीएसडी परिवार उस श्रेणी में नहीं था। इसलिए लिनक्स कर्नेल का उदय एक समुदाय ऑपरेटिंग सिस्टम के दिल के रूप में होता है जिसे प्रोप्रेटरीकृत नहीं किया जा सकता है।

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

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

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

बेशक, हमें समुदाय की इच्छाओं को छूट नहीं देनी चाहिए, जिसे आमतौर पर मुफ्त सॉफ्टवेयर समुदाय कहा जाता है, या कभी-कभी एफओएसएस (फ्री और ओपन सोर्स सॉफ्टवेयर), सामान्य लोगों के लिए एक मुफ्त ऑपरेटिंग सिस्टम का उपयोग करने के लिए, जो निगमों द्वारा नियंत्रित नहीं है। आखिरकार, डेबियन और फेडोरा जैसी परियोजनाएं स्वयंसेवकों द्वारा संचालित की जाती हैं जो इन मूल्यों में विश्वास करते हैं। हालांकि, मुझे लगता है कि निगमों द्वारा निभाए जाने वाले हिस्से को भी कम करके नहीं आंका जाना चाहिए।


1
+1 उन सामाजिक-राजनैतिक ताकतों के मुद्दे को उठाने के लिए, जिन्होंने मुख्यधारा में संयोजन w / GNU को भयावह बनाया। मुझे लगता है कि यह उत्पत्ति का एक बहुत ही महत्वपूर्ण पहलू है, जो भले ही "गैर-तकनीकी मुद्दा" लग सकता है, वास्तव में ओएस के विकास पर हाथों की एक परिभाषित विशेषता है - विशेष रूप से एरिक एस रेमंड के लेखन को देखें - और हार्डवेयर निर्माताओं की एक विस्तृत श्रृंखला और इंटरनेट के ऐतिहासिक प्रमुख मंच के रूप
गोल्डीलॉक्स

^ ध्यान दें कि बहुत से लोगों के घर में एक लिनक्स कर्नेल होता है और उसे इसकी वजह से पता भी नहीं चलता है (आपका राउटर, आपका डीवीआर बॉक्स इत्यादि)
Goldilocks

मैं समय में कर्नेल को स्वस्थ करने के लिए आपके उत्तर की सराहना करता हूं, और उस गतिशीलता की अपील करता हूं जो प्रबल हुई - कंप्यूटिंग का विकास; व्यवसाय अपील; बाजार की ताकत; इंटरनेट; कंप्यूटिंग की स्वतंत्रता; लाइसेंस; और कैसे उपरोक्त सभी कर्नेल में कार्यान्वयन पर प्रभाव डालते हैं, लिनक्स पर संपूर्ण दृष्टिकोण के साथ। मुझे एक "अप्राकृतिक स्थिति" के बारे में आपके बयान में पढ़ना है कि इसको ठीक से आंकने के लिए हमारे पास ऐतिहासिक परिप्रेक्ष्य की कमी है - और यह महत्वपूर्ण है। हालाँकि मैं वास्तव में प्रति कर्नेल पर ध्यान केंद्रित कर रहा था, मैं आपके बिंदुओं और टिप्पणियों के बारे में अधिक सोचूंगा। धन्यवाद!

1
@goldilocks: अपने Android फोन का उल्लेख नहीं करने के लिए।
स्लीपबेटमैन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.