3 research outputs found

    Replication of non-deterministic objects

    Get PDF
    This thesis discusses replication of non-deterministic objects in distributed systems to achieve fault tolerance against crash failures. The objects replicated are the virtual nodes of a distributed application. Replication is viewed as an issue that is to be dealt with only during the configuration of a distributed application and that should not affect the development of the application. Hence, replication of virtual nodes should be transparent to the application. Like all measures to achieve fault tolerance, replication introduces redundancy in the system. Not surprisingly, the main difficulty is guaranteeing the consistency of all replicas such that they behave in the same way as if the object was not replicated (replication transparency). This is further complicated if active objects (like virtual nodes) are replicated, and these objects themselves can be clients of still further objects in the distributed application. The problems of replication of active non-deterministic objects are analyzed in the context of distributed Ada 95 applications. The ISO standard for Ada 95 defines a model for distributed execution based on remote procedure calls (RPC). Virtual nodes in Ada 95 use this as their sole communication paradigm, but they may contain tasks to execute activities concurrently, thus making the execution potentially non-deterministic due to implicit timing dependencies. Such non-determinism cannot be avoided by choosing deterministic tasking policies. I present two different approaches to maintain replica consistency despite this non-determinism. In a first approach, I consider the run-time support of Ada 95 as a black box (except for the part handling remote communications). This corresponds to a non-deterministic computation model. I show that replication of non-deterministic virtual nodes requires that remote procedure calls are implemented as nested transactions. Unfortunately, effects of failures are not local to the replicas of a virtual node: when a failure occurs, nested remote calls made to other virtual nodes must be undone. Also, using transactional semantics for RPCs necessitates a compromise regarding transparency: the application must identify global state for it cannot be determined reliably in an automatic way. Further study reveals that this approach cannot be implemented in a transparent way at all because the consistency criterion of Ada 95 (linearizability) is much weaker than that of transactions (serializability). An execution of remote procedure calls as transactions may thus lead to incompatibilities with the semantics of the programming language. If remotely called subprograms on a replicated virtual node perform partial operations, i.e., entry calls on global protected objects, deadlocks that cannot be broken can occur in certain cases. Such deadlocks do not occur when the virtual node is not replicated. The transactional semantics of RPCs must therefore be exposed to the application. A second approach is based on a piecewise deterministic computation model, i.e., the execution of a virtual node is seen as a sequence of deterministic state intervals. Whenever a non-deterministic event occurs, a new state interval is started. I study replica organization under this computation model (semi-active replication). In this model, all non-deterministic decisions are made on one distinguished replica (the leader), while all other replicas (the followers) are forced to follow the same sequence of non-deterministic events. I show that it suffices to synchronize the followers with the leader upon each observable event, i.e., when the leader sends a message to some other virtual node. It is not necessary to synchronize upon each and every non-deterministic event — which would incur a prohibitively high overhead. Non-deterministic events occurring on the leader between observable events are logged and sent to the followers just before the leader executes an observable event. Consequently, it is guaranteed that the followers will reach the same state as the leader, and thus the effects of failures remain mostly local to the replicas. A prototype implementation called RAPIDS (Replicated Ada Partitions In Distributed Systems) serves as a proof of concept for this second approach, demonstrating its feasibility. RAPIDS is an Ada 95 implementation of a replication manager for semi-active replication for the GNAT development system for Ada 95. It is entirely contained within the run-time support and hence largely transparent for the application

    The design of the MathSpad editor

    Get PDF

    Creating for the Stage and Other Spaces: Questioning Practices and Theories

    Get PDF
    Abstract (ENGLISH)-This volume brings together most of the interventions by artists and scholars of the Third EASTAP Conference (European Association for the Study of Theatre and Performance), which should have been held in Bologna from 27 February to 1 March 2020, scheduled among the events of the VIE Festival 2020 and the activities of the Department of the Arts / DAMSLab. When everything was ready, the Conference, the last part of the Festival and the DAMSLab programme were suddenly canceled due to the first restrictions related to the pandemic. Following those sudden and unexpected events, the need to leave memory of the project arose from many quarters. It was thus decided to propose a publication which, while significantly differentiating from the original structure designed for the Conference, explicitly and directly refers to it, remaining an exceptional and significant testimony of the state of studies on theatre and performance in the pre-Covid era. The Conference plan envisaged two macro-sectors which concerned, one, the practices and theories relating to the composition of the texts; the other, the practices and theories relating to the composition of performative events referable to the methods of scenic writing. The volume takes up this polarity by framing it in a different division of relations, which explains – thanks to the groupings and their titles both the relations between text and text and those between sector and sector. The most consistent chapters are dedicated to performance and post-dramatic textuality: Questioning performance: theories and practices (17 reports) and Creating text for the stage: theories and practices (21 reports). The other chapters then come to place themselves in the force field described by these main groupings. Perfomer's body: the dancer, the actor (6 reports) and Creating for other spaces: landscape, sound, multimedia (7 reports) are ideally framed in the polarity of the performace, where to highlight the centrality of the body and the relational dynamics activated by spaces, sounds, and new technologies. Collective creations and community plays (7 reports), on the other hand, focuses on performance and new textuality. __________ Abstract (ITALIANO)-Il presente volume riunisce la maggior parte degli interventi di artisti e studiosi del III Convegno EASTAP (European Association for the Study of Theatre and Performance), che avrebbe dovuto tenersi a Bologna dal 27 febbraio al 1 marzo 2020, calendarizzato tra gli eventi di VIE Festival 2020 e le attività del Dipartimento delle Arti/DAMSLab. Quando tutto era ormai pronto, il Convegno, l’ultima parte del Festival e il programma DAMSLab sono stati improvvisamente annullati a causa delle prime restrizioni legate alla pandemia. In seguito a quei repentini e inattesi eventi, è nata l’esigenza da più parti avvertita di lasciare memoria del progetto. Si è deciso così di proporre una pubblicazione che, pur differenziandosi sensibilmente dalla struttura originaria pensata per il Convegno, a esso si richiamasse esplicitamente e direttamente, restando eccezionale e significativa testimonianza dello stato degli studi sul teatro e la performance nell’era pre-Covid. Il piano del Convegno prevedeva due macrosettori che riguardavano, l’uno, le pratiche e le teorie relative alla composizione dei testi; l’altro, le pratiche e le teorie relative alla composizione di eventi performativi riferibili alle modalità della scrittura scenica. Il volume riprende questa polarità inquadrandola in una diversa ripartizione delle relazioni, che esplicita – grazie ai raggruppamenti e ai loro titoli – sia le relazioni fra testo e testo che quelle fra settore e settore. Alla performance e alla testualità postdrammatica sono dedicati i capitoli più consistenti: Questioning performance: theories and practices (17 relazioni) e Creating text for the stage: theories and practices (21 relazioni). Gli altri capitoli si vengono quindi a posizionare nel campo di forze descritto da questi raggruppamenti principali. Perfomer’s body: the dancer, the actor (6 relazioni) e Creating for other spaces: landscape, sound, multimedia (7 relazioni) si inquadrano idealmente nella polarità della performace, dove evidenziare la centralità del corpo e le dinamiche relazionali attivate dagli spazi, dai suoni e dalle nuove tecnologie. Collective creations and community plays (7 relazioni) si orienta invece fra performance e nuova testualità
    corecore