If by daemon process you mean one that's detached (disassociated from its
tty), then the following process is reported to work on most Unixish
systems. Non-Unix users should check their Your_OS::Process module for
other solutions.
- 
Open /dev/tty and use the the 
TIOCNOTTY ioctl on it. See tty(4)
for details.
 
- 
Change directory to /
 
- 
Reopen 
STDIN, 
STDOUT, and 
STDERR so they're not connected to the old tty.
 
- 
Background yourself like this:
     fork && exit;