248 research outputs found
Tailoring Transactional Memory to Real-World Applications
Transactional Memory (TM) promises to provide a scalable mechanism for synchronizationin concurrent programs, and to offer ease-of-use benefits to programmers. Since multiprocessorarchitectures have dominated CPU design, exploiting parallelism in program
Synthesis Of Distributed Protocols From Scenarios And Specifications
Distributed protocols, typically expressed as stateful agents communicating asynchronously over buffered communication channels, are difficult to design correctly. This difficulty has spurred decades of research in the area of automated model-checking algorithms. In turn, practical implementations of model-checking algorithms have enabled protocol developers to prove the correctness of such distributed protocols. However, model-checking techniques are only marginally useful during the actual development of such protocols; typically as a debugging aid once a reasonably complete version of the protocol has already been developed. The actual development process itself is often tedious and requires the designer to reason about complex interactions arising out of concurrency and asynchrony inherent to such protocols. In this dissertation we describe program synthesis techniques which can be applied as an enabling technology to ease the task of developing such protocols. Specifically, the programmer provides a natural, but incomplete description of the protocol in an intuitive representation — such as scenarios or an incomplete protocol. This description specifies the behavior of the protocol in the common cases. The programmer also specifies a set of high-level formal requirements that a correct protocol is expected to satisfy. These requirements can include safety requirements as well as liveness requirements in the
form of Linear Temporal Logic (LTL) formulas. We describe techniques to synthesize a correct protocol which is consistent with the common-case behavior specified by the programmer and also satisfies the high-level safety and liveness requirements set forth by the programmer. We also describe techniques for program synthesis in general, which serve to enable the solutions to distributed protocol synthesis that this dissertation explores
Recommended from our members
Sound and Precise Analysis of Multithreaded Programs through Schedule Specialization and Execution Filters
Multithreaded programs are known to be difficult to analyze. A key reason is that they typically have an enormous number of execution interleavings, or schedules. Static analysis with respect to all schedules requires over-approximation, resulting in poor precision; dynamic analysis rarely covers more than a tiny fraction of all schedules, so its result may not hold for schedules not covered.
To address this challenge, we propose a novel approach called schedule specialization that restricts the schedules of a program to make it easier to analyze. Schedule specialization combines static and dynamic analysis. It first statically analyzes a multithreaded program with respect to a small set of schedules for precision, and then enforces these schedules at runtime for soundness of the static analysis results.
To demonstrate that this approach works, we build three systems. The first system is a specialization framework that specializes a program into a simpler program based on a schedule for precision. It allows stock analyses to automatically gain precision with only little modification.
The second system is Peregrine, a deterministic multithreading system that collects and enforces schedules on future inputs. Peregrine reuses a small set of schedules on many inputs, ensuring our static analysis results to be sound for a wide range of inputs. It also enforces these schedules efficiently, making schedule specialization suitable for production usage.
Although schedule specialization can make static concurrency error detection more precise, some concurrency errors such as races may still slip detection and enter production systems. To mitigate this limitation, we build Loom, a live-workaround system that protects a live multithreaded program from races that slip detection. It allows developers to easily write execution filters to safely and efficiently work around deployed races in live multithreaded programs without restarting them
Efficient Passive Clustering and Gateways selection MANETs
Passive clustering does not employ control packets to collect topological information in ad hoc networks. In our proposal, we avoid making frequent changes in cluster architecture due to repeated election and re-election of cluster heads and gateways. Our primary objective has been to make Passive Clustering more practical by employing optimal number of gateways and reduce the number of rebroadcast packets
Recommended from our members
A Market Model for Controlled Resource Allocation in Distributed Operating Systems
This thesis explores the potential for providing processes with control over their resource allocation in a general-purpose distributed system. Rather than present processes with blind explicit control or leave the decision to the operating system, a compromise, called process-centric resource allocation is proposed whereby processes have informed control of their resource allocation, while the operating system ensures fair consumption.
The motivations for this approach to resource allocation and its background are reviewed culminating in the description of a set of desired attributes for such a system. A three layered architecture called ERA is then proposed and presented in detail. The lowest layer, provides a unified framework for processes to choose resources, describe their priority and describes the range of available resources. A resource information mechanism, used to support choices of distributed resources then utilises this framework. Finally, experimental demonstrations of process-centric resource allocation are used to illustrate the third layer.
This design and its algorithms together provide a resource allocation system wherein distributed resources are shared fairly amongst competing processes which can choose their resources. The system allows processes to mimic traditional resource allocations and perform novel and beneficial resource optimisations. Experimental results are presented indicating that this can be achieved with low overhead and in a scalable fashion
Tutkielma ryhmitellyistä konferensseista ja Binary Floor Control Protocol:n toteutuksesta keskitettyyn konferenssijärjestelmään
The introduction of the third generation (3G) in the mobile telecommunication world offers the possibility for a wide range of new applications and services that operators can offer to their customers.
One of these services is multimedia conferencing.
There is ongoing work to provide conferencing services in the IP Multimedia Subsystem (IMS) environment as one of the most significant services.
This thesis focuses on providing a comprehensive overview of conferencing systems, especially of the Binary Floor Control Protocol (BFCP) and cascade conferences.
The Master's Thesis consisted of two parts: The first part is a theoretical part, which provides the concepts of the centralized conferencing, known as tightly coupled conferences, and reviews the current specifications stage of the different standardization bodies.
In contrast, the study of the applicability of the current centralized conferencing specifications in a cascaded conferencing environment is presented, as well as the strengths and weaknesses of them.
The second part is a practical implementation of the Binary Floor Control Protocol (BFCP).
BFCP is implemented in MiniSip, an existing secure open-source SIP User Agent (UA), and in Asterisk, an open source Private Branch Exchange (PBX) replacement system.
BFCP is built using the specification defined by the XCON working group within the Internet Engineering Task Force (IETF).
Finally, BFCP is evaluated and based on this evaluation, some conclusions are given.Kolmannen sukupolven matkapuhelinverkot mahdollistavat laajan uusien ohjelmien ja palveluiden kirjon, joita operaattorit voivat tarjota asiakkailleen.
Eräs tämänlainen palvelu on multimedia konferenssi.
Tällä hetkellä tehdään työtä, jonka tarkoituksena on mahdollistaa konferenssinpalvelun tarjoaminen IP Multimedia Subsystem (IMS) ympäristössä.
Tämä diplomityö keskittyy konferenssijärjestelmän perusteelliseen kuvaukseen, painottuen Binary Floor Control Protocol:aan (BFCP) sekä ryhmiteltyihin konferensseihin.
Työ koostuu kahdesta osasta: Ensimmäinen osa keskittyy teoriaan, joka käsittelee keskitettyjä konferenssijärjestelmiä sekä aiheen nykyistä tilaa eri standardointiorganisaatioissa.
Vastakohtana tarkastellaan nykyisen keskitetyn konferenssijärjestelmän heikkouksia ja vahvuuksia.
Toinen osa käsittelee käytännön toteutusta BFCP:sta, joka on toteutettu MiniSip- sekä Asterisk-ohjelmistoihin.
MiniSip on avoimeen lähdekoodiin perustuva SIP käyttäjäagentti, ja Asterisk paikallisvaihdeohjelmiston (PBX) avoin korvaaja.
BFCP perustuu spesifikaatioon, jonka on määritellyt XCON työryhmä IETF:ssa.
Lopuksi BFCP protokollaa on arvioitu tämän toteutuksen avulla
On the Limits and Practice of Automatically Designing Self-Stabilization
A protocol is said to be self-stabilizing when the distributed system executing it is guaranteed to recover from any fault that does not cause permanent damage. Designing such protocols is hard since they must recover from all possible states, therefore we investigate how feasible it is to synthesize them automatically. We show that synthesizing stabilization on a fixed topology is NP-complete in the number of system states. When a solution is found, we further show that verifying its correctness on a general topology (with any number of processes) is undecidable, even for very simple unidirectional rings. Despite these negative results, we develop an algorithm to synthesize a self-stabilizing protocol given its desired topology, legitimate states, and behavior. By analogy to shadow puppetry, where a puppeteer may design a complex puppet to cast a desired shadow, a protocol may need to be designed in a complex way that does not even resemble its specification. Our shadow/puppet synthesis algorithm addresses this concern and, using a complete backtracking search, has automatically designed 4 new self-stabilizing protocols with minimal process space requirements: 2-state maximal matching on bidirectional rings, 5-state token passing on unidirectional rings, 3-state token passing on bidirectional chains, and 4-state orientation on daisy chains
Tapol bulletin no, 102, December 1990
Contents: West Papuans seek embassy asylum in PNG -- Killings condemned -- Harsh sentences in West Papua -- Indonesian troops for PNG villages -- Bonar gets 8 1/2 years -- Shanana speaks -- Historic meeting in the bush -- 'A sad and terrifying place' -- 223 US Congress members sign letter -- Two journals forced to the wall -- New labour union formed -- Book review: David Robie's Blood on their Banne
- …