这里将介绍进程的基本概念,什么是进程,如何描述和组织进程,接着讨论进程的状态,最后介绍进程 控制
进程概念
1. 概念:
a. 进程是程序的一次动态执行过程
b. 担当分配系统资源(CPU时间、内存)的实体。(从内存角度)
2. 描述进程---PCB
进程的信息被放在一个叫做进程控制块的数据结构中,在Linux中描述进程的结构体叫做task_struct。task_struct是Linux内核的一种数据结构,它会被装载到内存里面包含着进程的信息。
task_struct内容分类:
- 标识符:描述本进程的唯一标示符,用来区分其他进程
- 状态:任务状态,退出代码,退出信号
- 优先级:相对于其他进程
- 程序计数器:程序中即将被执行的下一条指令的地址
- 内存指针:包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针。
- 上下文数据:进程执行时处理器的寄存器中的数据
- I/O状态信息:包括显示的I/O请求,分配给进程I/O设备和被进程使用的文件列表
- 记账信息:可能包括处理器时间总和,使用的时钟数总和,时间限制,记账号等。
- 其他信息
3. 组织进程
所有运行在系统里的进程都以task_struct链表的形式存在内核中。
注:创建一个进程需要做哪些事情?
1. 要创建一个进