Kernel i abstracció de maquinari

Aquesta pàgina documenta els recursos i processos per construir el nucli i l’abstracció de maquinari per als dispositius UT. Aquest document és útil si voleu treballar en:

  • Un problema relacionat amb el maquinari (càmera, sensors, ràdios)

  • Un problema relacionat amb el nucli Linux

  • Un problema relacionat amb el procés d’actualització d’imatge del sistema

Aquest document no és útil si voleu modificar Com desinstal·lar aplicacions o System software. Vegeu la documentació respectiva per a cadascun.

Hi ha alguns grups diferents de dispositius Ubuntu Touch pel que fa a com s’implementa el nucli i l’abstracció de maquinari:

  • Execució d’aplicacions de l’Android

  • Ports basats en Halium

  • kernel de Linux

Execució d’aplicacions de l’Android

Els ports basats en Android 5.1 d’Ubuntu Touch consisteixen en el nucli Linux per a aquest dispositiu més un sistema Android mínim que s’utilitza per habilitar tot el maquinari. Cada dispositiu té la seva pròpia bifurcació del nucli Linux. Tots ells estan fortament modificats pel maquinari específic utilitzat en aquest dispositiu. Aquestes bifurcacions també es basen en versions antigues del nucli Linux.

Per a alguns dispositius s’ha configurat la integració contínua (CI) per construir tant el nucli com el sistema Android. Altres dispositius s’han de construir manualment des dels seus repositoris. Per a un tercer grup de dispositius, desgraciadament, no disposem del codi font complet. Els dispositius Bq i Meizu tenen fonts de nucli, però l“«arbre de dispositius Android» no està disponible públicament. Els fabricants d’aquests dispositius van proporcionar construccions binàries en el seu lloc.

Es poden trobar passos detallats per als tres dispositius habilitats amb CI a HAL per a Nexus 5, OnePlus One i Fairphone 2.

Per al Wifi Nexus 7 2013 (flo) aneu al repositori theCommunity Ports per al Flo <https://gitlab.com/ubports/community-ports/flo>..

El port per al GSM Nexus 7 2013 (deb) va ser creat per un membre de la comunitat. Malauradament aquests dipòsits han desaparegut amb el temps. Així que aquesta construcció també cau en el grup de binàries preconstruïdes.

Tasca pendent

Documenta el procés per al Nexus 4 (mako)

Ports basats en Halium

Els ports més nous als dispositius Android es basen en .Halium <https://docs.halium.org>.. En alguns aspectes Halium és similar als ports basats en 5.1:

  • També utilitza la bifurcació específica del dispositiu del nucli Linux proporcionada pel fabricant.

  • També utilitza un sistema d’Android mínim per habilitar algun maquinari.

No obstant això, Halium permet una manera més genèrica d’adaptar-se als dispositius Android. Això permet compartir el treball entre múltiples projectes que aporten diferents sabors dels sistemes Linux als dispositius Android. Els ports de Halium també es basen en versions d’Android més noves 7.1 i anteriors.

Alguns exemples de ports de Halium són els de Sony Xperia X i Oneplus 3. Bàsicament tots els dispositius que apareixen a .devices.ubuntu-touch.io <https://devices.ubuntu-touch.io>., espereu que els esmentats anteriorment com a 5.1, o a sota com a ports basats en Linux.

Tots els ports nous d’UT als dispositius Android han de seguir el procés Halium. Es poden trobar més detalls a adaptació a l’Halium

Ports basats en Linux

El port basat en Linux es refereix a dispositius on s’utilitza un nucli Linux sense cap part d’Android. En aquest grup hi ha els següents dispositius: