Linux下,进程的相关知识,进程的来源,去向,状态,静态查询命令ps

一、进程主要组成部分
0、没有执行的程序就是普通文本文件,将程序运行起来以后就是进程,进程又有以下组成部分
1、一个或多个文件
2、被分配内存的地址空间
3、有权限限制
4、程序代码的一个或多个副本(又叫执行线程)
5、拥有状态,运行,睡眠,卡死啥的

二、文件变成进程
文件变成进程,从外存到内存
外存:U盘,磁盘,便宜且可永久保留的硬盘,速度慢
内存:速度快价格高

三、进程消耗的资源
CPU通过时间分片达到了多线程的效果,
将程序文本从外存硬盘放到内存中,
1、占用内存空间
2、占用CPU的处理时间,
3、可能占用网络,
4、分配个名字PID以及其他信息,

四、进程的常用信息
1、PID,PPID,pid是进程号,ppid是父进程号,进程的唯一标志,杀进程时需要,通过ps -ef查看
2、当前进程状态
3、内存分匹配情况
4、CPU和已花费的实际时间
5、用户ID,这个可以决定进程的特权
6、进程名

五、进程有状态Stat
1、S睡眠Sleep,没有被使用的进程会生成一个子进程并进入休眠,子进程保持running
2、R运行状态Running,
3、Z未响应,僵尸进程Zombie
4、T停止Stop,和Sleep重合所以取T


六、静态查询进程命令ps,process show,以及三个参数aux和排序

1、参数和排序
ps a//显示现行终端机下的所有程序
ps u//以用户为主的格式来显示程序状况
ps x//不以终端机划分
ps a --sort 列名
比如ps a --sort %cpu或者ps aux --sort pid,列名前面加-是降序,不加是升序。

2、命令和选择查看行
ps aux
进程数量太多不好全部看,修改命令为
ps aux|head -3
只看前三行

3、静态查询,表示其查询是只查询执行命令的那一刻的服务器进程,而不能像Windows下的任务管理器那样保持动态查看。

上面看到Linux下ps得到的数据是不会发生改变的。

上面看到Windows下的任务管理器是可以保持动态查看和改变数值的。

七、动态查看进程命令,top,就像Windows里面的任务管理器

1、top命令执行结果中的头五行信息的大致内容:

第一行:任务名,系统时间,CPU占用率
第二行:任务数以及状态统计
第三行:CPU占用率
第四行:内存空间利用情况。K_M_G
第五行:交换分区利用情况(硬盘的一部分空间,存放常用数据)

2、top命令的参数:
top -d num -u username -p pid
//-d表示top命令每过num秒刷新一次,避免频繁刷新消耗资源
//-u表示只显示某个用户的进程信息
//-p表示查找某个进程号为pid的进程信息

使用完top以后直接按下q就可以退出top,推出后top停止

3、在top中杀进程
(1)在top命令下想要kill进程,就输入k,top会弹出pid to signal/kill:

(2)然后输入想要杀死的进程的进程号,回车,就可以杀死特定进程了。
(3)如果按下了k但又不想杀死进程了,就按esc,那段话就会消失。

