文章目录(持续更新)
📣2.1 进程的定义
✨2.1.1 进程的组成
PCB
✨2.1.2 进程的组织
- 链接方式
- 索引方式
✨2.1.3 进程的特征
📣2.2 进程的状态与转换
✨2.2.1 进程的三种状态
✨2.2.2 进程状态的转换
📣2.3 进程控制
✨2.3.1 如何实现进程控制
✨2.3.2 原语
状态转换时需要保证对应的状态数据也被修改,所以为了不一致的情况的发生,采用了原语
与进程控制相关的原语
📣2.4 进程间的通信
✨2.4.1 什么是进程通信
✨2.4.2 共享存储
✨2.4.3 管道通信
✨2.4.4 消息传递
📣2.5 线程概念和多线程模型
✨2.5.1 线程的概念
✨2.5.2 线程的属性
✨2.5.3 线程的实现方式
- 用户级线程
- 内核级线程
✨2.5.4 多线程模型
- 多对一模型
- 一对一模型
- 多对多模型
📣2.6 处理机调度的概念层次
✨2.6.1 调度的基本概念
✨2.6.2 高级调度
✨2.6.3 中级调度
✨2.6.4 低级调度
✨2.6.5 三层调度的对比
📣2.7 进程调度的时机、切换与过程、方式
✨2.7.1 进程调度的时机
✨2.7.2 进程调度的方式
✨2.7.3 进程的切换与过程
📣2.8 调度算法的评价指标
✨2.8.1 CPU利用率
✨2.8.2 系统吞吐量
✨2.8.3 周转时间
✨2.8.4 等待时间
📣2.9 磁盘调度算法
✨2.9.1 先来先服务算法
✨2.9.2 短作业优先算法
- 非抢占式的短作业优先算法
- 抢占式的短作业优先算法
✨2.9.3 高响应比优先
总结
✨2.9.4 时间片轮转调度算法
✨2.9.5 优先级调度算法
- 非抢占式
- 抢占式
✨2.9.6 多级反馈调度算法
📣2.10 进程同步与进程互斥
✨2.10.1 进程同步
✨2.10.2 进程互斥
📣2.11 进程互斥的软件实现方法
✨2.11.1 单标志法
✨2.11.2 双标志法
✨2.11.3 PeterSon算法
📣2.12 进程互斥的硬件实现方法
✨2.12.1 中断屏蔽方法
✨2.12.2 TestAndSet指令
✨2.12.3 Swap指令
📣2.13 信号量机制
✨2.13.1 信号量机制
✨2.13.2 整型信号量
✨2.13.3 记录型信号量
例题如下
📣2.14 使用信号量机制实现进程互斥、同步和前驱关系
✨2.14.1 使用信号量机制实现进程互斥
✨2.14.2 使用信号量机制实现进程同步
✨2.14.3 使用信号量机制实现前驱关系
📣2.15 同步互斥问题
✨2.15.1 生产者-消费者问题
✨2.15.2 多生产者-多消费者问题
使用互斥信号量
不使用互斥信号量
假如盘子容量为2
✨2.15.3 吸烟者问题
✨2.15.4 读者-写者问题
✨2.15.5 哲学家进餐问题
方式3