进程的描述和控制
基本概念:
进程,进程的特征,进程的状态转换图
线程,操作系统内核,线程和进程的比较
进程的创建,进程和程序的比较
前驱图,进程同步,进程的两种制约关系
临界资源,临界区,同步机制的规则
PV操作,哲学家进餐问题
生产者-消费者问题
首先从进程开始,进程特点:动态,并发,独立,异步。进程是程序的一次执行,程序没有生命,是静态的,进程是动态的:由创建而产生,由调度而执行,由撤销而消亡,进程有并发性:进程可以同时运行;进程是竞争计算机资源的基本单位,而程序不是;
进程和程序不是一一对应的,一个程序对应多个进程。
进程之间的状态转换:创建,就绪,运行,阻塞,挂起,终止。
进程的创建:申请空白PCB,为进程分配资源,初始化PCB,将进程插入到就绪队列。
进程同步里面有两个制约关系,同步(合作执行),互斥(打印机)
进程同步机制遵循的原则:空闲让进,忙则等待,让全等待,有限等待。
临界资源(一次只能一个进程访问的资源),临界区(访问临界资源的那段代码)
PV操作
生产者-消费者
哲学家进餐
操作系统大题:银行家算法,磁盘调度算法,页面置换算法,进程调度算法,PV操作,前驱图,哲学家就餐,读写者问题,生产者-消费者问题。
动态分区分配算法(最佳适应算法,首次适应算法,循环首次适应算法,最坏适应算法)
磁盘调度算法(扫描电梯算法,循环扫描算法,FCFS算法,最短服务时间优先算法)
进程调度算法(FCFS,短作业优先(抢占和非抢占),优先级调度算法,高响应比调度算法,多级反馈队列调度算法,时间片轮转)
页面置换算法(FCFS,LRU(看前面),最佳置换算法(看后面),clock算法)
银行家算法(注意请求的时候先和need比较,在和available比较,如何available变少,allocation变多,need变少)
前驱图:两个点之间的设为字母,初值为0,先V后P,最后的时候所有的字母都是0
哲学家就餐:用mutex保护筷子;设计四个座位,使得最多四个人可以就餐,也就mutex=4。
生产者-消费者问题:多生产者和多消费者问题。
读者写者问题:设置cnt=0,Fmutex和mutex_A,mutex_B,注意,先mutex_A,如何判断cnt的值,在P(Fmutex)互斥允许同组的读取文件