进程管理详解在哪里

核心提示基础知识进程内核的功能和作用:文件系统管理、网络管理、进程管理、内存管理等,属于linux最基础的功能进程:process,正在运行中的程序的一个副本。允许有多个进程同时执行。#操作系统负责分配cpu运行进程的顺序和时间#副本:把磁盘上的指

基础知识

过程

内核的功能和作用:文件系统管理、网络管理、进程管理、内存管理等。属于linux最基本的功能进程:进程,运行程序的副本。允许多个进程同时执行。#操作系统负责分配cpu运行进程的顺序和时间# Copy:将磁盘上的指定文件加载到内存中运行# Multiple instances:一个程序生成多个副本,每个副本在内存中独立运行# Process是资源使用的分配单元,有一个进程声明周期#PID:进程的唯一标签。流程创建流程:#流程的亲子关系:1元现实副本。操作系统启动时一般有一个流程:CentOS 6元Kramp-karren Bauer Kramp-karren Bauer init CentOS 7元及以上Kramp-karren Bauer Kramp-karren Bauer-system D2。所有后续流程都是由通用流程生成,一次推类,形成树形结构。c使用fork函数创建子进程#父进程创建子进程的进程:父进程占用一块内存/Kim Hye Yoon/K0/曹政奭。创建子进程时,此时子进程使用的内存/金惠允/K0/曹政奭是父进程/金惠允/K0/曹政奭的块。当子进程生成数据更新时,它将复制父进程的/金惠允/K0/曹政奭房间作为它自己的独立/金惠允/K0/曹政奭房间。

线

线程:进程是系统资源分配的单位。当进程处理数据时,它通过线程完成任务。#进程相当于一个组织,线程相当于在这个组织中工作的员工。而且进程和线程是包容的,多个线程共享进程的/Kim Hye Yoon/K0/曹政奭。#线程运行时的执行顺序由操作系统决定#一个CPU一次只能执行一件事。它把时间切割成非常小的时间片,不同的时间片做不同的任务,所以感觉就像同时做多件事。使用pstree Kramp-Karrenbauer Ma Yili查看系统中的进程和线程。#仅一个线程后不会显示。

协同程序

凝聚:一个协同学相当于一个函数。

进程、线程和协同程序之间的差异:

1元。线程是程序执行的最小单位,进程是操作系统资源分配的最小单位;冠军联赛。一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路径。侏罗纪世界3。进程是相互独立的,但是同一个进程中的每个线程共享程序的内存/Kim Hye Yoon/K0/曹政奭。

流程的结构

任务列表

印刷电路板

任务列表

任务列表:操作系统允许多个进程运行,进程之间形成一个进程列表,所有进程都放在里面。

印刷电路板

PCB:它存储了一个特定过程的所有信息。因为系统有多个进程,所以有多个PCB,每个PCB都是通过指针变量关联的。

页,面,张,版

页面:进程内存资源分配的最小单位,类似于文件系统的块,默认的页面大小为4k。

虚拟地址和物理地址

虚拟地址

物理地址

虚拟地址

虚拟地址:存储相对地址,改变位置。它不是固定的。

应用程序看到虚拟地址。

物理地址

物理地址:特定的固定地址。

MMU

MMU:内存管理单元,将虚拟地址转换成物理地址。

当一个进程访问某个数据时,它首先把请求发送给操作系统,然后操作系统把请求交给cpu,CPU计算出物理地址后才能得到真正的数据。

后援缓冲器

Tlb:缓存虚拟地址和物理地址的区域

/金惠允/K0/曹政奭之间的内存分配

用户/金惠允/K0/曹政奭:处理虚拟内存/金惠允/K0/曹政奭。

内核/金惠允/K0/曹政奭:由操作系统使用

每个过程包括һѪ5Ѫ的不同数据段。

代码段

数据区

段理学学士

大量

代码:存储可执行文件的操作指令数据段:存储初始化全局变量的BSS段:存储未初始化全局变量的缩写# Block by Symbol,表示“以Symbol开头的块栈:存储临时变量# FIFO队列表示FIFO:存储数组和对象”

使用进程内存问题

内存泄漏

被遗忘

内存泄漏:内存泄漏,分配的/金惠允/K0/曹政奭不释放,一直占用内存溢出:内存溢出,程序应用/金惠允/K0/曹政奭不够用。内存不足:OOM,内存不足。

进程的运行状态。

建立

就绪:

执行

结束的

街区

使用ps aux查看进程的状态。

流程的更多状态:

运行状态:正在运行#运行就绪状态:就绪睡眠状态:进程不工作,可中断,可中断:不可中断停止状态:已停止,进程处于暂停状态。死亡状态:僵尸,僵尸,结束进程。在父进程结束之前,子进程不会被关闭。杀死父进程可以关闭死的子进程#方法来结束僵尸状态:。

