进程管理(一)

一,进程的概念:
在内存中执行的程序;进程执行必须按顺序进行
一个程序可以是多个进程,多个用户可以执行同一程序

程序是存储在磁盘(可执行文件)上的被动实体
进程处于活动状态:当操作系统的加载器将可执行文件加载到内存中时,程序成为进程。

二,ELF
可执行和可链接格式(ELF):目标文件再不同的系统或平台上具有不同的命名格式
一个统一的格式:
1,可重定位对象文件(.o),
2,可执行对象文件(a.out或无扩展名)
3,共享对象文件(.so)

ELF对象文件格式:

1,ELF标题
字长、字节顺序、文件类型(.o、exec、.so)、机器类型等
2,段头表
页面大小、虚拟地址、内存段(节)、段大小
3,.text片段:
代码
4,.rodata片段:
只读数据:跳转表,恒定数据
5,.data片段
初始化的全局变量
6,.bss片段:
未初始化的全局变量
“以符号开头的块”
“更好地节省空间”
具有节标题,但不占用空间

进程组成
在这里插入图片描述
1,程序代码,也称为text部分
2,包含临时数据的stack
例如,函数参数、返回地址、局部变量
3,包含全局变量和静态变量的data部分
4,包含在运行时动态分配的内存的heap
5,程序计数器、处理器寄存器(包括CPU内程序的所有当前数据)

进程状态
在这里插入图片描述
当一个进程执行时,它会改变状态
新的:正在创建流程
运行:CPU正在执行指令
等待:进程正在等待某个事件发生
就绪:进程正在等待分配给处理器
终止:执行已完成

进程控制块
每个进程在操作系统内用进程控制块来表示
PCB:与每个进程相关的信息,可以存储在结构类型中
**进程状态:**运行,等待…
程序计数器:下一个要执行的指令的地址
CPU寄存器:所有以进程为中心的寄存器的内容
CPU调度信息:优先级、调度队列指针
内存管理信息:分配给进程的内存
记账信息:使用的CPU、启动后经过的时钟时间、时间限制
I/O状态信息:分配给进程的I/O设备、打开的文件列表

PCB是一种内核数据结构

1,存储在为内核保留的内存中;
2,过程本身是看不见的;
3,其信息仅因内核修改。

所有的PCB加在一起就是内核如何跟踪内存中存在哪些进程,它们在内存中的位置,它们当前正在做什么。每个进程在内核中都有相应的唯一PCB。当创建一个新进程时,内核会为其创建一个新的PCB。当进程死亡时,内核会删除进程的PCB。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值