进程管理

1、进程与程序

程序:放置在存储媒介中以物理文件的形式存在 进程:在内存中的一个正在动态运行的程序 进程权限的传递:用户自身 ——> Shell ——> 子进程子进程、父进程 过程调用:fork、exec 系统或网络服务:常驻内存多用户环境:多个用户账号,权限各异,相互独立的shell环境;root账号作为特权账号管理系统 多任务行为:高速的CPU运行速度和优秀的任务调度机制提供性能保证多重登录环境:7个虚拟终端窗口(tty1~tty6共6个字符哑终端,tty7为图形界面终端);目前的个人Linux主机只有控制台Console, 所以getty基于Console模拟了7个虚拟终端窗口 /dev/console系统控制台,系统级概念,映射到激活的终端,如/dev/ttyn /dev/tty当前控制台,进程级概念,映射到实际的当前设备,即/dev/ttyn或/dev/pts/n /dev/ttyn虚拟控制台,当前的实际设备,下同 /dev/pts/n

进程管理
文章图片
f87d13e1-56ec-4346-8402-533f9523dc08.png
多重登录环境的好处: 当一个终端不可用时,可以使用Ctrl+Alt+Fn的方式切换到其他终端去管理有问题的进程
2、工作管理
脱机管理 —— 任务与终端无关 nohup [command parameter]终端前台执行,占用终端 nohup [command parameter] &终端后台执行,释放终端在线管理 —— 任务与终端相关 前台进程:直接执行,可以ctrl+c终止 后台进程:&符号运行,ctrl+c无效ctrl+z将前台进程切换为后台进程并暂停运行 jobs查看后台进程列表 fg [%n]将n号后台进程切换为前台进程 bg [%n]将n号后台已暂停进程切换为运行状态 kill -9 %n终止n号后台进程

3、进程管理
进程状态静态查看 ps -l仅查看当前bash自己的子进程 ps auxw查看系统所有进程 ps axwlf查看系统所有进程信息,命令列将以树状形式显示pstree以树状显示所有进程的关系 pstree -up 在树状显示中添加进程号和进程所属账号名 进程状态动态查看 top查看所有进程 top -p pid查看单一进程 信号方式管理进程 常用信号

进程管理
文章图片
fdcf6ede-a262-4eb4-827c-0e199727708f.png
【进程管理】kill -signal PID
killall -signal PNAME
进程的执行顺序
优先级: PRI(new) = PRI(old) + nice
优先级的调整:
新执行命令指定nice值: nice -n -5 command
已存在进程调整nice值: renice -5 PID
系统资源的产看
free 查看内存使用情况
uname 查看系统与内核相关信息
uptime 查看系统启动与运行时间以及工作负载
netstat 查看网络跟踪信息 (-atulnp)
dmesg 查看内核产生的信息
vmstat 检测系统资源变化
特殊文件与程序
SUID/SGID权限命令
/proc文件系统 —— 实际在内存中,被映射为文件系统

进程管理
文章图片
57df7e3a-e544-40fa-9490-4409901ff0a5.png
进程管理
文章图片
298a815e-0f22-4e53-8659-562edddfb1fe.png
查询打开指定文件的程序: fuser
查询指定进程代开的文件: lsof
列出指定的正在运行进程的PID: pidof

    推荐阅读