Files

Résumé

This report is the result of a diploma thesis of Xavier Caron, a computer science student at the Software Engineering Lab (LGL), which is part of the Swiss Federal Institute of Technology in Lausanne (EPFL). The LGL is currently developing an object-oriented library providing transaction support for Ada programmers. Transactions are actions that have the well-known ACID properties (Atomicity, Consistency, Isolation, and Durability). Durability of objects can be achieved by saving their state to so-called "stable storage". The goal of this project is to implement the two following forms of stable storage: 1) Stable storage using a technique called mirroring. The integrity of the stored data must be guaranteed even in the presence of crash failures. 2) Stable storage based on replication. Using the distributed programming facilities of Ada 95, a mechanism must be devised that allows to broadcast the information that has to be made durable to a group of collaborating machines for storage. Of course, it should also be possible to retrieve the data in a consistent manner. This report describes the system design and implementation in Ada 95.

Détails

PDF