【Linux】孤儿进程|守护进程|Shell脚本设置守护进程开机自启

🔥博客主页: 我要成为C++领域大神
🎥系列专栏【C++核心编程】 【计算机网络】 【Linux编程】 【操作系统】
❤️感谢大家点赞👍收藏⭐评论✍️

本博客致力于知识分享,与更多的人进行学习交流

Orphan孤儿进程

父进程先于子进程异常退出,子进程被托管给托管进程,子进程成为活态进程,失去管理,这种进程称为孤儿进程(Orphan Process)。

Ubuntu16.04托管进程为upstart进程,14.04版本托管进程为init进程

孤儿进程是异常进程模型的残留,会影响新进程的创建与使用。这种活态进程的危害是有弹性的,取决于孤儿进程的作业,如果孤儿进程被设置大量频繁的申请占用系统资源,那么这种孤儿进程危害极大。

下面是一个产生孤儿进程的demo程序:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/types.h>
#include <string.h>
#include <sys/fcntl.h>
 

int main()
{
    pid_t pid;
    pid=fork();
    if(pid>0){
        printf("Parent PID:%d\n",getpid());
        sleep(10);
        exit(0);
    }else if(pid==0){
        printf("Child PID:%d PPID:%d\n",getpid(),getppid());
        sleep(11);
        printf("Child PID:%d PPID:%d\n",getpid(),getppid());
    }else{
        perror("fork call failed");
        exit(0);
    }
	return 0;
}

1543号进程为upstart托管进程

评论 14
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值