my guess is using nohup, i still use nohup sometimes
to start ftp sessions on the unix shell box which do no die right after i disconnect from my dial provider.
basically:
nohup programmfile
and the you disconnect
But i have managed to write c and perl script in the past
for an ISP which manager dial up line and DO NOT die when
user is disconnected (they need to write logout time into the database). The trick is to handle HUP signal which all your processes get when you logout. Default for this signal is to terminate the process. Also, i don't remenber exactly, there maybe a couple more signal to wait for (SIGQUIT?).
So:
man nohup
man signal
and of course perldoc on the signal handling.
Good luck!
Artem Koutchine
matrix@chat.ru