FORTRAN Reference Manual
Fault-Tolerant Programming
FORTRAN Reference Manual—528615-001
16-6
Checkpointing
Checkpointing
In general, you need to checkpoint the following types of information:
•
Individual data entities (usually file buffers, but can be any data items desired)
•
File “sync blocks” (these contain control information about the current status of a 
disk file—for example, the current values of the file pointers—or a process file)
•
RECEIVE
When a CHECKPOINT statement executes in the primary process, FORTRAN formats 
the information to checkpoint and sends it to the backup process in an interprocess 
message. The backup process automatically receives and processes the message.
FORTRAN checkpoints information to the backup process when the backup process is 
created, when an OPEN or CLOSE statement is executed, and when you access a file 
without having explicitly opened the file. FORTRAN implicitly opens a file if you 
reference the file in an I/O statement without having opened it. As part of the implicit 
open, FORTRAN checkpoints information to your backup process. The checkpoint 
specifies STACK = 'YES'. Therefore, an implicit open establishes a takeover point.
Figure 16-1. Fault-Tolerant Processing
VST1601.vsd
Primary Process
OPEN files
STARTBACKUP process
READ entry from terminal
READ record from disk
CHECKPOINT
update record in memory
WRITE updated record to disk
Backup Process
monitor primary
takeover by
backup
READ entry from terminal
READ record from disk
update record in memory
CHECKPOINT
WRITE updated record to disk
The backup process monitors the primary process while the primary runs. If
the primary cannot continue running—for example, it fails or the processor in
which it is running fails—the backup process leaves the monitor state and
takes over running your program by executing the instructions that
immediately follow the last CHECKPOINT executed by the primary process.










