English
Related papers

Related papers: A History of BlockingQueues

200 papers

Runtime monitoring is an essential part of guaranteeing the safety of cyber-physical systems. Recently, runtime monitoring frameworks based on formal specification languages gained momentum. These languages provide valuable abstractions for…

Programming Languages · Computer Science 2023-11-15 Bernd Finkbeiner , Florian Kohn , Malte Schledjewski

The problem of optimal allocation of monitoring resources for tracking transactions progressing through a distributed system, modeled as a queueing network, is considered. Two forms of monitoring information are considered, viz., locally…

Performance · Computer Science 2011-01-13 Animashree Anandkumar , Ting He , Chatschik Bisdikian , Dakshi Agrawal

Most Java applications, including web based ones, follow the 3-tier architecture. Although Java provides standard tools for tier-to-tier interfaces, the separation of the tiers is usually not perfect. E.g. the database interface, JDBC,…

Software Engineering · Computer Science 2014-05-09 Victor Sadikov , Walter Pidkameny

It is notoriously hard to correctly implement a multiparty protocol which involves asynchronous/concurrent interactions and the constraints on states of multiple participants. To assist developers in implementing such protocols, we propose…

Programming Languages · Computer Science 2018-06-26 Eduard Kamburjan , Tzu-Chun Chen

Common approaches to concurrent programming begin with languages whose semantics are naturally sequential and add new constructs that provide limited access to concurrency, as exemplified by futures. This approach has been quite successful,…

Programming Languages · Computer Science 2023-06-22 Klaas Pruiksma , Frank Pfenning

The lack of specifications is a key difference between traditional software engineering and machine learning. We discuss how it drastically impacts how we think about divide-and-conquer approaches to system design, and how it impacts reuse,…

Software Engineering · Computer Science 2021-05-14 Christian Kästner , Eunsuk Kang , Sven Apel

A software architecture describes the structure of a computing system by specifying software components and their interactions. Mapping a software architecture to an implementation is a well known challenge. A key element of this mapping is…

Programming Languages · Computer Science 2011-09-14 Damien Cassou , Emilie Balland , Charles Consel , Julia Lawall

Linearizability is the commonly accepted notion of correctness for concurrent data structures. It requires that any execution of the data structure is justified by a linearization --- a linear order on operations satisfying the data…

Programming Languages · Computer Science 2017-07-07 Artem Khyzha , Mike Dodds , Alexey Gotsman , Matthew Parkinson

In this paper we propose I/O state transition diagrams for service description In contrast to other techniques like for example Statecharts we allow to model non atomic services by sequences of transitions This is especially important in a…

Software Engineering · Computer Science 2014-09-26 Barbara Paech , Bernhard Rumpe

This document shows the detailed specification of LOCKE coherence protocol for each cache controller, using a table-based technique. This representation provides clear, concise visual information yet includes sufficient detail (e.g.,…

Hardware Architecture · Computer Science 2012-03-27 Lucia G. Menezo , Valentin Puente , Jose-Angel Gregorio

Software reliability is a primary concern in the construction of software, and thus a fundamental component in the definition of software quality. Analyzing software reliability requires a specification of the intended behavior of the…

Software Engineering · Computer Science 2021-03-02 Facundo Molina , Pablo Ponzio , Nazareno Aguirre , Marcelo Frias

One of the basic properties of a queueing network is stability. Roughly speaking, it is the property that the total number of jobs in the network remains bounded as a function of time. One of the key questions related to the stability issue…

Probability · Mathematics 2009-11-19 David Gamarnik , Dmitriy Katz

This thesis concerns the development of a framework that facilitates the design and analysis of formal systems. Specifically, this framework provides a specification language which supports the concise and direct description of formal…

Logic in Computer Science · Computer Science 2009-10-06 Andrew Gacek

JDBC remains a key technology for database access in Java applications. Since the database dictionary and the Java type system have distinct scopes, developers inevitably need to deal with bugs in SQL-to-Java type mappings. We propose an…

Databases · Computer Science 2026-05-05 Thomas James Kirz , Werner Dietl , Mattias Ulbrich , Stefanie Scherzinger

A multiplicity queue is a concurrently-defined data type which relaxes the conditions of a linearizable FIFO queue to allow concurrent Dequeue instances to return the same value. It would seem that this should allow faster implementations,…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-22 Anh Tran , Edward Talmage

A new behavior descriptive entity type called spec is proposed, which combines the traditional interface with test rules and test cases, to completely specify the desired behavior of each method, and to enforce the behavior-wise correctness…

Programming Languages · Computer Science 2014-08-21 Chengpu Wang

Proving correctness of distributed or concurrent algorithms is a mind-challenging and complex process. Slight errors in the reasoning are difficult to find, calling for computer-checked proof systems. In order to build computer-checked…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-11-21 Armando Castañeda , Aurélie Hurault , Philippe Quéinnec , Matthieu Roy

The concurrency literature presents a number of approaches for building non-blocking, FIFO, multiple-producer and multiple-consumer (MPMC) queues. However, only a fraction of them have high performance. In addition, many queue designs, such…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-07-15 Ruslan Nikolaev , Binoy Ravindran

To prevent concurrency errors, programmers need to obey a locking discipline. Annotations that specify that discipline, such as Java's @GuardedBy, are already widely used. Unfortunately, their semantics is expressed informally and is…

Programming Languages · Computer Science 2015-11-17 Michael Ernst , Damiano Macedonio , Massimo Merro , Fausto Spoto

Architecture styles characterise families of architectures sharing common characteristics. We have recently proposed configuration logics for architecture style specification. In this paper, we study a graphical notation to enhance…

Software Engineering · Computer Science 2016-08-12 Anastasia Mavridou , Eduard Baranov , Simon Bliudze , Joseph Sifakis