A This program is created to retrieve a system dump from a Phase II A shadowed systemdisk. The problem is that the bugcheck code writes @ to the member we booted from (normally), but as far as shadowingB is concearned the disks are the same. A merge copy which may startC after a crash may not be able to correct the blocks of the dumpfile A on all the disks of the shadowset. Suppose that a dumpfile starts ? at the end of the disk, and ends at the beginning of it. When a @ system crashes we will start writing at the end of the disk, andD it is very well possible that when we reach the part of the dumpfileC at the beginning of the disk that that part has already been merged B by a merge copy. The net result is inconsistent data as far as theF dumpfile is concearned. This can of course be corrected by dismountingC members of the shadowset except the master, and remount the members B after which a full shadowcopy will correct things. This may have aA rather high impact, which most customers don't want on their live D systems. Another way to correct things is to trigger a merge copy onF the fly. That's certainly possible but it involves kernel-mode hackingF which is always error-prone. What we do here is look for the retrievalG pointers of the dumpfile (they are already stored in memory by SYSINIT) F and look which shadowset member is the master. We then copy all blocks@ mapped by the dumpfile from the master member to an output file. <