进程管理
第五章 进程管理
5.1初始进程
每个进程都有唯一的进程标识PID,一个PID只能标识一个进程,PPID为父进程ID,需要给该进程系统分配系统资源。进程状态是指程序执行过程中的变化。进程状态随着程序的执行和外界条件的变化而转换,一般分为3类:就绪态、运行态、阻塞态。
就绪态:进程已经具备运行条件,但是CPU还没有分配过来。
运行态:进程占用CPU,并在CPU上运行。
阻塞态:进程因等待某件事发生而暂时不能运行。
5.2查看进程
5.2.1静态查看进程
ps命令:可以查看静态进程,仅仅是捕捉某一个瞬间某一个进程的状态,类似于给进程制作快照。
ps aux命令:查看当前目录的进程

“ps aux --sort-%cpu”命令可查看进程按CPU占用百分比的降序排列

“ps-ef”命令可查看UID、PID、PPID

“ps axo”命令可自定义显示字段

cat、pidof、pgrep命令可查看进程PID

5.2.2动态查看进程
top命令:可以实时动态地显示进程(进程信息分为上下两部分,上面为整体信息,下面为每一个进程的信息。系统默认更新时间为3秒,也可以按回车键立即更新。)

top命令后添加参数“-d”可以设置刷新时间,以秒为单位。

添加“-p”参数可以指定查看一个或多个进程的动态信息。

5.3信号控制进程
5.3.1kill命令
"kill -l"命令:终止指定进程的运行

常用信号:

5.3.2killall命令
killall命令可以用于终止某个指定名称服务所对应的全部进程。
5.4进程优先级
5.4.1使用top命令查看nice级别

5.4.2使用ps命令查看nice级别

5.5作业控制
foreground:前台进程是在终端中运行的命令,该终端为进程的控制终端。前台进程接收键盘产生的输入和信号,并允许从终端读取或写入到终端。
background:后台进程没有控制终端,不需要终端的交互。
创建两个sleep进程,其中sleep 800在前台运行,sleep 900在后台运行(&为后台符)。在前台运行的进程,可使用ctrl+c组合键暂停;在后台运行的进程,不能使用ctrl+c组合键结束该进程。

创建两个sleep进程,sleep 7000在后台运行,sleep 8000在前台运行,在前台运行的进程,可使用ctrl+z组合键暂停。


学习心得
在关于Linux进程管理的学习过程中,我深刻地认识到了进程是操作系统中非常重要的概念。进程是指正在运行的程序的实例,它包含了程序代码、数据以及运行时的状态等信息。进程管理是操作系统中的一个重要模块,它负责管理进程的创建、调度、终止等操作。在本次学习中,我学会了使用一些命令来管理进程,比如ps、top、kill等。其中,ps命令可以列出当前系统中的所有进程,包括进程的PID、运行状态等信息。top命令可以实时查看系统中正在运行的进程的CPU、内存使用情况等信息。kill命令可以用来终止指定的进程。同时我对进程优先级也有了更深入的了解。进程优先级是操作系统用来决定各个进程在竞争CPU资源时的优先顺序的一种机制。我了解到Linux系统中,进程的优先级是通过nice值来表示的,nice值越小,优先级越高。总之,通过本次学习,我对Linux进程管理方面的知识有了更全面的掌握。我明白了进程管理是操作系统中非常重要的一部分,它涉及到系统的稳定性、性能等方面。这使我对理解操作系统的工作原理和提高系统管理能力都有很大帮助。
浙公网安备 33010602011771号