进线程学习--01

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

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

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

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

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

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

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

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

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

相关推荐
im_AMBER几秒前
Leetcode 57
笔记·学习·算法·leetcode
im_AMBER2 分钟前
Leetcode 58 | 附:滑动窗口题单
笔记·学习·算法·leetcode
伯明翰java19 分钟前
Redis学习笔记-List列表(2)
redis·笔记·学习
云帆小二34 分钟前
从开发语言出发如何选择学习考试系统
开发语言·学习
Elias不吃糖1 小时前
总结我的小项目里现在用到的Redis
c++·redis·学习
BullSmall1 小时前
《道德经》第六十三章
学习
AA陈超2 小时前
使用UnrealEngine引擎,实现鼠标点击移动
c++·笔记·学习·ue5·虚幻引擎
BullSmall2 小时前
《道德经》第六十二章
学习
Knox_Lai2 小时前
数据结构与算法学习(0)-常见数据结构和算法
c语言·数据结构·学习·算法
Tonya433 小时前
测开学习DAY32
学习