程序是静态的代码文件 进程是指程序运行时的形态 进程是程序的一个副本 进程是有生命周期的(准备期,运行期,终止期)
进程是资源调用的最小单位 线程是进程的最小单位
程序执行流是从上到下贯穿运行的
当进程是多任务,cpu是多核心,多任务应该同时被每个核心处理,每个核心处理的任务叫线程,线程资源是共享的。
gnome-system-monitor #图形进程查看工具 ps #进程的查看
ps 命令的三种执行风格 unix bsd GNUbsd风格 命令Valuea与终端相关的进程x与终端无关的进程u用户信息归类的查看方式f进程层级关系o显示指定参数 后跟pid,comm,nice,pri,papu,ppid,stat,user,group unix风格 命令Value-e显示所有进程(相当于上面的ax)-f显示信息的完整格式-eH-H-o显示指定参数–sort=排序(GNU风格)ps ax -o %mem,comm --sort= -%mem | less #根据内存倒序排序,去掉-就是正序排序
ps ax显示信息如下 显示ValuePID进程idTTY进程用到的终端STAT进程状态TIME进程占用cpu时长COMMAND进程名称 ps aux显示信息如下: 显示ValueUSER进程所有人PID进程id%CPU进程所使用cpu的用量%MEM进程所用到的内存用量VSZ进程使用的虚拟内存大小RSS进程常驻内存中的数据大小TTY进程用到的终端STAT进程状态START进程运行时长TIME进程占用cpu时长COMMAND进程名称 pgrep进程过滤 命令Valuepgrep -u uid显示指定用户进程pgrep -U user显示指定用户进程pgrep -t tty显示指定终端进程pgrep -l user显示进程名称pgrep -a user显示进程的完整名称pgrep -P PID进程的子进程pidof bash查看bash的pid
top
top内部命令:
命令功能PCPU排序M内存排序T累计cpu时间排序l关闭/开启 uptime信息t关闭/开启cpu&tasks指定刷新频率k操作进程u查看指定用户进程 #PID 进程id #USER 进程所有者的用户名 #PR 优先级 #NI nice值,负值表示高优先级,正值表示低优先级 #VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES #RES 进程使用的、未被患处的物理内存大小,单位kb。RES=CODE+DATA #SHR 共享内存大小,单位kb #S 进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程) #%CPU 上次更新到现在的CPU时间占用百分比 #%MEM 进程使用的物理内存百分比 #TIME+ 进程使用的CPU时间总计,单位1/100s #COMMAND 命令名/命令行系统是多任务多用户的操作模式 任务的重要性是有区分的 如何确定任务的重要性 “优先级” 范围:0-139 内核自控优先级:0-99 用户可控优先级:100-139
nice:-20-19
renice -n -5 43331 #更改优先级 nice -n -5 vim & #指定优先级打开进程
ps—>pri----0-39 nice----------20-19 priority------0-139(100-139)
value含义Ssleeping<优先级高s顶级进程TstopN优先级低Rrunning+运行在前台kill 进程信号 pid killall 进程信号 进程名字 pkill 进程信号 进程条件
systemctl命令用法
命令Valuesystemctl start ssh开启systemctl stop ssh关闭systemctl status ssh查看状态systemctl reload ssh重新加载systemctl restart ssh重新启动服务systemctl enable ssh重新服务开机启动systemctl enable --now ssh设定服务开机启动并当前开启服务systemctl disable ssh设定服务开机不启动systemctl list-units ssh查看系统所有服务当前状态systemctl list-unit-files ssh查看服务开机状态systemctl list-dependencies ssh列出服务依赖性systemctl mask ssh冻结服务systemctl unmask ssh解锁systemctl set-default ssh设定系统运行模式(multi-user.target无图形网络模式;graphical-target有图形的网络模式)systemctl get-default ssh查看系统运行模式(0-6)