zoukankan      html  css  js  c++  java
  • 操作系统概念大纲

    第三章 进程

    3.1 概念

    进程是活动实体,包括当前活动,通过程序计数器的值和处理器寄存器的内容来表示

    3.2 进程状态

    • 新的:进程正在被创建
    • 运行:指令正在被执行
    • 等待:进程等待某个事件的发生
    • 就绪:进程等待分配处理器
    • 终止:进程完成执行

    第五章 CPU调度

    5.1 先到先服务调度

    先到先服务算法(first-come,first-served(FCFS) Scheduling algorithm),先请求CPU的进程先分配到CPU

    缺点:平均等待时间过长

    5.2 最短作业优先调度

    最短作业优先调度算法(shortest-job-first (SJF) scheduling algorithm)

    当CPU为空闲时,它会赋给具有最短CPU区间的进程。如果两个进程具有同样长度,那么可以使用FCFS调度来处理

    平均等待时间最少

    考虑到达时间,存在抢占和非抢占两种情况

    5.3 优先级调度

    优先级调度算法(priority scheduling algorithm)

    每个进程都有一个优先级与其关联,具有最高优先级的进程会分配到CPU。具有相同优先级的进程按FCFS顺序调度。SJF算法可作为通用优先级调度算法的一个特例

    5.4 轮转法调度

    轮转法(round-robin,RR)调度算法是专门为分时系统设计的。它类似于FCFS调度,但是增加了抢占以切换进程。定义一个较小时间单元,称为时间片(time slice)

    将就绪队列作为循环队列。CPU调度程序循环就绪队列,为每个进程分配不超过一个时间片的CPU

    第七章 死锁

    7.1 死锁的必要条件

    互斥:至少有一个资源必须处于非共享模式,即一次只有一个进程使用。如果另一个进程申请该资源,那么申请进程必须等到该资源释放为止

    占有并等待:一个进程必须占有至少一个资源。并等待另一个资源,而该资源为其他进程所占有

    非抢占:资源不能被强占,即资源只能在进程完成任务后自动释放

    循环等待:有一组等待进程{P0,P1,···,Pn},P0等待的资源为P1所占有,P1等待的资源为P2所占有,······,Pn-1等待的资源为Pn所占有,Pn等待的资源为P0所占有

    4个条件必须同时满足才会出现死锁

    图7.3 存在环,且R2的两个实例都被分配,存在死锁

    图7.4 存在环,但是R2的一个实例分配给了P4,P4可能会释放掉R2的实例,这个资源可以再分配给P3,以打破环,故不存在死锁

    7.2 死锁预防

    从死锁的4个必要条件入手

    互斥:为了确保这一条件不成立,需要确保:进程绝不需要等待共享资源

    占有并等待:为了确保这一条件不成立,必须保证:当一个进程申请一个资源时,它不能占有其他资源

    非抢占:为了确保这一条件不成立,可以使用如下协议:如果一个进程占有资源并申请另一个不能被立即释放的资源,那么其现已分配的资源都可被抢占

    循环等待:为了确保这一条件不成立,对所有资源类型进行完全排序,且要求每个进程按递增顺序来申请资源

    7.3 死锁避免

    7.3.1 资源分配图算法:

    消除环

    7.3.2 银行家算法:

    7.3.2.1 安全性算法

    7.3.2.2 资源请求算法

    7.3.2.3 举例

    7.4 死锁恢复

    • 终止所有进程
    • 一次只终止一个进程直到取消死循环为止

    第九章 虚拟内存

    9.1 FIFO页面置换

    当必须置换一页时,将选择最旧的页

    9.2 最优置换

    最优页置换算法(optimal page-replacement algorithm)

    9.3 LRU页面置换

    最近最少使用算法(least-recently-used algorithm)

  • 相关阅读:
    mybatisplus-分页配置
    mybatisplus-逻辑删除配置
    python-字符串r、b、u、f
    python-pydantic-一个解析库
    python-class-一个type实例对象
    python-函数式编程&面向对象编程
    python-实例访问类属性的一个问题
    jmeter-取样器
    PSP总结报告
    20181204-1 每周例行报告
  • 原文地址:https://www.cnblogs.com/Java-Starter/p/9546400.html
Copyright © 2011-2022 走看看