1.同步机制应该有的原则
空闲让进,忙则等待,有限等待,让权等待(当进程不能进入自己的临界区,应该立即释放处理机,以避免进程陷入忙等状态。)
2.具有快表的地址变换机构
页表是放在内存中,所以cpu存取一个数据时要两次访问内存。一次是访问页表,找到对应页在内存中的地址。第二次是根据获得的地址找到数据。
为了提高地址变换速度,可以增加一个具有并行查询能力的特殊高速缓冲存储器,在访问页表的时候也访问这个存储器,若这个存储器找到了就不必再在也表中找。若没找到就继续在页表中找,并更新这个存储器。
3.分页与分段的区别
页是物理单位,而段是逻辑单位。
4.虚拟存储器
局部性原理:时间局限性,空间局限性。
虚拟存储器的特征:多次性,对换性,虚拟性。
5.页面置换算法
- 最佳置换算法:选择以后不使用或者在最长时间内不会使用的面
- FIFO:先进先出算法,容易产生抖动
- 最近最久未使用置换算法:LRU算法,选择最近最久未使用的页面予以淘汰。即要向前看。
- CLOCK置换算法。
6.I/O控制方式:
- 程序I/O方式:忙等方式。
- 中断驱动I/O方式:当某进程要启动I/O,cpu向相应设备发出一条I/O命令,然后立即返回继续执行原来的任务。注意I/O方式以字为单位进行I/O
- DMA方式,直接存储器访问方式。与中断方式不同,DMA方式以数据块为单位进行I/O,仅在传送一个或多个数据块的开始和结束时,才需要CPU干预,整块的数据的传送是在控制下进行的。
- I/O通道方式,DMA方式的进化版。
7.死锁
1)产生死锁的原因:资源有限且进程推进顺序不当。
2)产生死锁的必要条件:
- 互斥:进程对分配到的资源进行排他性使用
- 请求和保持:进程已经有资源了还申请
- 不可剥夺:进程在使用的资源不可以被剥夺给其他进程使用
- 环路且等待:资源环链。
3)死锁的避免:针对上面四个原因进行处理
- 请求和保持:必须一次性把需要的资源都申请到
- 不可剥夺:申请时必须放弃目前有的资源
- 环路跳进:给资源编号,严格按资源序号递增的次序提出
4)银行家算法
5)死锁的检测:
- 资源分配图
- 死锁定理:在资源分配图中,当且仅当资源分配图是不可完全简化的。
8.同步与异步的概念
- 同步:调用者在没有得到结果之前不返回,即事情必须一步一步的做完。
- 异步:调用者在没有得到结构之前不等待。