Je range ce billet dans la catégorie "Linux embarqué" même si cela concernait plutôt "Linux" tout court à la base : en effet, me rendant hier dans un magasin à l'enseigne au nom de corsaire (mais de pirate, la nuance est d'importance par les temps qui courent), j'ai pu regarder les entrailles d'un Acer One exposé (faute de pouvoir en acheter un : la bestiole a eu tellement de succès que la rupture de stock ne s'est pas faite attendre, il faudra attendre une semaine avant d'en revoir). Il s'agit donc d'un mini-portable, que l'on nomme à présent "Netbook" ; pas grand chose d'embarqué a priori, mais à y regarder de plus près, il n'y a pas de disque dur mais une mémoire flash. Comme dans l'embarqué.

Un petit coup d'oeil dans /proc/mount (via l'explorateur de fichier, faute de console disponible) montre alors de bien étranges idées. D'abord, la présence d'une partition swap : 1Go réservé en fin de flash. Ciel ! Quelle idée ! Mettre une partition swap sur de la flash, c'est une des question du partiel que je donne à mes étudiants : c'est une très mauvaise idée. En embarqué, on peut déjà justifié ça par le fait que le système doit de toute façon être dimensionné, et donc la RAM doit correspondre à l'usage que l'on fait de l'appareil. Mais avec l'apparition d'éléphants comme Firefox ou OOo, les 512Mo (mon dieu, et dire que j'ai travaillé sur 12Mo...) peuvent ne pas suffirent dès que le multi-tâche est en jeu. Sauf que voilà : des écritures répétées à des endroits spécifiques de la Flash peuvent l'user jusqu'à rupture des secteurs. Souvent, c'est 100.000 cycles, et ceux qui ont fait de la javacard en stockant des données de capteurs en Flash se mordent souvent les doigts assez rapidement dès que les signes de vie commencent à manquer. Pour la peine, quand on sait à quel point les applications suscitées consomment de mémoire, et que l'on imagine quelqu'un switchant d'une appli à l'autre, forçant les échanges RAM-swap en permanence, on sent bien que d'ici quelques années pas bien nombreuses la Flash va tout simplement rendre l'âme, ce qui est dramatique, puisque c'est soudé dans la machine.

Une bonne idée aurait été de copier sur Nokia, et de se servir de la carte SD que l'on peut insérer comme espace de stockage supplémentaire (l'Acer One dispose de deux lecteurs de cartes SD, une d'extension de stockage, l'autre de lecteur de média amovible) avec un petit coup de dd et de mkswap pour monter une partoche de swap dessus, qui au pire si elle fusille des secteurs, sera changeable facilement. Mais il aurait fallu un peu de dev (un jour pour une personne...).

L'autre mauvaise idée d'Acer est d'avoir mis le système sur la même partition par défaut que le home (si mes souvenirs sont bons), et surtout (là j'en suis sûr), le tout sur du ext2. Oui, un système non prévu pour de la flash (derrière un contrôleur ? On espère), et surtout non journalisé. Embêtant pour un système sur batterie (ne tenant que 3h, le miracle de l'Atom n'est pas arrivé -- tant mieux, ça ne rognera pas trop sur le marché de ARM comme ça, moins il y a de x86 et mieux on se porte), qui peut donc lâcher à n'importe quel instant, corrompant alors le système de fichier ! Si l'on suspecte que c'est pour économiser de l'espace disque (dont on ne dispose que 8Go, moins les 1Go de swap), un arrêt brutal n'est clairement pas conseillé... Et pour la peine, j'ai essayé (la mise en veille semble un peu foireuse...), et après un fsck au démarrage (silencieux, pas moyen de virer le frame buffer d'attente), suivi d'un redémarrage (oh, un BIOS, quelle horreur... Oui, le redémarrage est aussi une spécialité complètement inutile de Nokia, soyons bourrin, d'ailleurs ces derniers ont un bug sur le N770 puisqu'il peut arriver que la machine reboote jusqu'à épuisement des batteries), OOo n'a pas pu rattraper la perte de document (il ne trouvait même plus le fichier, qui pourtant n'avait pas changé de place, si quelqu'un sait d'ailleurs comment virer le rattrapage au démarrage de l'application, qui se lance à chaque fois pour échouer autant de fois, ça m'intéresse), une preuve indéniable de la mauvaise idée que cela représente.

Entre JFFS2 ou YAFFS (pour rester RW, même si je recommande toujours d'avoir un coeur de système RO, et les applis supplémentaires à part sur une partition RW, pour une sécurité optimale), ils auraient pu faire un effort. Il y a encore du chemin à parcourir avant que les constructeurs-intrégateurs fassent attention à ce qu'ils bidouillent... (mais ils peuvent faire appel à Linagora, ce n'est pas interdit :)  )