网站开发数据库,顶客网站和网摘网站,网站推广的英文content,免费装修设计网exit#xff08;#xff09;函数正常结束进程 man ps aux 是在使用 ps 命令时常用的一个选项组合#xff0c;用于显示系统中所有进程的详细信息。aux 不是 ps 命令的一个正式选项#xff0c;而是三个选项的组合#xff1a;a, u, 和 x。这三个选项分别代表不同的含义#… exit函数正常结束进程 man ps aux 是在使用 ps 命令时常用的一个选项组合用于显示系统中所有进程的详细信息。aux 不是 ps 命令的一个正式选项而是三个选项的组合a, u, 和 x。这三个选项分别代表不同的含义1. a•显示所有进程包括其他用户的进程。•如果没有 a 选项ps 默认只显示当前用户的进程。2. u•以用户友好的格式显示进程信息例如显示用户名而非 UID。•这个选项通常用于提供更易读的输出格式。3. x•显示没有控制终端的进程。•有些进程可能没有关联的终端这个选项确保这些进程也被列出。使用 ps aux 的效果当你使用 ps aux 时你会得到系统中所有进程的详细列表包括以下信息•USER进程所有者的用户名。•PID进程标识符。•%CPU进程占用的 CPU 百分比。•%MEM进程占用的内存百分比。•VSZ进程的虚拟内存大小。•RSS进程的常驻集大小实际占用的物理内存。•TTY与进程相关的终端。•STAT进程的状态例如 R 表示运行S 表示睡眠Z 表示僵尸状态等。•START进程启动的时间。•TIME进程占用 CPU 的时间。•COMMAND进程的命令行。
ps 是一个在 Unix 和类 Unix 系统如 Linux 和 macOS中常用的命令行工具用于报告当前系统中进程的状态信息。ps 命令可以帮助用户查看系统中正在运行的进程列表这对于系统管理和故障排查非常有用。process stat
ps -elf 是一个在 Unix 和类 Unix 系统如 Linux 和 macOS中用于显示进程信息的命令行工具 ps 的一个特定选项组合。这个命令用于列出所有进程的详细信息并以长格式long format输出。选项解释•-e显示所有进程包括其他用户的进程。•-l以长格式long format显示进程信息提供更多详细信息。•-f显示完整的命令行包括进程的父进程 PID 和执行的命令。 fork创建子进程 输出重定向 killall -9 a.out
删掉父进程子进程由前台运行转为后台运行会被init(64位)收养
删掉子进程会转变为僵尸态,当父进程结束了子进程会瞬间被init收养并查看销毁 并发: 某一时刻同时发生 正在执行的程序 ---进程 (动态) 程序 ----加载到内存去运行--- 进程 进程是 程序运行的实体。
进程:(进行中的程序)-正在运行的程序 (动态的) ---内存 程序的一次执行过程 程序 -- a.out (可执行程序) ---静态的
程序源代码 程序 加载 到内存 运行起来 成为了 进程。 程序 --- ./a.out ---- 进程 栈 堆 静态区 字符串常量区 代码区
cpu的性能 操作系统 //多道程序 //单道程序 程序1-| 程序2-|--- [CPU]-- 程序3-| 进程1-| 4G空间 进程2-|--- [CPU]-- 进程3-| //CPU --- 单核的CPU //宏观并行 微观串行 //并发 --- 同一时刻 同时发生 进程概念: 描述 记录 程序运行过程中的 动态信息 一个程序 可以 对应到多个进程 程序 变成 进程? [栈 ] [堆 ] [静态区(全局区)] //data --已初始化的 全局变量 或 静态变量 //bss --未初始化的 全局变量 或 静态变量 [字符串常量区 ] [代码区 ] //text (正文) --代码段 ./a.out ----- 进程 (开辟的) 并发: 某一时刻同时发生 正在执行的程序 ---进程 (动态) 程序 ----加载到内存去运行--- 进程 进程是 程序运行的实体。 程序中有啥: 程序 数据代码 linux: 程序 bss --- 未初始化的数据 | data --- 初始化了的数据 | 静态区 | ---数据 text --- 正文段(代码段)
程序 ./a.out
进程: (占用 cpu 内存相关的资源 IO资源(屏幕键盘))
栈 堆 //程序运行过程中动态的内存 bss --- 未初始化的数据 | data --- 初始化了的数据 | 静态区 | ---数据 text --- 正文段(代码段) 进程是程序执行和资源管理的最小单位。//? ---线程
32位的平台 4G空间 (4G的虚拟地址空间(逻辑上的))
用户空间 [0-3G] //用户 3G --------------------- 内核空间 [3G-4G] //操作系统 1G mmu (Memory Management Unit) 为啥需要进程 管理 51 cpu
操作系统来说? | V CPU (分时 多核 ) 管理这些运行的程序(进程) 微观串行 宏观并 linux 怎么管理进程 PCB (process control block)//账本 信息登记表 程序角度:
task_struct { PID, //进程标识符 PPID, //父进程ID号 parent 当前工作路径 //chdir umask //0002 进程打开的文件列表 //文件IO中有提到 信号相关设置 //处理异步io ---段错误 用户id组id 进程资源的上限 } 户口信息: //父子关系 进程的一生: 创建进程 执行任务 (1).跟父进程相同的任务 比如: 淘宝 fork (2).有自己的任务要做 比如: shell执行命令 fork exec 进程结束 exit() (1).孤儿进程 --- 没有父亲 (2).僵尸进程 --- 有父亲但是自己先挂了 1.进程的含义? 进程是一个程序执行的过程会去分配内存资源cpu的调度 pcb 是一个结构体Process Control Block print circuit board struct task_struct // { PID,进程标识符 PPID,parent id (父亲) 当前工作路径 chdir umask 0002 进程打开的文件列表 文件IO中有提到 信号相关设置 处理异步io 用户id组id 进程资源的上限 ulimit -a显示资源上限。 } //一个程序运行之后(进程) 默认打开了三个文件 stdin stdout stderr 2.进程和程序的区别? 程序:静态 存储在硬盘中代码数据的集合 进程:动态 程序执行的过程,包括进程的创建、调度、消亡 .c ---- a.out----- process(pid) 1程序是永存进程是暂时的 2进程有程序状态的变化程序没有 3进程可以并发程序无并发 4进程与进程会存在竞争计算机的资源 5一个程序可以运行多次变成多个进程 一个进程可以运行一个或多个程序内存的分布 0-3G,是进程的空间 3G-4G是内核的空间,虚拟地址 虚拟地址 * 物理内存和虚拟内存的地址 映射表 1page4k 进程分类 1、交互式进程 shell进程 2、批处理进程 shell脚本 .bat 3、守护进程 (后台进程) //前台进程
man ps /state 进程的一生: (linux里面进程的状态7种) D uninterruptible sleep (usually IO) R running or runnable (on run queue) ---就绪队列中 S interruptible sleep (waiting for an event to complete) T stopped(暂停态), either by a job control signal or because it is being traced. *W paging (not valid since the 2.6.xx kernel) *X dead (should never be seen) Z defunct (zombie) process, terminated but not reaped(收尸) by its parent. 4.进程的状态 3个状态就绪→执行态→阻塞等待睡眠基本操作系统 linux中的状态运行态睡眠态僵尸暂停态。 5.进程的调度 内核主要功能之一就是完成进程调度 宏观并行 微观串行
6.查询进程相关命令 1.ps aux | grep 进程名 查看进程相关信息 1.就绪态、运行态 R 2.睡眠态、等待态 可唤醒等待态 S 不可唤醒等待态 D 3.停止态 T 4.僵尸态 Z 5.结束态 2.top 根据CPU占用率查看进程相关信息 3.kill和killall发送一个信号 kill PID 发送信号PID对应的进程默认接收者关闭 kill -9 进程PID号 kill -l //查看信号列表 killall -9 进程名 发送信号 进程名对应的所有进程 killall a.out //通过 进程名 发信号 kill 信号编号 进程ID