进线程学习--01

进程是一个独立的可调度的任务,是一个抽象实体。

程序来说进程是静态的,它是保存在磁盘上的有序的指令集合,没有任何执行的概念。

进程是一个动态的概念,它是程序的执行过程,包括创建,调度和消亡。

进程是程序和资源管理的最小单位。

Linux系统下的进程包括:数据段,存放全局变量、常数以及动态变量分配的数据空间;正文段存放程序代码;堆栈段,存放函数的返回地址,函数参数以及程序中的局部变量。

Linux系统中的进程分为:交互进程,由shell控制,可以在前台也可以在后台运行;批处理进程:该进程不属于某个终端,而是被提交到一个队列中顺序执行;守护进程:在后台中运行,一般在系统启动时开启,系统结束后结束。

进程在运行过程中,存在创建态(进程正在被创建,但尚未到达就绪状态)、就绪态(进程已经获得了除CPU之外的所有所需资源,一旦得到CPU即可执行时)、运行态(进程正在CPU上执行)、阻塞态(进程正在等待某一事件而暂停运行的状态)、结束态(进程正在从系统中消失),此外还有僵尸态(进程终止运行,但仍保留一些信息,无法终止)、挂起态(进程被挂起,暂停执行)。

用户模式和内核模式是操作系统中进程执行的两种主要模式。用户模式主要用于执行应用程序的代码和数据,而内核模式则用于执行操作系统内核代码和数据,以及处理特权操作和硬件管理。

Linux系统中关于进程相关的命令有,ps:查看系统中的进程;top:动态显示系统中的进程;nice:按用户指定的优先级运行进程;renice:改变正在运行进程的优先级;kill:向进程发送信号;bg:将挂起的进程放在后台运行;fg:将和后台中的进程放在前台运行。

相关推荐
chase。12 小时前
【学习笔记】SimpleVLA-RL:通过强化学习扩展 VLA 训练
笔记·学习
C语言小火车13 小时前
什么时候用智能指针?什么时候用裸指针?
c语言·c++·学习·指针
AOwhisky13 小时前
Redis 学习笔记(第一期):概述、安装配置与核心理论
运维·数据库·redis·笔记·学习·云计算
AOwhisky14 小时前
Redis 学习笔记(第四期):高可用与集群(哨兵 + Cluster + 容器化)
linux·运维·数据库·redis·笔记·学习·缓存
skywalk816314 小时前
言知项目后续方向建议
开发语言·学习·编程
努力写A题的小菜鸡14 小时前
PyTorch 图像预处理 transforms 与 TensorBoard 可视化 (自己学习记录)
人工智能·pytorch·学习
一尘之中14 小时前
从概念到实践:软件架构核心知识梳理
学习·ai写作
yzqy_15 小时前
AMD AI 开发者计划学习笔记:从 ROCm 到 Ryzen AI,理解 AMD 的 AI 开发生态
人工智能·笔记·学习·datawhale·amdev
H__Rick15 小时前
C51学习-DAY4
嵌入式硬件·学习·51单片机·硬件工程
red_redemption16 小时前
自由学习记录(201)
学习