Difference between revisions of "Source/fr"

From distributed.net
Jump to: navigation, search
(Je n'arrive pas à faire fonctionner <insérez-votre-compilateur-OS-matériel-ici> avec ces sources!)
(Voici le code source public de distributed.net!)
Line 9: Line 9:
  
 
*Le [ftp://ftp.distributed.net/pub/dcti/source/win32vis130-src.zip "visualisateur de log" Win32 officiel de distributed.net version 1.3 (26Ko) ] code source Win32 API Visual C++ (la version compilée de l'utilitaire logvis est disponible sur la page des [[Download addons| add-ons ]].).
 
*Le [ftp://ftp.distributed.net/pub/dcti/source/win32vis130-src.zip "visualisateur de log" Win32 officiel de distributed.net version 1.3 (26Ko) ] code source Win32 API Visual C++ (la version compilée de l'utilitaire logvis est disponible sur la page des [[Download addons| add-ons ]].).
*L'utilitaire officiel de distributed.net [ftp://ftp.distributed.net/pub/dcti/source/moosounds10a-src.zip "MooSounds" version 1.0a (88Ko) ] code source Win32 MFC Visual C++ (la version compilée est disponible sur la page des [[Download addons|add-ons ]].)</li>
+
*L'utilitaire officiel de distributed.net [ftp://ftp.distributed.net/pub/dcti/source/moosounds10a-src.zip "MooSounds" version 1.0a (88Ko) ] code source Win32 MFC Visual C++ (la version compilée est disponible sur la page des [[Download addons|add-ons ]].)
 
*Le [ftp://ftp.distributed.net/pub/dcti/source/javavis16.zip "visualisateur de log" Java officiel de distributed.net version 1.6 (48Ko) ] (comprend les binaires pré-compilés.)
 
*Le [ftp://ftp.distributed.net/pub/dcti/source/javavis16.zip "visualisateur de log" Java officiel de distributed.net version 1.6 (48Ko) ] (comprend les binaires pré-compilés.)
 
Certains des code source listés ci-dessus ainsi que le code SQL/PHP sont disponibles au format cvs via une interface web sur [http://cvs.distributed.net/ http://cvs.distributed.net/ ].
 
Certains des code source listés ci-dessus ainsi que le code SQL/PHP sont disponibles au format cvs via une interface web sur [http://cvs.distributed.net/ http://cvs.distributed.net/ ].
+
 
 
==Une petite FAQ==
 
==Une petite FAQ==
 
===Puis-je construire un client distributed.net à partir de ces sources?===
 
===Puis-je construire un client distributed.net à partir de ces sources?===

Revision as of 10:32, 10 August 2010

Voici le code source public de distributed.net!

distributed.net a à présent publié la plupart du code SQL ainsi que du code de traîtement utilisé par notre serveur de statistiques! Vous pouvez parcourir le code source des stats (ainsi que celui de quelques utilitaires divers) via cvs.distributed.net .

De nombreuses choses ont change depuis la derniere mise a jour, mais les changements les plus visibles sont le rajout du code pour MacOS et le dernier noyau Altivec de Dan Oetting. Amusez vous bien :)

  • Les vieilles tarballs sont disponibles dans les archives .

Voici le code source de certains autres programmes développés par distributed.net:

Certains des code source listés ci-dessus ainsi que le code SQL/PHP sont disponibles au format cvs via une interface web sur http://cvs.distributed.net/ .

Une petite FAQ

Puis-je construire un client distributed.net à partir de ces sources?

Non. Bien que ces sources possèdent des routines permettant de mettre à jour des buffers sur disque, elles ne sont absolument pas compatible avec les fichiers générés par le client complet.

Ok, je viens juste de le télécharger. Qu'est ce que je dois faire maintenant?

Si vous êtes sous Unix, tapez "./configure list". Cela affichera une liste des cibles (targets) supportées. Si votre matériel ou logiciel n'est pas listé, jetez un coup d'oeil au script de configuration et ajoutez vos propres entrées. Ce n'est pas très difficile. Une fois que le script de configuration a créé le Makefile, tapez simplement "make" et tout se compilera.

Si vous n'êtes pas chanceux et que vous n'avez pas accès au l'univers merveilleux d'Unix, vous devrez chercher un Makefile ou fichier de projet adapté à votre machine. Recherchez makefile.vc (MS Visual C++), makefile.wat (Watcom pour DOS, NetWare, Win16, OS/2, Win32cli), smakefile (Amiga), Platforms/beos/* (BeOS avec CodeWarrior je présume), make-vms.com (VMS).

Qu'est-ce que le NASM?

C'est l'abbréviation de Network-wide Assembler. Il s'agit d'un assembleur x86 portable avec une syntaxe similaire à celle de MS et Intel. La home page du NASM est ici .

Ok, maintenant que j'ai un exécutable, comment ça marche?

Tapez juste "./dnetc --help" et vous aurez une liste des options et des commandes disponibles.

Je n'arrive pas à faire fonctionner <insérez-votre-compilateur-OS-matériel-ici> avec ces sources!

Ecrivez à bovine@distributed.net or email submission form, et nous tenterons de trouver une solution à votre problème.

Je voudrais utiliser des portions de ces sources dans mon propre projet.

Ecrivez s'il vous plait à Jeff Lawson ,Dave Avery à propos de votre projet. La plupart du temps nous voudrons une reconnaissance du travail de DCTI (et des auteurs originaux s'il y en a) dans vos sources et exécutables et que de futures améliorations nous soient également envoyées.

J'ai créé mon propre noyau pour un autre processeur ou un qui est plus rapide que les votres!

Excellent! Nous serions très intéressé par la contribution de vos améliorations de manière à les intégrer dans de futures versions du client. De plus, si vous comprenez le code source et que vous aimez bricoler avec ce genre de chose, écrivez aux personnes citées plus haut. Nous sommes toujours à la recherche de personnes ayant de bonnes connaissances en programmation et qui seraient intéressées de travailler sur certaines parties spécifiques du client.

Pourquoi distributed.net garde ses sources?

Bien que nous vous fournissons tout le code source à partir de cette page afin que vous vous en serviez de votre côté, il nous est toujours nécessaire de préserver certaines portions du code source de base. Il s'agit là de quelquechose que l'on aimerait bien pouvoir éliminer. Malheureusement, plusieurs arguments nous incitent à ne pas développer nos clients selon le modèle open-source:

  • il existe des gens qui voudraient modifier le client pour renvoyer des blocs même s'ils n'ont pas été vérifiés correctement, de manière à accroître leur classement dans les statistiques.
  • d'autres peuvent vouloir ruiner le projet en détournant la clé solution.
  • le projet peut également être gâché en tentant de surcharger les serveurs de clés en soumettant des solutions truquées.
  • bien que moins probable, des exécutables faits maison pourraient contenir des erreurs de codage ou de compilation. Bien sûr, les clients produits par distributed.net peuvent aussi contenir des erreurs mais les chances sont très réduites. De plus, si nous découvrons une telle erreur nous pouvons exclure avec certitude les blocs de clés soumis par une version précise de client que nous savons défectueuse.

Honnêtement, la seule distribution des exécutables n'élimine pas toute possibilité de sabotage car il est relativement simple, pour quelqu'un ayant les connaissances suffisantes, de désassembler ou de patcher les fichiers exécutables. C'est dans l'ordre du faisable et c'est pourquoi nous vous encourageons à ne pas essayer. La sécurité par l'obscurité n'est certes pas fiable du tout mais nous ne prétendons aucunement qu'elle le soit.

Les possibilités listées plus haut ne sont pas seulement des scénarios. En fait, elles ont déjà toutes plus ou moins été tentées. Les sources de notre client "v1" étaient disponibles mais il y a eu des tentatives de modification du code dans le but de saboter le concours ou bien d'obtenir des statistiques astronomiques. Du spamming intentionnel existe avec le client "v2" mais il est généralement limité à la soumission répétée des mêmes blocs calculés, ce que nous pouvons détecter automatiquement et ignorer.

Un des buts principaux de la prochaine génération de clients "v3" est d'implémenter un système d'authentification du code et/ou du noyau et diverses autres vérifications de manière à ce que l'open-source devienne viable. La façon dont tout ceci sera implémenté est encore inconnue et nous sommes prêts à recevoir vos suggestions. Plusieurs méthodes ont été passés en revue dans la mailing liste rc5. Postez vos suggestions à rc5@lists.distributed.net et vous générerez certainement un grand intérêt. Pour en savoir plus sur les [/discussion/#lists listes de diffusion ] de distributed.net.

Le code source disponible à partir de cette page est vraiment la seule partie algorithmique qui présente un réel intérêt. Les seules parties du code non présentes concernent l'accès aux fichiers et la communication réseau qui ne sont pas particulièrement intéressantes (ni très plaisantes à déchiffrer). Si vous cherchiez à savoir comment fonctionnent les clients ou bien si vous vouliez accroître la rapidité du client pour votre processeur, alors, les noyaux de calcul et les optimisations spécifiques aux diverses plateformes contenues dans les fichiers ci-dessus sont ce qu'il vous faut!