40 research outputs found

    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

    Synthesis of novel ionic liquids for cellulose processing

    Get PDF
    Nowadays one main objective in chemistry is to find environmentally benign alternatives to non-biodegradable materials, like common plastics. Further, as fossil resources are decreasing, novel approaches to utilize renewable materials (like biomass), are becoming increasingly important for the mankind. There is a long-standing interest for utilization of cellulose; it is the most abundant polymer on earth and can be found in many organisms such as plant, algae, and bacteria but also in some animal species. Cellulose is the most abundant biogenic polymer used in the world; its largest source is from wood, which contains up to 50% of cellulose but also other compounds such as lignin (up to 30%), hemicellulose (up to 30%), inorganic salts and proteins. The main challenge is to dissolve cellulose, because of is strong intra- and intermolecular hydrogen bonding, it is not soluble in common molecular organic solvents and does not melt. According to these problems of cellulose dissolution, a novel class of solvents has been designed and called: Ionic liquids (ILs). ILs are made of an organic cation and an organic or inorganic anion, their major difference from classic salts is their lower melting point (under 100°C) They are able to do covalent and ionic bonds as normal organic solvent do, but their special character comes from the fact that ILs are able to do also strong H-bonding and columbic interactions. The mechanism of the dissolution itself has been studied using molecular dynamics and it has been shown that the anion and cellulose build a strong hydrogen-bonding network between them; the cation has a different stabilizing effect on dissolution as it is dominated by Van der Walls and electrostatic interactions. The structure of the IL plays a big role. A non-hindered cation will be more effective and, an anion with high basicity will be the most effective. Many of the ILs studied to dissolve cellulose contain phosphonium cations or halogen anions, such combination leads to toxicity and corrosive action against reaction vessels. To diminish the negative effects, other combinations have to be designed. Chemist started to use superbases as a cation and weak acid such as acetic acid as an anion to form superbase-based ILs. ILs-based on guanidine are known to be chemically and thermally stable, this comes from the high proton delocalisation between the three nitrogen atoms. Even if they are able to dissolve cellulose, their characteristics related to their structure such as high melting point and high viscosity are a problem for lab experiments using a classic magnetic stirring. Also they are limited to 10 wt% cellulose dissolution. A lot of superbase ILs such as immidazolium-based ILs were investigated for cellulose dissolution but they require temperature higher than 90°C enhancing cellulose degradation. So bicyclic guanidine were investigated as a potential class of ILs. Because of their rigid bicyclic structure, they are less affected by steric effect than their acyclic analogue. This explains why chemists started to be interested in bicyclic guanidine species in ILs such as TBD and its methylated version mTBD

    A framework for pathologies of message sequence charts

    Get PDF
    This is the post-print version of the final paper published in Information Software and Technology. The published article is available from the link below. Changes resulting from the publishing process, such as peer review, editing, corrections, structural formatting, and other quality control mechanisms may not be reflected in this document. Changes may have been made to this work since it was submitted for publication. Copyright @ 2012 Elsevier B.V.Context - It is known that a Message Sequence Chart (MSC) specification can contain different types of pathology. However, definitions of different types of pathology and the problems caused by pathologies are unclear, let alone the relationships between them. In this circumstance, it can be problematic for software engineers to accurately predict the possible problems that may exist in implementations of MSC specifications and to trace back to the design problems in MSC specifications from the observed problems of an implementation. Objective - We focus on generating a clearer view on MSC pathologies and building formal relationships between pathologies and the problems that they may cause. Method - By concentrating on the problems caused by pathologies, a categorisation of problems that a distributed system may suffer is first introduced. We investigate the different types of problems and map them to categories of pathologies. Thus, existing concepts related to pathology are refined and necessary concepts in the pathology framework are identified. Finally, we formally prove the relationships between the concepts in the framework. Results - A pathology framework is established as desired based on a restriction that considers problematic scenarios with a single undesirable event. In this framework, we define disjoint categories of both pathologies and the problems caused; the identified types of pathology are successfully mapped to the problems that they may cause. Conclusion - The framework achieved in this paper introduces taxonomies into and clarifies relationships between concepts in research on MSC pathologies. The taxonomies and relationships in the framework can help software engineers to predict problems and verify MSC specifications. The single undesirable event restriction not only enables a categorisation of pathological scenarios, but also has the potential practical benefit that a software engineer can concentrate on key problematic scenarios. This may make it easier to either remove pathologies from an MSC specification MM or test an implementation developed from MM for potential problems resulting from such pathologies

    Turning down the lamp: Software specialisation for the cloud

    Get PDF
    © USENIX Workshop on Hot Topics in Cloud Computing, HotCloud 2010.All right reserved. The wide availability of cloud computing offers an unprecedented opportunity to rethink how we construct applications. The cloud is currently mostly used to package up existing software stacks and operating systems (e.g. LAMP) for scaling out websites. We instead view the cloud as a stable hardware platform, and present a programming framework which permits applications to be constructed to run directly on top of it without intervening software layers. Our prototype (dubbed Mirage) is unashamedly academic; it extends the Objective Caml language with storage extensions and a custom run-time to emit binaries that execute as a guest operating system under Xen. Mirage applications exhibit significant performance speedups for I/O and memory handling versus the same code running under Linux/Xen. Our results can be generalised to offer insight into improving more commonly used languages such as PHP, Python and Ruby, and we discuss lessons learnt and future directions

    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

    An architecture for interspatial communication

    Get PDF
    Digital infrastructure in modern urban environments is currently very Internet-centric, and involves transmitting data to physically remote environments. The cost for this is data insecurity, high response latency and unpredictable reliability of services. In this paper, we lay out a software architecture that inverts the current model by building an operating system designed to securely connect physical spaces with extremely low latency, high bandwidth local-area computation capabilities and service discovery. We describe our early prototype design OSMOSE, which is based on unikernels and a distributed store

    Jitsu: Just-in-time summoning of unikernel

    Get PDF
    Network latency is a problem for all cloud services. It can be mitigated by moving computation out of remote datacenters by rapidly instantiating local services near the user. This requires an embedded cloud platform on which to deploy multiple applications securely and quickly. We present Jitsu, a new Xen toolstack that satisfies the demands of secure multi-tenant isolation on resource-constrained embedded ARM devices. It does this by using unikernels: lightweight, compact, single address space, memory-safe virtual machines (VMs) written in a high-level language. Using fast shared memory channels, Jitsu provides a directory service that launches unikernels in response to network traffic and masks boot latency. Our evaluation shows Jitsu to be a power-efficient and responsive platform for hosting cloud services in the edge network while preserving the strong isolation guarantees of a type-1 hypervisor.The research leading to these results received funding from the European Union’s Seventh Framework Programme FP7/2007–2013 under the Trilogy 2 project (grant agreement no. 317756), and the User Centric Networking project, (grant agreement no. 611001), and the Defense Advanced Research Projects Agency (DARPA) and the Air Force Research Laboratory (AFRL), under contract FA8750-11-C-0249.This is the author accepted manuscript. The final version is available from USENIX via https://www.usenix.org/conference/nsdi15/technical-sessions/presentation/madhavapedd

    Langages de scénarios : Utiliser des ordres partiels pour modéliser, vérifier et superviser des systèmes parallèles et répartis.

    No full text
    Our work is dedicated to the modeling and the analysis of concurrent and distributed systems. More precisely, we seek to model, verify and supervise systems composed by autonomous entities which interact locally through shared memory and globally through asynchronous message passing. In this context, we argue that, instead of modeling each entity independently and then analyzing what happens when all of them interact, it is better tohave a complete theory to globally describe a concurrent system, in which verification and supervision analysis are decidable. This theory is based on partially ordered multisets (ie. “pomsets”) which is a “true-concurrency” model. To this end, we defined the causal hmsc model, based on pomsets and which extends the standardized hmsc formalism with constructs from Mazurkiewicz trace theory. We first show that a syntactic restriction of causal hmsc is equivalent to bounded mixed automata, a formalism which extends Zielonka asynchronous automata and communicating finite state machines. We also show that classical model-checking techniques can be extended to pomsets-based formalisms without losing efficacy. This is an important result, as pomsets-based formalisms, such as causal hmsc, are more concise than sequential system formalisms. Finally, we propose efficient methods to analyse large recorded files from distributed executions and we propose supervision techniques such as diagnosis and event correlation, using pomsets-based models of distributed and concurrent systems.Cette thèse se place dans le cadre de la modélisation et de l'analyse de systèmes parallèles et répartis. Plus précisément, nous nous intéressons à la modélisation, la vérification et la supervision de systèmes, composés d'entités indépendantes interagissant localement par mémoire partagée et globalement par échange asynchrone de messages.Dans ce contexte, plutôt que de modéliser séparément chaque entité, puis d'analyser les comportements qui peuvent se produire lorsque ces entités interagissent, nous fournissons une théorie permettant de modéliser globalement le système considéré tout en conservant des propriétés de vérification et de supervision décidables. Cette théorie se base sur le formalisme des ordres partiels étiquetés (appelés "pomsets").Dans ce but, nous définissons le modèle des HMSC causaux qui étend le formalisme des HMSC en autorisant, comme pour les traces de Mazurkiewicz, certains événements à commuter sur chaque processus. Nous montrons, tout d'abord, qu'une restriction syntaxique des HMSC causaux a le même pouvoir d'expression que les réseaux bornés d'automates mixtes, un modèle qui étend les réseaux d'automates asynchrones de Zielonka et les réseaux d'automates communicants. De plus, nous montrons que les méthodes classiques de model-checking de systèmes séquentiels peuvent s'appliquer aux modèles plus concis basés sur les pomsets, comme les HMSC causaux, sans perte d'efficacité. Enfin, nous proposons des méthodes de traitement efficace d'observations volumineuses d'exécutions réparties, ainsi que des techniques de supervision, telles que le diagnostic ou la corrélation d'événements, qui utilisent des modèles basés sur les pomsets
    corecore