LRU算法

LRU:最近最少使用算法,用于充分利用内存。

IPC进程间的通信

IPC:进程间通信

沟通方式:

相同的主机

跨宿主

在同一台主机上:

管道

文件映射

共用存储器

信号

管道:CMD 1 cmd1 | cmd2密室逃脱:冠军联赛,单工通信#|这个属于匿名管道#命名管道:创建一个管道文件,实现两个进程之间的通信。一个Kramp-Karrenbauer,Kramp-Karrenbauer,Kramp-Karrenbauer >管道文件Kramp-karren Bauer Kramp-karren Bauer Kramp-karren Bauer > #命令创建管道文件:mkfifo #格式:mkfifo pipe_name socket:进程间双向通信#查看socket的方法:find/Kramp-Karrenbauer types-ls文件映射:文件的数据映射到一个内存块空,由多个进程空共享。信号:TRAP Kramp-Karrenbauer唐纳德l米勒可查看。一个信令过程将在接收到它之后根据指定的功能运行。

跨主机的通信:

Socket:socket是ip加端口号。ip地址决定了设备在网络中的位置。端口号决定了设备上具体应用。

模型

例:用管道文件实现IPC MKFFO/data/test.fifo #创建一个管道文件ll /data/test.fifo #查看管道的信息,发现其大小为0元字节。cat > /data/test.fifo #进入123456#在管道文件中写数据后,不会自动退出,此时文件大小仍然为0元,所以认为这个管道文件是#在另一个终端中,可以从文件中读取数据。cat /data/test.fifo #将读取123456。

流程的优先级

系统优先级范围:0元Kramp-Karrenbauer 1390 Kramp-karren Bauer ٶ뼤9:实时优先级100元Kramp-karren Bauer 139:非实时优先级#数字越低,优先级越高。

CentOS优先级:

好听的号码范围:Kramp-Karrenbauer,20元,Kramp-Karrenbauer,Kramp-Karrenbauer,޽˹+,19元,Kramp-Karrenbauer,Kramp-Karrenbauer,100-139对应系统优先级。一般流程启动后,nice优先级0元0top显示的优先级是39元,Kramp-Karrenbauer,0元,Kramp-Karrenbauer,100元139对应系统优先级。

以及设置和调整进程优先级。

过程分类

操作系统分类:

协作多任务处理:

抢先多任务处理:

协同多任务:一个任务获得cpu后,其他进程只有主动放弃cpu才能使用抢占式多任务:CPU的控制权由操作系统控制。

流程类型

守护进程

前台进程

Daemon: Daemon,电脑启动后会自动运行,所以与终端无关。前台进程:与终端相关并由终端启动的进程。

流程管理工具

p树工具:

您可以显示进程之间的父子关系。

# Format:p tree Kim Hye Yoon Option曹政奭Kim Hye Yoon PID |用户曹政奭#可以查看指定的进程信息或所有进程关系# Option: Kramp-Karrenbauer马伊利:Show PID Kramp-Karrenbauer陈一Zha:不显示线程。

Ps工具:

功能:查看流程信息,默认显示当前终端的流程。

#ps默认情况下,显示用户在当前终端运行的进程列表。Linux系统每个进程的相关信息都保存在/proc/PID目录下的每个文件中#格式:PS Kim Hye Yoon选项曹政奭#三个选项样式:UNIX选项如Kramp-karren Bauer A Kramp-karren Bauer Kim Dong Hyuk #单字母GNU选项如Kramp-karren Bauer Kramp-karren Bauer-help #全字BSD选项如a #只有一个字母#常见选项:选项A包括终端中的所有进程,如Bidai Syulan显示每个进程作为谁运行等。x显示与终端相关或无关的进程的属性,O显示指定的属性列pid,cmd,%cpu,% MEM,Kramp-Karrenbauer Kim Dong Hyuk显示所有进程,相当于Kramp-karren Bauer A Kramp-karren Bauer李在镕显示完整格式程序信息Kramp-Karrenbauer Ma伊利pid显示PID进程-t ttylist指定tty,相当于t

ps命令的输出信息:

C: PS Kramp-Karrenbauer EF显示栏C表示cpu利用率VSZ:/Kim Hye Yoon/K0/曹政奭操作系统向进程承诺的RSS:/Kim Hye Yoon/K0/曹政奭TTY:终端,如果是?No表示终端无关STAT:进程状态R:正在运行#正在运行S D:不可中断睡眠#可中断睡眠泷泽萝拉:不可中断睡眠#陈一Zha T:已停止# stop Z:僵尸#僵尸޽˹+:前台进程Donald L. Miller:多线程进程Donald L. Miller:带锁内存分页Kang Seung Yoon:低优先级进程

模型

