No idea about code commonality, but the broad architecture of WSL is basically the same as the original POSIX personality from the 90's. The "foreign" process runs in a special mode and handles a different set of system calls via a different dispatch mechanism in the kernel, but still on top of the same set of kernel functionality beneath that.