目录
1.进程管理
什么是进程
2.作业管理 process
目标
静态查看进程ps
动态查看进程top
使用信号控制进程
查看内存大小的命令 free
控制进程的运行 kill
进程优先级nice
作业控制jobs(了解)
关键词介绍 foreground background
后台控制管理实例
1.观察占领前台的现象
2.运行后台程序 &
3.ps查询所有程序
4.jobs查看后台进程
5.调动后台程序至前台
ctrl +z 会停止
6.消灭后台进程 kill %
虚拟文件系统proc(了解)
1.进程管理
什么是进程
- 进程概念:进程是程序的执行实例。每个进程都有唯一的进程标识符(PID),并可以包含多个线程。
- 进程状态:进程可以处于不同的状态,包括运行态、就绪态、阻塞态等。进程状态的变化通常由调度器决定。
进程调度:Linux系统使用调度算法来决定进程间的竞争,以及如何在CPU上分配时间片给进程。常见的调度算法有先来先服务(FCFS)、最短作业优先(SJF)、时间片轮转(RR)等。 以上只是进程管理的一些基本知识,Linux进程管理涉及的内容还很广泛,包括进程通信、进程组、守护进程等。这些概念和工具可以进一步探索和学习。
2.作业管理 process
目标
静态查看进程ps
ps aux | less
在给出的命令输出中,每个字段的含义如下:
- USER:该字段显示正在运行进程的用户名。
- PID:该字段显示进程的唯一标识符(Process ID)。
- %CPU:该字段显示进程在特定时间间隔内使用的CPU资源的百分比。
- %MEM:该字段显示进程占用物理内存的百分比。
- VSZ:该字段显示进程的虚拟内存大小(Virtual Memory Size),以KB为单位。
- RSS:该字段显示进程占用的实际物理内存大小(Resident Set Size),以KB为单位。
- TTY:该字段显示与进程关联的终端设备(如果有)。
- STAT:该字段显示进程的状态,描述了进程当前的状态信息。(R-run、T-stop、S-sleep、 Z-zombie)
- START:该字段显示进程启动的时间或日期。
- TIME:该字段显示进程在CPU上消耗的累计执行时间。
- COMMAND:该字段显示正在运行进程的命令或程序的名称。 这些字段提供了有关正在运行的进程的关键信息,包括进程的标识符、资源使用情况、状态、启动时间等。通过观察这些字段,可以获取有关系统中进程的概览和详细信息。
ps aux --sort %cpu 升序
ps aux --sort -%cpu 降序
查看进程的父子关系
ps -ef
自定义行数
动态查看进程top
实时任务管理器
在Linux系统上,top是一个命令行工具,用于显示系统中当前正在运行的进程、系统负载和资源使用情况。当你运行top命令时,它将显示一个实时更新的进程列表和相关的系统统计信息。以下是top命令中常用的一些内部指令:
- q:退出top命令。
- h:显示top命令的帮助信息,列出所有可用的快捷键。
- k:通过输入要终止的进程的PID来终止一个进程。
- r:修改进程的优先级。输入要修改的进程的PID,然后输入新的优先级值。
- 1:切换到全局模式,显示每个CPU核心的详细信息。
- l:切换显示平均负载信息。
- t:切换显示进程运行时间信息。
- m:切换显示内存使用情况。
- c:切换显示命令名的绝对路径。
- i:切换显示空闲线程和总线程数。
- e:切换显示事件模式,显示与系统事件相关的信息。
- W:将当前的布局设置保存为默认布局,在下次运行top时仍然使用该布局。 这些内部指令可以在top命令运行时按下相应的键来执行。你也可以在命令行中使用man top来查看更详细的top命令帮助文档。
top -d 2 -p 23027是一个带有选项的 top 命令的运行参数。下面解释每个选项的含义:
- -d 2:表示每隔2秒刷新一次屏幕显示。-d 选项后面可以指定刷新时间间隔,这里的 2 意味着每隔2秒更新一次屏幕显示。
- -p 8788:指定了要监视的进程的进程ID(PID)。-p 选项后面是一个或多个进程ID,这里的 23027表示要监视的进程的PID。 综上所述,top -d 2 -p 23027命令的含义是:以2秒为间隔刷新屏幕显示,并且只监视进程ID为8788的进程的运行情况。这将只显示指定进程的相关统计信息,并每隔2秒刷新一次这些信息。
使用信号控制进程
查看内存大小的命令 free
free + k_m_g
控制进程的运行 kill
kill -9 PID
进程优先级nice
例子
先让sleep 7000 &
后台运行
然后查看
作业控制jobs(了解)
关键词介绍 foreground background
后台控制管理实例
1.观察占领前台的现象
sleep 2000
运行一个程序,当前终端无法输入。观察占领前台的现象
大部分命令行输入已经无效。
ctrl + c退出
2.运行后台程序 &
sleep 2000 &
3.ps查询所有程序
ps aux | grep sleep
4.jobs查看后台进程
5.调动后台程序至前台
ctrl +z 会停止
6.消灭后台进程 kill %
虚拟文件系统proc(了解)
ls /proc
简介 - 虚拟文件系统:采集服务器自身 内核、进程运行的状态信息
CPU - /proc/cpuinfo
内存 - /proc/meminfo
内核- /proc/cmdline