humani nil a me alienum puto

Aller au contenu | Aller au menu | Aller à la recherche

lundi 5 octobre 2009

palpat' on stage

Puisque de toute façon mon anonymat est déjà bien relatif, j'indique à ceux qui ne lisent pas mon blog pro, linuxfr (et bientôt toolinux ?), qui ne sont abonnés à la ML de l'APRIL (qui organise en partenariat) ou de l'AFUL (tiens, toujours rien sur Parinux), ou qui ne font pas des études informatique industrielle à Paris 8 que je donne une conférence ce samedi à 15h dans la librairie Eyrolles (ou plutôt en amphi attenant, du moins si les gens s'inscrivent bien à conference@eyrolles.com), sur le thème "Linux embarqué".

Tu es intéressé par le sujet, n00b, informaticien, mathématicien, financier, balletomane, altiste, philosophe, psychopathe, ou rien de tout cela, et tu souhaites m'entendre monologuer (la discussion viendra après ; mais on peut m'interrompre sans que je ne me fâche) et étaler toute ma science (pédagogue), inscris-toi vite !

(bon, je ne mets pas de lien, faut pas déconner non plus, ça se retrouve facilement sur le net)

vendredi 24 juillet 2009

de la diffusion des savoirs -- ou de leur disparition

Jules s'est fendu d'un billet remarquable, repris même par Ecrans (dans un tout aussi bon article) : il s'agit d'une affaire bien révélatrice du monde déréglé, névrosé et marchant sur la tête dans lequel la propriété est devenu une telle obsession qu'elle en finit par justifier tout et n'importe quoi, de la loi imbécile (HADOPI chez nous -- cliquer sur l'url pour vous détendre un peu), jusqu'à la spoliation, la censure et le piratage pur et simple. C'est ce qui est arrivé dans l'histoire ici contée : Amazon a purement et simplement effacé des livres numériques à distance sur les lecteurs électroniques dont il est le distributeur.

Plusieurs remarques préliminaires, déjà : nous avons une société qui contrôle à la fois contenus et contenant (c'est toujours un indice que quelque chose ne va pas aller) ; qui ne se prive alors pas d'adjoindre force DRM, pour parfaire l'incompatiblité, la compatibilité avec certains formats (comme le .doc de m$) étant assurée par un logiciel de traduction dans leur format fermé (qui ne supporte pas du tout le PDF, format ouvert répandu, par exemple) ; ironie, le logiciel interne embarqué tourne sous Linux, logiciel libre ouvert ; ce qui n'empêche pas d'implémenter des routines permettant d'accéder à distance à l'appareil, propriété privée de son utilisateur, pour y effacer des fichiers (outre la légalité même de l'action, c'est déjà la prévision technique bien en avance de son exécution qui trouble l'informaticien).

Il se trouve que le livre ainsi censuré était "1984", ce qui prouve au passage le peu de culture et de conscience de nos braves gens. Nul besoin de pompier pyromane pour détruire une oeuvre, il "suffit" (puisque la technique a déjà été prévue) de relever un problème juridique pour entraîner la destruction distante du savoir. En l'occurrence, les éternels ayant-droits (aussi connus sous le nom d'héritiers, dans la quasi-totalité des cas), de l'oeuvre de George Orwell, toujours couverte par les droits d'auteur jusqu'en 2044 (pour une parution en 1949, tout de même), aux USA du moins (sa libération dans le domaine public est totale dans de nombreux autres États, encore une absurdité).

Je parlais justement il y a peu de temps de ce problème, plus vaste encore, de perduration du savoir, devant les papyrus égyptiens d'il y a 4000 ans (à trois cents ans près). Si le support de plus longue durée de conservation des données est la poterie, le plus court est la flash, à présent omniprésente (considérez que c'est pis encore que les bandes magnétiques, et repensez alors aux disquettes qui il y a peu encore, contenaient toutes nos données numériques). Voilà qu'à présent, les livres sont des fichiers, lisibles par un seul support donné, impossibles à prêter ou à copier pour soi, dont la durée de vie est attachée à un appareil faillible (ne serait-ce que par la flash qui sert de support de stockage), et pis encore : on peut (apparemment illégalement en l'espèce, certes, mais il suffit de verrouiller le DRM -- ne serait-ce que par l'arrêt du support --, ou de s'en donner le droit par CGV) retirer arbitrairement ce savoir de manière discrétionnaire.

