进线程学习--01

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

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

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

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

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

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

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

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

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

相关推荐
dtq04241 小时前
C++3 - 分支语句if和string变量
开发语言·c++·学习
承渊政道1 小时前
Linux网络学习【深入理解应用层HTTP协议、Cookie与Session机制及HTTPS协议原理】
linux·网络·学习·http·cookie·session
LuminousCPP2 小时前
数据库学习笔记(二):MySQL 基础操作入门|在 CentOS Stream 10 上连接、建库与建表
数据库·经验分享·笔记·学习·mysql·centos
艾莉丝努力练剑2 小时前
【AI大模型接入SDK】ChatServer接口实现
c++·人工智能·学习·ai·架构·大模型·sdk
lhh_qrsly5 小时前
HTTP / HTTPS / MQTT / MQTTs(嵌入式学习版)
学习·http·https
xier_ran1 天前
【infra之路】AI 编译器学习笔记(十三):AI 编译器全景——TVM、XLA、IREE 与其他
人工智能·笔记·学习
连山齐名1 天前
ai应用开发的学习笔记
服务器·笔记·学习
xier_ran1 天前
【infra之路】AI 编译器学习笔记(十四):为什么要 tiling,以及矩阵计算单元的“固定“
人工智能·笔记·学习
燕落南枝1 天前
HTML 学习:辅助标签 label 与字符实体
前端·学习·html
hackchen1 天前
LangChain 学习第 3 课 - 输出解析器(Output Parser)
数据库·学习·langchain