When you connect through SQL*Net, it's the tns listener process tnslsnr that forks an Oracle server process ($ORACLE_HOME/bin/oracle). When you set bequeath_detach in sqlnet.ora, it's still the client such as sqlplus that forks. In fact, it forks twice. The grand child exec's $ORACLE_HOME/bin and the child exits later. So the grandchild is inherited by init. Assuming you're on Solaris, you can see all these by truss -f sqlplus. Remember to press one more return to show those fork calls if you don't supply sqlplus connection string (even a / is enough). If you want a cleaner output, just try truss -f -t fork,execve,exit sqlplus / Yong Huang