Outre l'aspect politique de propension à la tyranie sur lequel Jules s'est parfaitement exprimé, je sens que cette civilisation ne laissera pas beaucoup de traces aux suivantes -- alors même qu'elle peut, par son évolution technique, reproduire à l'infini et sans effort le savoir indépendamment des contraintes géographiques, et permettre l'accès à l'expression de tout un chacun. Comme dirait mon interlocutrice de la discussion suscitée, ce ne serait pas bien grave pour beaucoup (comme toujours, les faux penseurs pullulent, mais enfin, l'histoire était déjà là pour les oublier naturellement, à quelques exceptions inexpliquables près, si ce n'est le chauvisme par chez nous), mais tout de même, il faudra penser à conserver dans un coin des ouvrages en bon papier conservable quelques siècles, sait-on jamais...

vendredi 10 avril 2009

et en plus ça téléphone

SFR a lancé un jeu-concours à destinations des jeunes développeurs d'applications pour Android, la plate-forme embarquée pour téléphone portables (et plus si affinités) basée sur Linux et Java. Les idées sont encore peu nombreuses, mais on remarque en première page que la meilleure note va à Dildroid :

Dildroid permet de faire vibrer votre téléphone afin de vous détendre via de merveilleux petit massage. À la maison, entre amis ou dans les transports en commun, votre Dildroid vous accompagne ou que vous soyez. Comme tout les goûts sont dans la nature, plusieurs modes de vibration sont offerts. Vous voulez partager un moment de détente? Soucieux du partage entre usager, Dildroid vous permet d'envoyer tout simplement un DildroSMS à une amie pour déclencher son Dildroid à distance, un petit geste d'affection qui lui plaira à coup sûr.

Je vote évidemment pour. Un atoût majeur dans la concurrence de l'iPhone à n'en pas douter.

mardi 7 avril 2009

salons RTS et Solutions Linux 09

J'ai écrit un très, très, très long compte-rendu sur mon blog pro (pas encore publié, mais ça ne devrait pas tarder, pour demain je pense), alors je ne vais pas recommencer ici, même si chaque année depuis sa création, ce blog accueille mes commentaires éclairés sur ces deux événements, ayant eu lieu exactement en même temps et au même endroit cette fois, mais avec assez distance pour rendre le passage entre les deux suffisamment pénible. J'espère fortement que les retours en terme de "prospect" (beurk ce mot, y'en n'a pas un meilleur ? Toute cette terminologie anglosaxone commerciale commence à être écoeurante) seront positifs, et que ça arrangera ma carrière (parce que sinon, heu, m'en fous quoi, chuis pas philanthrope des sociétés, même si j'apprécie mon patron -- qui n'en demeure pas moins critiquable, évidemment --, et d'ailleurs si tout un chacun faisait pareil, je pense que l'on n'aurais pas à se plaindre des salaires trop bas).

Bref, c'était un peu mou, là-bas, mais il y avait du monde, intéressé et attentif. Ça se réduit un peu, cependant, de grands habitués ont ainsi disparu. Côté software sur RTS, c'était léger ; côté hardware en revanche on voit arriver de nouvelles choses, du ARM tout beau tout neuf (Cortex), et surtout une invasion d'Atom (x86, man dieu...). Les conférences étaient dans l'ensemble intéressantes, quoique parfois un ennui soudain se faisait fortement ressentir : le type qui nous parle de sa solution durant 20 minutes, alors qu'on avait rapidement compris de quoi il en retournait, merci bien. Les contacts sont nombreux entre visiteurs et exposants, mais pas entre visiteurs eux-mêmes, alors même que lorsque ça arrive (au sortir d'une conf' par exemple), c'est très enrichissant.

