Google, Android-də adi Linux nüvəsinin istifadəsi üzərində çalışır

2019-cu il Linux Plumbers konfransında Google şirkəti baxımından inkişafı asılılıqları azaltmaq Linux əsas nüvəsinə köçürülən dəyişikliklər nüvə variantı Android platforması üçün. Son məqsəd, Android üçün xüsusi toplanmalar hazırlamaq əvəzinə, Android-da bir ümumi nüvənin istifadəsini təmin etməkdir. Android Common Kernel. Bu hədəf artıq qismən əldə edilmişdir və konfransda adi dəyişdirilməmiş Linux nüvəsi əsasında olan bir ROM ilə Xiaomi Poco F1 Android-smartfonu nümayiş etdirilib.

Layihə tamamlandıqdan sonra, təchizatçılara əsas Linux nüvəsi əsasında bir nüvə təqdim etmələri təklif ediləcəkdir. Avadanlıqları dəstəkləyən komponentlər yalnız əlavə nüvə modulları şəklində təqdim ediləcəkdir, nüvəyə dəyişikliklər tətbiq edilmədən. Modullar, nüvənin simvol adları məkânında əsas nüvəyə uyğunluğu təmin etməlidir. Əsas nüvəyə toxunan bütün dəyişikliklər upstream-a irəliləyəcəkdir. Mülkiyyət modulları ilə uyğunluğu qorumaq üçün LTS-şöbələrində nüvənin API və ABI-sini stabil saxlamaq tövsiyə edilir, bu da hər bir ümumi nüvə şöbəsi üçün modulların yeniləmələrlə uyğunluğunu təmin edəcəkdir.

Google, Android-də adi Linux nüvəsinin istifadəsi üzərində çalışır

Bir il ərzində Linux əsas nüvəsinə Android nüvəsi redaksiyasından, CPU, yaddaş, giriş/çıxış kimi müxtəlif resursların alınması ilə bağlı gözləmə vaxtı haqqında məlumatları analiz etmək üçün PSI (Pressure Stall Information) alt sistemi, Binder mexanizmi üçün BinderFS psevdofayl sistemi və enerji səmərəli EAS (Energy Aware Scheduling) tapşırıq planlayıcısı kimi imkanlar köçürülmüşdür. Gələcəkdə Android-ın spesifik planlayıcı SchedTune-dan ARM-da hazırlanmış yeni UtilClamp alt sisteminə köçürülməsi planlaşdırılır, bu da cgroups2 və nüvənin daxili mexanizmlərinə əsaslanır.

Google, Android-də adi Linux nüvəsinin istifadəsi üzərində çalışır

Qeyd edək ki, indiyə qədər Android platforması üçün nüvə bir neçə hazırlıq mərhələsindən keçirdi:

  • Əsas LTS nüvələri (3.18, 4.4, 4.9 və 4.14) əsasında "Android Common Kernel" ayrımı yaradılırdı ki, bu da Android-a məxsus dəyişikliklərin köçürülməsinə imkan verirdi (əvvəllər dəyişikliklərin ölçüsü bir neçə milyon sətirə çatırdı, amma son zamanlar bu dəyişikliklər bir neçə min sətir kodla azaldılmışdır).
  • "Android Common Kernel" əsasında çip istehsalçıları, məsələn, Qualcomm, avadanlığı dəstəkləyən əlavələri əhatə edən "SoC Kernel" yaradılırdı.
  • "SoC Kernel" əsasında avadanlıq istehsalçıları "Device Kernel" yaradaraq əlavə avadanlık, ekran, kameralar, səs sistemləri və s. ilə bağlı dəyişikləri daxil edirdilər.

Google, Android-də adi Linux nüvəsinin istifadəsi üzərində çalışır

Əslində, hər bir cihaz üçün özünə məxsus bir nüvə formalaşır, bu da başqa cihazlarda istifadə oluna bilmir. Belə bir sxem yeniləmələrin çatdırılmasını, zəifliklərin aradan qaldırılmasını və yeni nüvə versiyalarına keçid etməyi xeyli çətinləşdirir. Məsələn, oktyabrda buraxılmış ən yeni Pixel 4 smartfonu iki il əvvəl buraxılmış Linux 4.14 nüvəsi ilə təchiz edilib. Qismən, Google, sistemi asanlaşdırmaq məqsədilə təşviq edilməyə çalışıb Treble, istehsalçılara xüsusi Android versiyalarına və istifadə olunan nüvə buraxılışlarına bağlı olmayan universal avadanlıq dəstək komponentləri yaratmağa imkan verən bir sistemdir. Treble, artıq hazır olan Google yeniləmələrini əsas kimi istifadə etməyə imkan tanıyır, bunlara konkret cihaz üçün spesifik komponentləri inteqrasiya edir.


Videonu izləyin

Mənbə: opennet.ru

DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər 🔥 DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər | ProHoster