首页 > 系统相关 >Linux-进程管理

Linux-进程管理

时间:2024-07-29 18:56:10浏览次数:14  
标签:查看 管理 命令 线程 nginx Linux 进程 运行

文章目录

 

1.进程

1.1 定义

1.2 进程和线程的区别:

2.静态查看进程

3.动态查看进程

3.1查看进程

3.2 杀死进程

3.3 作业控制

总结

1.进程

1.1 定义

进程是已启动的可执行程序的运行实例,是程序运行的过程,动态的,有生命周期及运行状态,是一个正在运行的程序,包括主进程和子进程。

一个进程中至少包括一个线程。

1.2 进程和线程的区别:

1.进程是独立的执行实体,拥有独立的资源,而线程是在进程内部运行的,共享进程的资源。
2.创建和销毁进程的开销较大,而线程的创建和销毁相对较轻量级。
3. 进程间的切换开销较大,线程间的切换开销较小。
4.进程之间通信和同步需要使用操作系统提供的机制,线程间通过共享内存等方式进行通信和同步。
5.进程间相互独立,一个进程的崩溃不会影响其他进程,而线程共享同一个进程的资源,一个线程的错误可能导致整个进程崩溃。

简而言之,进程是独立的,资源独立,切换开销大;线程是共享的,资源共享,切换开销小,一个线程的损坏会导致进程的崩溃,进程崩溃不会影响其他进程。

2.静态查看进程

命令1:ps aux

参数解释:
ps :process nsapashot
a 只能查看系统里面运行的所有终端进程
u 显示进程拥有者
x 显示系统内所有进程
f 显示进程之间的父子关系

nice值:表示进程优先级,nice值越高,表示优先级越低

修改优先级:renice -n nice值 pid

[root@localhost ~]# ps aux

USER:     #运行进程的用户
PID:   #进程ID
%CPU:   #CPU
%MEM:   #内存占用率
VSZ        进程占用的虚拟内存大小。
RSS     占用的物理内存大小
STAT:  #进程状态  ---了解

?    表示没有占用终端
R     运行
S     可中断睡眠 Sleep
D    不可中断睡眠
T     停止的进程 
Z     僵尸进程
X    死掉的进程
START:    #进程的启动时间
TIME:    #进程占用CPU的总时间
COMMAND: #进程文件,进程名

 进程状态--了解
Sl    以线程的方式运行
Ss  s进程的领导者,父进程
R+    +表示是前台的进程组
S< <优先级较高的进程     
SN  N优先级较低的进程

查看tty,查看当前所在终端:
[root@linux-server ~]# tty
? 表示这个进程开启的时候没有占用终端

 命令2:ps -ef

参数解释:
-e 显示所有进程
-l 长格式显示
-f 完整格式

 

UID       用户ID
PID       进程ID
PPID      父进程ID
C         CPU占用率
STIME     开始时间
TTY       开始此进程的TTY----终端设备
TIME      此进程运行的总时间
CMD       命令名

 指定查看单个进程:

ps -ef | grep nginx        #查看nginx的进程

ps -ef | grep nginx | grep -v grep        #查询结果不显示grep一行的信息

获取pid: 

命令:pgrep、pidof

pgrep nginx        #获取nginx的pid

pidof nginx

查看端口:

命令1:ss -nplt | grep pid

n:显示协议,端口号

p:显示服务名称

t:tcp协议

命令2:

#查网络进程和正在监听的端口
[root@linux-server ~]# netstat -lntp
参数详解:
-a  显示全部的进程
-u  显示udp
-n  以数字的形式显示协议名称
-t   tcp
-p:显示进程的名称和pid
-l :只显示正在被监听的端口

命令3:

yum install lsof  #安装软件包

 lsof -i :22   #端口号,这能查看带端口的进程

 

 #注意:端口号只有整数,范围是从0 到65535
参数解释:
FD:文件描述符,应用程序通过文件描述符识别该文件。
DEVICE:指定磁盘的名称
SIZE:文件的大小

常用小命令:

常用命令:w,who,whoami

[root@linux-server ~]# w  #看已经登陆到终端的进程信息,远程登陆会有ip 地址

部分参数解释:
USER –登录用户名.
TTY –登录用户使用的终端名.
FROM –登录用户来源的主机名或IP地址.
LOGIN@ –用户登录时间.
WHAT –用户当前的进程及选项/参数。

 查看当前CPU负载:uptime

查看内存使用:free  -m

查看系统的版本和内核: 

cat /etc/redhat-release  #查看版本或cat /etc/centos-release

uname -a #看查正在运行的内核版本

uname -r  #查看内核版本

 修改主机名: hostnamectl set-hostname  xxxx

查看主机名: hostname  

3.动态查看进程

3.1查看进程

命令:top ,htop(需要安装)

动态显示进程信息,每三秒钟刷新一次

[root@linux-server ~]# top
h|? 帮助
> 往下翻页
< 往上翻页
M 按内存排序
P 按cpu排序
q 退出   
z 彩色显示
W 保存
=====================================
PR   优先级
VIRT 进程使用的虚拟内存总量,单位kb。
RES  进程使用的、未被换出的物理内存大小,单位kb。
SHR  共享内存大小,单位kb