Linux a toujours le vent en poupe, mais il semble que l'effet de mode soit totalement passé : on réfléchit avant d'agir, et ce n'est pas plus mal. Autre évolution que je pense avoir dégagé : on essaie d'avoir un temps de développement réduit afin de commercialiser plus vite, c'est une grande nouveauté dans le milieu. Il faut se souvenir, dans le monde du Consumer Electronics, de l'exemple EeePC : mal fichu, écran trop petit, touche espace relevée par une nappe passant en dessous, il est sorti en premier, six mois avant la concurrence, et non seulement l'engouement lui a fait prendre une longueur d'avance considérable sur la concurrence, mais en plus même lorsque les autres appareils plus performants ou plus beaux sont sortis, la mode est restée à l'EeePC. Pis encore, l'effet "modèle rose", qui a complètement cartonné chez les filles : ne pas sous-estimer des détails aussi ridicules.

C'est ainsi que croisant mon ancien-ancien-ancien-ancien chef (eh oui, si jeune, et j'en ai déjà vu passer, du monde), j'ai appris que mon projet d'il y a deux ans à quasiment coulé : personne n'en veut, modèle trop rigide. À l'époque, je n'arrêtais pas de leur dire : on ne met pas du Linux ultra-flexible pour ensuite s'emmerder avec des restrictions dans tous les sens, ce n'est pas dans la logique ! Quand bien même on expliquerait au client qu'il n'a pas besoin de rajouter ses propres modules, le fait même de se sentir contraint dans un espace non potentiellement adaptable à ses besoins hypothétiques le fera fuir ! Et ça n'a pas manqué, c'est une solution à l'architecture plus tarabiscotée et certainement plus chère qui a pris le marché.

Puisque je n'ai pas envie de rentrer dans de fastidieux détails (ni de faire de copier-coller, mais ceux qui ont mon adresse pro comprendront bientôt pourquoi : il y a de quoi tuer une balletomane sur le coup, il faut préserver la diversité de mes lecteurs), relevons que la plus jolie hôtesse du salon RTS était d'origine africaine (mais je lui ai soupçonné un fessier trop important, finalement), suivie de peu par une allemande qui me faisait des clins d'oeil, mais a disparu juste le temps que j'aille avec mon ingé avant-vente préféré flairer du business (j'ai appris le lendemain qu'elle était repartie au pays : rester moins d'un jour pour distribuer des bonbons, c'est ouf !), et d'ailleurs la plus jolie (brune cette fois, tous les critères palpatiniens remplis) de SL était allemande aussi (j'ai d'abord demandé si elle comptait s'enfuir lachement), pas de bol, encore une grande timide toute coincée (si à chaque fois que je distribue une carte de visite il fallait qu'en face on se sente gêné, je n'imagine pas les trois journées infernales que j'aurais passé à en distribuer une vingtaine... qu'à des hommes, d'ailleurs -- et c'est la stricte vérité, aucun ingénieur femme, une seule commerciale, le reste n'étant là que pour faire de la comm', et à ce niveau, aucun homme).

Mêler l'étude sociologique (mais oui, je vous assure !) au parcours de salon professionnel, voilà une orientation de carrière intéressante, tiens (d'ailleurs, il est unanimement reconnu que j'étais de très, très loin le meiux sappé de toute la porte de Versailles, mais pour ça j'ai sorti un combo magique violet-noir, même chez Valentino vous n'arriveriez pas à mieux faire : ne rigolez pas, ça sert énormément, d'une part ça compense le fait que je devais encore être le plus jeune, hors quelques étudiants que je n'ai pas croisé -- à l'exception d'une mienne -- à traîner dans le coin, et d'autre part ça me donne une marque de reconnaissance qui faisait même que le type bippant les badges me reconnaissait d'un jour à l'autre, c'est devenu la signature Palpatine, surtout le chapeau, personne ne portant réellement attention aux souliers).

un racket et puis s'en vont

