60 research outputs found

    Gestion de versions de formats avec Camlp4

    Get PDF
    National audienceLa gestion des changements de formats est un problème crucial de l'informatique : encore aujourd'hui, peu d'applications sont capables de lire des données sauvées dans un format d'une version antérieure ; en distribué, les versions de programmes devant communiquer entre eux sont de plus en plus hétérogènes, en particuliers dans les systèmes pair-à-pair. Dans ce papier, nous présentons une extension de syntaxe d'Objective-Caml en Camlp4 permettant de gérer plus efficacement les évolutions de formats, aussi bien dans les fichiers sauvegardés que dans les messages échangés dans un système distribué

    Ocp-build: un gestionnaire de projets pour OCaml

    Get PDF
    National audienceDans ce papier, nous présentons ocp-build, un nouveau gestionnaire de projet pour OCaml [Leroy, X. The Objective Caml System : Documentation and User's Manual, 1996. With Damien Doligez, Jacques Garrigue, Didier Rémy, and Jérôme Vouillon. Availiable from http: //www.ocaml.org/.]. La gestion de projet -- description du projet et compilation -- a toujours été l'une des faiblesses de l'environnement de programmation d'OCaml. En effet, les règles de compilation d'un projet OCaml peuvent être complexes à mettre en oeuvre avec des outils classiques. ocp-build est une solution simple et facile d'accès à ce problème, il permet de décrire de façon concise un projet en terme de paquets et de fichiers sources, puis d'utiliser cette description pour compiler e ficacement le projet, ou le manipuler avec des outils de refactoring

    A Case for Multi-Switch Constraints in OPAM

    Get PDF
    International audiencePackage managers usually only deal with packages and their versions, and the con-straints on their dependencies towards other packages' versions. Among package man-agers, opam is probably the first one to introduce the notion of switch, i.e. the ability to manage different directories, where different sets of packages with different versions are installed, as each directory is treated as an independant universe when solving depen-dency constraints. In this talk, we will support a case to be able, in opam, to manage different switches in the same universe, allowing to express dependency constraints that cross switch boundaries

    OPAM-builder: Continuous Monitoring of OPAM Repositories

    Get PDF
    International audienceIn this talk, we will present the opam-builder system. opam-builder is an online service that monitors the official OPAM repository, continuously builds all versions of all packages for 6 different versions of OCaml, and display html reports with all the information about failed installations. It can be used both by repository maintainers and package developers as a useful tool to improve the quality of the OPAM repository

    Spying the World from your Laptop -- Identifying and Profiling Content Providers and Big Downloaders in BitTorrent

    Get PDF
    This paper presents a set of exploits an adversary can use to continuously spy on most BitTorrent users of the Internet from a single machine and for a long period of time. Using these exploits for a period of 103 days, we collected 148 million IPs downloading 2 billion copies of contents. We identify the IP address of the content providers for 70% of the BitTorrent contents we spied on. We show that a few content providers inject most contents into BitTorrent and that those content providers are located in foreign data centers. We also show that an adversary can compromise the privacy of any peer in BitTorrent and identify the big downloaders that we define as the peers who subscribe to a large number of contents. This infringement on users' privacy poses a significant impediment to the legal adoption of BitTorrent

    MLdonkey, a Multi-Network Peer-to-Peer File-Sharing Program

    Get PDF
    A lot of designers of functional languages have one dream: finding a killer application, outside of the world of symbolic programming (compilers, theorem provers, DSLs), that would make their language spread in the open-source community. One year ago, we tackled this problem, and decided to use to program a network application in the emerging world of peer-to-peer systems. The result of our work, , has superseded our hopes: it is currently the most popular peer-to-peer file-sharing client on the well-known freshmeat.net site, with about 10,000 daily users. Moreover, is the only client able to connect to several peer-to-peer networks, to download and share files. It works as a daemon, running unattended on the computer, and can be controlled remotely using three different kind of interfaces. In this paper, we present the lessons we learnt from its design and implementation

    Validity Conditions in Agreement Problemsand Time Complexity

    Get PDF
    Projet SORWe study the time complexity of different agreement problems in the synchrono- us model with crash failures, by varying their validity condition. We first introduce a continuous class of agreement problems, the k-TAg problems, which includes both the Uniform Consensus and Non-Blocking Atomic Commitment. We then exhibit a general early-deciding algorithm, that we instanciate to solve every problem of this class. The algorithm always achieves the previously established lower-bounds for early-deciding, showing that these lower-bounds are tight

    Finding Good Partners in Availability-aware P2P Networks

    Get PDF
    In this paper, we study the problem of finding peers matching a given availability pattern in a peer-to-peer (P2P) system. We first prove the existence of such patterns in a new trace of the eDonkey network, containing the sessions of 14M peers over 27 days. We also show that, using only 7 days of history, a simple predictor can select predictable peers and successfully predict their online periods for the next week. Then, motivated by practical examples, we specify two formal problems of availability matching that arise in real applications: disconnection matching, where peers look for partners expected to disconnect at the same time, and presence matching, where peers look for partners expected to be online simultaneously in the future. As a scalable and inexpensive solution, we propose to use epidemic protocols for topology management, such as T-Man; we provide corresponding metrics for both matching problems. Finally, we evaluated this solution by simulating two P2P applications over our real trace: task scheduling and file storage. Simulations showed that our simple solution provided good partners fast enough to match the needs of both applications, and that consequently, these applications performed as efficiently at a much lower cost. We believe that this work will be useful for many P2P applications for which it has been shown that choosing good partners, based on their availability, drastically improves their efficiency

    Profiling the Memory Usage of OCaml Applications without Changing its Behavior

    Get PDF
    International audienceIn this paper, we present the current state of our work on profiling the memory usage of OCaml programs. Our technique allows to observe track types, allocation points and reachability paths of blocks, with no runtime cost, except for saving the observations
    corecore