Linux下,进程的相关知识,进程的消耗,常用信息,状态,静态查询命令ps,动态查询命令top相关推荐

  1. 好记性不如烂笔头-linux学习笔记4apache相关知识

    好记性不如烂笔头-linux学习笔记4apache相关知识 apache 启动有2种模式 1是prefork模式,每个进程对应一个线程,如果是比较稳定的平台,那么prefork模式是worker模式 ...

  2. linux下git的相关操作指令

    linux下git的相关操作指令 git版本管理工具 1.克隆仓库git clone "url" 2.上传2.1标记:告诉git工具需要管理那些文件了git add [filena ...

  3. linux下使用syslog日志调试程序快速的调试代码信息的过程

    linux下使用syslog日志调试程序快速的调试代码信息的过程 环境背景:ubuntu 20.0.4 开发环境:QtCreator 功能:查看函数是否调用成功:函数调用执行的过程等等: 1.使用头文 ...

  4. Linux基础学习系列:对于fork()函数的学习,及进程创建相关知识

    fork()函数 :由当前进程再生成一个进程出来 #include <sys/types.h> #include <unistdh> pid_t fork(void); 返回: ...

  5. ASP.NET Core Linux下为 dotnet 创建守护进程(必备知识)

    前言 在上篇文章中<ASP.NET Core Docker部署>中介绍了如何在 Docker 容器中部署我们的 asp.net core 应用程序,本篇主要是怎么样为我们在 Linux 或 ...

  6. linux祖先进程,Linux下的几种特殊进程

    1.Linux的登录环境 Linux是一个多任务多用户的操作系统,其设计初衷: 就是要达成多用户同时使用单个计算机大的任务. 多用户:早期计算机资源紧张,为了让更多的人都可以使用. 多任务:服务于多用 ...

  7. Linux下的LWP(轻量级进程)、进程 、 线程、用户级线程、内核线程

    一.定义 再看正文之前我要先强调一下几点: 1. Linux中没有真正的线程,但windows中确实有线程 2. Linux中没有的线程是由进程来模拟实现的(又称作:轻量级进程) 3. 所以在Linu ...

  8. linux cron 进程查询,Linux下通过配置Crontab实现进程守护

    我们在实际运维过程中,经常会出现某一个程序(如tomcat,perl等)的进程无缘无故就在服务器上消失了,这样的话第一我们需要投入精力去分析它为什么会消失,第二还需要配置相关检查人员,比较耗费时间. ...

  9. linux下查看网络连接、进程、服务

    实验环境:ubuntu2020,centos,以下命令适用不限于ubuntu和centos 一.查看网络连接 netstat netstat 是一个告诉我们系统中所有 tcp/udp/unix soc ...

最新文章

  1. 警告!别再使用 TIMESTAMP 作为日期字段~
  2. Xamarin Android开发实战(上册)
  3. poj 3164(最小树形图)
  4. Oracle拆分字符串函数与执行调用
  5. LOJ.6435.[PKUSC2018]星际穿越(倍增)
  6. java编程 内存_Java编程技术之浅析JVM内存
  7. 关于DateTime和String转换的容易犯得错误
  8. Apache + Tomcat 配置多个应用
  9. npm 全局安装vuecli报错_前端脚手架CLI生成模版命令工具(包括,npm包的发布,脚手架的搭建,注意事项,优化等)...
  10. python格式化输出区别_python格式化输出的区别
  11. pt5 mysql预处理_技术分享 | MySQL 监控利器之 Pt-Stalk
  12. 简单的网络协议:TCP/UDP HTTP/HTTPS
  13. BarTender数据批量打印软件的入门操作
  14. gitlab太占内存怎么办?一招帮你解决这个问题
  15. 2019年9月全国计算机二级准考证打印,2019年9月计算机二级准考证打印入口公布...
  16. 基于Redis的分布式链家二手房房源数据爬虫系统 毕业设计
  17. python回合制游戏教程_3. Molten从零开始做独立游戏-python学习
  18. kubernetes日志架构PLG(promtail+loki+grafana)
  19. 微信小程序 | 自动定时结束录制
  20. ROS使用介绍——rosbag

热门文章

  1. 对不起,又让你失望/额头生出第三只眼,堕天... ...
  2. 【软件测试】2021年软件测试领域常用工具总结(1)-抓包工具与单元测试工具篇
  3. 昂达vi40精英版刷Linux,昂达VI40精英版 中文Recovery卡刷教程
  4. 数据库优化问题【刘新宇】
  5. IRDye 800CW 红外染料IRDye 800CW NHS Ester/Maleimide/Carboxylate/Carboxylic acid
  6. 为了在nano上进行远程连接
  7. 如何配置管理员权限并删除文件
  8. 华为笔试题-素数伴侣
  9. NXP SPIFI(QSPI)应用详解与程序固件分散加载
  10. Filebeat日志采集器实例