1 .什么是进程??
进程是操作系统对一个正在运行的程序的一种抽象,
换言之-----进程就是程序的一次运行过程
在操作系统内部, 进程又是操作系统进行资源分配的基本单位
2 .进程控制块(PCB):
- PCB是系统为了管理进程设置的一个专门的数据结构.
- 来记录进程的外部特征,描述进程的运动变化过程。
- 系统利用PCB来控制和管理进程,所以PCB是系统感知进程存在的唯一标志。进程与PCB是一一对应的 !
3. PCB 存放的重要信息
①进程标识符 pid
每个进程都必须有一个唯一的标识符,可以是字符串,也可以是一个数字。
通过pid来区分一个进程
②内存指针
内存指针其实就是 指明那一块内存是干嘛的
一个可执行文件,双击后开始运行,操作系统就会把文件中的核心数据加载到内存中!
而这个核心数据就是 要执行的指令,指令依赖的数据~
③文件描述符表
每个进程都可以打开一些文件~~(文件其实就是存储在硬盘上的数据)
文件描述符表 中 记录了 哪块内存是干啥用的~~
4 .进程怎么进行调度的???参考什么???
①进程当前状态 status
说明进程当前所处的状态 : 进程当前状态 status说明进程当前所处的状态!
②进程优先级: 即优先执行想要执行的 , 一般由用户指定和系统设置 !
③进程上下文: 在cup上执行一会,要切换到别的进程 , 这时候就要保存(存档) ; 当下次再轮到它时, 就 恢复(读档) 然后继续执行
④进程记账信息: 统计一个进程再cup中执行了多少次!
5. 操作系统对于内存资源的分配~
采取的是空间模式~~~
就是 不同进程使用内存中的不同区域~相互之间不会发生干扰!!
通过虚拟地址空间~~~一个进程只能再一个区域内运行 不会影响到其他的进程
6. 进程间的通信
就是能使进程之间能够相互联系!!
7 .并行与并发
现在的进程调度都是 并行 与 并发 同时存在的
并发执行: 一个cpu核心, 先运行进程1 进程2 在运行进程3,一直反复运行 !! 只要速度足够快~在宏观上看起来就好像三个进程同时运行!!!!!
并行执行: 多个cpu核心上,都可以独立的运行一个进程~运行进程的相关指令!!!!所以多核心的处理器就可以同时独立的运行多个进程!!!!