यूनिक्स / लिनक्स इंटर्नल को बेहतर ढंग से समझने के लिए पढ़ने की सिफारिश [बंद]


54

मैंने पिछले चार वर्षों में एक एप्लिकेशन डेवलपर (ज्यादातर C) के रूप में * निक्स वातावरण पर काम किया है।

कृपया मेरी * nix internals ज्ञान में सुधार के लिए कुछ पुस्तकें / ब्लॉग आदि का सुझाव दें।


1
आपके अनुभव के साथ केवल कर्नेल स्रोत पढ़ने में मदद मिलेगी।)
अक्टूबर को Eimantas

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

किसी के पास संपादन विशेषाधिकार हैं जो वास्तव में उस शीर्षक को संपादित करना चाहिए।
jjclarkson

1
मैं वर्तमान में अपने लेख, व्हाट एवरी कंप्यूटर साइंस मेजर बीट मैटर की सलाह का पालन ​​कर रहा हूं । उन्होंने कीर्निघन और पाइक, लिनक्स सर्वर हैक्स, यूनिक्स और लिनक्स सिस्टम एडमिनिस्ट्रेशन हैंडबुक द्वारा नेमेथ, सिंडर, हेन और व्हेले, लव द्वारा लिनक्स कर्नेल डेवलपमेंट, और स्टीवंस, फेनर और रूडॉफ द्वारा यूनिक्स नेटवर्क प्रोग्रामिंग द्वारा यूनिक्स प्रोग्रामिंग पर्यावरण की सिफारिश की।
एंथनी

1
@ एंथनी, वे उत्कृष्ट संसाधन हैं, लेकिन उपयोगकर्ताभूमि / कमांड लाइन के लिए अधिक उन्मुख हैं। इसके अलावा, विशेष रूप से लिनक्स अभी बहुत तेजी से बदल रहा है , आपको अद्यतित रहना होगा। अच्छे संसाधन LWN और कर्नेलव्यू हैं
वॉनब्रांड

जवाबों:


36

पिछली पोस्टों में की गई बारीक सिफारिशों के अलावा, यूनिक्स की "भावना" को समझने के तरीके के बारे में कुछ सुझाव यहां दिए गए हैं:

  • कार्निघन और पाइक द्वारा "द यूनिक्स प्रोग्रामिंग पर्यावरण": एक पुरानी किताब है, लेकिन यह यूनिक्स पर्यावरण का सार दर्शाता है। यह आपको एक प्रभावी शेल उपयोगकर्ता बनने में भी मदद करेगा।

  • "यूनिक्स फॉर इम्पाटेंट" यूनिक्स वातावरण को नेविगेट करने के लिए सीखने के लिए एक उपयोगी संसाधन है। मेरे पसंदीदा में से एक।

यदि आप पावर उपयोगकर्ता बनना चाहते हैं, तो ओ'रिली के "यूनिक्स पावर टूल्स" से बेहतर कुछ नहीं है, जिसमें यूनिक्स पेशेवरों के सामूहिक सुझाव और ट्रिक्स शामिल हैं।

एक अन्य पुस्तक जिसे मैंने नहीं देखा है कि एक मजेदार प्रकाश है और शिक्षा पढ़ना "ऑपरेटिंग सिस्टम, डिज़ाइन और कार्यान्वयन" है, एंडी तेनबाम की पुस्तक जिसमें कोड की 12k लाइनों में पूर्ण यूनिक्स ऑपरेटिंग सिस्टम के लिए स्रोत कोड शामिल है।


9
864 पृष्ठों वाली एक पुस्तक को "अधीर के लिए" कुछ भी क्यों कहा जाता है?
उभयलिंगी

12
@ मैं यह लेता हूँ कि आपने "रोगी के लिए" संस्करण नहीं देखा है।
क्रिस्टोफर पोइल

3
यह "इंटर्नल" नहीं है ....
user997112

21

आप निश्चित रूप से स्टीवंस द्वारा यूनिक्स पर्यावरण में उन्नत प्रोग्रामिंग पढ़ना चाहते हैं । उन्नत शीर्षक को आपको डराने मत दो, यह बहुत पठनीय है।


1
मेरे पास 2 एड है जो बहुत अच्छा IMO है
xenoterracide

