¿Por qué no puedo ver java.exe de Cygwin?

fuente
¿Por qué no puedo ver java.exe de Cygwin?

En las ediciones x64 de Windows 8/7 / Vista, el contenido de la carpeta C: \ Windows \ System32 depende del bitness de la aplicación.
Para las aplicaciones de 64 bits (como el símbolo del sistema de Windows cmd.exe) , no hay redirección del sistema de archivos:
C:\Windows\System32(en el software) -> C:\Windows\System32(en el disco).
Entonces, la carpeta C: \ Windows \ System32 contiene archivos DLL y EXE de 64 bits, desde el punto de vista de la aplicación de 64 bits.
Para las aplicaciones de 32 bits (como las bash.exede Cygwin) que se ejecuta a través del subsistema WoW64 en Windows x64, hay dos redirecciones en el sistema de archivos:
C:\Windows\System32(en el software) -> C:\Windows\SysWOW64(en el disco).
C:\Windows\Sysnative(en software) -> C:\Windows\System32(en disco).
Entonces, la carpeta C: \ Windows \ System32 contiene archivos DLL y EXE de 32 bits, desde el punto de vista de la aplicación de 32 bits.
Si desea acceder a aplicaciones de 64 bits y archivos DLL (como java*.exe) desde aplicaciones de 32 bits (como Cygwin's bash.exe), debe usar la C:\Windows\Sysnativeruta o /cygdrive/c/Windows/Sysnativeen notación Cygwin.
(esta es una respuesta actualizada y extendida)