Hello, > But, > There can also be a background user program. What happens on that case. > eg, > int main() > { > scanf(...); > } > > and i run it as ./my & Yeah i know what a background process is, but as told to you before, it's a concept of shell and is not implemented by the OS/kernel. By writing './my &' at the shell prompt, you are telling shell to run my as a background process. The POSIX theory you refered to doesn't refer to this kind of process as this process does have a controlling terminal and can safely read/write from/to the terminal. -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/