Linux——进程管理

进程:已启动的可执行程序的运行实例,即运行的程序。
进程与程序的关系:
程序: 静止的代码
程序: 当程序开始被运行(执行)的时候,具有动态、生命周期以及运行状态。

进程生命周期

在这里插入图片描述
父进程通过fork()函数可以创建一个子进程,并分配一个新的进程ID号,此时整个的父进程的地址空间是没有被复制,父子进程共享相同的地址空间,exec()函数复制新的程序到子进程的地址空间,内存会分配新的物理内存页给子进程,当程序已经执行完成,子进程通过调用exit()系统调用终止。exit()系统调用释放进程大部分的数据并通过发送一个信号通知其父进程。此时,子进程是一个被叫作僵尸进程的进程。

进程状态

在这里插入图片描述

运行状态

此状态具有进程正在运行进程处于就绪状态两种情况,就绪状态的进程处于预备运行的状态,在等待系统按照时间片轮转规则将CPU分配给他,得到CPU后就会投入运行。

等待状态

进程正在等待某个事件发生或等待某种资源,该状态分为两类:可中断的睡眠状态不可中断的睡眠状态。处于可中断的等待状态进程,既可以被信号中断,也可以由于资源就绪而被唤醒进入运行状态;而不可中断等待状态只能用wake_up()函数唤醒。

暂停状态

当进程收到信号SIGSTOP、SIGTSTP、SIGTTIN或SIGTTOU时就会进入暂停状态。可向其发送SIGCONT信号让进程转换到可运行状态。

僵死状态

子进程退出时,父进程并未对其发出的SIGCHLD信号进行适当处理,导致子进程停留在僵死状态等待其父进程为其收尸,这个状态下的子进程就是僵死进程。

  • ps [参数](功能描述:永远显示当前进程的状态)
     				常用参数:
     							-a: 显示当前终端的所有进程信息
     							-u: 以用户的格式显示进程信息
     							-x: 显示后台进程运行的参数
     							-e: 显示所有进程
     							-f: 全格式
    

在这里插入图片描述
在这里插入图片描述

  • kill [选项] 进程号(功能描述:通过进程号杀死进程)
     				常用选项 :
     							-9: 强迫进程立即停止
    

在这里插入图片描述

  • killall 进程名称(功能描述:通过进程名称杀死进程,也支持通配符,在系统因负载过大而变得很慢时很有用)
    

在这里插入图片描述

  • pstree [选项](功能描述:所有进程以树状图显示)
     						常用选项:
     									-p: 显示进程的PID
     									-u: 显示进程的所属用户
    

在这里插入图片描述

服务(Service)管理

服务本质就是进程,但是时运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如mysql、sshd、防火墙等,这样的进程又称为守护进程。

查看服务名:

1.使用 setup 查看系统服务名称
在这里插入图片描述
在这里插入图片描述
2./etc/init.d文件中查看服务名称
在这里插入图片描述centos7系统服务管理
在这里插入图片描述
CentOS7与CentOS6关于服务管理的命令差异比较大。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值