进线程学习--01

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

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

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

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

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

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

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

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

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

相关推荐
想要入门的程序猿22 分钟前
摄影测量学习()
数码相机·学习
worilb26 分钟前
Spring Cloud 学习与实践(13):使用 Seata 解决分布式事务问题
分布式·学习·spring cloud
渣渣灰飞38 分钟前
MySQL 系统学习 第四阶段:MySQL 高级 第一节:索引(Index)
数据库·学习·mysql
星子yu1 小时前
【学习】怎么学好数据结构
数据结构·学习
~kiss~2 小时前
MoE的痛点:离散路由
学习
Amazing_Cacao2 小时前
CFCA精品可可工艺师初级校准:暴力破解机器黑盒,实现物理参数与最终风味的精准对齐
笔记·学习
浮江雾3 小时前
Flutter第三节----Dart中的数据类型
android·开发语言·学习·flutter·入门·函数
风和先行3 小时前
Android 数据库相关学习总结
android·数据库·学习
chh5633 小时前
C++--list
开发语言·数据结构·c++·学习·算法·list
ctrl_v助手4 小时前
HALCON 学习笔记1
笔记·数码相机·学习·算法·计算机视觉