精华内容
下载资源
问答
  • 操作系统期末

    2021-06-09 08:40:21
    操作系统引论 1. 操作系统的定义及主要目标 定义: 主要目标: 作用: 1、作为用户和计算机硬件系统之间的接口 2、作为计算机系统资源的管理者 3、实现对计算机资源的抽象 2. 操作系统的基本类型及特征 操作系统的...

    操作系统引论

    1. 操作系统的定义及主要目标
    定义:
    在这里插入图片描述主要目标:
    在这里插入图片描述作用:
    1、作为用户和计算机硬件系统之间的接口
    2、作为计算机系统资源的管理者
    3、实现对计算机资源的抽象

    2. 操作系统的基本类型及特征
    操作系统的基本类型:
    在这里插入图片描述各种类型的特征:
    (省)

    3. 操作系统的功能及特征
    操作系统的基本功能:
    1、处理机管理
    在这里插入图片描述2、存储器管理
    在这里插入图片描述3、设备管理
    在这里插入图片描述4、文件管理
    在这里插入图片描述5、操作系统接口
    在这里插入图片描述

    操作系统的基本特征:
    1、并发性
    2、共享性

    • 互斥共享方式
    • 同时访问方式

    3、虚拟性(把物理上的实体变为若干逻辑上的对应物)

    • 时分复用技术(空间换时间)
      虚拟处理机技术
      虚拟设备技术
    • 空分复用技术(时间换空间)
      虚拟存储技术

    4、异步性(不确定性)
    多道程序环境下,程序以异步方式执行。每道程序在何时执行、各自执行的顺序、完成每道程序所需要的时间都是不确定的,也是不可预知的

    CPU管理

    4、进程的定义及特征
    定义:
    一个程序对某个数据集在处理机上的执行过程,是系统进行资源分配和处理机调度的基本单位
    特征:
    在这里插入图片描述

    5. 进程控制块概念、作用及主要内容
    6. 进程基本状态及其转换,以及转换的原因
    7. 原语及特征
    8. 临界资源、临界区
    9. 进程两种制约关系与进程互斥、同步
    10. 用信号量和p、v操作机制实现进程的同步和互斥
    11. 线程的定义、引入线程的目的,线程与进程的比较
    12. 处理机的调度层次及主要任务
    13. 进程调度及进程调度的主要任务
    14. 常用的作业调度及进程调度算法
    (先来先服务、短者优先、高响应比优先、最高优先级优先、轮转调度算法)
    15. 多级反馈队列调度算法及其优点?
    16. 死锁定义、产生死锁的原因、必要条件和解决死锁的方法
    17. 预防死锁的方法
    18. 避免死锁与银行家算法的应用

    展开全文
  • 操作系统期末考试

    2019-04-22 14:46:05
    操作系统期末考试试题和答案操作系统期末考试试题和答案
  • 操作系统期末考试重点

    万次阅读 多人点赞 2019-01-02 01:00:01
    操作系统期末考试重点 操作系统的两个基本特征是:并发性和共享性 进程的基本特征是:动态、并发 计算机系统由硬件系统和软件系统两大部分组成,由操作系统对它们进行管理,以提高系统资源的利用率。 操作系统...

    操作系统期末考试重点

    选择填空

    1. 操作系统的两个基本特征是:并发性和共享性
    2. 进程的基本特征是:动态、并发
    3. 计算机系统由硬件系统软件系统两大部分组成,由操作系统对它们进行管理,以提高系统资源的利用率。
    4. 操作系统的四大资源管理功能:处理器管理,存储器管理,设备管理和文件管理
    5. 多道程序设计可以将一个以上的作业放入内存,并且同时处于运行状态。
    6. 时间片概念一般用于分时操作系统
    7. 在分时系统中,当时间片一定时,用户数越多,响应时间越长。
    8. 分时操作系统允许在一台主机上同时连接多台终端,多个用户可以通过个字的终端同时交互地使用计算机。
    9. 操作系统是对计算机资源进行管理的软件。
    10. 多道程序设计是指在一台处理器上并发运行多个程序。
    11. 进程存在唯一标识:PCB(进程控制块)
    12. 在PCB中,用于进程调度的是:说明信息
    13. 分配给进程的时间片用完而强迫进程让出CPU,此时进程处于就绪状态
    14. 原语的主要特点是不可分割性
    15. 在多道程序中负责从就绪队列中选中一个进程占用CPU的是进程调度
    16. 并发进程之间可能需要同步或互斥
    17. 在操作系统中,PV操作是一种低级进程通信原语。
    18. 根据进程的紧迫性进行进程调度,应采用优先权调度算法
    19. 进程的切换是由进程状态的变换引起的。
    20. 进程通常由程序、数据集合PCB(进程控制块) 三部分组成。
    21. 进程的特征:动态、独立、异步、并发
    22. 把作业地址空间中使用的逻辑地址变成内存中使用的物理地址称为地址变换
    23. 在可变分区管理方式中,最佳适应算法是将空闲分区在空闲分区表中按容量递增次序排列。
    24. 在可变分区存储管理方式中的紧凑技术可以集中空闲区
    25. 在以下存储管理方案中,不适用于多道程序设计系统的是单用户连续分配。P85
    26. 在可变式分区分配方案中,某一作业完成后,系统收回其内存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是有上邻空闲区,也有下邻空闲区
    27. 在分页系统环境下,程序员编制的程序,其地址空间是连续的,分页是系统完成的。
    28. 系统“抖动”现象的发生是由置换算法选择不当引起的。
    29. 虚拟存储管理系统的基础是程序的局部性理论。
    30. 把作业装入内存中随即进行地址变换的方式称为静态地址变换,而在作业执行期间,当访问到指令或数据时才进行地址变换的方式称为动态地址变换
    31. 设有8页的逻辑空间,每页有1KB,它们被映射到32块的物理存储区中。那么,逻辑地址的有效位是13位,物理地址至少是15位。(解析:8=23,1KB=210B,32=25。逻辑地址为3+10,物理地址为5+10)
    32. 缓冲技术中的缓冲池在主存中。
    33. CPU输出数据的速度远远高于打印机的打印速度,为了解决这一矛盾,可以采用缓冲技术。
    34. 通过硬件和软件的功能扩充,把原来独立的设备改造成能为若干用户共享的设备,这种设备称为虚拟设备
    35. 通道是一种I/O专用处理器
    36. 如果I/O设备与存储设备进行数据交换不经过CPU来完成,这种数据交换方式是DMA方式
    37. 大多数低速设备都属于独占设备。
    38. 磁盘是直接存取的存储设备。
    39. SPOOLing技术是操作系统中以空间换取时间的技术。
    40. 在操作系统中,用户在是用I/O设备时,通常采用逻辑设备名
    41. 先来先服务算法是设备分配常用的一种算法。
    42. 引入缓冲的主要目的是改善CPU和I/O设备之间速度不匹配的情况
    43. 使用户编制的程序与实际使用的物理设备无关是由虚拟设备功能实现的。
    44. 操作系统中采用缓冲技术的目的是为了增强系统并行操作的能力。
    45. 磁盘上的文件已为单位读写。
    46. 磁带上的文件一般只能顺序存取
    47. 从资源管理的角度出发,I/O设备可以分为独占设备共享设备虚拟设备三种类型。
    48. 虚拟设备是通过虚拟技术把独占设备变成若干个用户共享的设备。
    49. 按所属关系可以把I/O设备分为系统设备用户设备两类。
    50. 文件代表了计算机系统中的软件资源
    51. 从用户角度看,引入文件系统的主要目的是实现对文件的按名存取
    52. 为了解决不同用户文件的“命名冲突”问题,通常在文件系统中采用多级目录/树形目录
    53. 数据库文件的逻辑结构形式是字符流式文件
    54. 在下列文件的物理结构中,顺序结构不利于文件长度的动态增长。
    55. 一个文件的绝对路径是从根目录开始的。
    56. 文件系统中,记录顺序与物理文件中占用物理块顺序一直的是顺序文件
    57. 如果文件系统中存在两个文件同名,那么就不应该采用一级目录
    58. 文件的物理结构有顺序结构链接结构索引结构
    59. 计算机网络一般是由传输介质网络交换设备网络互联设备服务器网络操作系统网络协议等6个部分组成。
    60. 常见的网络拓扑结构有星型结构总线型结构环型结构树型结构网状结构

    简答题

    1. 从资源管理观点看,操作系统具有哪些功能?
      处理器管理,对处理器进行分配,并对其运行进行有效地控制和管理;
      存储器管理,提高存储器的利用率,并能从逻辑上扩充内存;
      设备管理,完成用户提出的I/O请求,为用户分配I/O设备,提高CPU与I/O设备的利用率,提高I/O设备运行速度,方便用户使用I/O设备。
      文件管理,对用户文件和系统文件进行管理。

    2. 操作系统具有哪些基本特征?
      并发性,是指两个或多个事件在同一时间间隔内发生;
      共享性,是指系统中的资源可供多个并发执行的进程使用;
      虚拟性,是指通过某种技术把一个物理实体变成若干个逻辑实体;
      异步性,是指多个并发执行的进程,由于资源的限制,进程的执行不是“一气呵成”的,而是“走走停停”的。

    3. 进程的基本状态以及它们之间的切换:就绪、运行和等待状态。

    4. 死锁产生的四个必要条件:
      互斥条件,进程对分配到的资源进行排他性、独占性使用;
      请求和保持条件,进程已经拥有并保持了至少一个资源;
      不可剥夺条件,进程所占有的资源在结束之前不能被剥夺,只能在运行结束后由自己释放;
      环路等待条件,在发生死锁时,必然存在一个“进程——资源”的环形链。

    5. 产生进程死锁的原因是什么?如何解除死锁?
      原因:竞争资源;进程推进顺序非法。
      死锁的解除:剥夺资源法,从其他进程剥夺足够的资源给死锁进程;撤销进程法,系统采用强制手段将死锁进程撤销。

    6. 概念区分——程序与进程:程序是计算机指令的集合,以文件的形式存储在磁盘上;进程是一个程序在一个数据集合上的一次运行过程,是资源分配和调度的基本单位。

    7. 概念区分——并发与并行:并发是指在一个时间段内,有多个进程同时运行;并行是指在某一时刻有多个进程同时运行。

    8. 什么是虚拟设备?请说明SPOOLing系统如何实现虚拟设备?
      当系统只有一台输入设备或一台输出设备的情况下,可允许两个以上的作业并行执行,并且每个作业都感觉到获得了供自己独占使用的输入设备和输出设备。
      SPOOLing技术借助磁盘和通道实现了输入/输出过程的共享。当用户提出输入/输出请求时,系统及时响应,此时用户会认为已独占输入/输出设备;但事实上,有多道作业同时进入该过程,并分别占用各个阶段。

    9. 设备分配时为什么要考虑安全性以及与设备的无关性?考虑安全性是为了提高系统的适应性和均衡性,避免死锁的产生;设备无关性使得用户的应用程序独立于实际的物理设备,不仅方便了用户,而且设备分配比较灵活,也便于实现I/O重定向。

    10. 什么是逻辑设备?什么是物理设备?如何实现从逻辑设备到物理设备的转换?
      用户程序中使用的设备是逻辑设备,计算机系统中实际配置的设备是物理设备。
      在OS中,通常设置了反映逻辑设备和物理设备对应关系的数据结构,其中存放了逻辑设备名、物理设备名及设备驱动程序入口地址等信息,通过该数据结构即可实现逻辑设备到物理设备的转换。

    11. 什么是缓冲?为什么引入缓冲?
      缓冲技术是用来在两种不同速度的设备之间传输信息时平滑传输过程的常用手段。
      引入缓冲的主要原因是:

      • 缓和CPU和I/O设备速度不匹配的矛盾;
      • 减少对CPU的中断频率,放宽对中断响应时间的限制;
      • 提高CPU和I/O设备之间的并行性。
    12. 名词解释——文件:文件时具有文件名的一组相关信息的集合。

    13. 名词解释——文件系统:文件系统是指操作系统中负责管理和存取文件的程序模块。

    14. 什么是文件的逻辑结构?文件有哪几种逻辑结构?
      文件的逻辑结构是指从用户观点出发所看到的文件组织形式。可分为两种,记录式文件和流式文件。

    15. 什么是文件的物理机构?文件有哪几种物理结构?
      文件的物理结构是指文件在外存上的存储组织形式。可分为三种,顺序结构、链接结构和索引结构。

    16. 文件目录有哪几种常见的结构方式?
      一级目录、二级目录和多级目录。

    计算题

    1. 设有5个进程,它们的提交时间和运行时间如下表所示:试分别给出下面3种调度算法,进程的执行顺序和平均周转时间,并画出它们的时序图。
      (1)先来先服务调度算法;
      (2)短进程优先调度算法;
      (3)时间片轮转调度算法(假设时间片大小为0.1小时)。
    进程名 提交时间 需运行时间
    P1 10.1时 0.3小时
    P2 10.3时 0.6小时
    P3 10.5时 0.5小时
    P4 10.6时 0.3小时
    P5 10.7时 0.2小时

    答案:
    在这里插入图片描述
    2. (10分)有5个作业A,B,C,D,E,它们几乎同时到达,预计它们的运行时间分别为10,6,2,4,8(秒),其优先权分别为3,5,2,1,4,这里5位最高优先权。对于下列每一种调度算法,计算其平均周转时间(作业切换开销可以不考虑)。
    (1)先来先服务(按A,B,C,D,E的次序)调度算法;
    (2)优先权调度算法;
    (3)最短作业优先调度算法;
    (4)时间片轮转调度算法(假设时间片大小为2秒)。
    答案:(1)19.2s(2)20s(3)14s(4)20.4s

    进程名 到达时间 运行时间 先来先服务调度 优先权调度 最短作业优先调度
    完成时间周转时间平均周转时间完成时间周转时间平均周转时间完成时间周转时间平均周转时间
    A010101019.2161616303014
    B 0 6161630301212
    C 0218186622
    D 0422224466
    E 08303024242020
    1. 设作业的逻辑地址为24位,其中高8位为短号,低16位为段内相对地址。试问:
      (1)一个作业最多可以有多少段?
      (2)每段的最大长度为多少字节?
      答案:(1)28=256段(2)216字节

    2. 在分页存储管理方式下,若用户去的起始地址为2000,页面大小(页长)为4KB,已装入内存的作业的页表为下图所示,请计算下列逻辑地址所对应的物理地址:376,2872,18702,4769,20837

    页号 块号
    0 2
    1 6
    2 12
    3 20
    4 27

    答案:376的物理地址是2000+2*4*1024+376;
    2872的物理地址是2000+2*4*1024+2872;
    18702的物理地址是2000+27*4*1024+1872;
    4769的物理地址是2000+6*4*1024+700;
    20873的页号是5,没有在页表中,会发生缺页中断。
    解析:先计算页号和业内地址(逻辑地址除以页长,商为页号,余数为业内地址),然后计算物理地址=块号*块长+块内地址+起始地址。块长等于页长,块内地址等于业内地址。
    5. 某个采用分段存储管理的系统为装入内存的一个作业建立了如下段表,计算该作业访问内存地址(0,337),(1,100),(2,200),(3,550),(4,850)时的物理地址。

    段号 段始址 段长
    0 2110 630B
    1 3500 140B
    2 190 100B
    3 1200 520B
    4 3900 970B

    答案:2447(2110+337),3600(3500+100),段长越界,段长越界,4870(3900+850)
    解析:内存地址=(段号,段长)。段号对应段始址。物理地址=段始址+段长。

    展开全文
  • 操作系统期末.docx

    2021-03-29 16:02:01
    操作系统期末.docx
  • 广工操作系统期末试卷 广工操作系统期末试卷 广工操作系统期末试卷 广工操作系统期末试卷广工操作系统期末试卷 广工操作系统期末试卷广工操作系统期末试卷 广工操作系统期末试卷广工操作系统期末试卷 广工操作系统...
  • 操作系统期末考试课件,操作系统考试资源,大学生操作系统考试,操作系统原理,操作系统原理考试,考试稳过
  • 操作系统期末复习
  • 操作系统期末考试复习总结
  • 操作系统期末复习

    2021-02-23 23:19:40
    操作系统期末复习


    1.操作系统的定义
    (是什么)是计算机系统中的一个系统软件,是一些程序模块的集合
    (干什么)它们管理和控制计算机系统中的软硬件资源,合理的组织计算机的工作流程,
    (为什么)以便有效的利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算机与其用户之间起到接口的作用。

    2.操作系统功能

    1. 处理机管理:
      在多道程序或多用户的情况下,要组织多个作业或进程同时运行,允许多个程序共享处理机,就要解决对处理机分配调度策略、分配实施和资源回收等问题
    2. 存储管理
    3. 内存分配:保证各用户程序的存储区不冲突
    4. 存储保护:保证一道程序在执行过程中不会有意无意破坏另一道程序
      内存扩充:把内部存储器和外部存储器结合起来管理,为用户提供一个容量比实际内存 大得多的虚拟存储器
    5. 设备管理:
      对通道,控制器,输入输出设备的分配和管理
      设备独立性:为用户提供一个良好的界面而不去涉及具体的设备特性
      文件系统管理
    6. 用户接口:命令控制界面接口 系统调用接口

    3.操作系统的特征 并发 共享 虚拟 异步
    并发:指两个或两个以上的事件或活动在同一时间间隔内发生
    共享:共享指操作系统中的资源可被多个并发执行的进程所使用
    虚拟:虚拟是指把一个物理上的实体变为若干个逻辑上的对应物
    异步(不确定):内存中的多个进程都按照各自独立的、不可预知的速度向前推进。这是由于它们共享资源、并发执行的缘故

    4.OS分类
    批处理:用户课脱机使用计算机,成批处理多道程序运行
    优点:共享系统资源,系统资源利用率和作业吞吐量高(用户不干预)
    缺点:无交互性,作业周转时间长
    分时:交互性,多用户同时性,独立性
    实时:及时响应 高可靠性
    网络OS:将多个计算机互联
    分布式:要求有统一的OS,不可以有明显的主从关系


    5.两种接口
    命令控制界面接口:组织控制作业执行或管理计算机系统
    系统调用接口:请求os提供服务

    6.系统调用和普通调用的区别
    运行状态不同
    系统调用的调用过程和被调用过程运行在不同的状态,而普通的过程调用一般运行在相同的状态。
    调用方法不同
    系统调用必须通过软中断机制首先进入系统核心,然后才能转向相应的命令处理程序。普通过程调用可以直接由调用过程转向被调用过程。
    返回问题
    在采用抢先式调度的系统中,当系统调用返回时,要重新进行调度分析――是否有更高优先级的任务就绪。普通的过程调用直接返回调用过程继续执行。

    7.系统调用过程
    用户在使用系统调用是,产生一条陷阱指令,处理机执行时产生中断
    由陷阱处理启动相关的处理程序完成系统调用的相关工作
    保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序
    然后返回用户程序继续执行


    8.进程描述
    是一个程序对某个数据集执行过程,是分配资源的基本单位
    静态描述:程序段,数据段,进程控制块(动态特征)
    顺序关联的静态描述:进程上下文

    PCB包含了有关进程的描述信息、控制信息以及资源信息,是进程动态特征的集中反映
    PCB区的大小决定了系统中最多可同时存在的进程个数,称为系统的并发度

    进程上下文切换发生在不同的进程之间而不是同一个进程内

    9.程序顺序执行的特点:顺序性;封闭性;可再现性

    10.操作系统引入进程的概念
    从理论角度看,是对正在运行的程序过程的抽象;
    从实现角度看,是一种数据结构,目的在于清晰地刻划动态系统的内在规律,有效管理和调度进入计算机系统运行的程序

    11.进程的特征:动态性,独立性,并发性,异步性

    12.PCB概念
    PCB包含了有关进程的描述信息、控制信息以及资源信息,是进程动态特征的集中反映。
    进程的PCB是系统感知进程的唯一实体
    为了描述和控制进程的运行,系统为每个进程定义了一个数据结构—进程控制块PCB,它是进程实体的一部分,是操作系统中最重要的记录型数据结构。
    PCB中记录了操作系统所需的、用于描述进程的当前情况以及控制进程运行的全部信息。操作系统是根据PCB来对并发执行的进程进行控制和管理的。

    13.进程状态

    1. 就绪状态
      当进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立即执行,进程这时的状态称为就绪状态。
      在一个系统中处于就绪状态的进程可能有多个,通常将它们排成一个队列,称为就绪队列。
    2. 执行状态
      进程已获得CPU,正在执行。在单处理机系统中,只有一个进程处于执行状态
    3. 阻塞状态
      正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态,也称为等待状态。

    致使进程阻塞的典型事件有:请求I/O,申请缓冲空间等。通常将这种处于阻塞状态的进程也排成一个队列。有的系统则根据阻塞原因的不同而把处于阻塞状态的进程排成多个队列。

    14.进程控制
    进程控制,就是系统使用一些具有特定功能的程序段(原语)来创建、撤销进程以及完成进程各状态间的转换
    创建原语,撤销原语,阻塞原语,唤醒原语
    原语:原语是一种特殊的系统功能调用,它可以完成一个特定的功能。其特点是原语执行时不可被中断,不允许并发执行,在操作系统中它是一个不可分割的基本单位。一个原语操作中的所有动作,要么全作,要么全不作。

    15.临界区:访问公用数据的程序 不允许多个并发进程交叉执行的一段程序
    临界资源:系统中某些资源一次只允许一个进程使用

    16.间接制约,直接制约,互斥,同步

    1. 间接约束:
      由于共享某一共有资源而引起的在临界区内不允许并发进程交叉执行,各个进程间竞争使用这些资源的现象,
    2. 互斥:
      一组并发过程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不允许交叉执行的单位执行
      不允许两个以上的共享该资源的并发进程同时进入临界区称为互斥
    3. 直接制约:
      系统中多个进程中发生的事件存在某种时序关系,各自的执行结果互为对方的执行条件,需要相互合作,共同完成一项任务。
    4. 同步:
      在异步环境下的一组并发进程因直接约束而互相发送消息而进行互相操作,互相等待,使得各进程按照一定速度执行的过程

    17.互斥原则
    有空让进:当无进程在临界区时,任何有权使用临界区的进程可进入
    忙则等待:同时有多个进程要求进入临界区,只能让其中之一进入临界区,其他进程必须等待
    让权等待:并发进程中的某个进程不在临界区时,不阻止其它进程进入临界区;保证平等、独立的竞争和使用公有资源的权力,且保证任一时刻至多只有一个进程在临界区
    有限等待:任何进入临界区的要求应在有限的时间内得到满足;保证并发进程不发生死锁

    18.信号量含义
    当S .value ≥0时,表示某类可用资源的数目。或者说表示可以执行P操作而不会被阻塞的进程的数目
    当S .value <0时,其绝对值表示信号量S的阻塞队列中的进程数,即系统中因请求该类资源而被阻塞的进程的数目,亦即被信号灯挡住的进程数目

    19.高级通信
    共享存储器机制:
    要求通信进程之间共享某些变量,并通过这些变量交换信息,不需要数据移动
    消息传递机制:
    (1)直接通信方式
    发送进程直接把消息发送给接收进程,并将它挂在接收进程的消息缓冲队列上
    (2)间接通信方式
    发送进程把消息发送到某个中间实体中,接收进程从中取得消息
    管道通信机制:
    是指用于连接一个读进程和一个写进程以实现他们之间通信的一个共享文件

    20.死锁
    死锁概念:
    所谓死锁,是指各并发进程彼此互相等待对方所拥有的资源,且这些并发进程在得到对方的资源之前不会释放自己所拥有的资源。从而造成大家都想得到资源而又得不到资源,各并发进程不能继续向前推进
    死锁起因:并发进程的资源竞争
    根本原因:系统提供的资源数少于并发进程所要求该类资源数

    21.产生死锁必要条件
    互斥条件:涉及的资源不能同时被两个进程以上的进程使用
    不剥夺条件:不能强行剥夺进程拥有的资源
    部分分配条件:进程每次申请它所需要的一部分资源,在等待一新资源时继续占有已分配的资源
    环路条件:存在一种进程的循环链,链中的每一个进程已获得的资源同时被链中的下一个进程所请求

    22.解决死锁的方法为:预防、避免、检测与解除
    预防:是采用某种策略,限制并发进程对资源的请求,从而使得死锁的必要条件在系统执行的任何时间都不满足。
    避免:是指系统在分配资源时,根据资源的使用情况提前做出预测,从而避免死锁的发生。
    银行家算法
    死锁检测与解除:当死锁发生时,能够检测到死锁发生的位置和原因,并能通过外力破坏死锁发生的条件,从而使得并发进程从死锁状态中恢复出来。

    23.线程
    引入线程是为了提高系统的执行效率,减少处理机的空转时间和调度切换(保护现场信息)的时间和空间,提高操作系统的并发性能
    在引入线程的系统中,线程是调度和分派的基本单位,而进程是拥有资源的基本单位
    线程可分为用户级线程和内核级线程,同一进程的线程共享进程的进程空间和其他所有资源
    线程也有就绪、阻塞和运行三种基本状态
    线程最适合多处理机系统、网络或分布式系统

    用户级线程 OS内核不知道线程的存在,调度单位仍是进程,线程不涉及处理机切换
    核心级线程:线程之间的切换需要内核支持;以线程为基础进行调度
    核心级线程的上下文切换时间要>用户级(切换需要内核支持)


    24.处理机调度
    处理机调度分为四级:

    1. 作业调度:又称宏观调度或高级调度
      按一定的原则对外存上的大量后备作业进行选择,给选出的作业分配内存等必要的资源,并建立相应的进程。另外当作业执行完毕时,还负责回收系统资源
      分时系统和实时系统中不存在作业调度
    2. 交换调度:中级调度
      按给定的原则和策略,将处于外存交换区中的就绪状态的进程调入内存,或把处于内存阻塞状态的进程交换到外存交换区
      主要涉及到内存管理与扩充,也归入内存管理部分
    3. 进程调度:微观调度或低级调度-
      按某种策略和方法选取一个处于就绪状态的进程占用处理机。
    4. 线程调度
      对于支持多线程的系统,按某种策略和方法选取一个处于就绪状态的线程占用处理机

    25.作业状态:提交;收容;执行;完成

    26.调度算法

    1. 衡量:周转时间 作业在系统内停留时间:等待时间+执行时间
      带权周转时间:作业周转时间与作业执行时间之比
    2. 先来先服务FCFS 非抢占
      开销小,不利于短作业
      短进程优先法SPF 非抢占
      可获得最大吞吐量,不利于长作业
      最短剩余时间法SRT 抢占
      最高相应比HRN – 相应比的计算 (W+T)/T 非抢占

    对FCFS和SJF方式的一种综合平衡。
    FCFS只考虑等待时间未考虑执行时间的长短;SJF只考虑执行时间未考虑等待时间
    优先级法HPF 抢占/非抢占
    轮转法RR 抢占/非抢占
    多级轮转法FB 抢占/非抢占


    27.存储管理功能
    主要任务合理地建立用户程序与内存空间的对应关系,为各道程序分配内存空间,运行完成后再予以回收,而且始终要保证系统程序和各用户程序安全

    1. 虚拟存储器:不考虑物理存储器的大小和信息存放的位置,只规定每个进程中相互关联的信息的相对位置
      每个进程都拥有自己的虚拟存储空间
    2. 地址变换:将多个虚存的一维线性空间或多维线性空间变化到内存的物理线性地址空间 即:虚拟地址映射为内存地址
      静态地址重定位:程序执行之前全部完成映射, 完成一个首地址不同的连续地址变换
      动态地址重定位:CPU访问内存之前,将要访问的部分程序或数据地址转换为内存地址
    3. 内外存之间的数据传输:为了达到内存扩充的目的;
      用户控制 — 覆盖;一个程序内,不会同时执行(没有调用关系)的程序段共用同一个主 存区
      操作系统控制 — 交换:处于等待状态的进程换出内存,而把那些处于就绪状态的进程 换入内存
      请求调入和预调入
    4. 内存分配与回收
    5. 内存信息的共享和保护:防止地址越界,权限越权

    28.分区存储的原理
    是把内存划分为若干个大小不等的区域,除OS占用一个区域之外,其余由多道环境下的各并发进程共享
    给每个内存的进程划分一块适当大小的存储区,以连续存储各进程的程序和数据,使得各进程得以并发执行。

    固定分区法分配与回收:
    分区说明表说明各分区号、分区大小、起始地址和是否是空闲区
    动态分区法分配与回收:
    登记空闲区的说明信息:
    空闲区表:空闲区长度和起始地址
    空闲区队列:存放本空闲区的大小以及下个空闲区的起始地址
    最先适应发,最佳适应法,最坏适应法

    29.页式管理
    数据结构:
    页表:虚地址与页面实地址对应
    请求表:保存各进程页表对应位置 和 进程所需要的页面数
    存储页面表:内存的页面是否被分配(位置图 空闲页面链)
    静态页式管理:各个页所占的内存块可以不连续,一次性把作业的全部页面装入内存
    动态页式管理:
    地址变换:请求表找到对应页表,由逻辑地址从页表中找到对应的页面号和页内地址(物理地址)
    如果对应的页不在内存(由页表中的中断位发现):缺页中断,有空闲页面,直接调入;没有空闲页面进行置换算法,置换的页没有被修改过时可以直接被替换
    页面置换算法:FIFO – Belady现象,LRU,clock(访问位),改进clock(访问位,修改位)

    30.段式管理
    按程序自身的逻辑关系划分为若干个程序段,每个程序段都有一个段名,且有一个段号,以段为单位分配内存,每一个段在内存中占据连续空间,但各段之间可以不连续存放
    可以采用与动态分区法相同的数据结构 — 空闲区表 最先/最佳/最坏适应法
    可以采用与页式管理相同的置换算法 — FIFO,LRU,clock

    31.局部性原理
    在几乎所有的程序的执行中,在一段时间内CPU总是集中地访问程序中某一个部分而不是随机地对程序所有部分具有平均访问概率--这种现象称为局部性原理

    抖动问题
    如果置换算法选择不当,有可能产生刚被调出内存的页又要马上被调回内存,调回内存不久又要马上被调出,如此反复的局面
    系统换页或换段频繁时,以致大部分时间都花费在内外存之间的来回调入调出上,访问外存时间和输入/输出处理时间大大增加,反而造成CPU因等待数据空转,使得整个系统性能大大下降,这就造成了系统抖动
    产生抖动原因:分给进程的内存小于所要求的工作集;选择的页或段的淘汰算法不适
    解决抖动:扩大工作集;选择不同的淘汰算法;挂起某些进程


    32.传输控制方式
    程序直接控制法:有用户进程直接控制内存或CPU和外围设备之间进行传输数据
    优点:控制简单,不需要多少硬件支持
    缺点:CPU与外围设备只能串行工作
    中断控制方式:利用CPU发送中断的方式控制外围设备和CPU传输数据
    优点:提高了CPU的利用率,支持多道程序和设备并行操作
    缺点:数据缓存寄存器比较小,中断次数过多仍占用大量的CPU时间,也可能造成CPU 无法相应中断导致中断丢失
    DMA:在外围设备和内存间开辟直接的数据交换通路进行数据传输
    优点:除了在数据块传输开始时需要CPU启动指令,在整个数据块传输结束后需要CPU 中断外,不需要CPU干涉
    缺点:多个DMA控制器同时使用会造成内存地址冲突;对外围设备的管理和某些操作 仍由CPU控制
    通道:控制内存或CPU和外围设备进行数据传输,通道是一个独立于CPU的专门管输入输出的控制机构,控制设备与内存直接进行数据交换
    优点:进一步减轻了CPU的负担,一个通道可控制多台设备与内存进行数据交换
    缺点:增加了额外的硬件

    33.中断
    在计算机执行期间,系统内发送任何非寻常的或非预期的急需处理的事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完成后又返回原来被中断处继续执行的过程

    34.缓冲
    为了匹配外设与CPU之间的处理速度,为了减少中断次数和CPU中断处理时间,同时也为了解决DMA或通道瓶颈问题
    (为了提高CPU与外设的并行度,减少CPU中断频率)
    种类:单缓冲,双缓冲,多缓冲,缓冲池

    35.设备分配
    系统设备表SDT
    记录所有物理设备的情况 包含DCT
    设备控制表DCT
    系统中每个设备都必须有一张 设备和控制器相连 包含COCT
    控制器表COCT
    每个控制器一张 I/O控制器与通道相连情况 包含CHCT
    通道控制表CHCT
    每个通道一张

    36.磁盘访问时间
    寻道时间:mn+s m磁盘驱动速度 n 寻道道数 s 启动磁头
    旋转延迟(平均): 1/2 * 1/r r为磁盘每秒钟的转数
    数据读取时间: b
    1/r*1/N N为一个磁道上的字节数。 1/r 旋转一周时间


    37.文件的逻辑结构和物理结构

    1. 逻辑结构:字符流式无结构文件 和 记录式有结构文件
    2. 物理结构:文件存储设备划分若干大小相等的物理块,将文件信息也划分为与物理存储设备 的物理块大小相等的逻辑块,以块作为分配和传输信息的基本单位

    连续文件:

    • 优点:文件读取表现好,高效的顺序访问和随机访问
    • 缺点:碎片问题,不利于文件的动态增长

    链式文件:

    • 优点:文件长度可以动态增长,可以使用非连续的物理空间存储
    • 缺点:不利于随机存取,搜索效率低

    索引文件:

    • 优点:动态增长很容易,没有碎片,可以顺序和随机访问
    • 缺点:需要访问两次外存

    逻辑块号到物理块号的变换也是由文件物理结构决定的

    38.文件存储管理
    实质是一个空闲块的组织和管理的问题
    数据结构
    空闲目录文件:把文件存储设备中的空闲块的块号统一放在一个称为空闲文件目录的物理块中,每个表项对应 由多个空闲块构成的空闲区

    空闲链法:把文件存储设备的所有空闲链都链接在一起,从链头分配,链尾回收

    位示图法:每一位对应一个物理块使用情况

    39.目录文件,文件目录
    文件目录:把文件名和对文件实施控制管理的控制管理信息称为该文件的文件说明(文件控制块FCB)

    目录文件:文件目录组成目录文件
    文件系统利用目录文件完成按名存取和对文件信息的保护

    展开全文
  • 操作系统期末考试复习
  • Linux操作系统期末复习资料,内含课后习题答案解析。。
  • 操作系统期末总结-附件资源
  • 湖工大的操作系统期末复习试卷
  • 操作系统期末

    2016-01-08 03:14:45
    东南大学操作系统期末考试试卷,对复习有很大帮助,题目为英文试题
  • 操作系统期末总复习

    千次阅读 多人点赞 2020-06-06 14:57:10
    操作系统期末总复习 关注我不迷路 持续更新中......

    一.计算机系统概述

    1.操作系统是系统软件,操作系统设计的主要设计目标是方便性、可靠性
    2.操作系统是对计算机资源进行管理的软件
    3.特征:
      并发 共享 虚拟 异步
      并发:若干事件在同一时间间隔发生
      并行:若干事件在同一时刻发生
      最基本特征:并发、共享(两者互为存在条件
    4.功能:(基本功能)控制和管理系统内的各种资源重点
    (1)作为计算机系统资源的管理者

    处理机管理、存储器管理、文件管理、设备管理与中断处理
    

    (2)作为用户与计算机硬件系统之间的接口

    命令接口:允许用户直接使用
                   联机用户接口:说一句做一句
                   脱机用户接口:说一堆做一堆
    程序接口(系统调用):只能通过用户程序间接使用(避免用户直接访问外设)
                       (提供给编程人员的接口)
                        用户态转换为核心态
                        目的:请求系统服务
                        执行过程:
    传递系统调用参数---执行陷入指令(trap)指令----执行相应的服务程序----返回用户态
    

    用户可以通过命令接口和系统调用两种方式来使用计算机

    5.开机后操作系统最终被加载到RAM
    6.发展

    (1)手工操作阶段
    (2)批处理阶段(中断技术使得多道批处理系统和I/O设备可与CPU并行工作)
            1.单道批处理阶段
              特征:自动性、顺序性、单道性、封闭性
              缺点:系统资源利用率不充分
            2.多道批处理阶段(操作系统形成的标志)
              用户脱机使用计算机
              特征:制约性、间断性、共享性
              作用:提高单机资源利用率
              优点:CPU利用率高
                   系统吞吐量大
                   I/O设备利用率高
              缺点:系统开销大
                    用户响应时间较长
                    不提供人机交互能力(缺少交互性)
    (3)分时操作系统(不可以插队,有了人机交互)
             可以多个用户同时使用计算机
             运行时间分成时间片,用户以交互式的方式使用计算机“时间片轮转”
             时间片一定,用户数越多响应时间越长
             系统响应时间
             算法:优先级+非抢占式调度算法
             特点:同时性、交互性、独立性、及时性
             响应时间=用户数*时间片
             时间片=切换时间+处理时间
    (4)实时操作系统(可以插队)
            特点:及时性、可靠性
            目标:安全可靠、及时响应、快速处理
            算法:抢占式优先级高者优先
            硬实时系统:必须在被控制对象规定时间内完成(火箭发射)
            软实时系统:可以不再(订票)
    

    从可靠性看实时操作系统更强,从交互性看分时操作系统更强

    7.指令

     特权指令:不允许用户程序使用(只允许操作系统使用)
              设备管理、文件管理、进程管理、进程控制、进程通信、内存管理
     非特权指令:普通的运算指令
    

    8.处理机状态

     用户态:cpu只能执行非特权(访管指令)
     核心态:都能执行
     用户态-----核心态:通过中断(是硬件完成的)
     核心态-----用户态:特权指令psw的标志位0用户态1核心态
    

    常考谁在用户态执行,谁在核心态执行
    9.两种程序

    内核程序:都可执行(实现内核功能的程序)
    应用程序:非特权(工作在用户态)
    

    操作系统必须提供中断处理功能
    10.中断和异常

    中断(信号来源于cpu外部):强迫中断I/O结束中断
                        处理外部中断,PC值由中断隐指令自动保存
                       通用寄存器内容由操作系统保存         
    异常(信号来源于cpu内部):系统调用、缺页、整数除0
    

    11.中断处理和子程序调用

    子程序调用:保存程序断点,即下一条指令的地址
    中断:保存PC 和 PSW
    

    二.进程管理

    1.进程目的:为了更好地描述和控制程序并发执行
    2.进程实体(进程映像):PCB、程序段、数据段
    进程实体也叫进程,进程是动态的,程序是静态的。进程是进程实体的运行过程,是系统资源分配和调度的一个独立单位
    进程控制块是进程存在的唯一标志
    (PCB中有四大类:进程标志信息、进程控制信息、进程资源信息、CPU现场信息)
    3.进程特征:

    动态性、并发性、独立性、异步性、结构性
    并发性的特征(间断性、失去封闭性、不可再现性)
    

    4.进程状态在这里插入图片描述

    1)进程运行满一个时间片以后让出中央处理器,他的状态变为就绪态
    2)一个进程的状态变化不一定引起另一个进程的状态变换
    3)进程获得处理机运行时通过调度得到的
    4)进程申请处理机得不到满足时,其状态变为就绪态
    5)系统进程所请求一次I/O操作完成后进程状态由阻塞态变为就绪态
    6)进程在处理机上执行时进程之间可能是无关的也有可能是有交互性
    7)进程自身决定从运行态到阻塞态
    8)对进程的管理和控制使用原语
    9)被优先级高的抢占了CPU,由运行态变为就绪态
    10)进程的最大数目受内存大小
    

    5.进程的组织方式

    链接方式(指针队列)
    索引方式(索引表)
    

    在这里插入图片描述
    在这里插入图片描述
    6.进程通信
    进程间的信息交换

      低级通信方式:PV操作(基于数据结构的共享)
      高级通信方式:(基于存储区的共享)
            1.共享存储
            2.消息传递:两个原语(发送消息、接收消息)
                 1)直接通信方式
                 2)间接通信方式(信箱通信方式)
                 
            3.管道通信 
      (写满时不能再写,读完时,不能再读,没写满不能读,没读空不能写)  
              缓冲区只允许一边写入,另一边读出                                                                                                                                                                                                                                                                                             
    

    7.进程的创建:

    1)申请空白PCB
    2)为新进程分配资源
    3)初始化进程控制块
    4)将新进程插入就绪队列中
    

    8.线程
    在这里插入图片描述

    1)线程为调度和分派的基本单位
    2)进程拥有资源,线程不能拥有资源
    3)进程间可以并发执行,一个进程中的多个线程也可以并发执行
    4)线程切换开销远小于进程间切换
    5)引入线程可提高程序并发执行的速度,可进一步提高系统效率
    6)同一进程和不同进程内的线程都可以并发执行
    

    9.线程的实现方式

     1)用户级线程
     2)内核级线程
     线程切换可以在用户态下完成
    

    10.多线程模型

     一对一
     一对多
     多对多
    

    进程可以创建进程或线程,线程也可以创建线程,但线程不能创建进程
    11.临界资源这里要记住会经常考

     一次只能为一个进程使用的资源(互斥共享)
    

    12.临界区

    每个进程访问临街资源的代码(上锁)
    

    13.操作系统中把做出“决定把CPU分配给谁用”的程序成为“进程调度程序”

     进程调度与进程切换的区别(自己下去去了解)
    

    14.调度层次

    作业调度、内存调度、进程调度

    要做什么 调度发生在 发生频率 对进程影响
    高级调度(作业调度) 从后备队列中选择合适的作业调入内存,并为其创建进程 外存—内存(面向作业) 最低 无—创建态—就绪态
    中级调度(内存调度) 挂起队列中选择合适进程将数据调回内存 外存—-内存(面向进程) 中等 挂起态—就绪态/阻塞挂起----阻塞态
    低级调度(进程调度) 从就绪队列中选择合适的进程为其分配处理机 内存—CPU 最高 就绪态----运行态

    15.进程调度的方式

     非剥夺调度方式(非抢占式)
     剥夺调度方式(抢占式)
    

    16.调度的评价准则

    1)CPU利用率
    2)系统吞吐量:单位时间内完成作业的数量
    3)周转时间:
        
        周转时间=作业完成时间—作业提交时间
        平均周转时间=(作业1周转时间+作业2周转时间+......)/n
        带权周转时间=作业周转时间/作业实际运行时间
        平均带权周转时间=(作业1的带权周转时间+作业2的带权周转时间+......)n
    4)等待时间:等待时间越长,用户满意度越低
    

    14.常用进程调度算法非常重要!!!
    点击这里查看详细的讲解

     (1)先来先服务调度算法
     根据进程到达的先后顺序执行进程,不考虑等待时间和执行时间,会产生饥饿现象。属于非抢占式调度,优点是公平,实现简单;缺点是不利于短作业。
     不会饥饿
     (2)短作业调度算法
    会饥饿
     (3)优先级调度算法
     会饥饿
     (4)高响应比优先调度算法
            根据“响应比=(进程执行时间+进程等待时间)/ 进程执行时间”这个公式得到的响应比来进行调度。高响应比优先算法在等待时间相同的情况下,作业执行的时间越短,响应比越高,满足段任务优先,同时响应比会随着等待时间增加而变大,优先级会提高,能够避免饥饿现象。优点是兼顾长短作业,缺点是计算响应比开销大,适用于批处理系统。
      不会饥饿
     (5)时间片轮转调度算法
     不会饥饿
     (6)多级反馈队列调度算法
     会饥饿
    

    15.进程同步两种制约关系

    间接相互制约
    直接相互制约
    制约关系:是一种相互影响的关系,即某一个进程的运行除了受到系统影响外,还会受到其他进程运行的情况
    

    16.为了禁止两个进程同步进入临界区,同步机制应遵守以下准则

    1)空闲让进
    2)忙则等待
    3)有限等待
    4)让权等待
    

    17.进程同步的方式
    在这里插入图片描述

    1)软件实现方法
    在进入区设置和检查一些标志来表明是否有进程在临界区,入好已有进程在临界区则在进入区通过循环检查进行等待,进程离开临界区后则益处区修改标志 
        1.算法一:单标志法
        2.算法二:双标志法先检查
        3.算法三:双标志法后检查
        4.算法四:Peterson's Alogorithm
    2)硬件实现方式
        1.中断屏蔽法
        2.硬件指令法
           1)TestAndSet指令:这条指令是原子操作,功能是读出指定标志后把该标志设置为真
           2)Swap指令:该指令的功能是交换两个字节内容
    

    18.信号量点击这里去详细了解信号量

    只能被两个标准的原语访问wait(S)和signal(S)记为“P操作”“V操作”
    由硬件实现是不可分割的指令序列(原语与数据库中的事务一样)
    P,V操作是低级进程通信原语
    信号量机制是一种有效实现进程同步和互斥的工具
    用来解决互斥与同步问题
    

    1)整型信号量

           信号量是一个特殊的整形变量,只有初始化和PV操作才可以改变其值
           信号量分为互斥量和资源量
           互斥量的初值一般为1,表示临界区只允许一个进程进入,从而实现互斥,当互斥量为0时表示临界区已有一个进程进入,临界区外尚无进程等待,互斥量小于0时,表示临界区只有一个进程,互斥量的绝对值表示在临界区外等待进入的进程数,初值可以为任意值,表示可用资源数,当资源量小于0时表示资源全部用完            
    

    2)记录型信号量
    3)利用信号量实现同步:
    4)利用信号量实现互斥
    常考:信号量表示相关资源的当前可用数量,当信号量K>0时,表示还有K个资源可用,无等待资源。当信号量<0时,表示有|K|个进程正在等待该资源
    19.管程
    定义:

    由一组数据以及定义在这组数据之上的对这组数据的操作组成的软件(把信号量及其操作原语“封装”在一个对象内部)
    

    组成:

    局部于管程的共享结构数据说明
    对该数据结构进行操作的一组过程
    对局部于管程的共享数据设置初始值的语句
    

    特点;

     1.任何进程只能通过调用管程提供的过程入口才能进入管程访问共享数据
     2.任何时刻,仅允许一个进程在管程中执行某个内部过程
    

    管程如何实现同步

     1.对共享变量互斥操作:
     管程的特点直接实现了该要求,进程一次一个进入管程调用内部过程操作共享变量
     管程互斥访问完全由编译程序在编译时自动天上,无需程序员关心,能保证正确
     2.操作的同步控制:
     靠条件变量的操作管理实现
     进入管程但不能获取资源操作的过程将阻塞,并在满足条件时被唤醒执行
    

    管程的优点

    1.保证进程互斥的访问共享变量,并方便的阻塞和唤醒进程。管程可以以函数库的形式实现,相比之下管程比信号量号控制
    2.管程可增强模块的独立性:系统资源管理的观念分成若干模块,用数据表示抽象系统资源,使用同步操作相对集中,从而增加了模块的相对性
    3.引入管程可以提高代码的可读性,便于修改和维护,正确性抑郁保证:采用集中式同步机制,一个操作系统或并发程序由若干个这样的模块所构成,一个模块通常较短,模块之间关系清晰
    

    管程的缺点

    大多数常用的编程语言中没有实现管程,如果某种语言本身不支持管程,那么假如管程是很困难大
    

    20.死锁点击这里具体了解死锁

       就是指多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用这些进程都无法前进
       若干个进程因竞争资源而无限等待被该组进程中另一进程所占有的资源
    

    死锁处理策略

    在这里插入图片描述
    产生原因一定要牢记,会考

    (1)互斥使用(资源独占):一个资源每次只能给一个进程使用
    (2)占有且等待(请求和保持,部分分配):进程在申请新的资源的同时保持对原有资源的占有
    (3)不可抢占(不可剥夺):资源申请者不能强行的从资源占有者手中夺取资源,资源只能由占有者自愿释放
    (4)循环等待:存在一个进程等待队列 {P1 , P2 , … , Pn},其中P1等待P2占有的资源,P2等待P3占有的资源,…,Pn等待P1占有的资源,形成一个进程等待环路。
    

    当死锁产生的时候一定会有这四个条件,有一个条件不成立都不会造成死锁。其中互斥使用资源时无法破坏的
    死锁预防

    防止产生死锁的四个必要条件中任何一个条件发生即破坏产生死锁的四个条件之一。
    

    (1)破坏“互斥使用/资源独占”条件

     资源本身的特性是独占的,是排他性使用的,所以要使用一种资源转换技术,把独占资源变为共享资源。例如针对于打印机,SPOOLing技术的引入解决不允许任何进程直接占有打印机的问题。设计一个“守护进程/线程”负责管理打印机,进程需要打印时,将请求发给该daemon,由它完成打印任务。
    

    (2)破坏“占有且等待”条件

      指一个进程占有了一部分资源,在申请其他资源的时候由于得不到满足而进入等待状态。有下面两种方案实现:
    
    实现方案1:要求每个进程在运行前必须一次性申请它所要求的所有资源,且仅当该进程所要资源均可满足时才给予一次性分配。这种实现会使得资源的利用率很低,当一个进程所需要的资源不能同时满足的情况下可能一直处于等待状态,会产生饥饿现象。
    实现方案2:在允许进程动态申请资源前提下规定,一个进程在申请新的资源不能立即得到满足而变为等待状态之前,必须释放已占有的全部资源,若需要再重新申请。
    

    (3)破坏“不可抢占”条件

     实现方案是当一个进程申请的资源被其他进程占用时,可以通过操作系统抢占这一资源(两个进程优先级不同)。这种方法具有局限性,适用于状态易于保存和恢复的资源,如CPU、内存资源。
    

    (4)破坏“循环等待”条件

    主要思想是通过定义资源类型的线性顺序实现,实现方案是资源有序分配法,把系统中所有资源编号,进程在申请资源时必须严格按资源编号的递增次序进行,否则操作系统不予分配。实现资源的有序分配时需要考虑如何对资源进行编号,通常可以利用资源使用的频繁性进行排序。
    
     假如有P1,P2…Pn共n个进程,每个进程都需要一定的资源,一定可以找到某个进程所需要申请的资源的序号是最大的这个进程,从这个进程开始执行;这个进程执行完之后再继续找下一个所需要资源序号最大的进程,以此类推,因此使用资源的有序分配法一定可以解决死锁问题。
    

    死锁避免(预防系统进入不安全状态)

     安全状态
     银行家算法
    

    银行家算法经典讲解重点重点要考的
    (一)知识点

    (1)Available【j】=k系统中现有Rj类资源K个
    (2)Max【i,j】=k进程i需要Rj类资源最大数目为K个
    (3)Allocation【i,j】=k表示进程i当前已分配Rj类资源的数目为K个
    (4)need【i,j】=k表示进程i还需要Rj类资源数目K个
    

    need=Max-Allocation
    (二)安全性算法举例

     假定系统中有5个进程{P0,P1,P2,P3,P4}和三类资源{A,B,C}各种资源的数目分别是10,5,7,T0时刻的资源分配情况如下表
    

    在这里插入图片描述

     (1)第一步:先利用公式Need=Max-Allocation求出Need
         Max矩阵-Allocation矩阵=Need矩阵
    

    在这里插入图片描述

       (2)第二步:将Available向量和Need矩阵的各行进行比较
    

    找出Available小于Need的加入安全序列
    例如在初始时

    (3,3,2)>(1,2,2)(p1)
    (3,3,2)>(0,1,1)  (p2)
    

    对应两个进程为P1.P3(两个都可以选择),我先选P1

      (3)第三步:释放P1所占的资源
    

    Available=Allocation(P1)+Available
    (3 3 2)+(2 0 0)=(5 3 2)
    此时Need矩阵更新为
    在这里插入图片描述

     (4)重复(2)最后得到一个安全序列{P1,P3,P4,P2,P0}
    

    在这里插入图片描述
    (三)知识点
    设requesti是进程Pi的请求向量
    Requesti[j]=K表示进程Pi需要j类资源K个
    当Pi发出资源请求后,系统按下述步骤进行检查

     (1)若Request~i~[j]<=Need[i,j]转向步骤(2);否则认为出错,因为他所需的资源数已经超过他所宣布的最大值
     (2)若Request~i~[j]<=Available[j]则转向步骤(3),否则尚无资源,pi
     (3)系统试探着把资源分配给进程pi,并修改下面数据结构中的数值
            Available=Available-Request~i~
            Allocation[i,j]=Allocation[i,j]+Request ~i~[j]
            Need[i,j]=Need[i,j]-Request~i~[j]
     (4)系统执行安全算法,检查此次资源分配后,系统是否处于安全状态,若安全才正式将资源分配给进程P~i~,已完成本次分配;否则将此次的试探分配作废,恢复原来的资源分配状态,让进程P~i~等待
    

    (四)银行家算法举例
    假设系统资源的分配和剩余情况如下
    在这里插入图片描述
    (1)P1请求资源:P1发出请求向量
    Request1(1,0,2),系统按银行家算法进行检测:

     	Request1(1,0,2)<=Need1(1,2,2)
     	Request1(1,0,2)<=Available1(3,3,2)
     	资源分配给进程P1,并修改
     	 Available=Available-Request~1~=(2,3,0)
         Allocation1=Allocation1+Request ~1~(3,0,2)
         Need1=Need1-Request~1~(0,2,0)
     	此时资源发生变化
     	Available=(2,3,0)按照安全算法检查是否安全找到安全序列
    

    在这里插入图片描述
    找到一个安全序列{P1,P3,P4,P2,P3,P0}
    在这里插入图片描述
    所以系统是安全的可以立即将P1所申请的资源分配给他,分配后资源如上表。
    (2)P4请求资源:
    P4发出请求向量Request4(3,3,0),系统按照银行家算法进行检查

     Request4(3,3,0)<=Need4(4,3,1)
     Request4(3,3,0)<=Available4(2,3,0)(不成立)所以让P4等待
    

    银行家算法一定要掌握考试必考内容
    检测死锁

    两种方法
    资源有向图(死锁检测时检测的是资源有向图)
    资源矩阵法
    

    解除死锁
    21.死锁与安全状态的关系
    在这里插入图片描述
    系统处于不安全状态,系统便可以避免进入死锁状态
    以下内容是内存管理
    详细了解请点击内存管理
    22.进程运行的基本原理

    将用户源程序变为可以在内存中执行的程序
       编译:将用户源代码编译成若干目标模块
       链接:逻辑地址变为物理地址
       装入:将装入模块装入内存
    

    23.逻辑地址空间与物理地址空间

     0号单元开始编址(逻辑地址
    

    24.扩充内存节省主存空间

    1覆盖(同一程序或进程中)
          固定区:经常活跃的部分
          覆盖区:即将要访问的段
    2交换(不同进程/作业之间进行)
           把处于等待状态的程序从内存移到辅存,换出
           把准备好竞争cpu运行的程序从辅存移到内存,换入
           中级调度就是交换技术
    

    25.交换技术注意:

       交换需要备份存储
       执行时间比交换时间长
       若换出进程必须确保进程完全处于空闲状态
    

    26.连续分配管理方式
    一个用户程序分配一个连续的内存空间

       1单一连续分配
       2固定分区分配
       3动态分区分配
    

    27.非连续分配管理方式
    允许一个程序分散的装入不相领的内存分区

       分页存储管理
               基本分页存储管理方式
                    把主存空间划分为大小相同且固定的块,作为主存的基本单位
                    把进程也以块为单位进行划分
                    在执行时以块为单位逐个申请主存中的块空间
    

    28.基本概念:

      1 进程中的块称为页,内存中的块称为页框
       2页面大小为2的整数幂
       3地址结构:页号  |页内偏移量
            地址长度32位,0~11位为页内地址,每页4kb
            12~32位为页号,
        4页表存放在内存
        5页表项与地址对比
    

    29.基本地址变换
    逻辑地址变为内存中的物理地址

       请求分页存储管理方式
       分段存储管理
    

    总结考点
    在这里插入图片描述
    这里对内存管理就不做详细介绍了,内容太多,想学习请点击上面链接

    下面总结一下以上所有内容

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    内存管理大小太大无法上传想要的评论区

    持续更新中…

    以免迷路请关注

    展开全文
  • 操作系统期末复习资料,欢迎下载~
  • 计算机操作系统期末复习题
  • 操作系统期末试卷

    2013-01-04 16:28:22
    操作系统期末试卷 有答案
  • 操作系统期末总复习习题
  • linux操作系统期末考试题.pdf
  • 操作系统期末试卷.rar

    2019-09-10 22:26:02
    杭电操作系统期末考试2012-2015A/B卷试卷参考答案考试考研复习资料
  • 重庆大学操作系统期末试卷,往年多年的真题还有期中卷,很全
  • 操作系统期末考卷

    2014-11-15 15:26:14
    华南农业大学操作系统期末考试考卷,两年,对考试非常有用,与考试考题类似,可以省去不少时间!
  • 操作系统期末考试.rar

    2019-11-19 16:24:11
    收集的是北航2009-2012年的操作系统期末考试题以及模拟题,可做复习参考使用,最近几年的试题没有

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,135
精华内容 854
关键字:

操作系统期末