美文网首页
进程管理

进程管理

作者: Oooyzx | 来源:发表于2019-08-10 14:19 被阅读0次

进程管理
进程和线程图形简单解释
进程和线程管理
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

相关文章

  • Android性能探索

    进程管理&内存管理 进程生命周期进程优先级:前台进程可见进程服务进程后台进程 (LRU Cache & 占用内存...

  • linux 下的系统调用

    一、主要有以下模块 -进程管理-内存管理-文件管理-信号处理-进程通信-网络通信 一、进程管理 1.父进程通过fo...

  • Linux 系统管理

    视频教程:Linux系统管理 一、进程管理 进程管理 简介:进程就是正在运行的程序或者命令,进程管理就是对正在运行...

  • Linux进程管理详解(转)

    Linux进程管理详解 1.1 Linux进程管理 进程管理是操作系统的最重要的功能之一。有效率的进程管理能保证一...

  • Linux 内存笔记基础

    系统 1. 内存管理 2. 文件目录 3. IO 4. 进程管理进程创建进程控制进程通信进程同步 5. 线程管理线...

  • supervisor

    Supervisor进程管理,只能管理非daemon的进程,不能管理守护进程。 安装 yum 默认主配置文件在/e...

  • 操作系统总览

    操作系统的 操作系统的用户界面 进程管理 处理机调度 存储管理 进程和存储管理示例 windows进程和内存管理 ...

  • Linux进程管理 day22

    1.管理进程状态2.管理后台进程3.进程的优先级4.系统平均负载 一、管理进程状态 昨天主要学习了进程(正在运行的...

  • mac 安装配置supervisor

    supervisor 管理进程用的, 公司线上的进程管理就是supervisor.python 写的 , 子进程中...

  • 打通Framework与Kernel-谈谈我对进程管理的理解

    Kernel:Linux学习-进程管理与调度(一)-进程描述及其生命周期Linux学习-进程管理与调度(二)-进程...

网友评论

      本文标题:进程管理

      本文链接:https://www.haomeiwen.com/subject/rjhrrctx.html