计算机操作系统复习

  • 什么是操作系统

操作系统是一组控制和管理计算机软硬件资源、合理地对各类作业进行调度以及方便用户使用的程序集合。

  • 操作系统要做什么?
  • 管理所有硬件资源
  • 向用户和应用软件提供使用接口
  • 监控用户对计算机的使用
  • 操作系统的目标

    • 方便些
    • 有效性
    • 可拓展性
    • 开放性
  • OS作为计算机系统资源的管理者(软硬件资源)

    • 处理机管理,用于分配和控制处理机
    • 存储器管理,主要负责内存的分配与回收
    • IO设备管理,负责I/O设备的分配与操纵
    • 文件管理,负责文件的存取、共享和保护
  • 单道批处理系统

1、单道批处理系统主要特征:自动性、顺序性、单道性。

2、单道批处理系统主要优点:减少人工操作,解决了作业的自动接续。

3、单道批处理系统主要缺点:平均周转时间长,没有交互能力。

  • 多道批处理系统

1、多道批处理系统主要特征:多道性、无序性、调度性(进程调度和作业调度)

2、多道批处理的主要优点:提高了资源利用率和吞吐能力

3、多道批处理的主要缺点:平均周转时间长,没有交互能力

  • 分时操作系统

特点:

多路性:一个主机与多个终端相连;
独立性:彼此独立操作,互不干扰;
及时性:系统能在很短的时间得到回答;
交互性:能实现人机对话(区别于批处理系统)

  • 实时系统

特点:

响应及时(prompt response)

可靠性高(high reliability)
请添加图片描述

1、多路性:能对多个对象进行控制。

2、独立性:独立运行,不混淆,不破坏。

3、交互性:仅限于访问系统中某些特定的专用服务程序。

4、可靠性:高可靠性,应具有多级容错防护能力。

5、及时性:不同的系统要求不一样,控制对象必须在截止时间内完成。

  • 现代OS的四个基本特征:

1、并发性(最重要的特征)
2、共享性
3、虚拟性
4、异步性

  • 进程 AND 线程

进程作为资源分配的基本单位

线程作为独立运行和调度的基本单位

  • 虚拟

1、时分复用技术

  • 虚拟处理机:分时实现

  • 虚拟设备:SPOOLING技术(自学)

2、空分复用技术

  • 虚拟磁盘技术:逻辑分区

  • 虚拟存储器:虚拟存储管理实现

  • 操作系统是一个大型系统软件,其结构已经历了四代的变革:

第一代的OS是无结构的;

第二代OS采用了模块式结构;

第三代是层次式结构

现代OS结构是微内核结构

  • 微内核特点

足够小的内核。

基于客户/服务器模式

应用“机制与策略分离”原理

采用面向对象技术

微内核并非是一个完整的OS, 而只是为构建通用OS提供一个重要基础。由于在微内核OS结构中,通常都采用了客户/服务器模式,因此OS的大部分功能和服务,都是由若干服务器来提供的, 如文件服务器、作业服务器和网络服务器等。

  • 导致一个进程去创建另一个进程的典型事件,可有以下四类:
    (1)用户登录。
    (2)作业调度。
    (3)提供服务。例如:I/O请求
    (4)应用请求。

信号量按照功能来分:互斥信号量和资源信号量。
互斥信号量:用于申请或释放资源的使用权,常初始化为1。
资源信号量:用于申请或归还资源,可以初始化为大于1的正整数,表示系统中某类资源的可用个数。

按照信号量机制的发展分为:
整形信号量: 存在盲等现象
记录型信号量:不存在“忙等”现象, value的初始值>1时,称为资源信号量, value的初始值=1时,称为互斥信号量。wait先减一,在判断大于零或小于零。
AND型信号量:先判断所以资源大于还是小于零,在减一。
信号量集:在每次分配时,采用信号量集来控制,可以分配多个单位的资源。

Swait ( S1, t1, d1; ... ; Sn, tn, dn )

Si—i 类资源现有数量;ti—i 类资源的分配下限值;di—申请i 类资源数量;