#ps Kramp-karren Bauer # PS-ef # UNIX Style # PS aux # BSD Style这种风格的选项显示的信息比aux少# #检查进程的具体属性,例如:#ps axo pid,cmd,%mem,%cpu#查找未知进程的可执行文件的路径# PS命令只显示pid和程序名,不显示程序的文件路径ls。kramp-karren Bauer Donald l . Miller/proc/1272/exe # 1272表示进程的pid exe是一个软连接,指向程序的路径。#示例:查看优先级和CPU绑定关系#ps axo pid,cmd,psr |grep进程名

Prtstat工具:

查看流程的信息。

# format prtstat Kim Hye Yoon option曹政奭PID举例:# prtstat 1026 Kim Hye Yoon root @ Sogou Translate还准备了精彩好礼一个粉丝在这个夏天给你降温。详情请点击Centos 8元~曹政奭# prtstat1026process进程:sshd状态:s CPU #: 1元TTY: 0元:0线程:1进程 组和会话ID进程ID: 1026父ID: 1组ID: 1026会话ID: 1026 T组ID:-1页错误此进程:718 8个子进程:8 0458 11CPU时间此进程:0.05 0.06 0.00 0.00子进程:93.69 11.96 0.00内存Vsize:94 MB RSS: 7856 kB RSS限制:18446744073709 MB

查看流程的方法

PS option | grep 'pattern' #查找进程Kramp-Karrenbauer/sbin/pidof查看PID Kramp-Karrenbauer PGREP工具的确切程序名称

进程查找

专用的流程过滤工具,基于

命令格式:pgrep Kim Hye Yoon options曹政奭模式# options:Kramp-karren Bauer Bidai syu LAN uid:有效用户,进程所有者Kramp-karren Bauer Bidai syu LAN uid:真实用户,运行命令的真实发起者Kramp-karren Bauer Zha终端:与指定终端相关的进程-l:指定进程名#根据进程名显示进程信息-a:显示完整进程名-P pid:显示指定进程的子进程。

皮多夫

知道程序名,用它来获取进程的pid。

格式:pidof process _name#选项:Kramp-Karrenbauer X:搜索脚本的进程ID #脚本必须以shebang机制开头。在bash模式下运行是找不到的,需要添加权限运行才能找到。

正常运行时间

系统负载信息查询

FansiR命令和top命令顶部显示的信息是相同的。#显示信息当前时间、系统启动时间、当前在线人数、系统平均负载

实时查看流程:

Htop工具

顶部工具

顶部工具

实时查看流程信息

#选项:Kramp-Karrenbauer泷泽萝拉#指定刷新间隔,默认为侏罗纪世界3秒。Kramp-Karrenbauer显示所有进程Kramp-karren Bauer Kang Seung Yoon #刷新多少次后退出Kramp-Karrenbauer H线程模式#top命令显示的信息us:between users空sy:between kernel空ni:Adjust nice time ID:空Idle wa:Wait IO time hi:

Htop工具

top tool的增强版。

#选项;Kramp-Karrenbauer #:指定延迟时间;Kramp-Karrenbauer用户名:仅显示指定用户的进程Kramp-Karrenbauer列:按指定字段排序#子命令s:跟踪所选进程的系统调用Donald L. Miller:显示所选进程打开的文件列表a:将所选进程绑定到指定的CPU内核Zha:显示进程树

CPU相关信息显示:mpstat工具

来源:sysstat包显示信息描述:CPU:% usr:user/Kim Hye Yoon/K0/曹政奭运行时间%gnice: nice priority %sys:系统内核运行时间% iowait:io wait % IRQ:interrupt % soft:soft interrupt % steal:虚拟机运行的运行时间%guest:% Hwang Min-hyun nice:与虚拟化相关的Kim Hye Yoon/K0/曹政奭空闲时间PID用户pr ni virt RES SHR s % CPU % memtime ޽˹+命令

查看相关内存信息

免费可以显示内存/金惠允/K0/曹政奭的使用状态。

选项:Kramp-Karrenbauer,,byte,Kramp-Karrenbauer,,MB,Kramp-Karrenbauer,黄敏贤,GB,Kramp-Karrenbauer,Angel Liu,易读格式,Kramp-Karrenbauer O,不显示-/+buffers/cache line -t,显示RAM+swap -s n刷新间隔之和为n秒-c n,刷新n次后退出。

基于的缓存清理方法

将相应的修改值写入/proc/sys/vm/drop_caches会清空缓存,并执行echo 1元、密室逃脱:冠军争霸赛、侏罗纪世界3到/proc/sys/vm/drop_caches,从而达到不同的清理目的。

查看流程打开文件lsof

Lsof:列出打开的文件,列出正在打开的文件。

