Développement du noyau Android
Le noyau Linux — socle du système d'exploitation Linux — est la base de l'architecture informatique d'Android. Android utilise le noyau pour les services essentiels : sécurité, gestion de la mémoire et des processus, et pour amortir les interactions entre le matériel et le logiciel Android. Un développeur Android peut installer son propre noyau Android sur son ordinateur et le personnaliser pour des plateformes ou des usages particuliers.
Construction du noyau
Si vous voulez construire votre propre paquet de noyau pour l'expérimenter, téléchargez et installez Ubuntu — un système basé sur Linux — sur votre ordinateur. La plupart de la documentation Google pour Android est basée sur Ubuntu. Ajoutez ensuite les outils de développement Android essentiels, comme Java et Eclipse. Téléchargez ensuite depuis Google les outils nécessaires pour travailler sur Android, comme le Kit de développement logiciel (SDK) et les fichiers sources Android.
Développement et installation
Une fois vos logiciels de développement téléchargés, créez un fichier de configuration qui adapte votre noyau à la plateforme sur laquelle vous voulez placer Android. Compilez ensuite le code, en y ajoutant les modifications souhaitées, et créez l'image du noyau. Placez l'image sur le téléphone ou l'appareil sur lequel vous voulez installer Android. Redémarrez l'appareil et, si tout démarre correctement, vous avez installé avec succès un noyau personnalisé. Vous devrez compiler le Wi-Fi pour qu'il fonctionne avec le nouveau noyau.
Linux vs Android
Certains ingénieurs de Google considèrent Android et Linux comme deux entités distinctes. Google a orienté Android Linux dans une direction séparée du développement Linux principal en raison de préoccupations sur la gestion de l'énergie sur les téléphones Android. Par conséquent, le développement pour Android et pour le noyau Linux classique peuvent être incompatibles. Les développeurs Android et Linux ont discuté de moyens de rapprocher les deux approches, mais à décembre 2011, ils n'avaient pas trouvé de stratégie satisfaisante.
Wakelock
Certaines applications Android pourraient demander tant d'énergie qu'Android devrait se mettre en veille pour économiser la batterie. Pour permettre au téléphone de recevoir des appels en mode veille, Android utilise un programme « wakelock » pour le réveiller temporairement. En 2010, Google a proposé un patch wakelock pour le noyau Linux afin de le rendre compatible avec le noyau Android. Linux a rejeté le patch suite aux objections de développeurs, notamment qu'il n'apportait aucun avantage aux utilisateurs non-Android.
