(* This is a picture of the concurrent checkpointing algorithm. *) newgraph xaxis min 0 max 3 size 2.5 nodraw yaxis min 0 max 2.0 size 2 nodraw (* Draw the address space *) newstring fontsize 9 hjc vjt x 0.25 y -0.07 : Address\ Space newcurve fill 1 marktype ellipse marksize 0.2 1.4 pts 0.5 1.3 newcurve marktype box fill 1 marksize 0.5 2.0 pts 0.25 1 newline pts 0.0 0.6 0.5 0.6 (* Draw the registers *) shell : echo "0.7 0" | awk -f regs.awk newstring hjc vjc fontsize 7 x 1.3 y 0.3 : . . . newstring fontsize 9 hjc vjt x 1.05 y -0.07 : CPU\ States (* Draw the second address space *) newcurve fill 1 marktype ellipse marksize 0.2 1.5 pts 2.2 1.25 newcurve marktype box marksize 0.5 2.0 fill 1 pts 1.95 1 copycurve marksize 0.5 1.4 fill .5 pts 1.95 1.3 copycurve marksize 0.5 0.1 pts 1.95 0.55 newstring fontsize 9 hjc vjt x 1.95 y -0.07 : New Address\ Space (* Draw all the arrows *) newline rarrow asize .07 .04 pts 0.6 1.3 1.60 1.3 newline pts 1.3 0.575 1.22 0.4 newline pts 1.3 0.575 1.3 0.4 newline pts 1.3 0.575 1.38 0.4 newline rarrow asize .07 .04 pts 1.0 0.6 1.3 0.575 1.6 0.55 newline linetype longdash rarrow asize .07 .04 pts 2.3 1.25 2.6 0.45 (* Draw the disk *) shell : echo "2.5 0.0" | awk -f disk.awk