概念:
把代码和数据加载到内存中
操作系统创建的数据结构、对应的代码和数据总称为进程
包括PCB、地址空间、文件、信号、页表和加载到内存中的代码和数据等
创建进程的“成本”:操作系统的空间+CPU的时间资源
内核视角:进程时承担分配系统资源的基本实体
在Linux中描述进程的结构体叫做task_struct
task_struct内容:
标示符: 描述本进程的唯一标示符,用来区别其他进程。
状态: 任务状态,退出代码,退出信号等。
优先级: 相对于其他进程的优先级。
程序计数器: 程序中即将被执行的下一条指令的地址。
内存指针: 包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针
上下文数据: 进程执行时处理器的寄存器中的数据[休学例子,要加图CPU,寄存器]。
I/ O状态信息: 包括显示的I/O请求,分配给进程的I/ O设备和被进程使用的文件列表。
记账信息: 可能包括处理器时间总和,使用的时钟数总和,时间限制,记账号等。
其他信息