Orphan process is the one which has no parent, that is "A process which has not parent process".
At time accidentally parent process get crashed or killed and child process (es) will become orphan processes. Generally when Parent gets killed all its child processes will be linked to or adopted by init process of the uinix.
And if you want to create your own Orphan process you can just use fork() call in your program and it creates a process and and you can exit the main process so the child created will become orphan.
Generally orphan processes are created to do some background activities independently, For Ex: In unix you might have seen daemon processes like syslogd, sshd, these are orphan processes created during boot up to do some specific activities.
You might be thinking no what is the difference between Daemon and Orphan right?
I would say like this "Intentionally created Orphans are called Daemons" and Accidental child processes are Orphans and taken care by Init process of linux.
Hope it will give some basic knowledge about the same now you can google on the same or read some unix internals book if you have any for more detailed knowledge. Happy reading!!!