Je vous avais parlé de l'affaire m$ contre Tomtom : j'avais raté que Tomtom s'était retourné avec les mêmes armes, les brevets logiciels. Arrive la question habituelle : "how many divisions ?". M$ a quelque peu gagné, de combien nous ne le savons pas, et peut-être que nous ne le saurons jamais : Tomtom a cédé mais pas trop, et a donc payé sa dîme, si ce n'est sa protection à nos mafieux préférés. Ah bein encore bravo, m$...

À noter cependant que juste avant de négocier, l'OIN a appuyé la société de son soutien : IBM, Novell, NEC, RedHat, Philips (eh oui, les temps changent), Sony, tous alliés contre m$. Ça aurait pu faire du sang partout, ce sera pour une prochaine fois...

vendredi 6 mars 2009

m$ vs tomtom

Je n'ai point écrit ici un billet sur Linux ou l'embarqué depuis une éternité, mais il faut dire que j'ai un blog pro pour ça, maintenant. Cependant, je ne pourrais me permettre -- a priori, parce qu'il faut voir comment le PDG il n'y va pas avec le dos de la cuillère... -- d'insulter ces salopards de m$ comme je vais bientôt le faire (ah, comment ça j'ai déjà commencé ?). La semaine dernière, donc, les ahuris des brevets logiciels ont décidé d'attaquer.

Apparemment, des gens qui ne sont pas forcément bien aimés de la communauté du libre, Tomtom (ils avaient essayé de violer la GPL, mais se sont fait pincer : résolution à l'amiable), avec un emballage "noyage de poisson" ; la preuve :

The eight U.S. patents that Microsoft has listed in the complaint (which does not list individual TomTom device models) include three that appear to involve open-source Linux technologies:

  • 5,579,517 – "Common Name Space for Long and Short Filenames"
  • 5,758,352 – "Common Name Space for Long and Short Filenames"
  • 6,256,642 – "Method and System for File System Management Using a Flash-Erasable, Programmable, Read-only Memory"

The complaint also refers to proprietary navigation technologies allegedly covered by these U.S. patents:

  • 6,175,789 -- "Vehicle Computer System with Open Platform Architecture"
  • 7,054,745 -- "Method and System For Generating Driving Directions"
  • 6,704,032 -- "Methods and Arrangements for Interacting with Controllable Objects within a Graphical User Interface Environment Using Various Input Mechanisms"
  • 7,117,286 -- "Portable Computing Device-integrated Appliance"
  • 6,202,008 -- "Vehicle Computer System with Wireless Internet Connectivity"

Donc on a un procès pour cinq violations de brevet fulgurants (les deux derniers restent les plus drôles, le premier laisse très songeur, mais les deux du centre sont vraiment énormes...), et au milieu, trois sur Linux. Car Tomtom, nous disions, c'est du Linux embarqué. Et les brevets, en l'occurrence, portent sur cette pire merde infâme de FAT, le système de fichier le plus naze jamais inventé (compatible MSDOS), et donc utilisé partout dans le monde. Forcément, quand on veut avoir un système de clé usb lisible sur un PC windaube sur laquelle on va mettre ses cartes de route (par exemple), avant de transférer ça sur le système embarqué, on opte pour FAT, comme tout le monde.

M$ joue là un jeu très dangereux. En s'attaquant à une boîte qui n'est pas intégrée dans la communauté, elle espère ne pas se sentir dans la peau d'un autrichien en 1914, car le système d'alliance entre IBM, Novell, Oracle (pour HP, on a jamais trop su, ça dépend des fois) et autres gros poissons investis à fond dans Linux et qui ne portent pas beaucoup la firme de Redmond dans leur cœur (le monde se divise en deux catégorie : ceux qui détestent m$, et ceux qui s'en foutent sans trop les aimer -- ce qui n'empêche jamais de signer des traités) risque de briser l'état de guerre froide qui règne actuellement : si IBM commence à aligner ses milliers de brevets logiciels, les plus malins dans l'histoire ne seront certainement pas les rigolos à la suite d'OS la plus pourri jamais codée (j'aime bien les magazines d'info neuneus, qui titre que Windaube7 va faire oublier le "désastre" Vista : manifestement, vendre de la merde en l'assumant ne leur a jamais empêché de faire des milliards, et ça n'est pas près de s'arrêter).

Et quelque part, alors que M$ n'a clairement pas la conscience tranquille, j'oserais presque espérer qu'il coulent sur cette histoire. Avec SCO, ils avaient une marionnette, qui a finit par se désagréger en ayant engraisser des avocats au passage (le dénouement fut tragi-comique, avec la découverte de Novell de leur possession des droits d'UNIX, et donc de l'innocuité de l'action de SCO). À présent qu'ils se mouillent eux-même, espérons qu'ils y perdront de grosses plumes. Et au moins, définitivement, l'œil complaisamment ignorant du grand public. Car si m$ se permet tout cela, c'est qu'il y a toujours une énorme masse de moutons désinformés (un comble pour de l'informatique) pour leur filer de la thune.