us: 用户态进程占用cpu
ni: nice值
id: cpu空闲率
wa: cpu等待,等待输入/输出的进程占用的 CPU 百分比。如果使用率过高,表示硬盘该换了
hi:硬中断,请求插队
si:软中断
st:停止

3.2 杀死进程

命令:kill、pkill

语法:kill  信号值  pid

参数:kill  -l   #查看所有信号

-1   HUP  重新加载进程或者重新加载配置文件,PID不变   
-9   KILL 强制杀死
-15  TERM 正常杀死(这个信号可以默认不写)
-18  CONT 激活进程
-19  STOP 挂起进程

进程状态解释--了解:
+:表示运行在前台的进程
S+:休眠状态
T+:暂停,挂起状态
s:父进程

3.3 作业控制

作业控制指的是控制正在运行的进程的行为。比如,用户可以挂起一个进程或者放到后台去运行,等一会儿再继续执行该进程。

命令:sleep:把程序放到后台运行

           jobs:查看后台的工作号

           bg  %[ 工作号 ]或bg  [ 工作号 ]:把前台的程序放到后台运行

          fg  %[ 工作号 ]:把后台的程序放到前台运行

          

Ctrl+z:让放在后台的程序暂停


总结

本文介绍了怎样查看进程信息,包括静态查看进程、动态查看进程及常用的小命令等。

标签:查看,管理,命令,线程,nginx,Linux,进程,运行
From: https://blog.csdn.net/weixin_64502313/article/details/140732151

相关文章

  • Linux-存储管理
    文章目录1.硬盘1.1初识硬盘2.磁盘分区2.1硬盘设备命名2.2磁盘分区方式2.3磁盘分区3.fstab开机自动挂载4.文件系统4.1分类4.2概念5.逻辑卷LVM5.1LVM管理5.2LVM制作5.3逻辑卷扩容5.4逻辑卷缩容6.交换分区7.mount详解8.raid--磁盘阵列8.1RA......
  • htop [非内部命令]一个互动的进程查看器,可以动态观察系统进程状况
    htop[非内部命令]一个互动的进程查看器,可以动态观察系统进程状况补充说明htop命令是Linux系统中的一个互动的进程查看器,一个文本模式的应用程序(在控制台或者X终端中),需要ncurses。与Linux传统的top相比,htop更加人性化。它可让用户交互式操作,支持颜色主题,可横向或纵向滚动浏......
  • Java计算机毕业设计酒店客房管理信息系统(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着旅游业的蓬勃发展,酒店行业面临着前所未有的挑战与机遇。传统的酒店客房管理方式往往依赖于人工记录与操作,效率低下且易出错,难以满足现代酒店业对......
  • 解锁智慧城市奥秘:免费数字孪生平台如何重塑城市管理新生态
    在这个日新月异的时代,城市不仅是人们生活的空间,更是科技创新与智慧融合的前沿阵地。随着物联网、大数据、云计算等技术的飞速发展,构建未来城市的智能蓝图已不再是遥不可及的梦想。 数字孪生,作为物理世界与数字世界深度融合的桥梁,通过高精度建模与实时数据分析,让城市的每一个角......
  • 做Spring Boot图书后台管理项目遇到分页报错的问题
    一、问题    实现分页功能时,点击第几页或者下一页时报错404二、分析问题   1、 使用的是MyBatisPlus框架,实现分页功能需要拦截器,可能是没有添加拦截器。检查是否添加配置类并添加拦截器PageConfiguration配置类/***配置类,用于SpringBoot项目......
  • SSM党员信息管理系统
    摘要从20年代开始,计算机疯狂的出现在人们的生活以及工作当中,成为人们生活、工作的好帮手,计算机深入到每家每户当中,网络办公,网络教学更是替换了传统手工记录管理的方式,使用计算机办公可以不必局限于固定的时间和固定的地点,通过计算机系统可以轻松实现跨区域的交流。随着高等......
  • 【Linux中Shell的功能】
    一、Shell概念Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。Shell编程跟JavaScript、php编程一样,只要有一个......
  • Ansible管理密码库文件
    ansible可能需要访问密码或API密钥等敏感数据,以便能配置受管主机。通常,此信息可能以纯文本形式存储在清单变量或其他Ansible文件中。但若如此,任何有权访问Ansible文件的用户或存储,这些Ansible文件的版本控制系统都能够访问此敏感数据。这存在安全风险。 使用Ansible随附的Ansib......
  • Java计算机毕业设计农产品种植管理及溯源系统(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着消费者对食品安全与品质要求的日益提高,农产品种植管理及溯源系统成为了现代农业发展的重要趋势。传统农产品种植过程中,信息不对称、管理粗放、追......
  • Java计算机毕业设计科研项目经费管理系统(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着科研活动的日益增多和复杂化,科研项目经费的管理成为了科研机构管理中的重要环节。传统的手工或简单电子化管理方式已难以满足当前科研项目经费的......