这里写目录标题
- 什么是进程
- 进程管理
- 结构体或类的主要属性
- pid
- 内存指针
- 文件描述符表
- 辅助进程调度的属性
- 并发
- 并行
- 并发
什么是进程
进程是操作系统对一个正在运行的程序的一种抽象,也就是说,一个运行起来的程序就是一个进程。
进程又是操作系统进行资源分配的基本单位。
比如我们打开我们的电脑任务管理器就会看到许多正在执行的进程。
进程管理
进程管理一般分两步
1.描述一个进程:采用结构体/类(也叫进程控制块),对进程的信息进行表示。
2.组织这些进程:通过一定的数据结构把这些结构体/对象进行组织。
结构体或类的主要属性
pid
每一个进程的唯一身份标识符。
内存指针
当前这个进程使用的是内存的那一部分(进程运行时需要消耗一定硬件资源,就比如内存)。
文件描述符表
记录了进程运行时使用了那些硬件资源,生成一个文件,按一定数据结构组织形成文件描述表。
辅助进程调度的属性
- 进程状态
就绪态:进程已经准备好上CPU执行了。
阻塞态:进程暂无法上CPU执行。 - 进程的优先级
进程之间的调度是有优先级的,优先级高则被频繁调度。 - 进程的上下文
上下文就是描述了进程执行到那里的“存档记录”。
在并发执行离开CPU时记录运行结果,等下次进程回到CPU后根据记录结果再次执行。 - 进程的进账信息
统计了每个进程在CPU上执行了多久。
可以作为以后进行进程调度的参考。
并发
程序能够运行是靠电脑CPU的,CPU有个概念叫核心数(一个核心同一时间只能执行一个程序),我们的电脑一般不会超过20个核心数,但上面我的任务管理器中显示有那么多程序在运行,电脑是如何办到的,这就是我们下面要了解的并发概念。
并行
同一时刻两个核心同时执行两个进程,那么这两个进程就是并发执行的。
并发
一个核心先执行进程1,然后再执行进程2,接着执行进程3,这样每个进程都去执行且切换频率快到我们人眼无法察觉的地步,这样在我们看来1,2,3程序就是在“同时执行”。
在操作系统的控制下,CPU通过并发的方式进行多进程执行。
一般情况下并发与并行统称为并发。