edit:

Bang the TomTom Softly
Has Chancellor Palpatine given the go ahead to execute Order 66 or is the TomTom lawsuit about nothing more than GPS?

dit "Linux Magazine" US. C'est pas ma faute !!

mercredi 29 octobre 2008

la mauvaise idée du jour

qemu-arm linuxrc

Apparemment, ça marche bien : ce simple lien vers la busybox ARM que j'avais récupérée m'a effectivement flingué toute ma session. Quel âne !

lundi 27 octobre 2008

c'est un petit pas pour Free, mais un grand pas pour le Libre

Yoohoo ! Le Maxime Bizon (je mets "le", parce qu'il faut le connaître -- ce fut mon chef Assistant C/Unix en son temps, à l'EPITA) a libéré une partie du code source Linux "propriétaire" (donc en violation de licence) utilisé dans la Freebox, avec accord évidemment de Free et de Broadcom. Sont concernés les chipsets réseaux, et le support USB. Apparemment le projet OpenWRT (ils ne le savent pas, mais j'ai utilisé leur interface de conf' dans un projet Sagem commercial, c'est ça le libre !) a déjà récupéré la chose. Yahoo en parle plus longuement. Ca va dans le très bon sens, vivement que tous respectent enfin intégralement les licences libres de ce qu'ils utilisent ! (je pense à DVICO qui release l'uClinux de leur Tvix, mais "oublie" tout le reste, notamment la busybox, mais aussi passe manifestement outre le linkage statique de uClinux avec leurs quelques binaires qui s'occupent d'à peu près tout)

dimanche 14 septembre 2008

premier post depuis un Acer One

Hé hé, pas le mien, celui de p'tite soeur (qui se fait vieille, décidément). Je lui ai pris un bleu, j'hésite toujours pour moi, j'aime beaucoup le blanc, mais il est vrai qu'il est class en bleu profond. Bref, j'ai examiné la partie logicielle de la bête plus en avant, et pour l'instant le plus gros regret est l'absence de module ttyACM qui m'aurait permis de me connecter au net via mon portable 3G et wvdial (je recommande d'ailleurs l'article du dernier Linux Pratique concernant la question). Et le clavier qwerty pour rentrer le mot de passe (qui sert à l'utilisateur et à root -- le premier est incertain) ; d'ailleurs aucune info n'est demandé à l'utilisateur, je m'appelle donc toujours user, et ledit mot de passe n'est jamais demandé, il vaut mieux (il risquerait d'y avoir des surprises !). La vitesse de démarrage et la mise en veille sont très rapides, ce qui est fort appréciable. A part ça, les 512Mo de mémoire font qu'avec cinq onglet sur Firefox2, ça commence à laguer. Qui a dit que c'était de l'embarqué ?

En fait, ce sont de gros gourmants : pas pour rien que 1Go de flash a été dédié à la swap (oui c'est très con, mais j'ai déjà expliqué ça dans mon blog pro, vais pas me répéter :)  ). Surtout que voilà : les programmes sont majoritairement gnome, plus Firefox et OOo (2.3) ; il y a quelques programmes Acer qui ont un look carrément différent ; et il y a quelques programmes KDE (comme kolourpaint). Résultat : on a trois lib partagées en mémoire, et autant de bus de communication (un dcop tourne en ce moment même, pourtant je n'ai lancé aucun programme Qt/KDE !). Et de fait, la moitié de la RAM est déjà utilisée au démarrage (si l'on retire tout ce qui été mis en cache par le kernel).

Et là où l'on sent qu'ils sont vraiment couillons, c'est que le bureau utilisé est XFCE. Oui, histoire d'avoir un truc léger  :). Et zouh, encore une lib graphique en mémoire ! La bonne nouvelle, c'est qu'ils n'ont pas trop fait le ménage, chez Acer (ah bah ça alors, quelle surprise...). Donc, on on ouvre un gestionnaire de fichier, on clique sur "Fichier" puis sur "Terminal" et tadam ! Un terminal.

On tape "xfce-setting-show" : et on reconfigure le bureau ! Déjà, on vire cet affreux thème RedmondXP qui fait des fenêtres au look windaubien : dans le gestionnaire de fenêtre, on met "Sassandra", c'est beaucoup mieux ; on en profite aussi pour changer la prise de focus et la mettre logiquement sous la souris, tandis qu'un clic ne doit jamais mettre au premier plan (toujours dans l'onglet "focalisation"). On peut aussi se rajouter un ou des bureaux.

C'est que les raccourcis de XFCE sont aussi disponibles : alt+insert rajoute un bureau, alt+suppr le supprime (ctrl+alt+flèche pour se déplacer de l'un à l'autre), et à voir disparaître la barre de recherche internet du bureau, on peut soupçonner que l'affaire n'a pas vraiment été testée avant... Il y a des choses comme ça qui laissent penseur : pourquoi avoir un lircd d'installé avec un script de démarrage associé alors qu'il n'y a pas de capteur infrarouge, ou pourquoi encore un GPM est présent de la même manière alors que l'inittab n'active aucune console en framebuffer.

Mais bon, ça permettra de récupérer le grub et de déporter root vers une OpenSuse avec KDE4 bien plus léger que tout ce bousin préintégré, avec un compiz parce que labestiole peut largement faire de la 3D (au passage, Intel ment : malgré la présence d'un ventilo, la bestiole chauffe, et ce n'est pas à cause du disque dur : il n'y en a pas !). La question se pose alors de savoir si j'achète ce modèle peu cher à 260€, ou si j'attends pour 70€ de plus que la version avec disque dur 80Go soit redistribuée. Dans tous les cas, il me faut un DD : soit en externe sur usb pour les fois où j'en aurait besoin, soit j'ouvre la bête et le rajoute à la main (à quoi sert cette petite trappe dessous, avec deux petites vis ? J'avais lu quelque chose à propos d'une connectivité 3G, mais je doute toujours qu'il y ait un OMAP, surtout avec leur pauvre niveau d'intégration embarquée constatée, et l'absence de ttyACM alors que ppp et wvdial sont bien là).

A remarquer au passage l'originalité de l'extension de mémoire de stockage physique par l'intermédiaire d'un second slot SD Card, avec l'utilisation du système de fichier AUFS, successeur de UnionFS. Et ça c'est décidément une excellent idée à l'heure où les SD dépassent les 10Go. J'aurais alors comme idée de séparer les 8Go en trois, en laissant le root originel et en virant la swap pour étendre sur 4Go supplémentaires une OpenSuse optimisée sur CramFS (oui, en RO, je suis un killer de l'embarqué, ne l'oublions pas !), avec un home étiré sur la flash interne et la SDCard, qui pourrait être chiffrée. Disque dur interne ou externe : telle demeure la question...

samedi 13 septembre 2008

électronicien raté ?

Les informaticiens embarqués sont souvent épatant pour les informaticiens-tout-court : ils font des choses toutes bizarres qui paraissent bien merveilleuses, pour activer des choses très bas niveau, très sytème. Pour preuve cet extrait de Makefile que l'on trouve sur le Hors Série de Linux Mag' spécial électronique, à la page 16, dans un article écrit par Denis Bodor, le rédac en chef du magazine lu (et compris, c'est surtout ça le problème) par les ingénieurs-geeks les plus confirmés :

avr-objcopy -j .text -j .data -O ihex main.elf main.hex

Il est vrai d'objcopy n'est jamais employé dans le génie logiciel, la manipulation des sections et des symboles étant laissés au bon vouloir d'un lieur dont on ignore souvent même l'existence. L'article en question qui traite de communication avec les périphériques série RS232 via un AVR est épatant : mais que l'on ne s'y trompe pas, cela vient clairement d'un électronicien.

Il y a un tas d'électronicien ayant parfois reçu une légère formation informatique qui sont impressionnant en terme de programmation système. Cependant, ils ont toujours cette dimension propre à la physique (la bidouille), mais manquent de celle caractéristique des mathématiques : l'algorithme. Aussi manier des masques de bits et gérer les interruptions n'a aucun secret pour eux. Mais j'ai déjà vu un collègue peiner deux jours sur un code parce qu'il ne connaissait pas malloc. Sans arriver à cet extrême, nous pouvons voir ceci sur la même page, qui ne manquera pas d'étonner :

while (1) {
  rxbuff=ReceiveByte();

  if (rxbuff) {
    TransmitByte(rxbuff);
    switch (rxbuff) {
      case '0':             set_pwm(0);        break;
      case '1':             set_pwm(111);      break;
      case '2':             set_pwm(222);      break;
      case '3':             set_pwm(333);      break;
      case '4':             set_pwm(444);      break;
      case '5':             set_pwm(555);      break;
      case '6':             set_pwm(666);      break;
      case '7':             set_pwm(777);      break;
      case '8':             set_pwm(888);      break;
      case '9':             set_pwm(999);      break;
    }
  }
}

On reste un peu pantois. Et pas seulement parce qu'il n'y a pas de default  :). On pourrait penser à mettre directement une multiplication par 111 :

if (rxbuff < 10)   // il est évidemment non signé
  set_pwm(rxbuff * 111);

Ca coûterait au maximum sept additions, et éviterait d'avoir jusqu'à neuf branch dans le code. Cette solution serait à comparer avec celle basée sur un tableau :

int16_t pwmcorr[10] = { 0, 111, 222, 333, 444, 555, 666, 777, 888, 999 };
// ...
if (rxbuff < 10)
  set_pwm(pwmcorr[rxbuff]);

Solution évitant la multiplication, mais faisant appel à un déplacement mémoire (et forcément à une addition) ; cependant, même avec une MMU, ça ne devrait pas être trop dramatique. Dans tous les cas, on est en droit de douter qu'un switch-case sur neuf niveau aussi stupide, même avec l'aide d'un compilateur intelligent (mieux vaut un switch-case qu'un tableau de pointeurs sur fonctions : dans le premier cas, le compilateur peut comprendre et optimiser, dans le second il ne peut rien voir venir ; et c'est sans compter le debug...).

Quelque part, pour l'informaticien embarqué qui a comme moi une formation première d'informaticien, c'est rassurant : alors qu'il entre dans un monde industriel où il a déjà la réputation d'électronicien raté, car c'est uniquement l'individu transfuge qui jusque là s'occupait de ce travail, il se sent souvent impuissant face à la couche à peine supérieure à l'électronique, celle de la tambouille très bas niveau, lui qui est à peine bien content d'avoir échappé aux weberies et autres presse-boutons. Il sait alors que sa valeur ajoutée sera l'informatique pure, le beau code qui fait plaisir à lire. Et que par exemple, Linux embarqué correspond parfaitement à ce genre de secteur et d'applicatifs où sa valeur ajoutée sera la plus appréciée.

- page 1 de 7