14

2
लायंस पुस्तक के लिए +1। MIT का xv6 लायंस v6 का आधुनिक संस्करण है जो x86 मशीनों पर चलता है और ANSI C. का उपयोग करता है। स्रोत कोड और संबंधित पाठ्यपुस्तक दोनों को डाउनलोड किया जा सकता है।
डैनियल नेल्सनंड

8

पुस्तकें / साइट / मैनुअल जो मैं अक्सर उपयोग कर रहा हूं:

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

  • लिनक्स कर्नेल को समझना: IMHO, यह शुरुआती लोगों के लिए सबसे अच्छी किताब है, जिनके पास ऑपरेटिंग सिस्टम के डिजाइन और अवधारणा के बारे में पृष्ठभूमि है। इसे अप-टू-डेट के रूप में स्वीकार किया जाता है, कर्नेल के संस्करण 2.6 को कवर करता है। वेब पर पुस्तक का एक HTML संस्करण है, लेकिन मुझे लगता है कि यह संभवतः सबसे अधिक वेयर है।

  • वर्चुअल मेमोरी मैनेजमेंट के बारे में कुछ किताब

लिनक्स कर्नेल इंटर्नल्स का अध्ययन करते समय, आपको आमतौर पर यह जानने की जरूरत होती है कि हार्डवेयर कैसे काम करता है और हार्डवेयर सार तरीके से क्या प्रदान करता है। इंटेल के पास इसके लिए बहुत अच्छे मैनुअल हैं।

यदि आपको ऑपरेटिंग सिस्टम के डिजाइन और अवधारणा के बारे में अध्ययन करने की आवश्यकता है, तो मैं निम्नलिखित पुस्तक का सुझाव देता हूं: ऑपरेटिंग सिस्टम अवधारणाओं


1
लिनक्स की वर्चुअल मेमोरी मैनेजर के बारे में एक और किताब है। इसमें स्रोत कोड स्पष्टीकरण शामिल हैं। यूआरएल: ptgmedia.pearsoncmg.com/images/0131453483/downloads/... (डाउनलोड करने के लिए कानूनी)
dirtybit

+1। "वर्चुअल मेमोरी मैनेजर" पर किताब ?? बहुत दिलचस्प लगता है। धन्यवाद :-)।
हेमंत

6

नटशेल में ओरेली लिनक्स कर्नेल
और ओरेली लिनक्स डिवाइस ड्राइवर्स


1
संक्षेप में लिनक्स कर्नेल, कर्नेल के निर्माण और स्थापित करने के तरीके के बारे में है, वास्तव में लिनक्स / यूनिक्स के आंतरिक के बारे में नहीं। यह कहने के लिए नहीं कि यह एक अच्छी किताब है, लेकिन मैं थोड़ा पक्षपाती हूं। यदि आप उन्हें वहां देखना चाहते हैं तो ओह, ये दोनों पुस्तकें ऑनलाइन हैं।
ग्रेग केएच


2

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



2

लिनक्स डिवाइस ड्राइवर्स एक और अच्छा संसाधन है। यह आपको आंतरिक कामकाज में शामिल होने का एक और तरीका देगा। प्रस्तावना से:

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


1

कर्नेल को समर्थन देने के लिए क्यों और क्या का अर्थ है, यह जानने के लिए, एरिक रेमंड द्वारा द आर्ट ऑफ यूनिक्स प्रोग्रामिंग पर एक नज़र डालें । यह चीजों को काफी उच्च, दार्शनिक स्तर पर ले जाता है, लेकिन यह अन्य पुस्तकों के नॉटी-ग्रिट्टी विवरण के साथ अच्छी तरह से जाना जाएगा।


1

मैं निम्नलिखित दो पुस्तकों के साथ-साथ (अन्य के अलावा) सुझाव दे सकता हूं:

मैंने पहले एक को बड़े पैमाने पर संदर्भित किया है (यदि मेरे पास बेहतर मेमोरी थी, और मेरे पास अधिक समय था, तो मुझे अब और भी बहुत कुछ पता होगा, लेकिन यह एक और कहानी है)। मैं वर्तमान में दूसरा पढ़ रहा हूं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.