进程基本概念
进程是什么
- 宏观:执行中的一个程序,一段指令的集合
- 微观:分配系统资源的一个基本单位
进程就是执行中的程序,而程序则是一段有序指令的集合,根据冯诺依曼体系结构我们可以得到,程序员的代码存储在硬盘中,当其执行的时候代码会首先被加载到内存上面。
当加载到内存上面时候,就需要操作系统对其进行描述与组织,也就是管理。
而操作系统则是通过一个结构体对这个指令和数据进行描述然后组织,从而达到管理的目的。

这个描述我们把它叫做PCB,通过对pcb的管理,操作系统实现了对不同进程的切换与调度,实现了并发与并行。
PCB - 进程控制块
操作系统中一个进程的各种信息都被一个PCB(进程控制块)所描述起来,我们可以将其理解为进程属性的集合。在Linux下的pcb是一个 task _struct 的结构体
task _struct是Linux内核的一种数据结构,被装载到RAM里面
task _struct内部信息
标示符: 描述本进程的唯一标示符,用来区别其他进程。
状态: 任务状态,退出代码,退出信号等。
优先级: 相对于其他进程的优先级。
程序计数器: 程序中即将被执行的下一条指令的地址。
内存指针: 包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针
上下文数据: 进程执行时处理器的寄存器中的数据[休学例子,要加图CPU,寄存器]。
I/O状态信息: 包括显示的I/O请求,分配给进程的I/O设备和被进程使用的文件列表。
记账信息: 可能包括处理器时间总和,使用的时钟数总和,时间限制,记账号等。
其他信息
进程状态
进程状态查看
最低0.47元/天 解锁文章
718

被折叠的 条评论
为什么被折叠?