请添加图片描述

  • 进程通信

  • 低级通信:进程之间的互斥和同步,由于其所交换的信息量少而被归结为低级通信。

  • 高级通信:是指用户可直接利用操作系统所提供的一组通信命令高效地传送大量数据的一种通信方式。如

    • 共享存储器系统
    • 管道通信
    • 消息传递系统
    • 客户机–服务器系统
  • 消息传递系统

    • 直接通信方式

      • 对称寻址方式
        Send(Receiver, message); 发送一个消息给接收进程;
        Receive(Sender, message); 接收Sender发来的消息;
      
      • 非对称寻址方式
      Send(P, message);发送一个消息给接收进程P;
      Receive(id, message); 接收来自任何进程的消息,进程id不固定。
      
    • 间接通信方式 (信箱)

    进程可利用信箱创建原语来建立一个新信箱。创建者进程应给出信箱名字、信箱属性(公用、私用或共享);对于共享信箱,还应给出共享者的名字。当进程不再需要读信箱时,可用信箱撤消原语将之撤消。

处理机调度与死锁

计算机完成作业是通过执行一系列有序的工作步骤进行的,每个步骤完成作业的一部分特定工作

编辑、编译或汇编、连接、装配、运行

  • 高级调度:决定哪些程序可以进入系统

其主要功能是根据某种算法,把外存上处于后备队列中的那些作业调入内存。批处理系统需要有作业调度,分时和实时系统无需此调度。高级调度用于调入一批作业。

  • 中级调度:决定内存中程序的位置和状态

为了提高内存利用率和系统吞吐量

  • 低级调度:决定CPU资源在就绪进程间的分配

    • 非抢占,引起调度的因素:

    正在执行的进程执行完毕, 或因发生某事件而不能再继续执行
    执行中的进程因提出I/O请求而暂停执行;
    在进程通信或同步过程中执行了某种原语操作,如wait、Block、Wakeup原语

    • 抢占

它所调度的对象是进程。三种类型OS都必须配置这级调度。(最基本调度)

三个基本机制:排队器、分配器(调度程序)、上下文切换机制

请添加图片描述

调度类型运行频率运行时间算法复杂性
进程调度
中程调度中等较短中等
作业调度

进程调度的运行频率最高,在分时系统中通常是10~100 ms 便进行一次进程调度,因此把它称为短程调度。为避免进程调度占用太多的CPU时间,进程调度算法不宜太复杂。
作业调度往往是发生在一个(批)作业运行完毕,退出系统,而需要重新调入一个(批)作业进入内存时,故作业调度的周期较长,大约几分钟一次,因此把它称为长程调度。由于其运行频率较低,故允许作业调度算法花费较多的时间。
中级调度的运行频率基本上介于上述两种调度之间,因此把它称为中程调度。

三种调度队列模型

1、仅有进程调度
2、具有高级和低级调度
3、具有三级调度

1. **仅有进程调度的调度队列模型 **(分时系统)

分时系统中,通常仅设有进程调度

2. 具有高级和低级调度的调度队列模型 (批处理系统)

3. 同时具有三级调度的调度队列模型

系统选择调度方式和算法的准则分为两种

  • 面向用户的准则: 周转时间短、响应时间快、截止时间的保证、优先权准则。

  • 面向系统的准则:系统吞吐量高、处理机利用率高、各类资源的平衡使用。

调度算法

  • 先来先服务 (适合于作业调度和进程调度)

优点:
有利于长作业(进程)
有利于CPU繁忙型作业(进程)
缺点:
不利用短作业(进程),特别是来的较晚的短作业(进程)。
不利于I/O繁忙型作业(进程)

  • 短作业(进程)优先调度算法 SJ§F (用于作业调度和进程调度)

  • 最短剩余时间优先调度算法SRT

  • 优先权调度算法 PSA (适合于作业调度和进程调度)

    • 非抢占式优先权算法(用于批处理、要求不严的实时)

    • 抢占式优先权调度算法(用于要求严格的实时、性能要求较高的批处理和分时)

优先权类型:

  • 静态优先权: 优点:简单易行、系统开销小。
    缺点:不够精确,可能出现优先权低的作业或进程长期得不到调度的情况。
  • 动态优先权: 随进程的推进或随其等待时间的增加而改变,以获得更好的调度性能。
  • 高响应比优先调度算法HRRN(动态优先权机制)

请添加图片描述

  • 基于时间片的轮转调度算法 (进程调度)

  • 更成熟的多级队列调度 ——多级反馈队列

最通用的调度算法,多数OS都使用该方法或其变形,如UNIX、Windows等。

