Humor informático

Siempre me ha llamado la atención que, si bien los nombres de los adaptadores de red en máquinas Unix/Linux suelen ser del tipo eth0, lan0, etc., en las máquinas SPARC con Solaris a las que he metido mano últimamente aparecen adaptadores de nombre hme0, hme1, etc.

El caso es que me acaban de comentar que hme en realidad corresponde a las siglas de Happy Meal Ethernet. Al parecer, la historia cuenta que a un controlador anterior (posiblemente el de 10Mbps) le pusieron el nombre Big MAC Ethernet, donde MAC hacía referencia a Media Access Control. Para seguir con la broma, y con la merienda en McDonalds, cuando diseñaron la versión de 100Mbps, otro simpático ingeniero de Sun decidió nombrarlo Happy Meal.

A raíz de esto, y echando un vistazo en Google, me he encontrado con el siguiente fragmento de código en los fuentes de Linux (concretamente en el driver para los adaptadores de marras, sunhme.c:


    ...
528 static void happy_meal_tcvr_write(struct happy_meal *hp,
529                                 void __iomem *tregs, int reg,
530                                 unsigned short value)
531 {
532         int tries = TCVR_WRITE_TRIES;
533        
534         ASD(("happy_meal_tcvr_write: reg=0x%02x value=%04x\n", reg, value));
535
536         /* Welcome to Sun Microsystems, can I take your order please? */
537         if (!(hp->happy_flags & HFLAG_FENABLE)) {
538                 happy_meal_bb_write(hp, tregs, reg, value);
539                 return;
540         }
541
542         /* Would you like fries with that? */
543         hme_write32(hp, tregs + TCVR_FRAME,
544                     (FRAME_WRITE | (hp->paddr << 23) |
545                     ((reg & 0xff) << 18) | (value & 0xffff)));
546         while (!(hme_read32(hp, tregs + TCVR_FRAME) & 0x10000) && --tries)
547                 udelay(20);
548
549         /* Anything else? */
550         if (!tries)
551                 printk(KERN_ERR "happy meal: Aieee, transceiver MIF write bolixed\n");
552
553         /* Fifty-two cents is your change, have a nice day. */
554 }
    ...

En fin, cosas veredes…