Quelle est la différence entre Android et Linux ?


Cette réponse va être très longue.

Je'suppose que vous êtes familier avec certains termes de base utilisés en informatique. Alors c'est parti.


Android est peut-être basé sur Linux, mais il n'est pas basé sur le type de système Linux que vous avez peut-être utilisé sur votre PC. Vous ne pouvez pas exécuter les applications Android sur les distributions Linux typiques et vous ne pouvez pas exécuter les programmes Linux que vous connaissez sur Android.

Linux constitue la partie centrale d'Android, mais Google n'a pas ajouté tous les logiciels et bibliothèques typiques que vous trouveriez sur une distribution Linux comme Ubuntu. Cela fait toute la différence.


La grande différence ici se résume à ce que nous entendons par Linux. Les gens utilisent le terme "Linux" pour signifier beaucoup de choses différentes. Dans sa forme la plus basique, Linux signifie le noyau Linux. Un noyau est la partie centrale de tout système d'exploitation.

Nous faisons également référence aux distributions Linux en les appelant simplement "Linux". Cependant, les Linuxdistros ne sont't simplement des noyaux Linux. Ils contiennent de nombreux autres logiciels, tels que les utilitaires shell GNU, le serveur graphique Xorg, le bureau GNOME, le navigateur web Firefox, et ainsi de suite. C'est pourquoi certaines personnes pensent que le terme GNU/Linux devrait être utilisé pour les "distributions Linux" comme Ubuntu, Mint, Debian, Fedora, Arch, openSUSE, et d'autres.

Android utilise le noyau Linux sous le capot. Parce que Linux est open source, les développeurs Android de Google pourraient modifier le noyau Linux pour répondre à leurs besoins. Linux donne aux développeurs Android un noyau de système d'exploitation préconstruit et déjà maintenu pour commencer, de sorte qu'ils n'ont pas à écrire leur propre noyau. C'est ainsi que de nombreux appareils différents sont construits - par exemple, la PlayStation 4 utilise le noyau BSD libre et open source, tandis que la Xbox One utilise le noyau Windows NT que l'on trouve dans les versions modernes de Windows.

Vous verrez même la version du noyau Linux en cours d'exécution sur votre appareil sous À propos du téléphone ou À propos de la tablette dans les paramètres d'Android.

main-qimg-3b129fdc000e83690d2c3a4e52c1bda0.webp

Voici une section À propos de mon téléphone. Le Xiaomi Redmi note 3.

Il y a un débat pour savoir si Android peut être qualifié de "distribution Linux". Il utilise le noyau Linux et d'autres logiciels, mais il n'inclut pas une grande partie des logiciels que les distributions Linux incluent normalement.

Lorsque vous démarrez un appareil Android, le noyau Linux se charge comme il le ferait sur une distribution Linux. Cependant, une grande partie des autres logiciels est différente. Android n'inclut pas la bibliothèque GNU C (glibc) utilisée sur les distributions Linux standard, ni toutes les bibliothèques GNU que vous trouverez sur une distribution Linux typique. Il n'inclut pas non plus de serveur X comme Xorg, de sorte que vous ne pouvez pas exécuter des applications Linux graphiques standard.

Plutôt que d'exécuter des applications Linux typiques, Android utilise la machine virtuelle Dalvik pour exécuter essentiellement des applications écrites en Java. Ces applications sont ciblées sur les appareils Android et les interfaces de programmation d'applications (API) qu'Android fournit plutôt que d'être ciblées sur Linux en général.

Android n'inclut pas un serveur X graphique ou toutes les bibliothèques GNU standard, vous ne pouvez pas simplement exécuter des applications Linux sur Android. Vous devez exécuter des applications écrites spécifiquement pour Android.

Android possède bien un shell comme celui que vous trouverez sur Linux. Il n'y a aucun moyen d'y accéder hors de la boîte, mais vous pouvez installer une application comme Android Terminal Emulator pour avoir accès à cet environnement de terminal.

Par défaut, il n'y a pas grand-chose à faire ici. Le terminal fonctionnera toujours dans un environnement restreint, donc vous ne pouvez pas obtenir un shell complet sans rooter votre appareil Android. De nombreuses commandes standard dont vous pourriez avoir besoin ne sont pas disponibles. C'est pourquoi les personnes qui rootent leur appareil installent généralement l'application BusyBox, qui installe de nombreux utilitaires de ligne de commande. Ces utilitaires sont utilisés par les applications pour faire des choses avec leur accès root.

Linux n'inclut pas la machine virtuelle Dalvik, il ne peut donc pas exécuter les applications Android. La machine virtuelle Dalvik et tous les autres logiciels d'Android ne peuvent pas simplement être déposés sur une machine Linux de bureau - il faudrait faire plus de travail pour que les apps Android sortent sur une fenêtre d'un bureau standard via Xorg, par exemple. En théorie, avec suffisamment de travail, les développeurs pourraient faire fonctionner Dalvik sur Linux de bureau afin que les utilisateurs de Linux de bureau puissent exécuter des applications Android sur leurs ordinateurs de bureau. Le produit Ubuntu for Android, aujourd'hui en sommeil, a tenté de faire quelque chose comme cela, en intégrant Ubuntu et Android sur un téléphone et en permettant à ces applications Android de fonctionner sur le bureau d'Ubuntu.

BlueStacks et d'autres émulateurs d'applications Android tentent de faire cela pour Windows et Mac. Ils exécutent Android sur du matériel virtuel dans une machine virtuelle, ce qui leur permet d'exécuter des apps Android - avec une pénalité de performance - sur votre bureau. Ces solutions ne se sont pas avérées très populaires, cependant.

Le Chrome OS de Google est également basé sur Linux. Comme Android, Chrome OS ne fournit pas un système de fenêtre X standard, de sorte que les applications Linux standard ne peuvent pas fonctionner sur Chrome OS. Contrairement à Android, Chrome OS est plus proche des distributions Linux de bureau standard, de sorte que vous pouvez utiliser le mode développeur pour installer les logiciels de bureau Linux manquants.

Références : howtogeek

.