1987 Reports
RB: Programmer Specification of Redundancy
RB is a programming language for specifying redundancy in various dimensions. Avizienis's notation T I HIS, for Time I Hardware I Software, describes the different types of redundancy possible in a computation: repetition (nT I HIS), redundant hardware (T I nH I S), and program (software) (T I H InS). These can each be controlled by the programmer with RB. RB derives its name from its use of the recovery block notion to specify fault-tolerant segments of software. RB also supplies the programmer with the ability to specify degrees of replication and repetition for a given recovery block alternate; the underlying support software can then take this advice to replicate in time or hardware, based on available resources. An implementation of RB based on the C programming language is described in this paper. This implementation uses a combination of a language preprocessor for C and a runtime library to provide the desired semantics. Modification of RB to support other programming languages, or programmer specification of N-Version Programming as the decision mechanism. is straightforward.
Subjects
Files
- cucs-269-87.pdf application/pdf 462 KB Download File
More About This Work
- Academic Units
- Computer Science
- Publisher
- Department of Computer Science, Columbia University
- Series
- Columbia University Computer Science Technical Reports, CUCS-269-87
- Published Here
- November 28, 2011