Quelles connaissances / expertises sont nécessaires pour transférer Android vers un périphérique à arm personnalisé?

Je travaille sur un système sur lequel le système linux et les systèmes de fenêtrage de microwindows sont actuellement en cours d’exécution. Le code des pilotes linux actuels est disponible. Je veux porter Android sur lui, juste comme un projet de loisir.

pouvez-vous s’il vous plaît me dire ce que toute compréhension de Linux-kernel est nécessaire pour le porter?

S’il vous plaît donnez-moi des références (livres, tutoriels) pour construire des compréhensions.

Merci, Sunny.

PS, j’ai une compréhension de base de Linux.

La configuration de l’appareil est

 450 Mhz ARM9,
 64 Mo de RAM,
 256 Mo NAND
 Résolution 480x272.

Pour commencer à porter Android, une connaissance de base des modifications apscopes aux kernelx Linux est requirejse. En outre, vous devez comprendre quels pilotes, à part Linux, sont requirejs. linuxfordevices décrit ce qui a été changé pour le kernel Linux pour Android. Ils fournissent également des liens pratiques comme une différence des changements qu’ils ont faits ….

Sur l’architecture Android, j’ai trouvé la présentation youtube Android Architecture] 1 utile.

Je m’attends à certains problèmes dans la résolution d’affichage. Les applications Android attendent un certain nombre de résolutions standard. Dans un premier temps, je suggère de limiter l’affichage à la taille plus petite suivante et de l’améliorer une fois qu’il est opérationnel.

Depuis que je me suis penché sur Adroid pour l’utiliser dans les lecteurs électroniques, je m’intéresse beaucoup au portage. Pour cette raison, je me suis inscrit à une formation (basée sur le Web) sur le matériel Android (portage). J’ai cherché des livres etc. sur le sujet, mais les livres que j’ai trouvés étaient beaucoup plus sur l’utilisation d’Android et des applications d’écriture.

Étant donné que Linux est déjà installé sur votre forum, vous n’aurez probablement pas besoin d’avoir une compréhension approfondie du kernel. Il devra cependant être modifié pour inclure les fonctionnalités spécifiques supplémentaires d’Android suivantes. Cela peut être aussi simple que d’appliquer des correctifs, mais cela pourrait être plus compliqué.

  • Tueur de mémoire faible
  • Enregistreur Android
  • Sous-système de mémoire partagée Android (Ashmem)
  • Android Power Management (Wakelocks)
  • Binder IPC

Dans l’espace utilisateur, Android utilise son propre logiciel d’affichage appelé Surface Manager, de sorte que vous n’utiliserez pas le système Nano-X Window (anciennement appelé Microwindows).

Pour un aperçu de ce qui sera probablement impliqué dans un port, je donnerais une lecture au Guide de portage Android .

Sites Web sur le portage d’Android sur d’autres appareils basés sur ARM pouvant inclure des conseils utiles:

  1. Beagleboard (Cortex)
    • Chaloupe (j’ai essayé celle-ci et ça marche)
    • Embinux
  2. Zoom OMAP (Cortex)
    • OMAPpedia
  3. Tablette Internet Nokia (ARM9E)
    • NITdroid
  4. Néo 1973 (ARM9TDMI)
    • Le blog de Benno Leslie
  5. Carte d’évaluation Intel Bulverde (XScale)
    • Blog NemusTech
  6. Sharp Zaurus SL-C760 (XScale)
    • EU Edge Blog

Groupes en ligne pouvant être en mesure d’aider:

  • Portage Android
  • Android Internals
  • Plate-forme Android

Regardez aussi ces livres:

Android – Guide de programmation

Développement d’applications professionnelles Android