Using logging and asynchronous checkpointing to implement recoverable distributed shared memory | IEEE Conference Publication | IEEE Xplore