- 操作系统的作用
 
操作系统的特征
并发和共享是操作系统的最基本特征 1.并发 通常指两个或者多个事件在同一时间间隔内发生,宏观上同时发生,微观上交替发生。(区别于并行:两个或者多个事件同时发生)。 操作系统是和程序并发一起诞生的。 2.共享 共享即为资源共享,指系统中的资源可供内存中多个并发执行的进程共同使用。 两种共享方式:互斥共享(只允许一个进程使用)、同时共享(可以供多个进程使用,并发使用或者并行使用) 并发和共享互为存在条件 3.虚拟 把一个物理上的实体变为若干个逻辑上的对应物。物理实体实际存在,逻辑上对应物是用户感受到的。 分为 空分复用技术、时分复用技术(并发使用) 4.异步 在多道程序环境下,允许多个程序并发执行,但是由于系统资源有限,进程的执行不是一贯到底的,而是走走停停的,以不可预知的速度前进。 并发性才有可能导致异步性。
##操作系统的分类与发展 
操作系统的运行机制和体系结构
  
中断和异常




系统调用
    
进程
进程定义
  
     
进程的状态与转换
   
进程控制
实现进程状态转换
      
进程通信
     
线程概念和多线程模型
           
处理机
处理机调度概念、层次
       
进程调度的时机、切换与过程调度方式
    
调度算法的评价指标
1、CPU利用率:CPU忙碌时间占总时间的比例。 2、系统吞吐量:单位时间内完成作业的数量 3、周转时间:作业从被提交给系统开始,到作业完成为止的时间间隔。   4、等待时间:指进程、作业处于等待处理及状态时间之和  5、响应时间:从用户提交请求到首次产生响应所用的时间。 
调度算法(1)
先来先服务


短作业优先

  
高相应比优先算法


对比

调度算法(2)
时间片轮转

    
优先级调度

非抢占式  抢占式  如何选择优先级 
多级反馈队列

 
进程类
进程同步、进程互斥

进程同步: 进程具有异步性,各自并发执行的进程以各自独立、不可预知的速度向前推进。类似于管道通讯的读写顺序。 同步也称为直接制约关系,指为了完成某种任务而建立的两个或者多个进程,这些进程因为需要在某些位置上协调它们的工作次序而产生的制约关系。 进程互斥:   
进程互斥的软件实现方法

    
进程互斥的硬件实现方法
   
信号量机制
为了解决进程同步、进程互斥出现的问题,以及各软硬件都无法实现的“让权等待”功能。     
用信号量机制实现进程互斥、同步、前驱关系
    
生产者和消费者问题
   注:使用产品的代码,按道理来说可以放到临界区,因为不可中断,但是这样会增加运行时间,减少并发度。 
多生产者多消费者
     重点:互斥信号量  看作两个事件的先后关系,而不是单独看进程的先后关系,可以有效减少信号量的数目。 
吸烟者问题
  注意:如果一个生产者生产多种产品,那么各个V操作应该放在各自对应的事件发生之后的位置。
读者-写者问题
   
哲学家进餐问题
   
管程
一种实现进程的同步与互斥     
死锁
死锁的概念
      
死锁的处理策略——预防死锁
    
死锁的处理——避免死锁
安全序列 
寻找安全序列 安全序列不唯一  处于不安全状态0.0 有可能死锁  银行家算法流程 模拟算法的运行过程  下面为具体实现: 
死锁的检测与解除
 死锁状态:能消除所有边,则不会发生死锁,最终不能消除所有边,则会发生死锁。   三种方法
 
|