guillaume teissier a écrit 7 commentaires

  • [^] # Re: Chimie

    Posté par  . En réponse à la dépêche Prix IgNobel 2010. Évalué à 4.

    Cela a l'air d'être confirmé par le rapport en question, disponible à l'URL http://www.boemre.gov/tarprojects/377.htm . Il y est question de "crude oil" i.e. du brut non raffiné. Petite pépite: BP n'est pas la seule compagnie pétrolière à faire partie des commanditaires, le rapport fait mention de 22 autres joyeux drilles.
  • # Les présentations du sharkfest'10 sont disponibles !

    Posté par  . En réponse à la dépêche Le Sharkfest'10 vient de se terminer. Évalué à 2.

  • # pour ceux qui, comme saint thomas, ne croient que ce qu'ils voient

    Posté par  . En réponse à la dépêche latrace, le traceur qui instrumente le chargeur dynamique. Évalué à 4.

    Compilation de latrace 0.5.9
    Attention, la compilation de latrace nécessite d'avoir flex, bison, et autoconf. Avoir le paquetage binutils-dev installé est optionnel.
    $ wget http://people.redhat.com/jolsa/latrace/dl/latrace-0.5.9.tar.(...)
    $ tar xfj latrace-0.5.9.tar.bz2
    $ cd latrace-0.5.9
    $ aclocal && autoconf && ./configure && make && sudo make install

    latrace est maintenant installé dans /usr/local.

    Compilation d'un exécutable dynamique multithreadé
    le fichier C suivant est tiré de l'échange de mail en lien sur la dépêche.
    $ cat > test.c << EOF
    #include <stdio.h>
    #include <pthread.h>
    #include <unistd.h>

    void *thread(void *i)
    {
    pthread_t t2,t3;
    printf("In thread\n");

    printf("thread PID %d\n", getpid());
    sleep(5);
    pthread_exit(0);
    }

    int main(int argc, char **argv)
    {
    pthread_t t1, t2;

    printf("main PID %d\n", getpid());
    pthread_create(&t1, NULL, thread, NULL);
    pthread_create(&t2, NULL, thread, NULL);
    pthread_join(t1, NULL);
    pthread_join(t2, NULL);
    printf("threads joined\n");

    return 0;
    }
    EOF
    $ gcc -o test test.c -lpthread
    $ ./test
    main PID 27180
    In thread
    thread PID 27180
    In thread
    thread PID 27180
    threads joined

    ltrace en action pour tracer les appels à sleep:
    $ ltrace -e sleep ./test
    main PID 27228
    In thread
    thread PID 27228
    +++ killed by SIGTRAP +++

    Après avoir lu le man de ltrace, l'option -f permet de suivre les processus fils forkés :
    $ ltrace -e sleep -f ./test
    main PID 27237

    ltrace reste bloqué, vous pouvez le tuer avec ctrl+c, ctrl+z puis kill -9 %1.
    À latrace de jouer maintenant :
    $ latrace -s sleep ./test
    main PID 27204
    In thread
    thread PID 27204
    In thread
    thread PID 27204
    27205 sleep [/lib/i686/cmov/libc.so.6]
    27206 sleep [/lib/i686/cmov/libc.so.6]
    threads joined

    ./test finished - exited, status=0
  • [^] # Re: Instrumenter ?

    Posté par  . En réponse à la dépêche latrace, le traceur qui instrumente le chargeur dynamique. Évalué à 4.

    Il faut rapprocher le sens d'instrumenter de celui de l'instrumentation cf wikipedia http://fr.wikipedia.org/wiki/Instrumentation_%28science%29.

    L'idée est de pouvoir obtenir des précisions sur le comportement d'un programme sans avoir accès au code source.

    Les exécutables que tu peux trouver dans /usr/bin et /bin sous Linux sont majoritairement dynamiques. A chaque fois que tu lance un exécutable dynamique, le chargeur - dynamique - est appelé, pour résoudre les dépendances de bibliothèques. Ce chargeur offre dans ces versions les plus récentes un moyen de tracer l'appel de fonctions.

    Le travail de latrace consiste à utiliser cette fonctionnalité du chargeur et afficher sous forme intelligible les données qu'il récupère.
  • [^] # Re: Pas du AMQP

    Posté par  . En réponse à la dépêche ØMQ, la messagerie inter-applications « nouvelle vague ». Évalué à 2.

    Je confirme que ØMQ ne revendique pas la conformité au standard AMQP.

    Mon idée initiale en citant iMatix n'était pas d'introduire le sujet AMQP, mais plutôt d'insister sur l'abandon d'AMQP jugé trop compliqué (cf http://linuxfr.org//2010/04/14/26732.html par exemple) pour promouvoir l'usage et de le développement de ØMQ.

    J'ajouterais deux choses sur AMQP. La première est qu'apache software foundation détient en son sein une implémentation amqp répondant au doux nom de qpid. La deuxième est que ce dernière est la base choisie par redhat pour faire son implémentation http://www.redhat.com/mrg/messaging/ .
  • [^] # Re: HandBaller

    Posté par  . En réponse à la dépêche Nouvelle version de APE (Ajax Push Engine). Évalué à 3.

    Dans le même acabit, msgbus fournit des fonctionnalités équivalentes: MoM basé sur du HTTP. Il est basé sur libevent pour le multiplexing d'I/O et la couche HTTP.

    cf [http://code.google.com/p/msgbus/].

    Je suis partant pour te filer un coup de main :D
  • # Tarifs non disponibles

    Posté par  . En réponse à la dépêche Codec OpenSource BroadVoice. Évalué à 2.

    Sipro Lab Telecom a déjà retiré du Web la page des tarifs ? Je l'ai trouvée dans le cache de google, mais le site www.sipro.com n'a plus l'air d'être en forme ...