difference between startproc and nohup

what is the major difference between startproc and nohup ?

I hadn't heard of this, but it turns out to be related to start-stop-daemon, which I have.

nohup is very simple and does exactly what its manpage says. It doesn't put processes into the background for you, check whether such a process is already being run, or save a PID, it just redirects stdin, stdout, and stderr so the process won't hang your terminal.

startproc is more deluxe, with features related to starting system services. It won't start the process if it thinks one exists already. It can store PID files, traditionally under /var/run, so it can tell whether one's running, whether one ran and died, or whether it was never run at all yet.