Kernel

Kernelul Linux este o parte extrem de importantă a software-ului de pe aproape fiecare dispozitiv Android. Această secțiune descrie dezvoltarea nucleului Linux și modelele de lansare (mai jos), nucleele stabile și cele cu suport pe termen lung (LTS) (inclusiv de ce toate dispozitivele Android ar trebui să folosească lansări stabile în loc să aleagă petice), configurarea și întărirea nucleului, cerințele pentru interfețe și nucleele modulare (introduse în Android O), depanarea nucleului și testarea rețelei și SquashFS.

Dezvoltarea nucleului Linux

Nucleul Linux este cel mai mare proiect colaborativ de software din toate timpurile. În 2016,peste 4.000 de dezvoltatori diferiți de la peste 450 de companii diferite au contribuit laproiect și au existat 6 versiuni, fiecare conținând între 12.000 și 16.000 de modificăridiferite. La sfârșitul anului 2016, dimensiunea nucleului Linux era de puțin peste56 de mii de fișiere, constând în 22 de milioane de linii de cod, scripturi de compilare șidocumentare (versiunea 4.9 a nucleului). (Pentru statistici complete privind dezvoltarea Linux,consultațihttps://kernelnewbies.org/DevelopmentStatistics.)

În timp ce nucleul Linux conține cod pentru toate arhitecturile de cipuri diferiteși driverele hardware pe care le suportă, un sistem individual rulează doar o fracțiune din baza de cod. Un laptop mediu folosește în jur de 2 milioane de linii de cod de kernel din5 mii de fișiere pentru a funcționa corect, în timp ce telefonul Pixel folosește 3,2 milioane de linii de cod de kernel din 6 mii de fișiere (din cauza complexității crescute a unui SoC).

Liberările kernelului Linux

Kernelul Linux folosește un model de eliberare care diferă substanțial de eliberările AOSP standard. Odată cu lansarea kernelului 2.6 în decembrie 2003,comunitatea dezvoltatorilor kernelului a trecut de la modelul anterior de a avea o ramură de dezvoltare și o ramură stabilă a kernelului separate și a trecut la un model de ramură stabilă. În acest model, o nouă versiune apărea la fiecare 2 sau 3 luni, iar acea versiune era declarată stabilă și recomandată pentru toți utilizatorii. Această schimbare în modelul de dezvoltare s-a datorat ciclului de lansare foarte lung dinaintea kernelului 2.6 (aproape 3 ani) și luptei pentru a menține două ramuri diferite ale bazei de cod în același timp.

Numerotarea lansărilor kernelului a început la 2.6.x, unde x era un număr crescător care se schimba la fiecare lansare (valoarea numărului nu are nicio semnificație, în afară de aceea că este mai nou decât versiunea anterioară a kernelului). Versiunea kernelului de atunci a trecut acum la 4.x, reprezentând 2 schimbări majore de versiune.Aceste numere de versiune sunt alese doar de către responsabilul (responsabilii) pentru a evita confuzia între utilizatori cauzată de numere de versiune minore mai mari.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.