进线程学习--01

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

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

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

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

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

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

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

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

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

相关推荐
apple-mapping16 小时前
网络RTK定位学习总结
学习·网络rtk
楚山之石16 小时前
【Lancet Neurology 】多发性硬化认知障碍的 SDMT 筛查、灰质萎缩标志与认知康复循证路径
图像处理·人工智能·学习·mri
海海不掉头发18 小时前
CSDN博客_时序预测9模型复现对比
人工智能·学习·软件工程
蓝祁子yoky20 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习
架构师伯子明21 小时前
Ros 学习十三:IK Demo
学习
小羊没烦恼!21 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
幼儿园蛋小黄21 小时前
从 STM32N647 的 AI 部署入门嵌入式:一条可落地的学习路线
人工智能·stm32·学习
Y.9991 天前
电脑黑屏只有鼠标能动
学习
架构师伯子明1 天前
FFmpeg C++学习(一):编译和demo
开发语言·c++·学习
叼烟扛炮1 天前
[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战
服务器·开发语言·网络·笔记·学习·langchain