लिनक्स कर्नेल और एंड्रॉइड कर्नेल के बीच अंतर क्या है?


18

लिनक्स कर्नेल में किए गए संशोधन इसे एंड्रॉइड कर्नेल बनाने के लिए क्या कर रहे हैं? इस सवाल से मेरा मतलब है कि लिनक्स कर्नेल और एंड्रॉइड कर्नेल के बीच अंतर क्या हैं?


जवाबों:


7

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

एंड्रॉइड कर्नेल में कई विशेषताएं बाद में अपस्ट्रीम लिनक्स में जोड़ी जाती हैं, क्योंकि ओपन-सोर्स समुदाय ने उन्हें स्वीकार किया है (और शायद संशोधित किया गया है), लेकिन अन्य कभी भी अपस्ट्रीम नहीं होते हैं, या तो क्योंकि वे लिनक्स कर्नेल डेवलपर्स के लिए स्वीकार्य नहीं हैं, या क्योंकि वे ' केवल एंड्रॉइड या विशिष्ट हार्डवेयर पर लागू होता है।


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

"एंड्रॉइड के लिए एक कर्नेल एक मुख्यधारा लिनक्स कर्नेल है, जिसमें विशिष्ट डिवाइस के लिए अतिरिक्त ड्राइवर, और अन्य अतिरिक्त कार्यक्षमता, जैसे कि बढ़ाया शक्ति प्रबंधन या तेज ग्राफिक्स समर्थन है", इसलिए यह मुख्य रूप से ड्राइवर है? कोई स्रोत कोड नहीं बदला गया?
गुएरलैंडो OCs

@GuerlandoOCs मुझे यकीन नहीं है कि आपको लगता है कि ड्राइवर हैं अगर स्रोत कोड नहीं बदलते हैं, लेकिन ध्यान रहे, "अन्य अतिरिक्त कार्यक्षमता" जिसका मैंने उल्लेख किया है, इन दिनों काफी बड़ा है। कई स्रोत कोड परिवर्तन हैं।
डैन हुल्मे

@DanHulme स्रोत परिवर्तन पैच या सिर्फ कोड हाथ से बदल रहे हैं? मैं उन चीजों को कैसे देख सकता हूं जो बदल गईं? मैंने पढ़ा है कि आप अपने लिनक्स कर्नेल को एंड्रॉइड के साथ संगत होने के लिए पैच कर सकते हैं, लेकिन वे पैच कहाँ हैं इसलिए मैं उन्हें पढ़ सकता हूं?
गुएरलैंडो ओसी

5

डिवाइस के विशिष्ट अंतर और वेक लॉक के अलावा डैन हुल्मे और लाई रयान का उल्लेख है, एंड्रॉइड ने सिस्टम V IPC फीचर्स (संदेश कतारें, साझा मेमोरी सेगमेंट, सेमाफोर) को हटा दिया, जिससे रिसोर्स लीक हो सकता है ( http://www.kandroid.org/ndk) /docs/system/libc/SYSV-IPC.html )। यह शायद कर्नेल बिल्ड को कॉन्फ़िगर करने का एक मामला है। इसके अलावा, पसंद की Android IPC, जिसे बाइंडर कहा जाता है, को कर्नेल में कुछ समर्थन है जो मेरे ज्ञान में मानक लिनक्स कर्नेल में शामिल नहीं है।


4

मुझे लगता है कि यह Android स्रोत इसे समझने के लिए एक महान दस्तावेज है।

और यहां एंड्रॉइड कर्नेल 4.14 के लिए मेनलाइन कर्नेल से किए गए परिवर्तनों की एक सूची है।

सबसे बड़ी विशेषताओं में शामिल हैं:

  • 19.8% एनर्जी अवेयरिंग शेड्यूल (कर्नेल / शेड्यूल)
  • 13.8% नेटवर्किंग (नेट / नेटफिल्टर)
  • 13.5% Sdcardfs (fs / sdcardfs)
  • 9.4% USB (ड्राइवर / USB)
  • 7.2% SoC (आर्क / आर्म 64, आर्क / x86)
  • 6.2% f2fs (fs / f2fs - अपस्ट्रीम से बैकपोर्ट)
  • 6.1% इनपुट (ड्राइवर / इनपुट / मिस)
  • 5.4% FIQ डीबगर (ड्राइवर / स्टेजिंग / एंड्रॉयड / Fiq_debugger)
  • 3.6% गोल्डफ़िश एमुलेटर (ड्राइवर / प्लेटफ़ॉर्म / गोल्डफ़िश)
  • 3.4% सत्यापन (ड्राइवर / एमडी)
  • 11.6% अन्य

एलटीएस से अंतर

एलटीएस (4.14.0) की तुलना में, एंड्रॉइड कॉमन कर्नेल में 355 परिवर्तन, 32266 सम्मिलन और 1546 विलोपन (फरवरी 2018 तक) हैं।

यहाँ छवि विवरण दर्ज करें


मैं यह नहीं समझता कि लोग क्यों कम हो रहे हैं ??? मैंने जवाब लिखा, 5 सेकंड के भीतर मैं नीचे उतर गया !! नाइस
चेंक्रूज़

आपके उत्तर के लिए +1। ड्राइव-डाउन डाउनवोटर्स चूसते हैं।
बुग'

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