A Caltech Library Service

Fault Tolerance Using Whole-Process Migration and Speculative Execution


Smith, Justin David (2003) Fault Tolerance Using Whole-Process Migration and Speculative Execution. Master's thesis, California Institute of Technology. doi:10.7907/AYFV-AS63.


This thesis examines programming language concepts that facilitate fault-tolerant distributed programming. New language primitives are introduced for whole-process migration, which allows an active process to be transferred from one machine to another, and speculative execution, which enables optimistic computing based on an unverified assumption. These primitives are developed in the context of the Mojave Compiler Collection, a multi-language multi-architecture compiler with ties to the MetaPRL theorem prover.

The new primitives are first discussed from a theoretical perspective. The primitives are implemented as part of a functional intermediate language in the Mojave compiler, which has a formal operational semantics and complete typing rules. The operational semantics and typing rules are extended to accommodate whole-process migration and speculative execution, and the implications these primitives have for program safety are discussed.

The primitives are implemented as part of the Mojave compiler. The runtime safety checks that are required to ensure these primitives are safe are presented, along with runtime invariants used to justify the safety of the system. The primitives are also integrated with a novel compacting, generational garbage collector whose algorithm is presented.

Item Type:Thesis (Master's thesis)
Subject Keywords:fault tolerance; functional intermediate representations; generational garbage collection; migration; Mojave compiler; speculation
Degree Grantor:California Institute of Technology
Division:Engineering and Applied Science
Major Option:Computer Science
Thesis Availability:Public (worldwide access)
Research Advisor(s):
  • Hickey, Jason J.
Thesis Committee:
  • Unknown, Unknown
Defense Date:30 May 2003
Record Number:CaltechETD:etd-05272003-120725
Persistent URL:
Default Usage Policy:No commercial reproduction, distribution, display or performance rights in this work are provided.
ID Code:2122
Deposited By: Imported from ETD-db
Deposited On:04 Jun 2003
Last Modified:13 May 2021 22:56

Thesis Files

PDF - Final Version
See Usage Policy.


Repository Staff Only: item control page