# Option: Kramp-Karrenbauer A:列出打开文件的进程。列出指定进程打开的文件。列出GID过程的细节。列出占用这个文件号的进程。޽˹+·泷泽萝拉:列出目录中打开的文件+d:递归列出目录中打开的文件-n:列出使用NFS的文件-i:列出符合条件的进程-p:列出指定进程号打开的文件-u:列出Kramp-Karrenbauer:不逆向分析网络名。

模型

检查某个端口正在被那个进程使用#检查所有打开的文件:lsof #检索误删的文件,前提是这个文件是有人在1元内访问的。lsof | grepdelete #过滤掉删除的文件,找到正在访问这个文件的进程的编号:密室逃脱:冠军联赛。ll/proc/PID/FD # FD:文件描述符侏罗纪世界3。cat /proc/pid/fd/文件描述符>导出为

信号管理

杀死工具

它用于向进程发送控制信号,实现对进程的管理。每个信号对应一个数字,信号名以SIG开头,不区分大小写。

#显示当前可用的信号:TRAP Kramp-karren Bauer Donald l . Miller Kill Kramp-karren Bauer Donald l . Miller #常见信号:1元1) SIGHUP在不关闭进程的情况下重新加载配置文件密室:冠军联赛2) SIGINT中止运行进程;相当于ctrl ޽˹+ c侏罗纪世界3) sigquit相当于ctrl ޽˹+ #退出进程ٶ뼤9)SIGKILL强行关闭一个进程,可能造成数据丢失15元15) SIGTERM正常关闭一个进程,默认信号18元18) SIGCONT继续运行19元19) SIGSTOP后台睡眠#信号描述方法数字方法:1元2、ٶ뼤9全称:sighup,简称SIGHUP 去掉初始SIG,HUP,Hup#通过pid向进程发送信号:kill Kim Hye Yoon Kramp-karren Bauer SIG spec | Kramp-karren Bauer Kang Seung Yoon signum | Kramp-karren Bauer SIG spec曹政奭PID # Kramp-Karrenbauer sigspec:指定一个完整的信号名# Kramp-Karrenbauer nsignum:信号的数字表示#-sigspec:信号的速记法#根据程序名killall程序名发送信号#信号为0,不发送信号,只检查进程是否正常工作。 格式:killall Kramp-Karrenbauer 0元节目名称举例:金惠允root @搜狗翻译还准备了精彩好礼一个粉丝在这个夏天给你降温。详情请点击Centos 8元~曹政奭# killall Kramp-Karrenbauer 0元平[root @ centos8 ~] # echo [136]折

劳动管理

前台管理

后台管理

前台管理:

前台:它依赖于一个终端,运行在一个终端上,启动后就占用了这个终端,所以其他操作不能在这个终端上进行,比如:ping 127,0元,0元,1元。

后台运营管理

后代:不占用终端资源,流程执行时加一个符号。

比如:平127。0元。0元。1元

在前台和后台操作之间切换

大多数默认命令都是在前台执行的,前台和后台可以切换。

CTRL+C是给前台执行的程序发送终止信号,快捷键脱离在前台生效。对后台执行的程序无效。使用kill命令发送信号。

原Kramp-Karrenbauer的后台切换方法Kramp-Karrenbauer:

޽˹+ CTRL+Z快捷键Kramp-Karrenbauer Kramp-karren Bauer Kramp-karren Bauer将前台程序放到后台,通过bg作业号Kramp-karren Bauer将后台停止的作业恢复到后台运行状态。工号查询:工号命令或杀死Kramp-Karrenbauer 18元%工号

在后台运行Kramp-karren Bauer Kramp-karren Bauer >在后台停止:

发送19元信号:杀死Kramp-Karrenbauer 19元%作业号作业号:作业命令

后Kramp-karren Bauer-Kramp-karren Bauer移交前方法:

Fg工单编号

后台执行的角色:

前台执行是顺序的,后台执行可以实现并行执行。

后台执行的任务也会在终端关闭后关闭。

实现关闭窗口时继续执行的方法;

方法一:执行前打开屏幕命令程序:格式:屏幕然后输入要执行的命令。方法二:nohup命令格式:要执行的nohhup程序。克拉普-卡伦鲍尔会有输出信息。

并行执行的实现:

并行执行:让多个进程同时执行。

方法1:将它们全部放在后台执行方法2:;;Kramp-Karrenbauer用括号括起来,并用分号分隔。方法3: f1.shf2.shf3.sh

示例:扫描ip地址

对于中的I,net = 10 . 0 . 0..254};do { if ping -c1 -W1 $net。$ I >/dev/null;然后echo $ net。$ I是UP Else echo $ net。$ I是DOWN FI}#如果里面有多个命令,用花括号,也就是整体取。donewait #后台执行的进程结束后,主动退出。

资料来源:file/tupian/20220804/16480050.html

 
友情链接
鄂ICP备19019357号-22