• [^] # Re: Pipo

    Posté par . En réponse au journal Linux sur le desktop et 1% de part de marché : mythe ou réalité ?. Évalué à 2.

    Au temps pour moi, en fait Android est une pile logicielle — cf. http://source.android.com/ —, qui tourne au-dessus de Linux. À ce titre là, effectivement Android n’est pas Linux, puisque de nature différente. Par contre un téléphone qui utilise Android utilise bien, à fortiori, l’OS Linux. Et un ensemble donné de logiciels qui tournent au-dessus d’un noyau Linux, ça a un nom... c’est ce qu’on appelle une distribution.

    Non, du tout.

    a) Le kernel est base sur Linux, mais il a subi nombre de modifications
    b) La libc, librairie centrale pour tout OS quel qu'il soit, est extremement differente de celle d'une distrib Linux et incompatible

    Android c'est une pile logicielle au meme titre qu'un OS est une pile logicielle. Un OS c'est plus que juste un noyau hein, c'est sense fournir des APIs pour les fonctions usuelles notamment, et la entre une distrib Linux et Android les differences sont criantes.

    « Ils n'ont pas de _support officiel_ pour leur libc, ce qui signifie qu'ils peuvent la changer du jour au lendemain et les softs qui en dependent seront dans la merde »
    Faut se relire parfois, ils se doivent de gérer leur libc puisqu’ils s’en servent un minimum, c’est juste que la libc n’a rien à voir avec Linux car elles sont interchangeables :


    Oh mais ils la gerent, mais pour eux-meme. C'est identique au fait de ne pas documenter des APIs internes: si demain ils decident que modifier la lib de fond en comble est mieux pour eux, ils iront modifier la lib et LEURS softs qui tournent par dessus, mais tous les autres softs l'auront dans le fion. Resultat, tu ne peux pas te baser dessus pour developper tes softs de maniere perenne, contrairement a la glibc sous Linux ou tu sais que les APIs ne disparaitront pas, ni ne changeront de comportement.

    En effet, Android c’est 2.8 millions de lignes de C, 2.1 millions de lignes de Java, et 1.75 million de lignes de C++ » (Wikipedia), dont, pour le C : le surface manager (wm?), l’OpenCore media framework, SQLite (ça me dit quelque chose...), OpenGL, WebKit (inconnu au bataillon n’est-ce pas?), SGL graphics engine, SSL, et enfin la fameuse Bionic libc. Donc oui, si l’utilisateur final est restreint aux applications de la machine virtuelle c’est bien une bête question d’interdiction de faire tourner un binaire autre que ceux de base.

    T'as toujours pas compris, ils ont modifie ces softs pour qu'ils tournent sous Android. Tu prends les sources de webkit sur le site du projet webkit, t'essaies de compiler sur Android, ca ne marche pas, il faut la version propre a Android.