گوگل در حال کار بر روی استفاده از یک هسته لینوکس معمولی در اندروید است

گوگل در آخرین کنفرانس لینوکس Plumbers 2019 گفت: در مورد توسعه ابتکارات در انتقال تغییرات ایجاد شده در هسته لینوکس به هسته اصلی لینوکس نسخه هسته برای پلتفرم اندروید هدف نهایی این است که به Android اجازه دهیم از یک هسته مشترک استفاده کند، به جای تهیه بیلدهای جداگانه برای هر دستگاه بر اساس یک شاخه خاص اندروید. هسته مشترک آندروید. این هدف قبلاً تا حدی محقق شده است و تلفن هوشمند اندرویدی شیائومی پوکو F1 با سیستم عامل مبتنی بر هسته معمولی بدون تغییر لینوکس در کنفرانس به نمایش گذاشته شد.

پس از آماده شدن پروژه، از فروشندگان خواسته می شود که یک هسته پایه را بر اساس هسته اصلی لینوکس تهیه کنند. اجزای پشتیبانی سخت افزاری توسط تامین کنندگان تنها در قالب ماژول های هسته اضافی، بدون اعمال وصله ها بر روی هسته، عرضه می شود. ماژول ها باید با هسته اصلی در سطح فضای نام نماد هسته سازگار باشند. تمام تغییراتی که بر هسته اصلی تأثیر می گذارد به بالادست ارتقا می یابد. برای حفظ سازگاری با ماژول‌های اختصاصی در شاخه‌های LTS، پیشنهاد می‌شود که API و ABI هسته را در یک فرم پایدار حفظ کنید، که سازگاری ماژول را با به‌روزرسانی‌ها برای هر شاخه هسته مشترک حفظ می‌کند.

گوگل در حال کار بر روی استفاده از یک هسته لینوکس معمولی در اندروید است

در طول یک سال، ویژگی هایی مانند زیرسیستم PSI (اطلاعات توقف فشار) برای تجزیه و تحلیل اطلاعات مربوط به زمان انتظار برای به دست آوردن منابع مختلف (CPU، حافظه، I/O) و سیستم فایل شبه BinderFS برای ارتباطات بین فرآیندی مکانیزم از نسخه هسته اندروید به هسته اصلی لینوکس منتقل شد. Binder و زمانبندی کار کارآمد EAS (Energy Aware Scheduling). در آینده، اندروید قرار است از زمان‌بندی خاص SchedTune به زیرسیستم جدید UtilClamp که در ARM توسعه یافته است، بر اساس cgroups2 و مکانیزم‌های هسته استاندارد منتقل شود.

گوگل در حال کار بر روی استفاده از یک هسته لینوکس معمولی در اندروید است

به یاد بیاوریم که تاکنون هسته پلتفرم اندروید چندین مرحله آماده سازی را پشت سر گذاشته است:

  • بر اساس هسته های اصلی LTS (3.18، 4.4، 4.9 و 4.14)، شاخه ای از "Android Common Kernel" ایجاد شد که وصله های مخصوص اندروید به آن منتقل شدند (قبلا اندازه تغییرات به چندین میلیون خط می رسید، اما اخیراً تغییرات به چندین هزار خط کد کاهش یافته است).
  • بر اساس "Android Common Kernel"، سازندگان تراشه مانند Qualcomm "SoC Kernel" را تشکیل دادند که شامل افزونه هایی برای پشتیبانی از سخت افزار بود.
  • بر اساس SoC Kernel، سازندگان دستگاه Device Kernel را ایجاد کردند که شامل تغییرات مربوط به پشتیبانی از تجهیزات اضافی، صفحه نمایش، دوربین، سیستم های صوتی و غیره بود.

گوگل در حال کار بر روی استفاده از یک هسته لینوکس معمولی در اندروید است

در اصل، هر دستگاه هسته مخصوص به خود را داشت که نمی‌توان از آن در دستگاه‌های دیگر استفاده کرد. چنین طرحی به طور قابل توجهی اجرای به روز رسانی ها را برای از بین بردن آسیب پذیری ها و انتقال به شاخه های هسته جدید پیچیده می کند. به عنوان مثال، جدیدترین گوشی هوشمند پیکسل 4 که در ماه اکتبر منتشر شد، با هسته لینوکس 4.14 عرضه می شود که دو سال پیش منتشر شد. تا حدی، گوگل سعی کرد با ارتقای سیستم، تعمیر و نگهداری را ساده کند سه برابر کردن، به سازندگان اجازه می دهد تا اجزای پشتیبانی سخت افزاری جهانی را ایجاد کنند که به نسخه های خاص Android و نسخه های هسته لینوکس مورد استفاده مرتبط نیستند. Treble امکان استفاده از به‌روزرسانی‌های آماده Google را به عنوان پایه و ادغام اجزای خاص یک دستگاه خاص در آنها فراهم می‌کند.


منبع: opennet.ru

اضافه کردن نظر