《http://blog.csdn.net/wanxiao009/article/details/5532929》
《http://wenku.baidu.com/view/d6d6c3370b4c2e3f572763cf.html》
看完以上两篇文章后的疑问:
关闭不需要的文件描述符。
for(i=0;i<MAXFILE;i++)
close(i);
疑惑 文件描述符与进程的关系,当守护进程关闭文件描述符时,是不是所有文件描述符都被关闭。。。这当然是不可以的,
然后这篇文章解决了我的疑问!!!
《http://www.cnblogs.com/GODYCA/archive/2013/01/05/2845618.html》
进程是通过文件描述符来访问文件的,
在内核中,对应每个进程都有一个文件描述符表,表示这个进程打开的所有文件,文件描述符表的每一项都是一个指针,指向file对象,不同进程的文件描述符表中的指针可以指向相同的file对象,<span style="color:#ff0000;">file对象有引用计数,只有当计数为0时,内核才销毁file对象,因此某个进程关闭文件,不影响与之共享同一个file对象的进程。</span>
简单守护进程完整源代码
《http://wenku.baidu.com/view/d6d6c3370b4c2e3f572763cf.html》见PPT最后一页