Obsidian a écrit 5292 commentaires

  • [^] # Re: Controller le port parallèle

    Posté par  . En réponse au message Contrôler le port parallèle. Évalué à 2.

    Super !

    Un grand merci, je m'y mets de suite.
  • [^] # Re: Compile once, run everywhere

    Posté par  . En réponse au journal La super blague de SAP. Évalué à 3.

    Par contre le compile once, hang everywhere, c'est un truc qui marche tout le temps ! Je m'étonne que les grands acteurs de la scène informatique n'ait pas plus investi dans cette technologie ...
  • [^] # Re: Controller le port parallèle

    Posté par  . En réponse au message Contrôler le port parallèle. Évalué à 2.

    En fait, je suis au contraire assez axé sur le bas niveau : J'ai fait beaucoup d'assembleur sur toutes sortes de microprocesseurs et microcontrôleurs, j'ai tendance à réduire le nombre de couches et de bibliothèques utilisées par mes applications, je programme principalement en C et en C++, et je m'élève que rarement à des langages de plus haut niveau (sauf pour l'exercice). J'ai également quelques notions d'électronique même si je reste résolument un coder :-)

    Par contre, je ne suis descendu que rarement en dessous du userland sous Linux, d'où mon message. Je pense que je n'aurais pas trop de mal à piloter ces interfaces directement, mais la difficulté est justement d'utiliser ce qui existe déjà, et au bon niveau.

    Exemple : Il y a quelques temps, j'avais voulu écrire un pilote pour lire les disquettes de mon vieux TO8D de 1985. Celui-ci utilisait un lecteur qui était pratiquement celui du PC, mais avec un formattage un peu différent (640 Ko, 256 octets par secteur). Le lecteur en question proposait déjà les fonctions de base (polling) et celles dites « intelligentes » comme la recherche automatique de secteur, le tout au travers de 13 ports d'entrées/sorties hardware. Connaissant bien le pilote de mon TO8D pour l'avoir désassemblé et commenté, je me suis mis en tête d'en faire un sous Linux. J'ai très vite rencontré des difficultés, mais surtout je me suis aperçu que quelqu'un en avait déjà réalisé un, en utilisant exactement les mêmes ports, de la même façon, mais le tout en userland via ioctl. Cela m'a paru évident lorsque j'ai eu les sources sous les yeux, mais je n'y aurais jamais pensé seul.

    C'est pour cela que je me suis dit que, le format de port parallèle étant relativement constant d'une architecture à l'autre, dans le sens où il faut piloter les mêmes imprimantes, et le modèle restant simple (8 bits de données, une ligne de strobe, une ligne de ack), il devait exister quelque chose pour faire cela.
  • # H.E.A.V.Y.

    Posté par  . En réponse au journal La super blague de SAP. Évalué à 4.

    Il faut un cluster avec combien de nodes pour espérer faire fonctionner le tout (moins d'une seconde entre un clic et le début de l'action correspondante) ?
  • # Oui

    Posté par  . En réponse au message Privé d'authentification. Évalué à 2.

    Y a-t-il un système de méritocratie par la patience dans linuxfr ?

    Il me semble bien que oui, car il s'appliquait aux nouveaux venus il y a quelque temps, mais je ne sais plus s'il est encore actif.

    En revanche, les points XP sont eux toujours bien présents même si on ne peut plus voir leur niveau. Donc, à force de poster des commentaires intéressants, tu as accumulé des points, acquis grâce aux votes pour tes commentaires, et récement tu viens de passer un seuil.

    Par contre, la boîte de login plante. Mais ça, cela n'a rien de personnel ! :-)
  • # Et ?

    Posté par  . En réponse au message le port usb?. Évalué à 3.

    Si tu veux que l'on t'aide, ce serait sympa de :

    - Faire attention à l'orthographe;
    - Nous indiquer quel est ton problème en particulier.

    Tu veux communiquer avec quoi sur le bus USB ? Le hub ? Un des périphériques connectés ? Sniffer le réseau ?

    A mon avis c'est surtout cela qu'il faut éclaircir.

     char port[]={"/dev/ttyUSB0"}; 


    C'est bien le nom de ton port série, mais il n'y aucune raison pour qu'il fonctionne autrement qu'un ttyS0 normal parce qu'il est sur le bus USB, c'est au noyau de gérer cela. A ton niveau, c'est censé être totalement transparent (en dessous, par contre, cela se complique, évidement).

    Par contre, vire les accolades, sinon tu vas définir un tableau de chaînes et pas une chaîne. Ton pointeur risque d'être invalide.

     i=ioperm(port,1,1); 


    Non ! Tu mélanges tout. Cette primitive sert à donner le droit à un processus de manipuler directement les adresses de contrôle des périphériques ! Ne pas toucher. D'accord, il s'agit bien de donner l'accès à des « ports » d'entrée/sortie sur trouvant sur un bus particulier (au contraire de certains microprocesseurs qui utilisent le bus d'adresse), mais cela n'a strictement rien à voir avec un périphérique de port série branché sur le bus USB. D'ailleurs, si tu avais lu la page de manuel, tu aurais vu que cet appel attend un entier en premiere argument, et pas un pointeur sur une chaîne.

    Poubelle.
  • # NFDS

    Posté par  . En réponse au message poll. Évalué à 2.

    Lis bien la page du manuel : « nfds » est le nom d'une variable (d'un argument de la fonction, pour être précis), donc son nom peut être totalement arbitraire. Au pif, je dirais que cela signifie « Number of File DescriptorS ».

    En tout cas, cela sert à indiquer le nombre de structures de types struct pollfd pointées par le premier argument.

    En même temps, tu veux faire quoi avec ton bus USB ? Lire un périf' particulier ? Dans ce cas, tu utilises le /dev/xxxxx qui correspond. Le noyau fera abstraction du bus USB pour toi.
  • # Noyautage

    Posté par  . En réponse à la dépêche Microsoft et l'INRIA vont créer un laboratoire commun à Orsay (91). Évalué à 4.

     c'est pour Microsoft le premier partenariat avec un organisme de recherche public 


    Peut-être que pour Microsoft, c'est un « premier (sic) partenariat » mais moi j'appelle ça une tentative de noyautage.

    Et tant pis pour le troll.
  • # Putain de journal !

    Posté par  . En réponse au journal EPJCGL: Encore un Putain de Journal ayant pour thème: Correcteur Grammatical sous Linux!?. Évalué à 8.

    Journal : EPJCGL: Encore un Putain de Journal ayant pour thème: Correcteur Grammatical sous Linux!?


    Pour une fois que ce n'est pas sur le TCE ...
  • [^] # Re: mouai

    Posté par  . En réponse au journal Unix, que sont devenus tes concepts ?. Évalué à 2.

    Tous ces arguments sont vrais et pour autant, j'aimerais quand même les voir un peu plus répandus, car je pense que le principal frein est encore la méconnaissance de cette facilité par les utilisateurs.

    En effet, pour retrouver toutes les instances d'un même fichier (repéré par son inode), il faut utiliser find --inum /, mais au moins on est sûr de le retrouver. Sais-tu en faire de même pour retrouver tous les liens symboliques devenus orphelins ?

    Pire encore : Si les gens font des copies locales du fichier, non seulement l'espace disque ne sera pas libéré, mais il aura été consommé en quantité bien plus importante qu'avec des liens, et pour le coup il n'y aura plus aucun moyen de savoir si le fichier est censé être une copie locale de l'original ou s'il doit maintenant vivre une « vie » propre, surtout s'il a été modifié.

    Avec un lien dur, on ne sait peut-être pas initialement où se trouvent toutes les instances, mais on sait au moins immédiatement combien il y en a.
  • [^] # Re: mouai

    Posté par  . En réponse au journal Unix, que sont devenus tes concepts ?. Évalué à 5.

    Tu peux virer l'option -s !

    Les liens symboliques sont pratiques mais les gens ont un peu trop l'habitude de les utiliser. Ils créent un fichier à chaque fois, consomment un inode, et sont un peu trop souvent utilisés pour remplacer les raccourcis Windows à mon goût.

    Les liens durs permettent précisément de faire ce qui est imaginé par bon nombre de personnes qui ont posté ici : Classer le même fichier dans plusieurs catégories différentes tout en le repérant par un identifiant unique : son inode. Et donc de faire en sorte qu'il n'existe qu'une seule fois sur le disque.

    Bon nombre des prétendues innovations sont en fait des concepts existants présentés d'une autre façon. On risque de cette manière d'introduire, dans le standard d'un système d'exploitation, des doublons sans s'en rendre compte et dont il sera difficile de se débarrasser par la suite.
  • [^] # Re: MultideskOS

    Posté par  . En réponse au sondage Juste avant mon OS actuel, j'utilisais. Évalué à 2.

    Je crois que tu as simplement omis de remarquer que c'était du second degré :-)
  • # Où ?

    Posté par  . En réponse au message Problème étrange. Évalué à 2.

    Coché/Décoché une case à quel endroit ? Dans le document à l'intérieur de la division elle-même ?

    Ce qui se passe dans ce cas, c'est qu'il faut d'abord donner le focus à la boite de la division, sinon le navigateur ne saura pas si tu veux faire défiler simplement le contenu de cette boîte, ou si c'est le document entier qu'il faut faire bouger. Donc le fait de cliquer dans la bonne zone, avant même de cocher une case, suffit à effectuer cette action.
  • # Drakconf ? Hostname ?

    Posté par  . En réponse au message Question de n0obie. Évalué à 1.

    Pour changer le nom d'une machine on utilise

    # hostname Nom de machine
    Pour que ce soit permanent, il faut aller l'ajouter dans les fichiers de configuration des scripts de démarrage (en général dans /etc/sysconfig sur Mandrake/Mandriva). Le plus simple est de lancer drakconf et d'aller dans « Réseau & Internet ». Tu auras la possibilité de changer cela d'ici.
  • # MultideskOS

    Posté par  . En réponse au sondage Juste avant mon OS actuel, j'utilisais. Évalué à 6.

    Terrible ! à l'heure où je poste, je peux lire :

    MultideskOS : 42 (3%)


    J'aimerais donc avoir un retour d'impression de la part de ces quarante-deux personnes qui ont (réussi à) utilisé(er) MultiDeskOS.


    Sinon dans l'ordre, ce fût : Les BASIC 1.0, puis 256 puis 512 sur Thomson, puis DR-DOS sur 8086, puis MS-DOS jusqu'au 6.00, puis en parallèle Windows 3.0, puis 3.1 puis W95, début avec une RedHat 5.1 que j'ai valeureusement installé sur un 486DX33, puis W98 sur un PII/350Mhz et Mandrake sur la même machine peu après dès que j'ai eu suffisament de sous pour m'offrir un disque dur.
  • [^] # Re: TCP/IP et XP SP2

    Posté par  . En réponse au journal Bug dans le TCP/IP de Windows Server 2003. Évalué à 2.

    Bien sûr que si, sinon des spécifications telles que

    http://www.faqs.org/rfcs/rfc3514.html(...)

    n'auraient jamais vu le jour ! :-)
  • [^] # Re: De ce que j'ai compris

    Posté par  . En réponse au journal Toolinux et l'indépendance éditoriale?. Évalué à 3.

    Moi j'aime bien. Cela me rappelle les Kinder surprise sur l'étalage de la boulangerie après l'école ... :-)
  • # KDevelop ?

    Posté par  . En réponse au message comment programmer. Évalué à 2.

    J'ai tendance à te répondre la même chose qu'aux autres : Tu peux essayer dans un premier temps des trucs comme KDevelop si tu ne veux pas être trop dépaysé mais cela ne réimplémentera jamais complètement l'IDE de Visual Studios, et c'est tant mieux parce que ce n'est pas l'objet.

    Moi je te conseille plutôt de prendre ton courage à deux mains, de te jeter à l'eau, et de te mettre dès le départ à la ligne de commande, tu en seras récompensé au centuple dans tes développements futurs, même si l'intérêt peut ne pas te sauter aux yeux de prime abord.

    Dans tous les cas, NE PREND JAMAIS WINDOWS EN REFERENCE pour évaluer d'autres systèmes.

    Et pour répondre à ta question, pour compiler en C++ sous Linux, on utilise g++, qui fonctionne impeccablement depuis les versions 3.x.x. Donc :

    g++ nomdufichier.cpp

    Bonne chance.
  • [^] # Re: Fantastique

    Posté par  . En réponse à la dépêche XGI et VIA libèrent le code de leurs pilotes. Évalué à 3.

    En même temps, beaucoup de boitiers modernes sont faits de plastique et là, c'est sans commune mesure avec le bois. Contrairement à une idée reçue, il n'est pas si facile de mettre le feu à un gros morceau de bois, surtout s'il est traité correctement. Beaucoup de portes coupe-feu dans les établissements publics sont faites en bois. Cela ne veut pas dire qu'elles ne brûleront pas, mais elle retarderont la propagation du feu - et surtout de la chaleur - pendant un certain temps.

    D'autre part, on pense être à l'abri avec un boîtier en métal, mais celui-ci conduit très bien la chaleur et peut enflammer le meuble sur lequel il posé ou dans lequel il se trouve, et surtout, il conduit l'électricité. Un PC en bois peut naturellement limiter grandement les risques de court-circuit.
  • [^] # Re: question

    Posté par  . En réponse au journal Windows, ça fait Slotch..... Évalué à 4.

    J'ai lu ton blog. C'est très intéressant, mais je dois dire qu'il m'est arrivé récement quelque chose de différent. Moi j'utilise une Knoppix à chaque déplacement pour diagnostiquer les pannes réelles d'une machine et les distinguer de ce qui relève exclusivement de Windows.

    Eh bien j'ai l'impression que cela fait peur aux gens.

    Au bout d'un moment, j'ai eu moins de demandes de dépannages et à voir la tête des gens, j'ai l'impression qu'ils craignent que j'aille faire quelques bizzarreries à leur machine avec mon système pas catholique ... Au final, l'effet est le même : la paix. Mais tout de même, au lieu d'être « celui-qui-s'y-connait-vraiment-bien-et-qui-est-au-dessus-de-tout-ça », il me semble que je passe plutôt pour un type potentiellement dangereux et cela m'agace un peu.
  • [^] # Re: Le pastador !!!

    Posté par  . En réponse au sondage Ce qui me manque le plus. Évalué à 2.

    Tu peux essayer le pastaga, à la place ...
  • # Je ne suis pas un Num3r0 !

    Posté par  . En réponse au journal Je ne suis pas un script !. Évalué à 2.

    Cela m'étonne que personne n'ait encore eu l'idée de dire « casse-toi, sale bot » ...
  • [^] # Quelques conseils

    Posté par  . En réponse au message Probleme de lecture fichier. Évalué à 2.

    Je ne sais pas quel genre de projet tu mène en ce moment, mais à mon avis, vouloir maîtriser Scilab et le C en même temps, c'est ce donner beaucoup de mal pour rien. C'est un peu comme vouloir apprendre deux langues étrangères pendant la même heure de cours. Fais d'abord l'un puis l'autre.

    Ensuite, le prototype d'une fonction, c'est effectivement sa déclaration. En principe, définir une fonction (autrement dit, écrire son contenu) la déclare implicitement, donc écrire son prototype ne sert que si tu comptes t'y référer dans ton code, avant de l'avoir défini, ou dans un autre fichier. Ce qui au final couvre 99% des cas. Donc tu mets proprement tes prototypes dans un fichier .h, tu inclues celui-ci au début de ton code et tu ne t'en soucies plus.

    Si tu veux renvoyer chaine à la fonction main, le plus simple est de faire renvoyer le pointeur sur cette chaine par ta fonction :

    char * lecture (...)
    {
    ...
    return chaine;
    }

    Ensuite, tu peux l'invoquer directement dans ton main et dans la fonction qui l'appelle :

    int main ()
    {
    printf ("Le résultat est %s\n",lecture());
    }


    et moi j'en ai une autre qusetion con: comment je fais pour executer une fonction c sans le faire sous scilab


    Ben tu fais un exécutable ! C'est à ça que cela sert ! A écrire des programmes indépendants. La fonction main sert à cela. Elle porte ce nom pour que le système sache que c'est la première chose à exécuter lorsqu'il va lancer ton programme.
  • [^] # Re: Les Milky Way

    Posté par  . En réponse au sondage Ce qui me manque le plus. Évalué à 2.

    En tout cas, ça flottait dans l'eau (en geek, je me devais de faire l'expérience). J'avais rempli un lavabo exprès pour vérifier ce fait. Le lait étant légèrement plus dense que l'eau, le Milky Way ne peut qu'y flotter.
  • [^] # Re: Les treets

    Posté par  . En réponse au sondage Ce qui me manque le plus. Évalué à 3.

    Y'a vraiment que moi qui m'en souviens ?

    - Les M&M's jaunes à cacahuètes étaient déjà emballés dans un sachet jaune et s'appelaient Treets ® ;
    - Les M&M's choco sans cacahuète étaient déjà emballés dans un sachet marron et s'appelaient Bonitos ®.

    Purée, à presque 29 ans, ok j'ai passé l'âge d'avoir de l'acné, mais je ne suis quand même pas encore un vieillard barbu ! Dites-moi qu'il y a encore des gens ici qui voient de quoi je parle :-)

    Au fait, saviez-vous que tout a démarré en 1938 ?

    http://www.americasgreatestbrands.com/5619(...)

    (Merci Google).