当前位置: 首页 > news >正文

建网站必备软件免费发布广告信息网

建网站必备软件,免费发布广告信息网,在福州做网站,苏州 网站建设守护进程(Daemon)是一类在后台运行的特殊进程,它们通常不与任何终端或用户直接交互,而是执行特定的系统任务或等待系统或网络事件的发生。守护进程是操作系统中不可或缺的一部分,它们负责执行各种后台任务,…

守护进程(Daemon)是一类在后台运行的特殊进程,它们通常不与任何终端或用户直接交互,而是执行特定的系统任务或等待系统或网络事件的发生。守护进程是操作系统中不可或缺的一部分,它们负责执行各种后台任务,如系统日志记录、文件系统管理、网络服务等。

 创建一个守护进程的步骤:

1、让程序在后台执行

fork出一个子进程,父进程退出

int main(){if(::fork()){return 0;}return 0;
}

2、创建一个新会话摆脱原来的登录会话、进程组和控制终端的影响

int main(){if(::fork()){return 0;}int sid=::setsid();return 0;
}

3、禁⽌进程重新打开控制终端

进程已经成为⼀个⽆终端的会话组⻓,但是它可以重新申请打开⼀个终端。为了避免这种情况发⽣,可以通过使进程不再是会话组⻓来实现。

目的:避免终端对该程序的影响

int main(){if(::fork()){return 0;}int sid=::setsid();if(::fork()){return 0;}return 0;
}

4、关闭不再需要的⽂件描述符

目的:避免资源浪费

int main(){if(::fork()){return 0;}int sid=::setsid();if(::fork()){return 0;}for(int fd=0;fd<syscall(_SC_OPEN_MAX);++fd){close(fd);}return 0;
}

5、将当前⽬录更改为根⽬录

int main(){if(::fork()){return 0;}int sid=::setsid();if(::fork()){return 0;}for(int fd=0;fd<syscall(_SC_OPEN_MAX);++fd){close(fd);}chdir("/");return 0;
}

6、屏蔽字清零

目的:避免⼦进程从⽗进程继承的⽂件创建屏蔽字可能会拒绝某些许可权的影响

int main(){if(::fork()){return 0;}int sid=::setsid();if(::fork()){return 0;}for(int fd=0;fd<syscall(_SC_OPEN_MAX);++fd){close(fd);}chdir("/");umask(0);return 0;
}

7、处理SIGCHLD信号

Linux 系统中,当一个子进程结束时,它会发送 SIGCHLD 信号给父进程。如果父进程没有处理这个信号,子进程不会立即从系统中消失,而是变成一个僵尸进程(zombie process)。僵尸进程会保留在系统中,直到父进程读取其状态信息,这通常是通过 wait()waitpid() 系统调用完成的。

僵尸进程会占用系统资源,比如进程表中的条目,尽管它们不再消耗 CPU 或内存资源。如果服务器进程频繁地生成子进程,且每个子进程都需要父进程去处理 SIGCHLD 信号,这确实会增加父进程的负担,影响服务器的并发性能。

为了避免这种情况,服务器进程可以忽略 SIGCHLD 信号,这样子进程结束时就不会变成僵尸进程。这可以通过设置 SIGCHLD 信号的处理行为为 SIG_IGN 来实现。

int main(){if(::fork()){return 0;}int sid=::setsid();if(::fork()){return 0;}for(int fd=0;fd<syscall(_SC_OPEN_MAX);++fd){close(fd);}chdir("/");umask(0);signal(SIGCHLD, SIG_IGN);return 0;
}

 

http://www.mnyf.cn/news/49814.html

相关文章:

  • 做网站应该用什么配置的电脑宁波seo外包推广渠道
  • wordpress 添加rss网站seo的内容是什么
  • 网站 备份 还原中国国家人事人才培训网证书查询
  • 手机游戏网站大全天津seo网络
  • 群辉服务器建设的网站网络营销专业就业方向
  • 昆明网站开发服装品牌营销策划方案
  • 如何做国外的电商网站chrome浏览器
  • 医疗产品网站建设企业培训内容有哪些
  • 南昌网站建设公司网站建设公司美国疫情最新数据消息
  • 做网站都需要学什么网站优化排名方案
  • 简历在线制作网站免费百度搜索seo
  • 成都网站seo厂家郑州网站seo公司
  • 哪些公司需要网站开发工程师企业如何做网络推广
  • 北京网站建设网络公司华联股份股票
  • 公司做网站域名的好处济南全网推广
  • 做网站到a5卖站赚钱百度站长资源平台
  • magento外贸建站win7优化配置的方法
  • 培训机构需要什么资质seo外链建设方法
  • 攀枝花网站建设兼职广告联盟平台排名
  • 十大必做调查网站南宁网站建设公司排行
  • 开发网站开票名称是什么原因搜狗引擎搜索
  • 科技未来网站建设play商店
  • wordpress换主题后打不开网络推广和seo
  • 网站建设 国鸿seo排名技巧
  • 企业网站托管方式免费域名申请
  • 曲阜市政对过做网站的是那家深圳英文站seo
  • 重庆企业建站程序东莞网站营销推广
  • 网站和ip建设西青seo
  • 青浦php网站开发培训网站建设怎么弄
  • 怎么查网站域名郑州做网站公司排名