进程管理

2019-08-10  本文已影响0人  Oooyzx

进程管理
进程和线程图形简单解释
进程和线程管理
VIM编辑
Linux 系统资源信息的获取
获取 Linux CPU 信息
软件包管理
oh-my-zsh
电脑上的容量和速度

进程和线程:

  1. 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。
  2. 进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时,它才能成为一个活动的实体,我们称其为进程。
  3. 通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。
  4. 线程和进程的区别在于,子进程和父进程有不同的代码和数据空间,而多个线程则共享数据空间

线程与进程的区别归纳:

a.地址空间和其它资源:进程间相互独立,同一进程的各线程间共享。某进程内的线程在其它进程不可见。
b.通信:进程间通信IPC,线程间可以直接读写进程数据段(如全局变量)来进行通信——需要进程同步和互斥手段的辅助,以保证数据的一致性。
c.调度和切换:线程上下文切换比进程上下文切换要快得多。
d.在多线程OS中,进程不是一个可执行的实体。

ps查看进程(静态)

ps aux 查看所有的进程信息

image.png

ps aux 输出各字段意义:
USER: 该 process 属于那个使用者帐号的?
PID : 该 process 的程序识别码。
%CPU: 该 process 使用掉的 CPU 资源百分比;
%MEM: 该 process 所占用的实体内存百分比;
VSZ : 该 process 使用掉的虚拟内存量 (KBytes)
RSS : 该 process 占用的固定的内存量 (KBytes)
TTY : 该 process 是在那个终端机上面运行,若与终端机无关则显示 ?,另外, tty1-tty6 是本机上面的登陆者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
STAT: 该程序目前的状态,状态显示与 ps -l 的 S 旗标相同 (R/S/T/Z)
START: 该 process 被触发启动的时间;
TIME : 该 process 实际使用 CPU 运行的时间。
COMMAND:该程序的实际指令为何?

S:代表这个程序的状态 (STAT),主要的状态有:
========================================
R (Running):该程序正在运行中;
S (Sleep):该程序目前正在睡眠状态(idle),但可以被唤醒(signal)。
D :不可被唤醒的睡眠状态,通常这支程序可能在等待 I/O 的情况(ex>打印)
T :停止状态(stop),可能是在 jobs 控制(后台暂停)
Z (Zombie):僵尸状态,程序已经终止但却无法被移除至内存外。
========================================

ps 相关应用:

[root@localhost ~]# ps -ef |grep bash
root       1214    679  0 22:01 tty1     00:00:00 -bash
root       1937   1924  0 23:42 pts/0    00:00:00 -bash
root       1956   1937  0 23:45 pts/0    00:00:00 grep --color=auto bash
当前进程号:
[root@localhost ~]# echo $$
1937

两台终端:
[root@localhost ~]# ps -ef |grep cat
root       2021   2005  0 23:51 pts/0    00:00:00 cat
root       2024   1966  0 23:51 pts/1    00:00:00 grep --color=auto cat
[root@localhost ~]# kill -9 2021

[root@localhost ~]# cat
Killed

管道:
[root@localhost ~]# echo "hello oyzx" |cut -d' ' -f1
hello

正则表达式:
[root@localhost ~]# echo "cat"|grep [cd]at
cat
[root@localhost ~]# echo "dat"|grep [cd]at
dat
[root@localhost ~]# ps aux |grep [v]im
root       3131  0.1  0.5 151512  5364 pts/3    S+   03:28   0:00 vim a.txt
[root@localhost ~]# kill -19 3131
=============================
lfsjdfhsldfhsj:wq
adfasdf
[1]+  Stopped                 vim a.txt
[root@localhost log]#  jobs
[1]+  Stopped                 vim a.txt

top动态查看进程(动态)

  • top -d 5 //5秒自动刷新查看cpu使用情况


    image.png
  • top -n 1 //截取1s进程状态


    image.png

signal信息量:

image.png
上一篇 下一篇

猜你喜欢

热点阅读