全局页面算法:不是由于页不够
缺页率页面置换算法(PFF,page fault frequency):动态调整常驻集的大小
缺页率:缺页次数/内存访问次数
缺页率越高,增加工作集来分配更多的物理页面
缺页率越低,减少工作集来减少它的物理页面数,让每一个程序的缺页率保持在一个合理的范围
一个交替工作集计算明确的试图最小化页缺失
MPL :2次缺页的平均时间
内存 :抖动问题(内存和外存大量换进换出),缺页次数多
进程消耗计算机资源,不同时间消耗不同大小的Cpu
进程:一个具有一定独立功能的程序在一个数据集合上的一次动态执行的过程
进程包含了正在运行的一个程序的所有状态信息
一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序
进程是程序功能的体现
程序是产生进程的基础
程序的每次运行产生不同进程
进程是动态的,程序是静态的;程序是有序代码的集合
进程是程序的执行,进程由核心态/用户态
进程是暂时的,程序是永久的
进程特点:
动态性:动态创建,结束进程
并发性:可被独立调度并占用处理机运行;
(并行:一个时刻多个进程在进行,需要有多个CPU,多核)
独立性:不同进程的工作不互相影响
制约性:因访问共享数据/资源或进程间同步而产生制约
程序=算法+数据结构
进程控制块(Process Control Block ,PCB)
操作系统为每一个进程都维护了一个PCB ,用来保存与该进程有关的各种状态信息
PCB是进程存在唯一标识
PCB包含:
进程标识信息
处理机状态信息保存区
用户可见寄存器
控制和状态寄存器
栈指针
进程控制信息
调度和状态信息
进程间通信信息
存储管理信息
进程所用资源
有关数据结构连接信息
PCB组织方式:
链表
索引表
进程生命期管理:
进程创建
进程运行
进程等待
进程唤醒
进程结束
挂起,把一个进程从内存到外存:
阻塞到阻塞挂起
就绪到就绪挂起
运行到就绪挂起
阻塞挂起到就绪挂起
解挂/激活:把一个进程从外存到内存:
就绪挂起到就绪
阻塞挂起到阻塞
状态队列
由操作系统来维护一组队列,用来表示系统当前所有进程的当前状态
线程管理
一个进程存在多个线程
各个线程之间可以并发执行
各个线程之间可以共享地址空间和文件等资源
一个线程崩溃,会导致其所属进程的所有线程崩溃
线程=进程-共享资源
进程是资源分配的单位,线程是CPU调度单位·
进程拥有一个完整的资源平台,线程只独享必不可少的资源:寄存器和栈等
线程能减少并发执行的时间和空间开销
线程和进程同样具有状态之间的转换关系
进程上下文切换:进程所要用的寄存器,CPU状态,一些时候会费时,尽可能避免