算法:

  1. 设置多个就绪队列,并为各个队列赋予不同的优先级。
  2. 一个新进程进入内存后,首先将它放入第一队列的末尾,按FCFS原则排队等待调度。
  3. 仅当第一队列空闲时,调度程序才调度第二队列中的进程运行
实时调度

实现实时调度的基本条件:

  • 提供必要的调度信息
  • 系统处理能力强
  • 采用抢占式调度机制
  • 具有快速切换机制
    • 具有快速响应外部中断的能力
    • 快速的任务分派能力

实时调度算法的分类 :

  • 非抢占式调度算法

    • 非抢占式轮转调度算法,常用于要求不太严格的实时控制系统。
    • 非抢占优先权调度算法,常用于有一定要求的实时控制系统。
  • 抢占式调度算法

    • 基于时钟中断的抢占式优先权调度算法 ,大部份实时系统采用
    • 立即抢占(Immediate Preemption)的优先权调度算法 ,严格的实时系统采用

常用的几种实时调度算法

  • 最早截止时间优先即EDF(Earliest Deadline First) 算法

截止时间愈早,其优先级愈高, 既可用于抢占式调度,也可用于非抢占式调度方式中。

  • 最低松弛度优先即LLF(Least Laxity First)算法

松弛度=完成截止时间–剩余运行时间–当前时间

该算法按松弛度排序实时任务的就绪队列,松弛度值最小的任务排在队列最前面,调度程序总是选择就绪队列中的队首任务执行。
该算法主要用于可抢占调度方式中。

当等待任务的松弛度值为0时才进行抢占,如果一个进程的松弛度(>0)小于正在运行进程的松弛度时,是不会抢占的!

产生死锁的必要条件

  • 互斥条件
  • 请求和保持条件
  • 不剥夺条件
  • 环路等待条件

处理死锁的基本方法

  • 预防死锁:破坏死锁的四个条件
  • 避免死锁
  • 检测死锁
  • 解除死锁

即LLF(Least Laxity First)算法

松弛度=完成截止时间–剩余运行时间–当前时间

该算法按松弛度排序实时任务的就绪队列,松弛度值最小的任务排在队列最前面,调度程序总是选择就绪队列中的队首任务执行。
该算法主要用于可抢占调度方式中。

当等待任务的松弛度值为0时才进行抢占,如果一个进程的松弛度(>0)小于正在运行进程的松弛度时,是不会抢占的!

产生死锁的必要条件

  • 互斥条件
  • 请求和保持条件
  • 不剥夺条件
  • 环路等待条件

处理死锁的基本方法

  • 预防死锁:破坏死锁的四个条件
  • 避免死锁
  • 检测死锁
  • 解除死锁
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一些计算机操作系统复习题及答案,供您参考: 1. 什么是操作系统? 答:操作系统是一种软件,它控制着计算机硬件资源,提供应用程序运行的环境,同时管理和协调系统内部各个部分的工作。 2. 操作系统的主要功能有哪些? 答:操作系统的主要功能包括进程管理、内存管理、文件系统管理、设备管理和网络管理等。 3. 什么是进程? 答:进程是计算机中正在运行的程序的实例。每个进程都有自己的地址空间、程序计数器、堆栈等信息。 4. 进程有哪些状态? 答:进程有就绪、运行、阻塞和终止四种状态。 5. 什么是线程? 答:线程是进程中的一个执行单元,它与同一进程中的其他线程共享相同的地址空间和系统资源。 6. 线程和进程的区别是什么? 答:线程是进程中的一个执行单元,它与同一进程中的其他线程共享相同的地址空间和系统资源。进程则是一个正在运行的程序的实例,每个进程都有自己的地址空间、程序计数器、堆栈等信息。 7. 什么是死锁? 答:死锁是指两个或更多的进程在等待对方释放资源,而无法继续执行的情况。这种情况下,系统将处于僵局状态。 8. 操作系统如何避免死锁? 答:操作系统通过使用资源分配算法、进程调度算法和死锁检测及恢复算法来避免死锁。 9. 什么是虚拟内存? 答:虚拟内存是一种技术,它将硬盘空间用作内存扩展,允许运行的程序占用大于物理内存大小的内存空间。 10. 虚拟内存的作用是什么? 答:虚拟内存的作用是增加计算机的可用内存,使得更多的程序可以同时运行。它还可以提高系统的性能,因为它允许计算机在物理内存不足时使用硬盘空间作为临时存储空间。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值