pgm 22.16, cp implemented with descriptor-level IO and 4096 instead of 512 block size