80 research outputs found
A peer-to-peer middleware framework for resilient persistent programming
Submitted to EuroSys 2006 This work is funded partially by Nuffield grant URB/01597/GThe persistent programming systems of the 1980s offered a programming model that integrated computation and long-term storage. In these systems, reliable applications could be engineered without requiring the programmer to write translation code to manage the transfer of data to and from non-volatile storage. More importantly, it simplified the programmer's conceptual model of an application, and avoided the many coherency problems that result from multiple cached copies of the same information. Although technically innovative, persistent languages were not widely adopted, perhaps due in part to their closed-world model. Each persistent store was located on a single host, and there were no flexible mechanisms for communication or transfer of data between separate stores. Here we re-open the work on persistence and combine it with modern peer-to-peer techniques in order to provide support for orthogonal persistence in resilient and potentially long-running distributed applications. Our vision is of an infrastructure within which an application can be developed and distributed with minimal modification, whereupon the application becomes resilient to certain failure modes. If a node, or the connection to it, fails during execution of the application, the objects are re-instantiated from distributed replicas, without their reference holders being aware of the failure. Furthermore, we believe that this can be achieved within a spectrum of application programmer intervention, ranging from minimal to totally prescriptive, as desired. The same mechanisms encompass an orthogonally persistent programming model. We outline our approach to implementing this vision, and describe current progress
Design of the distributed ProcessBase architecture
ProcessBase is an environment designed to support process modelling languages. This environment consists of a language, its interpreter and a persistent object store. Currently this environment supports concurrency through a multi-threading library, however, only a single interpreter instantiation exists as a supported architecture. ProcessBase is a simple language that provides many sophisticated features, including first-class procedures, strong typing, extension through library interfaces, hyper-programming and linguistic reflection, multi-threaded execution and compliance. This document describes the design of distributed ProcessBase architecture. The motivations behind the creation of this architecture are an exploration of compliance in a distributed setting, experimentation with distribution models and distributed garbage collection mechanisms.William Brodie-Tyrrell, Henry Detmold, Katrina Falkner, Matt Lowry, Ron Morrison, Dave Munro, Stuart Norcross, Travis Olds, Zengping Tian,
Francis Vaugha
A methodology for developing and deploying distributed applications
We describe a methodology for developing and deploying distributed Java applications using a reflective middleware system called RAFDA. We illustrate the methodology by describing how it has been used to develop a peer-to-peer infrastructure, and explain the benefits relative to other techniques. The strengths of the approach are that the application logic can be designed and implemented completely independently of distribution concerns, easing the development task, and that this gives great flexibility to alter distribution decisions late in the development cycle
Implementing a family of distributed garbage collectors
Copyright© 2005, Australian Computer SocietyThis paper discusses implementations of distributed garbage collectors derived using a previously developed methodology which involves mappings of distributed termination detection algorithms (DTAs) to local garbage collection schemes. Implementations produced by such mappings preserve the safety and completeness properties of the original local collectors. Through our collector implementations we have come to understand that the derivation technique extends to distributed collection schemes with heterogeneous local collector behaviour. Our contribution, reported here, is the construction of an experimental platform, implementations of the Task Balancing DTA, an extension to the derivation methodology that minimises constraints on local collectors, together with three new mappings and their implementations.Stuart Norcross, Ron Morrison, Dave Munro, Henry Detmold and Katrina Falkne
RAFDA : A policy-aware middleware supporting the flexible separation of application logic from distribution
Submitted to EuroSys 2006Middleware technologies often limit the way in which object classes may be used in distributed applications due to the fixed distribution policies that they impose. These policies permeate applications developed using existing middleware systems and force an unnatural encoding of application level semantics. For example, the application programmer has no direct control over inter-address-space parameter passing semantics. Semantics are fixed by the distribution topology of the application, which is dictated early in the design cycle. This creates applications that are brittle with respect to changes in distribution. This paper explores technology that provides control over the extent to which inter-address-space communication is exposed to programmers, in order to aid the creation, maintenance and evolution of distributed applications. The described system permits arbitrary objects in an application to be dynamically exposed for remote access, allowing applications to be written without concern for distribution. Programmers can conceal or expose the distributed nature of applications as required, permitting object placement and distribution boundaries to be decided late in the design cycle and even dynamically. Inter-address-space parameter passing semantics may also be decided independently of object implementation and at varying times in the design cycle, again possibly as late as run-time. Furthermore, transmission policy may be defined on a per-class, per-method or per-parameter basis, maximizing plasticity. This flexibility is of utility in the development of new distributed applications, and the creation of management and monitoring infrastructures for existing applications
Alliance in individual psychotherapy
This article reports on a research synthesis of the relation between alliance and the outcomes of individual psychotherapy. Included were over 200 research reports based on 190 independent data sources, covering more than 14,000 treatments. Research involving 5 or more adult participants receiving genuine (as opposed to analogue) treatments, where the author(s) referred to one of the independent variables as “alliance,” “therapeutic alliance,” “helping alliance,” or “working alliance” were the inclusion criteria. All analyses were done using the assumptions of a random model. The overall aggregate relation between the alliance and treatment outcome (adjusted for sample size and non independence of outcome measures) was r = .275 (k = 190); the 95% confidence interval for this value was .25–.30. The statistical probability associated with the aggregated relation between alliance and outcome is p < .0001. The data collected for this meta-analysis were quite variable (heterogeneous). Potential variables such as assessment perspectives (client, therapist, observer), publication source, types of assessment methods and time of assessment were explored
Design, implementation and deployment of state machines using a generative approach
We describe an approach to designing and implementing a distributed system as a family of related finite state machines, generated from a single abstract model. Various artefacts are generated from each state machine, including diagrams, source-level protocol implementations and documentation. The state machine family formalises the interactions between the components of the distributed system, allowing increased confidence in correctness. Our methodology facilitates the application of state machines to problems for which they would not otherwise be suitable. We illustrate the technique with the example of a Byzantine-fault-tolerant commit protocol used in a distributed storage system, showing how an abstract model can be defined in terms of an abstract state space and various categories of state transitions. We describe how such an abstract model can be deployed in a concrete system, and propose a general methodology for developing systems in this style
ЭТАПЫ ФОРМИРОВАНИЯ ГОТОВНОСТИ ЛИЧНОСТИ К НОРМАЛИЗАЦИИ ВЕСА
Purpose: The author of the article researched the development to dynamics of personal readiness for weight normalization in the course of recreational fitness trainings. Methodology: The basic methods are the systematic and structural analysis of dynamics of personal readiness for weight normalization as a personal quality on the base of the model of readiness for weight normalization offered by the author; the transtheoretical model of change of a personal life way at various addictive forms of behavior (Prochaska J.O., DiClemente C.C., Norcross J. C., 1992); pedagogical experiment. Results: Three formation stages of readiness for weight normalization has been developed and described: maturing stage, realization stage, preservation stage of the reached chan-ges. Failure indication of the weight normalization has been defined. Practical implications: Results of the research can be used in recreational fitness, shaping, dietology, psychology of food behavior.Цель: исследование динамики развития готовности личности к нормализации веса в процессе занятий оздоровительным фитнесом. Метод или методология проведения работы: системно-структурный анализ динамики готовности личности к нормализации веса как целостного качества личности на основе модели готовности личности к нормализации веса, разработанной автором; транстеоретическая модель изменения образа жизни человека при различных формах аддикции (Prochaska J.O., DiClemente C.C., Norcross J.C., 1992); педагогический эксперимент. Результаты: выделены и охарактеризованы три этапа сформированности готовности личности к нормализации веса: этап созревания, этап реализации, этап поддержания достигнутых изменений; определены основные признаки срывов этого процесса. Область применения результатов: оздоровительный фитнес, шейпинг, диетология, психология пищевого поведения
Hosting Byzantine Fault Tolerant Services on a Chord ring
Submitted to DSN 2007 Workshop on Architecting Dependable SystemsIn this paper we demonstrate how stateful Byzantine Fault Tolerant services may be hosted on a Chord ring. The strategy presented is fourfold: firstly a replication scheme that dissociates the maintenance of replicated service state from ring recovery is developed. Secondly, clients of the ring based services are made replication aware. Thirdly, a consensus protocol is introduced that supports the serialization of updates. Finally Byzantine fault tolerant replication protocols are developed that ensure the integrity of service data hosted on the ring
Heurística para configuração de mix em linhas de montagem mixadas com mão-de-obra intensiva
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Mecânica, Florianópolis, 2011A linha de montagem original foi proposta por Henry Ford em 1913 e até hoje, é considerada uma das maiores inovações tecnológicas da era industrial. Com o passar do tempo e a diversificação dos produtos demandados pelo mercado, as linhas de montagem tradicionais, que produziam apenas um determinado produto, foram sendo flexibilizadas, dando origem às linhas de montagem mixadas - que fazem diferentes produtos simultaneamente. Para as linhas de montagem mixadas, especialmente aquelas que utilizam mão-de-obra intensiva, é consenso que a montagem simultânea de produtos semelhantes é mais eficiente que a montagem de produtos dissemelhantes. Isso se deve a dificuldade de dimensionamento dos recursos e balanceamento dos postos de trabalho, que aumenta quanto mais dissemelhantes forem os produtos que são montados simultaneamente. Neste trabalho, propõe-se uma heurística para configuração de mix em linhas de montagem mixadas com mão-de-obra intensiva, analisando fatores estratégicos da administração da produção como relação capacidade produtiva x demanda e restrições físicas ou processuais. Esta heurística foi aplicada no estudo de caso realizado numa empresa montadora de eletrodomésticos. Adicionalmente, o estudo de caso apresenta uma análise comparativa de diferentes abordagens de organização e administração do mesmo sistema de montagem. Os resultados explicitam que, para um problema com número mediano de produtos e de linhas de montagem, mesmo levando em consideração as restrições de capacidade, demanda e de processo, ainda são muitas as configurações de mix possíveis, de modo que normalmente existe uma discrepância muito grande de eficiência do sistema de montagem de uma solução aleatória qualquer para uma solução melhorada, evidenciando a utilidade da heurística proposta. Além disso, a análise das diferentes abordagens para o mesmo sistema de montagem gera um subsídio para adequação da estratégia de administração da produção em relação ao comportamento da demanda e às variações de mix
- …
