操作系统学习笔记

 

2022年10月备考的笔记,一年过去了,下个月又是自考了,各位加油啊啊。我已经过了啦。

 

第一章 操作系统概论

第二章 操作系统运行环境

第三章 进程与线程

第四章 进程同步与互斥

第五章 死锁

第六章 存储管理

第七章 文件系统

第八章 I/O设备管理

 

 

  1. 简述操作系统的概念

操作系统是计算机系统的一个系统软件,它是这样一些程序模块的集合;他们能有效地组织和管理计算机系统的硬件和软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使用整个计算机系统能够高效地运行。

 

  1. 简述操作系统与其他软件相比不同的特征

并发性、共享性、随机性

 

  1. 简述操作系统的功能
  • 进程管理(处理器管理)。进程管理包括进程控制、进程同步、进程间通信和调度等。
  • 存储管理。具体包括内存的分配与回收、存储保护和内存扩充三项存储管理功能。
  • 文件管理。文件管理的任务是有效地支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护问题,以使用户方便、安全地访问文件。
  • 设备管理。
  • 用户接口。

除此之外,操作系统还具备中断处理、错误处理等功能。操作系统的各功能之间并非完全独立的,他们之间存在着相互依赖的关系。

 

  1. 简述操作系统的体系结构
  • Windows操作系统体系结构
  • UNIX操作系统体系结构
  • Linux操作系统体系结构
  • Android操作系统体系结构

 

  1. 简述操作系统的设计过程
  • 功能设计。指的是根据系统的设计目标和使用要求,确定所设计的操作系统应具备哪些功能以及操作系统的类型。
  • 算法设计。指的是根据计算机的性能和操作系统的功能,来选择和设计满足系统功能的算法和策略,并分析和估算其效能。
  • 结构设计。指的是根据系统的功能和特性要求,选择合适的结构,使用相应结构设计方法将系统逐步分解、抽象和综合,使操作系统结构清晰、简明、可靠、易读、易修改、而且使用方便,适用性强。

 

  1. 简述操作系统的设计目标

一个高质量的操作系统应具有

  • 可靠性(正确性和健壮性)
  • 高效性
  • 易维护性(易读性、易扩充性、易剪裁性、易修改性)
  • 可移植性
  • 安全性
  • 简明性

 

  1. 软件结构研究的对象是?

组成软件的各部分划分的原则以及它们之间的关系,即软件构成法则和组合方法。

 

  1. 简述操作系统结构研究的目标
  • 系统模块化
  • 模块标准化
  • 通信规范化

 

  1. 简述处理器的组成
  • 运算器、控制器、一系列的寄存器以及高速缓存构成。
  • 运算器是计算机的核心。

 

  1. 简述常见寄存器

分用户可见寄存器 和 控制和状态寄存器

  • 数据寄存器
  • 地址寄存器
  • 条件码寄存器
  • 控制和状态寄存器

 

  1. 简述假定每个用户程序均在主存中占一个连续空间,为了实现存储保护,硬件设置了两个寄存器:基址寄存器和限长寄存器

 

  1. 简述指令的分类及相应的功能
  • 访问存储器指令,它们负责处理器和存储器之间的数据传送。
  • I/O指令,它们负责处理器与I/O模块之间的数据传送和命令发送。
  • 算术逻辑指令,有时又称为数据处理指令,用于执行有关数据的算术和逻辑操作。
  • 控制转移指令,这种指令可以指定一个新的指令的执行起点。
  • 处理器控制指令,这种指令用于修改处理器状态,改变处理器工作方式等。

 

 

  1. 简述存储管理的任务
  • 当多个程序共享有限的内存资源时,要考虑如何为多个程序分配有限的内存空间;
  • 存储在内存中的多个程序和数据应该彼此隔离,互不侵扰;
  • 解决内存扩充的问题,即将内存和外存结合起来管理,为用户提供一个容量比实际内存大得多的虚拟存储器。

 

  1. 简述指令执行的基本过程
  • 处理器每次从存储器读取一条指令,并在取指令完成后,根据指令类别自动将程序计数器的值变成下一条指令的地址,通常是自增1;
  • 取到的指令被存储在处理器的指令寄存器,处理器于是解释并执行这条指令。一个这样的单条指令处理过程称为一个指令周期。程序的执行就是不断取指和执行指令的指令周期组成的,仅当机器关机,发生某些未知的错误或者遇到停机相关的指令时,指令才会停止。

 

  1. 简述中断请求响应的工作过程
  • 处理器接受中断信号;
  • 保护现场,将中断断点的程序状态字PSW和程序计数器PC值存入系统堆栈;
  • 分析中断向量,取得中断处理程序的入口地址;
  • 将处理器的PC值置为中断处理程序的入口地址;
  • 调用中断处理程序。

 

  1. 简述多级中断的作用
  • 对各类中断信号依据其紧急程度和重要性划分级别;
  • 解决如果有重要程度相当的多个中断信号同时到达时,如何选择首个被处理的中断信号的问题。

 

  1. 简述多个中断处理策略
  • 对于多个中断进行处理的第一个策略是,正当处理一个中断时,禁止其他中断,此时系统将对任何新发生的中断置之不理。在这期间发生的中断将保持挂起的状态,当处理器再次允许中断时,这个新的中断会被处理器检测到,并做出处理;
  • 对于多个中断进行处理第二个策略是,中断嵌套。即中断按照优先度分级,允许优先级较高的中断打断优先级较低的中断处理过程,于是引起中断处理的嵌套。

 

  1. 简述进程和线程的区别
  • 程序是静止的,而进程是动态的;
  • 进程是程序的一个执行过程。程序的存在是永久的,而进程是为了程序的一次执行而暂时存在的。进程有生命周期,有诞生,亦有消亡;
  • 一个进程可以包括若干个程序的执行,而一个程序亦可以产生多个进程;
  • 进程具有创建其他进程的功能。被创建的进程称为子进程,而创建者称为父进程,从而构成了进程家族。

 

  1. 简述引起进程调度的因素
  • 正在执行的进程运行完毕;
  • 正在执行的进程由于某种错误而终止;
  • 时间片用完,即有一个进程从运行状态变成就绪状态;
  • 正在执行的进程调用阻塞原语将自己阻塞起来,即一个线程由运行状态进入阻塞状态;
  • 创建一个进程。即有一个新的进程进入到就绪队列;
  • 正在执行的进程调用唤醒原语操作激活了等待资源进程,即一个等待状态的进程变为就绪状态;

 

  1. 临界区是指并发进程中访问临界资源的 程序段

 

  1. 系统堆相关临界区的调度使用原则
  • 当临界资源为空时,若有一个进程要求进入临界资源区,应允许它立即进入临界区——有空让进;
  • 若有一个进程已在临界区,其他要求进入临界区的进程必须等待——无空等待;
  • 当没有进程在临界区,而多个进程同时要求进入临界区,只能让其中一个进入临界区,其他进程必须等待——多中选一;
  • 任一进程进入临界区的要求应在有限时间满足——有限等待;
  • 处于等待状态的进程应放弃占有处理器——让权等待。

 

  1. 简述临界资源

临界资源,正在被使用的时候,其他请求该资源的程序必须等待,并且在该资源被使用完毕后才由操作系统根据一定的策略在选择一个用户程序占有该资源。

 

  1. 简述死锁产生的四个必要条件
  • 互斥条件
  • 不可剥夺条件
  • 请求和保持条件
  • 循环等待条件

 

  1. 简述死锁避免的基本思想
  • 系统对进程发出的每一个系统能够满足的资源申请进行动态检查,并根据检查结果决定是否分配资源;
  • 如果分配后系统可能发生死锁,则不予分配,否则予以分配。

这是一种保证系统不进入死锁状态的动态策略。

 

  1. 简述死锁避免和死锁预防的区别

死锁避免和死锁预防的区别在于,

  • 死锁预防是设法至少破坏产生死锁的四个必要条件之一,严格地防止死锁的出现;
  • 而死锁避免则不那么严格地限制产生死锁的必要条件的存在,因为即使死锁的必要条件存在,也不一定会发生死锁,死锁避免是在系统运行过程中注意避免死锁的最终发生。

 

  1. 简述资源分配图的化简方法
  • 在资源分配图中,找出一个既非等待又非孤立的进程节点Pi,由于Pi可获得它所需要的全部资源,且运行完后释放它所占有的全部资源,故可在资源分配图中消去Pi所有的申请边和分配边,使之成为既无申请边又无分配边的孤立节点;
  • 将Pi所释放的资源分配给申请他们的进程,即在资源分配图中将这些进程对资源的申请边改为分配边;
  • 重复前面两个步骤,直到找不到符合条件的进程节点。

 

  1. 简述存储管理的任务
  • 内存的分配与回收
  • 存储共享
  • 存储保护
  • “扩充”内存容量

 

  1. 简述虚拟存储器系统中常用的页面调度策略
  • 调入策略:虚拟存储器的调入策略决定了什么时候将一个页由外存调入内存中;
  • 置页策略:当线程产生缺页时,内存管理器还必须确定将调入的虚拟页放在物理内存的何处,用于确定最佳位置的一组规则称为“置页策略”;
  • 置换策略:如果缺页发生时物理内存已满,“置换策略”被用于确定哪一个虚页面必须从内存移出为新的页面腾出空位。

 

  1. 简述文件系统应具有的功能

作为一个统一的文件管理机构,文件系统应该具有下述功能:

  • 统一管理文件的存储空间,实施存储空间的分配与回收;
  • 实现文件从名字空间到外存地址空间的映射。即实现文件的按名存取,以对用户透明的方式管理名字空间;
  • 实现文件信息的共享,并提供文件的保护和保密措施;
  • 向用户提供一个对文件方便使用的接口(提供对文件系统的操作命令,以及提供对文件的操作命令;信息的存取,加工等)
  • 系统维护及时向用户提供有关信息;
  • 保持文件系统的执行效率。文件系统在操作系统接口中的比例最大,用户使用操作系统的感觉在很大程度上取决于对文件系统的使用效果;
  • 提供与I/O的统一接口。

 

  1. 数据库系统是 支撑软件

 

  1. 简述多级目录结构的优缺点

优:层次结构清晰,便于管理和保护,解决了重名问题,查找速度加快。

缺:查找一个文件按路径名逐级查找检查,由于每一个文件都存储在外存,多次访盘会影响速度,结构相对比较复杂。

 

  1. 简述验证用户的存取操作步骤
  • 审定用户的存取权限;
  • 比较用户权限的本次存取要求是否和用户的存取权限一致;
  • 将用户的存取要求和被访问文件的存取控制表进行比较,看是否有冲突。如果没有冲突,允许用户对有关文件进行访问;如果有冲突,处理冲突。

 

  1. 简述I/O设备的分类
  • 按设备的使用特性分类,I/O设备可分为输入设备、输出设备、交互式设备、存储设备等;
  • 若以系统信息组织方式来划分设备,可把I/O设备划分为字符设备和块设备;
  • 按设备使用可共享性分类,可分为独占设备、共享设备和虚拟设备等。

 

  1. 简述通道的功能。Channel (通道)
  • 接收处理器的指令,按指令要求与指定的外围设备进行通信;
  • 从内存读取属于该通道的指令,并执行通道程序,向设备控制器和设备发出各种指令;
  • 组织外围设备和内存之间进行数据传送,并根据需要提供数据缓存空间,以及提供数据存入内存的地址和传送的数据量;
  • 从外围设备到设备状态信息,形成并保存通道本身的状态信息,根据要求将这些状态信息送到内存执行单元,供处理器使用。
  • 将外围设备的中断请求和通道本身的中断请求,按序及时报告处理器。

 

  1. 简述操作系统分类

按用户界面的使用环境和功能特征的不同:批处理系统、分时系统、实时系统

 

  1. 简述批处理操作系统的工作方式

批处理操作系统的基本工作方式:用户将作业交给系统操作员,系统操作员收到作业后并不马上执行,而是在收到一定数量的作业后,组成一批作业,再把这批作业输入到计算机中。这批作业可在系统中形成一个连续的、自动转接的作业流。系统操作员然后启动操作系统,系统自动、依次执行每一个作业,最后由系统操作员将执行完毕的作业结果交给用户。

 

  1. 简述分时操作系统的基本工作方式

分时操作系统中,一台计算机主机连接了若干终端,每个终端可由一个用户使用,用户通过终端交互地向系统提出命令请求,系统接受用户的命令之后,采用时间片轮转方式处理服务请求,并通过交互式在终端上向用户显示结果。用户根据系统返回的处理结果发出下一道交互命令。

 

  1. 简述分时操作系统

能使用户通过与计算机相连的终端来使用计算机系统,允许多个用户同时与计算机系统进行一系列交互。

 

  1. 简述分布式操作系统的特点

分布式操作系统是网络操作系统的更高级形式,分布式操作系统除了保持网络操作系统的各种功能之外,还具有以下的特征:

  • 分布式操作系统是一个统一的操作系统,在系统中的所有主机使用的是同一个操作系统;
  • 实现资源的深度共享;
  • 透明性;
  • 自治性。

 

  1. 分布式操作系统

能实现把一个计算问题分成若干个子计算,每个子计算可以在计算机网络中的各个计算机上并行执行

 

  1. 简述时钟对操作系统的作用
  • 在多道程序运行的环境中,时钟可以为系统发现一个陷入死循环(由编程错误引起)的作业,从而防止机时的浪费;
  • 在分时操作系统中,由时钟间隔来实现各个作业按时间片轮转方式运行;
  • 在实时系统中,按要求的时间间隔输出正确的时间信息给相关的实时控制设备;
  • 定时唤醒要求按照事先给定时间执行的各个外部事件(如定时为各线程计算优先级,银行系统定时运行某类结账程序等。)
  • 记录用户使用各种设备的时间和记录外部事件发生的时间间隔;
  • 记录用户和系统所需要的绝对时间,即年、月、日。

 

  1. 简述常用I/O控制技术及其特点

计算机系统中常使用通道以及直接存储器存取(DMA)等I/O技术。

  • 通道独立于中央处理器,它代替处理器对外部设备实行统一的管理,从而使处理器和外部设备并行工作,提高多道程序处理的效率;
  • DMA技术由DMA控制器自动控制成块数据在内存与I/O单元之间的传送,提高了处理I/O的效能;
  • 缓冲技术是用以缓解处理器处理数据速度与设备控制数据速度不能匹配矛盾的一种数据暂存技术。

 

  1. 简述PCB的主要内容

进程控制块(PCB)的内容可以分为调度信息和现场信息两大部分。

  • 调度信息供进程调度时使用,描述了进程当前所处的状况,它包括进程名、进程号、地址空间信息、优先级、当前状态资源清单、“家族”关系、消息队列指针、进程队列指针和当前打开的文件等;
  • 现场信息刻画了进程的运行状况,由于每个进程都有自己专用的工作存储区,其他进程运行时不会改变它的内容,所以,PCB中的线程信息只记录那些可能会被其他进程改变的寄存器。如程序状态字、时钟、界地址寄存器等。一旦中断进程的运行,必须把中断时刻的上述内容记入进程控制的现场信息。

 

  1. 简述进程的基本属性
  • 进程是一个可拥有资源的独立单元
  • 进程同时又是一个可以独立调度和分派的基本单位

 

  1. 简述进程控制的原语的种类

用于进程控制的原语一般有:创建进程、撤销进程、挂起进程、激活进程、阻塞进程、唤醒进程 以及 改变进程的优先级等。(7个)

 

  1. 简述采用信号量及P、V同步机制来编写并发程序的缺点

采用信号量及P、V同步机制来编写并发程序,对于共享变量和信号量变量的操作将被分散与各个进程中,其缺点如下:

  • 程序可读性差
  • 程序不利于修改和维护
  • 正确性难以保证

 

  1. 建立文件的步骤
  • 检查参数的合法性。文件名是否符合命名规范,若是则进行下一步;否则报错返回;
  • 检查同一目录下有无重名文件。若没有则进行下一步;否则报错返回;
  • 在目录中有无空闲位置。若有则进行下一步;否则不成功返回。有的系统可能要为此申请数据块空间(申请一部分或一次性全部申请);
  • 填写目录项内容。包括文件名、用户名、存取权限、长度置空,首地址等;
  • 返回

 

  1. 简述文件保密的措施
  • 隐蔽文件目录
  • 设置口令
  • 使用密码
  • 病毒防范

 

  1. 简述二级目录文件的优缺点

二级目录解决了文件的重名问题,可以实现用户间的文件共享,查找时间也降低了,

二级目录的缺点是增加系统的开销。

 

  1. 消息缓存区通信机制包含的内容
  • 消息缓冲区
  • 消息队列首指针
  • 互斥信号量
  • 同步信息量
  • 发送消息原语
  • 接收消息原语

 

  1. 简述SPOOLing系统的组成

输入程序模块、输出程序模块、作业调度模块

 

  1. 简述SPOOLing技术的基本思想

假脱机(SPOOLing)技术的全称是“同时的外部设备联机操作”。

这种技术的基本思想是用磁盘设备作为主机的直接输入输出设备,主机直接从磁盘上选取作业运行,作业的执行结果也存储在磁盘上;相应地,通道则负责将用户作业从卡片上动态写入磁盘,而这一操作与主机并行。类似的操作也用于打印输出用户作业运行结果。

 

  1. 避免信件丢失和错误地发出信件,通信采取的原则有哪些
  • 若发送信件时邮箱已满,则发送进程应被置为“等信箱”状态,直到信箱有空时才被释放;
  • 若取信件时信箱中无信,则接收进程应被置为“等信件”状态,直到有信件时才被释放。

 

  1. 简述设备独立层软件的功能
  • 设备驱动程序的统一接口
  • 设备命名
  • 设备保护
  • 提供一个与设备无关的逻辑块
  • 缓冲
  • 存储设备的块分配
  • 独占设备的分配与释放
  • 错误处理

 

  1. 简述模块组合法的缺点
  • 模块间转接随便,各模块互相牵连,独立性差,结构不清晰;
  • 数据基本上做为全程量处理,系统内所有模块的任一程序均可对其进行存取和修改,从而造成了各模块间有着更为隐蔽的关系,要更新一个模块或修改一个模块都比较困难,因为要弄清个模块间的接口。按当初设计时随意约定的格式来给消息,这是一件相当复杂的事;
  • 由于模块组合结构常以大型表格为中心,为保证数据完整性,往往采用全局中断办法,从而限制了系统的并发性。系统中实际存在的并发也未能抽出明确的概念缺乏规格的描述方法。所以这种结构的可适应性比较差。

 

  1. 在系统调用中,如何实现用户程序和系统程序之间的参数传递?
  • 由陷入指令自带参数,一般来说,一条陷入指令的长度总是有限的,而且该指令还要携带一个系统调用的功能号,从而,陷入指令只能携带有限的几个参数进入系统内部。
  • 通过有关寄存器来传递参数,显然,这些寄存器应是系统程序和用户都能访问的。
  • 在内存中开辟专用堆栈区来传递参数。

UNIX类操作系统通常采用第二种方法,即通过通用寄存器传递参数。

 

  1. 简述引入线程的好处
  • 创建一个新线程花费时间少(结束亦如此)。创建线程不需要另外分配资源,因而创建线程的速度比创建进程的速度快,且系统开销也少。
  • 线程之间的切换花费也小。
  • 由于同一进程内的线程共享内存和文件,所以线程之间相互通信不须调用内核,故不需要额外通信机制,使通信更简单,信息传送速度也快。
  • 线程能独立执行,能充分利用和发挥处理器与外部设备并行工作的能力。

 

  1. 简述死锁定理
  • 如果资源分配图中没有环路,则系统没有死锁。
  • 如果资源分配图中出现了环路,则系统可能出现死锁。
    • 如果处于环路中的每个资源类中均值包含一个资源实例,则环路存在即意味着死锁的存在。此时,环路是死锁的充分必要条件。
    • 如果处于环路中的每个资源类中的个数不全为1,则环路存在是产生死锁的必要条件,而不是充分条件。

 

  1. 简述中断控制方式的处理过程
  • 处理器通过数据总线发出命令,启动外设工作,当前线路阻塞,调度程序调度其他进程。
  • 外设数据准备好,置位中断请求触发器。
  • 若此时接口中断屏蔽触发器状态为非屏蔽状态,则接口向触发器发出中断请求(IR)。
  • 处理器接受中断请求,且中断为允许中断状态,则中断判优电路工作。
  • 中断判优电路对优先级最高的中断请求给予响应(INTA),处理器中断正在执行的其他进程,转而执行中断服务程序。

 

 

  1. 简述程序的并发执行有什么特点?并发和并行有什么区别?
  • 程序的并发执行的特点:
    • 在执行期间并发程序相互制约。
    • 程序与计算不再一一对应。
    • 并发程序的执行结果不可再现。
  • 程序的并行执行与并发执行存在区别:
  • 程序的并行是指不论是从宏观的时间周期上,还是从微观上看,若干程序确实是在同时执行。
  • 而程序的并发执行,如果在单处理器系统中,他们在宏观上同时执行的,但是在微观上,这些程序仍然是顺序执行的。【并发 单 顺序】

 

  1. 简述程序顺序执行

程序顺序执行具有顺序性和封闭性两个基本特性。由此可确定其执行结果具有确定性和可再现性。

 

 

  1. 简述进程调度的主要功能
  • 记录系统中所有线程的执行状况;
  • 根据一定的调度算法,从就绪队列中选出一个进程,准备把处理器分配给它;
  • 把处理器分配给进程。即把选中的进程的进程控制块内的现场信息,如程序状态字、通用寄存器等内容送入处理器相应的寄存器中,从而让它占用处理器运行。

 

  1. 简述实现虚拟存储器需要的硬件
  • 系统有足够大的外存
  • 系统有一定容量的内存
  • 最主要的是,硬件提供实现一定虚——实地址映射的机制。

 

  1. 简述使用共享设备的方法
  • 申请设备。如设备被占用,进入等待队列,否则分配设备。
  • 启动设备。I/O传输。
  • 释放设备。当设备结束,发出中断信号时,系统唤醒一个等待设备的进程。

 

  1. 简述程序状态字(PSW)包含的状态代码及其功能。(密押二)

处理器的程序状态字(PSW)通常包括一下状态代码:

  • CPU的工作状态码——指当前处理器的工作状态是管态还是目态。用来说明当前处理器上执行的操作系统还是一般用户。从而决定其是否可以使用特权指令或拥有其他特殊权利。
  • 条件码——反映指令执行后的结果特征。
  • 中断屏蔽码——指出是否允许中断。

 

  1. 简述可再入程序的特性
  • 一个能够被多个用户同时调用的程序称作是“可再入”的程序;
  • 可再入程序必须“纯”代码的程序,程序在执行中不会修改自身的代码。换句话说,可再入程序必须和有关的数据区分离。
  • 可再入程序的操作对象,即数据,是与程序相分离的,要求调用者提供专用工作区,以保证程序以同样方式用各用户服务。
  • 现代操作系统及编译程序都是属于可再入程序,它们能同时被多个用户调用而形成不同的进程

 

  1. 简述抢占式调度和非抢占式调度的区别

非抢占式又称为不可抢占式。

  • 可抢占式方式。即就绪队列中有优先级高于当前运行进程优先级的进程存在时,便立即进行调度,转让处理器。
  • 不可抢占式。即一旦把处理器分配给一个进程,它就一直占用处理器,直到该进程自己因调度原语操作或等待I/O而进入阻塞状态,或因时间片用完才让出处理器,重新执行进行调度。

 

  1. 简述影响缺页率的因素
  • 分配给程序的物理页面数
  • 页面的大小
  • 程序编译方法
  • 页面调度算法

 

  1. 简述一般I/O软件结构构成
  • 中断处理程序
  • 设备驱动程序
  • 设备独立的操作系统软件
  • 用户级软件

 

  1. 简述什么是中断?中断和异常的区别是什么?(202104)
  • 所谓中断,是指处理器对系统中或系统外发生的异步事件的响应。
  • 区别:中断时由外部事件引发的;异常是由正在执行的指令引发的。

 

  1. 简述进程调度算法的种类
  • 先来先服务算法
  • 最短进程优先算法
  • 最短剩余时间优先算法
  • 最高响应比优先算法
  • 轮转算法
  • 最高优先级算法
  • 多级反馈队列算法

 

  1. 简述先来先服务算法的基本思想以及实现方法FCFS
  • 基本思想:进程按照他们请求处理器的顺序使用处理器。
  • 实现方法:当第一个进程从外部进入系统,就立即开始并允许运行它所期望的运行时间。不会中断该进程,因为它需要很长的运行时间。当其他进程进入时,就被安排到队列的尾部。当正在运行的进程被阻塞时,队列中的第一个进程就接着运行。在被阻塞的进程变为就绪时,就像一个进来到的进程一样,排到队列的尾部。
  • 优点:易于理解并且便于在程序中运用。在这个算法中,一个单链表记录了所有的就绪进程。要选一个进程运行,只要从该队列的头部移走一个进程即可;要添加一个新进程或阻塞一个进程,只要把该进程或进程附加到相应队列的末尾即可。
  • 缺点:在处理长进程之后的短进程需要等待很长的时间,不利于用户的交互体验。

 

  1. 简述最短进程优先算法的基本思路以及实现方法
  • 基本思路:运行时可以预知的非抢占式的批处理调度,进程调度时总是选择已到达的进程中最短的进行运行。
  • 实现方法:当第一个进程从外部进入系统,就立即开始并允许运行它所期望的运行时间。不会中断该进程,因为它需要很长的运行时间。当进程由于自身原因让出处理器时,从已到达的进程中选择一个最短预计运行时间的进程运行。
  • 优点:降低了平均等待时间
  • 缺点:偏好短进程,长进程可能永远得不到运行(饥饿状态)。

 

  1. 简述进程最短剩余时间优先调度算法的基本思想以及实现方法
  • 基本思想:最短剩余时间优先调度算法,是最短进程优先算法的抢占式版本,进程调度时总是选择其剩余运行时间最短的那个进程运行。
  • 实现方法:每当一个新进程到达时,把新进程的预计时间与当前进程的剩余运行时间进行比较,如果新进程的预计运行时间比较长,则当前进程继续执行,否则当前进程挂起,而新进程运行。

 

  1. 简述最高响应比优先算法的基本思想以及实现方法
  • 基本思路:综合考虑作业/进程的等待时间和要求服务时间
  • 实现方法:每次调度时先计算各个作业/进程的响应比,选择响应比最高的作业/进程为其服务
  • 优点:综合考虑了等待时间和运行时间(要求服务时间)。等待时间相同时,要求服务时间短的优先(SJF的优点);要求服务时间相同时,等待时间长的优先(FCFS的优点);对于长作业来说,随着等待时间越来越久,其响应比也会越来越大,从而避免了长作业饥饿的问题。
  • 缺点:计算需要消耗系统的资源,存在一定的系统开销

 

TODO

 

 

  1. 简述周转时间、响应比
  • 周转时间=等待时间+执行时间(预计运行时间)
  • 平均周转时间=总周转时间/进程数
  • 响应比Rp=(等待时间+预计运行时间)/ 预计运行时间=周转时间/ 预计运行时间

 

  1. 简述最先适应分配算法

在可变分区管理中,把空闲区按地址递增的顺序排列登记在空闲区表中,分配时总是顺序查找该表,找到第一个能满足作业长度要求的空闲区,分配其中一部分给作业使用。

 

  1. 简述最优适应分配算法

在可变分区管理中,把空闲区按长度以递增顺序排列登记到空闲块表中,分配时从最小的一个空闲区开始查找,当找到第一个能满足作业要求的空闲区时,分割一部分给作业使用。

 

  1. 简述最坏适应分配算法

在可变分区管理中,把空闲区按长度以递减顺序排列登记到空闲块表中,分配时从最大的一个空闲区开始查找,当找到第一个能满足作业要求的空闲区时,分割一部分给作业使用。

 

  1. 简述最快适应分配算法

TODO 最先适应分配算法???

 

  1. 简述银行家算法
  • 最著名死锁避免算法是由Dijkstra等人提出来的银行家算法。
  • 操作系统按照银行家的规定为进程分配资源,进程首先提出对资源的最大需求量,
  • 当进程在执行中每次申请资源时,系统测试该进程已占用的资源与本次申请的资源数之和是否超过该进程对资源的最大需求量。
  • 若超过则拒绝分配资源,若没有超过,则系统再测试系统现存的资源能否满足该进程尚需的最大资源数,能满足则按当前申请量分配资源,否则也要推迟分配。
  • 这样做,能保证在任何时刻至少有一个进程可以得到所需要的全部资源而执行结束,执行结束后归还资源加入到系统的剩余资源中,这些资源又至少可以满足另一个进程的最大需求,于是,可以保证系统中所有进程都能在有限时间内得到需要的全部资源。

 

  1. 简述可变分区中紧缩技术的主要作用以及实现方法
  • 紧缩技术可以集中分散的小空闲区(小碎片)提高内存的利用率。
  • 紧缩技术是通过移动内存中的程序,把所有程序占用集中在内存的一端,从而所有空闲碎片在内存的另一端合并成一个连续的大空闲区。

 

  1. 简述I/O设备的中断控制方式与DMA控制方式的区别是什么
  • 中断控制方式是在数据缓冲寄存器满之后发出中断要求CPU进行中断处理的,而DMA控制方式是等所有传输的数据块全部传送结束后要求CPU进行中断处理。
  • 中断控制方式的数据传送是由CPU控制完成的,而DMA控制方式是在DMA控制器的控制下完成的。

 

201504

  1. 计算机硬件系统:中央处理器、主存储器、辅助存储器、各种输入/输出设备
  2. 系统启动时,中央处理器的初态是管态
  3. 在多道程序环境下,任何时刻CPU只可以被一个程序占用
  4. 访管指令是非特权指令
  5. 当处理器执行到访管指令时将产生一次中断
  6. 在多道程序设计的系统中,为了保证主存中各道程序互不侵扰应采用的措施是进行 存储保护
  7. 访管中断 是 自愿性中断
  8. 在页式虚存系统中,基于程序执行的局部性理论的页面调度算法是:最近最久未使用调度算法(LRU)

 

  1. 程序局部性原理

一个良好的计算机程序常常具有良好的局部性,也就是说,他们倾向于引用邻近于其他最近引用过的数据项的数据项,或者最近引用过的数据项本身。

局部性的两种不同形式:时间局部性和空间局部性

  • 时间局部性:指如果程序中的某条指令一旦执行,则不久之后该指令可能再次被执行;如果某数据被访问,则不久之后该数据可能再次被访问。强调指令或数据的重复访问。利用时间局部性,缓存在现代系统中扮演着重要的角色,如数据缓存、磁盘缓存、文件缓存等,极大提高了数据的重复访问。
  • 空间局部性:指一旦程序访问了某个存储单元,则不久之后,其附近的存储单元也将被访问。强调连续空间数据的访问,一般顺序访问每个元素(步长为1)时具有最好的空间局部性,步长越大,空间局部性越差。

 

 

  1. 简述UNIX三类文件:普通文件、目录文件、设备文件
  2. 用相对路径描述文件路径名的起始目录是:当前目录
  3. 与通道程序的运行有关的概念是:通道命令、通道地址字、通道状态字
  4. 操作系统使用设备分配表管理独占设备。通常,设备分配表由设备类表和设备表组成。其中,设备表的基本内容:绝对号、好/坏、已/未分配、占用作业名、相对号
  5. 进程间采用信箱方式进行通信时,任何进程调用send原语时应提供参数:信箱名和信件
  6. 若系统中涉及相同变量X的相关临界区有n个,那么在保证系统安全的前提下每次允许进入相关临界区的进程数为1
  7. 能防止系统出现死锁的方式是对资源采用静态分配
  8. 系统有某类资源9个部件,供4个进程共享。为了保证系统安全,限定每个进程最多申请的资源数是3(9/4+1)个。
  9. 设计实时操作系统时,首先考虑的不是系统资源使用效率,而是系统的:实时性、可靠性
  10. 进程控制块应包含的信息类型:标识信息、说明信息、现场信息、管理信息
  11. 关于UNIX页面调度:
  • 当进程访问一个有效位为0的页面时,产生一个缺页中断
  • 一个正在与外设交换信息的页面时不能被替换的
  • 被调出的页如修改过,则应先写回磁盘
  • 系统页面守护进程的作用,是保证有足够的空闲物理页可供使用
  • 页面调度采用什么调度算法?多级反馈队列调度算法

 

  1. 简述控制外围设备完成输入输出操作的多个阶段
  • 准备阶段
  • 启动I/O阶段
  • 结束处理阶段

 

  1. 若采用PV操作管理共享有多个部件的资源

约定一次只能申请一个部件,当信号量值变化范围是【-n,m】,则信号量的初值是m,最多有n个进程在等待使用共享资源,当前可能有(m+n)个进程调用了P操作,正在使用共享资源的进程可能最多有m(0-m)个

 

  1. 批处理操作系统按照用户预先写好的作业说明书控制作业的执行,实现了计算机操作的自动化。
  2. 从资源管理的观点看,操作系统的功能分处理器管理(进程管理)、存储管理、文件管理、和设备管理
  3. UNIX中,0号进程在核心态运行,称为交换进程。1号进程在用户态运行,称为初始化进程。2号进程(页面守护进程)
  4. 在页式虚拟存储管理中,利用高速缓冲存储器存放页表的一部分称为快表,对快表的访问方式是并行查找。
  5. 文件的存取方式有两种,他们 是 顺序存取和 随机存取。
  6. 通道命令是由若干部分组成的,他们是 命名码、数据主存地址、标志码、传送字节个数
  7. 死锁的出现是与资源分配策略和进程并发执行速度有关。
  8. 一个操作系统采用两种工作状态(管态和目态),简述从该系统启动后,选择某用户程序执行,在执行过程中发生了一次中断事件及其中断处理后继续运行为止,中央处理器工作状态变化过程。
  • 当系统启动后,CPU的初态为管态;
  • 当系统选择某用户程序执行时,CPU由管态转换成目态;
  • 用户程序执行中出现了某事件,CPU由目态转换成管态,操作系统处理该中断事件。

 

  1. 简述磁盘存储空间空闲块管理的方法
  • 位示图法
  • 空闲块表法
  • 空闲块链法
  • 空闲块成组链接法

 

  1. 简述UNIX中缓冲队列管理原则

空闲缓冲区队列采用先进先出原则;

  • 一个缓冲区被分配用于读写时,该缓冲区就移入相应设备的设备缓冲区队列;
  • 当缓冲区的信息传送到用户空间(读)或用户信息写到了缓冲区且设置了DELWR标记后,该缓冲区也插入到了空闲队列;
  • 分配空闲缓冲区时,若第一个缓冲区有DELWR标记,需要先把该缓冲区的信息写回磁盘,暂时不能分配;
  • 分配空闲缓冲区时,若该缓冲区既在空闲缓冲区队列,又在设备缓冲区队列,则需要同时退出两个队列,再链入新的设备缓冲区队列。

 

  1. 简述线程和进程的四个相似之处
  • 和进程一样,每个线程有唯一的标识
  • 和进程一样,不同线程可执行相同的程序
  • 和进程一样,多个线程可交替占用处理器
  • 和进程一样,每个线程具有从创建到终止的生命周期
  • 和进程一样,线程也可以并发执行,并经历状态变化

 

  1. 现有某类资源10个,供三个进程A,B,C共享。他们对资源的需求量分别为7个,5个,3个,目前已分别得到了4个,3个,2个。当三个进程都继续请求分配资源时,应按怎样的次序分配才能保证系统安全?为什么?
  • 依次满足线程C A B / C B A;
  • 因系统已分配了9个资源,只剩下一个资源;
  • 若先满足进程C的请求,则进程C就获得了所需的全部资源,执行结束后就可归还资源3个,进程C归还的3个资源可分配给进程A或者B,这样每个进程就都能在有限时间内执行结束。

 

  1. 回答图中算法的页面调度问题

截图.png

(1)整个数组占用25个页面:50*50/100=25

(2)A程序:1249次缺页中断(24+25*49)

B程序:24次缺页中断

 

  1. 文件系统提供的基本操作有建立、打开、读、写、关闭、删除等,请回答:
  • 建立操作的主要工作:
    • 让用户在指定的存储设备上安装存储介质
    • 检查该存储介质上是否建立了文件目录,若无,则建立有关文件目录
    • 在文件目录中查找一个空目录项,按命令参数填写目录项的用户名、文件名等
    • 按存储设备类型和存储方式确定文件的存储结构
    • 置该文件的建立标记
  • 打开操作的主要工作:
    • 让用户在指定的存储设备上安装存储介质
    • 按文件名检索文件目录,找出该文件的目录项
    • 核对口令和存放方式正确否,正确继续
    • 找出文件存放在存储介质上的起始位置,作为当前位置
    • 若是索引文件,把索引表读入主存储器
    • 置该文件的打开标记

201510

  1. 计算机硬件系统中存放可被CPU直接访问程序及其数据的是:主存储器
  2. 操作系统、编译系统 属于系统软件
  3. 每当一个“中断”事件发生后,会暂停原来程序的执行,把CPU的控制权转移给 中断服务程序
  4. 简述存储保护
  • 设置“基址寄存器”和“限长寄存器”
  • 不允许用户修改“基址寄存器”和“限长寄存器”的值
  • 在目态下执行程序,要对访问主存的地址进行核查
  • 在管态下执行程序,不用对访问主存的地址进行核查

 

  1. 在多道程序设计系统中,要保证在主存储器中的各道程序互不侵犯,应采用存储保护
  2. “程序状态字寄存器内容”信息属于进程控制块的现场信息
  3. 在多道程序系统中,能降低作业平均周转时间的是 计算时间短的作业优先算法

 

  1. 简述可变分区存储管理方法
  • 用户的逻辑地址空间是连续的
  • 分配的主存空间是连续的
  • 采用移动技术可以把主存储器中的碎片汇集成一个大的空闲区

 

  1. 简述位示图管理页式主存空间的分配与回收
  • 分页式存储器把主存分成大小相等的若干块,作业的信息也按块的大小分页,作业装入主存时可把作业的信息按页分散存放在主存的空闲块中,为了说明主存中哪些块已经被占用,哪些块是尚未分配的空闲块,可用一张位示图来指出。位示图可由若干存储单元来构成,其中每一位与一个物理块对应,用0/1表示对应块为空闲/已占用。
  • 当要装入一个作业时,根据作业对主存的需要量,先查当前空闲块数是否能满足作业要求,若不能满足则输出分配不成功。若能满足,则查位示图,找出为“0”的一些位,置上占用标志“1”,从“当前空闲块数”中减去本次占用块数。根据分配给作业的块号,为作业建立一张页表。
  • 计算块号公式:字号*块大小+位号 【字号就是行的下标,位号就是列的下标】
  • 当一个作业执行结束,归还主存时,根据该作业的页表可以知道应归还的块号,由块号可计算出在位示图中的对应位置,把对应位的占用标志清成“0”,表示对应的块已成为空闲块。归还的块数加入到当前空闲块数中。由块号计算在位示图中的位置的公式如下:

  字节号 j=[块号/8] ([ ]表示取整)

  位数 i={块号%8} ({ }表示取余)

 

  1. 简述存储管理中页表逻辑地址转换成物理地址
  • 逻辑地址=页号+页内偏移
  • 物理地址=块号+块内偏移
  • 页表=页号+块号 (页号对应的块号)

 

例如:作业7k,页大小2k

    1. 计算逻辑地址=13的页号和偏移量:

因为:13=0*2048+13

页号:0

页内偏移:13

    1. 计算逻辑地址=4210的页号和偏移量:

因为:4210=2*2048+114

页号:2

页内偏移:114

 

计算机系统页面大小4k:

即页内地址是二进制的12位(4k=4096bit=2^12)

二进制的后12位对应十六进制3位

 

  1. 如何将逻辑地址转换成物理地址:
  • 从逻辑地址算出页号和页内偏移量
  • 从页表中找出页号对应的块号
  • 公式:物理地址=块号*页大小+偏移量

 

截图.png

 

例如:

案例一:某虚拟存储器的用户编程空间共64个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:

页号           物理块号

0                    3

1                    7

2                    9

3                    5

则逻辑地址0A5C(H)所对应的物理地址是什么?要求:写出主要计算过程。 

用户编程空间共64个页面,2ˆ6=64 得知页号部分占6位,由“每页为1KB”,1K=2^10,可知内页地址占10位。

由“内存为16KB”,2^4=16得知块号占4位。

       逻辑地址0A5C(H)所对应的二进制表示形式是:0000101001011100,

后十位1001011100是页内地址,0 000010为页号,页号化为十进制是2,

在对照表中找到2对应的物理块号是9,9转换二进制是1 0 01,即可求出物理地址为10 011001011100,化成十六进制为265C;

即则逻辑地址0A5C(H)所对应的物理地址是265C;

 

案例二:某计算机系统页面大小为4K,若进程的页面变换表如下所示,逻辑地址为十六进制1D16H。该地址经过变换后,其物理地址应为十六进制( )。(2014年上半年)

截图.png

A.1024H

B.3D16H

C.4D16H

D.6D16H

答案 B

解析

页式存储中的逻辑地址与物理地址之间的变换需要掌握变换的规则。

逻辑地址的构成是:逻辑页号+页内地址。

物理地址的构成是:物理块号+页内地址。

从构成可以看出逻辑地址与物理地址的页内地址是一样的,不同的是逻辑页号与物理块号。而这两者的关系,正是通过题目已给出的表来进行映射的。如逻辑页号1就对应着物理块号3。所以题目告诉我们“逻辑地址为十六进制1D16H”时,我们先要把逻辑地址中的页号与页内地址分离。通过什么条件分离呢?题目中的“计算机系统页面大小为4K”,从这句话可以看出,页内地址是二进制的12位(4K=2^12)。二进制?12位对应十六进制3位。所以D16是页内地址。页号也就是1了。通过页表查询到物理块号:3。所以物理地址是:3D16。

https://blog.csdn.net/lisheng19870305/article/details/114952515

 

  1. 简述UNIX操作系统采用多级索引结构,规定每个文件的索引等级项有13个
  2. 文件系统中,打开文件系统的功能调用的基本操作是:把文件目录信息从辅存读到主存
  3. 通道在执行通道程序时,把通道和设备的执行情况随时记录下来并存放到通道状态字
  4. 在操作系统中,利用缓冲技术的主要目的是:缓解处理器与设备间工作速度的不匹配
  5. 系统中有n个并发进程涉及某个相同变量X,那么涉及变量X的相关临界区的个数是n个
  6. 为了防止系统死锁的发生,操作系统中采用的正确措施是:破坏产生死锁的四个必要条件之一
  7. 某系统中仅有4个并发进程竞争某类资源,并都需要该资源3个单位。如要使这个系统不会发生死锁,那么该资源的单位个数至少有9个【4*(3-1)+1)】
  8. 设计实时操作系统时首先要考虑的不是系统的效率,而是系统的实时性和可靠性
  9. 属于“强迫性中断事件”的有:主存读写发生校验错误、程序性中断、输入\输出中断、外部中断
  10. 简述UNIX存储管理
  • UNIX系统对主存采用页式虚存管理技术
  • UNIX将进程的地址空间分成系统区段、程序区段、控制区段
  • 为每一个区建立一张页表

 

  1. 简述设备管理
  • 计算机系统为每台设备确定一个绝对号
  • 系统启动设备时应指出设备的绝对号
  • 用户申请设备时指定设备的相对号使设备分配的灵活性强

 

  1. 在有m个读者和n个写者读写共享文件F的问题中,要求读者与写者互斥,写者与写者互斥,单允许多个读者同时读文件F。若用PV操作进行正确的管理,
  • 设计正在读文件F的读者进程计数器rc,初值为0
  • 设计一个互斥信号量mutex,对访问读者进程计数器进行互斥控制
  • 设计一个互斥信号量S,通过P(S);Write file F;V(S)实现写者之间互斥
  • 当一个读者要进入读文件F时,rc+1;if rc=1 then P(S);实现读者与写者互斥

 

  1. 操作系统是一种管理计算机系统资源(或软硬件资源)、控制程序执行、改善人机界面和为其他软件提供支持的系统软件。
  2. 现代计算机系统都采用多级存储体系,它包括寄存器、主存储器、高速缓冲存储器、辅助存储器
  3. UNIX系统中,当进程执行用户程序时,在用户态运行,当发生中断事件或请求系统调用时就要执行系统程序,因为转入核心态运行。
  4. 页式存储管理方法在地址转换时,先由相对地址中的页号查页表,得到该页对应的主存块号,再计算绝对地址,其绝对地址公式是:绝对地址=块号*块长+页内地址
  5. 文件存取方式采用随机存取还是顺序存取,主要取决于两个方面的因素:取决于用户使用文件的方式,与文件所使用的介质有关
  6. 外围设备从共享角度可分成两大类,即独占设备和可共享设备。
  7. 如果资源分配图中有环路,且每个资源类中只有一个资源,则环路中的进程处于死锁状态。
  8. 简述操作系统为用户提供的使用接口的种类

操作系统为用户提供两类使用接口:

  • 一类是操作员级的接口,是一组操作控制命令,供用户提出如何控制作业执行的要求。
  • 另一类是程序员级的接口,是一组系统功能调用,为用户程序提供服务功能。

 

  1. 假设一个逻辑文件有15个逻辑记录系统把该文件以链接结构的形式组织在磁盘上, 每个记录占用一个磁盘块,现要求在第15个记录之后增加一个新记录,简述它的操作 过程。
  • 在磁盘上寻找一个空闲块(假定块号为i)
  • 把第15个记录相应的磁块中的链接指针修改成i
  • 把新纪录的信息存放在磁盘块i中
  • 把磁块i中的链接指针置为0

 

  1. 简述设一移动头磁盘系统,共有200个柱面,编号为0—199。有若干个请求等待服务,它们依次要访问的柱面号为55、58、39、18、90、160、150、38、184,磁头向柱面号增加的方向移动,当前正停在100号柱面上。求在下列移臂调度算法下的服务顺序和磁头移过的总柱面数。
  •   (1)先来先服务调度算法;
    • 服务顺序 :100-->55-->58-->39-->18-->90-->160-->150-->38-->184
    • 磁头移动过的总柱面数:498
  •   (2)电梯调度算法。
    • 服务顺序 :100-->150-->160-->184-->90-->58-->55-->39-->38-->18
    • 磁头移动过的总柱面数:250

 

  1. 简述线程概念及线程的好处
  • 线程是进程中可独立执行的子任务。
  • 线程的好处:
    • 一个进程可以有多个线程
    • 多个线程可以并发执行
    • 多线程进程可以缩短进程处理时间
    • 一个进程内的多线程共享分配给进程的资源

 

  1. 简述进程的“死锁”与“饿死”的不同点
  • 死锁是指一组进程处于循环等待资源状态且永远不能结束等待
  • 饿死是指一个进程长期得不到资源而无法继续执行,它并没有卷入循环等待资源状态

 

  1. 简述进制转换

十六进制转十进制:

用乘法,每一位乘以

截图.png

然后加在一起。

如ff bf 是几?答:65471

截图.png

 

十进制转十六进制:

用短除法。每次除以16,把余数从下到上拼起来,就得到了16进制的数。

65471 是十六进制的几?答:ff bf

截图.png

 

十六进制转二进制:

把每一位,变成二进制的四位数,然后拼在一起。

ff bf 是二进制的几?答:1111 1111 1011 1111

截图.png

 

 

二进制转十六进制:

只需切成4个4个的小段,把每段对应的字母/数字拼在一起,就可以了。

比如这个例子,11 1111 1011 1111 是几?答:3f bf

截图.png

两个巧算法

如何快速把2的n次方的十进制数,转换为十六进制?

 

只需把 n 除以4,得到 j 余 i。把 i 变成2的i次方做为第一位,其余的就是,j 是几就跟几个零。

截图.png

如何计算十六进制的加减法?

其实和十进制一模一样,只需记住,进一位是进16,借一位是借16就行了。

截图.png

201604

  1. IBM公司在他们的PC机、工作站和大型机商都配置的UNIX操作系统被称为AIX
  2. 现代计算机系统的层次结构中,最内层的是硬件系统,最外层的是使用计算机系统的人,介于它们之间的是软件系统。软件系统的层次结构从内到外依次是:系统软件、支撑软件、应用软件
  3. 简述当操作系统退出执行,让用户程序执行时,处理器工作状态会从管态转换为目态
  4. UNIX用于终止子进程执行的系统调用是 exit
  5. 进程在执行过程中其状态会不断发生变化,这种特性称为进程的 动态性
  6. 程序状态字PSW的“程序基本状态”信息包括:指令地址、条件码、目态/管态
  7. 简述均衡调度算法 TODO
  8. 根据作业对资源的要求,作业调度从各类作业中去挑选作业,尽可能让使用不同资源的作业同时执行。

 

  1. 简述作业调度算法以及种类

同 简述进程调度算法的种类

 

  1. 可变分区存储管理方法是

在采用动态重定位方式地址转换时,绝对地址=校对地址+基址寄存器值

 

  1. 简述流式文件

用户对文件中的信息不再划分可独立的单位,构成文件的单位就是字符,整个文件就是一串有开头和结尾的连续字符。

  1. 简述磁盘存储空间管理方法
  • 位示图:
    • 基本思想:利用一串二进制位的值来反应磁盘空间的分配使用情况
    • 实现方式:每一个磁盘中物理块用一个二进制位对应,如果某个物理块为空闲,则对应的二进制位为0;如果物理块已分配了,则相应的二进制位为1【位示图中,行号是字号,列是位号】
    • 优点:对空间分配的情况描述能力强。一个二进制位就是一个物理块的状态。适用于各种文件物理结构的文件系统
    • 缺点:
  • 空闲块表:
    • 基本思想:专门为空闲块建立一个表,查表分配和回收
    • 实现方式:该表记录了外存储器全部空闲物理块。包括每个空闲块的第一个空闲物理块号和该空闲块中的物理块的个数。
    • 优点:适合于文件物理结构为顺序结构的文件系统。
    • 缺点:
  • 空闲块链表:
    • 基本思想:所有的空闲块连成一个链表
    • 实现方式:用一个空闲块首指针指向第一个空闲块,随后的每个空闲块中都含有下一个空闲块的指针,最后一块的指针为空
    • 优点:节省内存
    • 缺点:效率低
  • 空闲块成组链表法:在频繁申请、释放大量磁盘空间的系统中,处理效率最高
    • 基本思想:
    • 实现方式:将n个空闲盘块的地址存储在第一个空闲块,其余n-1个空闲盘块是空闲的
    • 优点:比空闲块链表法效率高
    • 缺点:

 

  1. 操作系统中采用斯普林(SPOOLING)技术的目的是实现虚拟设备
  2. 采用缓冲池技术提高了系统的工作效率,主要原因是减少了对磁盘的访问次数
  3. 有交互的并发进程执行时可能出现与时间有关的错误,其根本原因是由于进程交叉使用了共享资源
  4. 有n个进程竞争共享资源,系统允许每次最多m个进程同时使用该资源(n>m)。用PV操作管理时,相应信号量可能出现的最大值是m
  5. 银行家算法用于解决死锁的避免
  6. 假定系统有某类资源14个单位供若干进程共享,若每个进程申请该类资源的数量不超过4个单位,为保证不发生死锁应限定共享该类资源的进程数最多为4个【14/4+1】

 

  1. 属于UNIX提供的有关文件操作的系统调用(典型的目录操作)
  • create 创建目录
  • delete 删除目录
  • opendir 打开目录
  • closedir 关闭目录
  • readdir 返回打开目录的下一目录项
  • rename 目录换名
  • link 链接技术允许多个目录中出现同一文件

 

  1. 典型的文件操作
  • create
  • open
  • read
  • write
  • close
  • delete
  • seek 指针定位

 

 

  1. 在UNIX中属于中断事件的是:

I/O中断、电源中断、时钟中断

 

  1. 地址重定位:
  • 把相对地址转换成绝对地址的工作称为地址重定位
  • 静态重定位是指在装入作业时,就把相对地址全部转换成绝对地址
  • 动态重定位是指在执行指令时把相对地址转换成绝对地址
  • 页式存储管理、可变分区管理采用动态重定位方式

 

  1. 常用的磁盘调度算法:
  • 先来先服务调度算法
  • 最短寻找时间优先调度算法
  • 电梯调度算法
  • 单向扫描调度算法

 

  1. 多个交互关系的进程正在并发执行,其中每个进程执行时:
  • 按程序规定的顺序执行
  • 与相关进程有依赖关系
  • 可能被中断
  • 封闭性会被破坏

 

  1. 基本操作系统是指分时操作系统、实时操作系统和批处理操作系统。
  2. 进程的撤销是指当一个进程完成了特定的任务后,操作系统收回这个进程所占的工作区和取消该进程的进程控制块(PCB)。
  3. UNIX的虚拟地址是32位,其中最高两位(第31和30位)表示访问的是哪个区段,第29~9位表示页号(或虚拟页号),最低9位(第8~O位)表示页内地址(或字节偏移量)。
  4. 二级目录结构通常由主文件目录和各用户的用户文件目录组成。
  5. UNIX对每一类设备给出一个编号,称为主设备号。为了标识某一台具体设备,UNIX对每一台设备给出一个编号,称为次设备号。
  6. 把以信箱为媒体进行进程通信的方式称为间接通信方式,这种方式中进程可调用receive原语获取指定信箱中的信件。
  7. 要使占有并等待资源的条件不成立,经常使用两种方法:静态分配资源和释放已占资源。
  8. 从资源管理的观点简述操作系统的层次结构。操作系统的层次结构从硬件开始,自内向外依次为:处理器管理(进程管理)、存储管理、设备管理、文件管理

 

  1. 简述非抢占式进程调度和可抢占式进程调度。
  • 非抢占式进程调度:一旦某个高优先级进程占用了处理器就一直运行下去,不管此时是否有更高优先级的进程编程就绪,直到它自身的原因主动让出处理器,再重新调度。
  • 抢占式进程调度:当一个进程在处理器上运行,一旦有另一个更高优先级的进程变成就绪,进程调度就要剥夺正在处理器上运行的进程,把处理器分配给该进程。

 

  1. 简述文件保护与文件保密的区别以及为实现文件保护和文件保密所采取的措施。
  • 文件保护是指防止文件被破坏
  • 而文件保密是指防止他人窃取文件。
  • 文件保护的措施有:防止天灾人祸造成的破坏、防止系统故障造成的破坏、防止文件共享时造成的破坏。
  • 文件保密的措施有:隐蔽文件目录、设置口令、使用密码

 

  1. 简述“设备独立性”的含义以及它为计算机系统带来的好处。
  • 设备独立性的含义是指应用程序中的逻辑设备与实际系统中的物理设备是相脱离和相互独立的,即程序中的一台逻辑设备究竟与系统中的哪台物理设备相联系,要到程序运行时由操作系统动态地确定。
  • 逻辑设备与物理设备的这种关系,使得应用程序独立于具体的机器系统,具有可移植性;同时可使程序员不必过问存储空间和I/O设备的分配,而专注于程序的设计。

 

  1. 简述产生死锁的四个必要条件。
  • 互斥地使用资源。每个资源每次只能给一个进程使用。
  • 占有且等待资源。进程在申请新资源得不到满足时,处于等待资源状态,但不释放已占资源。
  • 不可抢夺资源。任一进程不能抢夺另一进程所占的资源,被占资源只能由占用进程自己释放。
  • 循环等到资源。一组进程内部各个进程之间请求资源和占用资源构成了环路。

 

 

  1. 假定某计算机系统配置的生存容量为IGB,主存空间一共被划分成512K个块。当采用页式虚拟存储管理时,提供给用户使用的逻辑地址空闻为4GB。试问:
  • (1)主存空间每块长度为多少字节(Byte)?

1GB/512K 块=2KB

  • (2)主存空间的物理地址有多少位(bit)?

30位 (1GB=2^30B)

  • (3)用户作业最多可以有多少页?

4GB/2KB=2^32/2^11=2^21=2M页

  • (4)画出该系统的逻辑地址结构示意图;

截图.png

 

  1. 设一个文件由100个记录组成,每个物理块存放1个记录,对于链接和索引两种存储结构,分别对文件执行下列操作,计算盅启动磁盘I/O的次数,请将下表绘制在答题卡上,将答案填入并简要说明理由:

(1)删除第1个记录;

(2)删除第51个记录;

(3)删除最后1个记录。

注:链接方式使用的是单向指针,并设计有头、尾指针。

截图.png

 

201610

  1. 计算机软件系统:计算机系统中的程序及其文档
  2. 将高级语言如C++等书写的源程序翻译成机器语言表示的目标程序,实现该功能的是编译系统
  3. 操作系统在中断处理服务程序完成之后,将按照调度程序选择某程序执行
  4. 操作系统的层次结构汇总,处于最外层的部分是文件管理
  5. 多道程序设计的系统中,要求各道程序放在主存的任何区域都能正确执行,这种技术称为程序浮动
  6. 访管中断属于自愿性中断事件
  7. 最高响应比优先算法照顾计算时间短的,也兼顾了计算时间长的作业
  8. 进程调度必须采用最高优先级调度算法的操作系统是 实时操作系统
  9. 静态重定位:在程序装入过程中,把相对地址转换成绝对地址
  10. 在页式虚拟存储器中,当地址转换时,先检查页表,如得知该页不在主存时,发生缺页中断请求
  11. UNIX系统中,文件存储管理采用的是 空闲块成组链接法
  12. 使用绝对路径名访问文件时,访问某个文件的开始点是 根目录
  13. 启动磁盘后,对磁盘读/写信息的最小单位是 物理块
  14. 设备独立性是指 用户程序使用的设备与实际使用哪台设备无关的一种特性
  15. 进程间采用信箱方式进行通信时,进程调用receive原语应提供的参数有指定的信箱名以及接收信件的地址
  16. 若系统中涉及相同变量X的相关临界区有n个(n≥3),那么在保证访问变量X安全的前提下允许同时进入相关临界区的进程个数是 1
  17. 假定系统有某类资源10个单位,供3个进程共享。为保证系统不发生死锁,限定每个进程最多申请该类资源的单位数是 10/3+1=4

 

  1. 某系统有n个进程,每个进程需要x个同类资源,系统不会产生死锁的最少资源数是多少?
  • 设最少资源数为y个。
  • 满足如下表达式即可:n(x-1)+1<=y。
  • 解释一下:每个进程需要x个资源,初始时给每个进程 x-1 个资源,最后再给一个额外的资源,没当一个进程运行完后马上释放其占有的资源,其它进程可以申请资源继续运行。
  • 如:某系统采用3个并发进程,都需要同类资源3个,系统不会产生死锁的最少资源数是 3(3-1)+1=7

 

  1. 分时操作系统主要特点:同时性、及时性、交互性
  2. 进程的基本特性:动态性、并发性、异步性

 

  1. 简述关于UNIX虚存地址结构:
  • UNIX将进程的地址空间分成系统区段、程序区段和控制区段
  • 采用32位虚拟地址,其中最低9位表示页内地址
  • 采用32位虚拟地址,其中第9位到29位表示页号
  • 虚拟地址的最高2位表示区段
  1. 操作系统启动和控制外围设备完成I/O操作的过程包括三个阶段, 准备阶段、启动I/O阶段、结束处理阶段
  2. 假设有n个进程(n≥3)共享某一资源,但系统规定这n个进程只能互斥使用该资源,用PV操作管理时相应信号量可能出现的值是1-n、0、1 【(1-n) ~ 1】
  3. 在批处理操作系统中,用户作业执行时不允许用户干预(人为干预),而是根据用户提供的作业说明书控制作业的执行。
  4. 操作系统面向用户提供两类使用接口:操作控制命令和系统功能调用。
  5. UNIX中,除了0号进程和1号进程外,其他进程总是使用系统调用fork来创建子进程,形成父子关系。而子进程是使用系统调用exit请求终止自己,并释放父进程。
  6. 为避免主存中各作业相互干扰,必须进行存储保护,限制各作业只能访问属于自己的那些区域;对于共享区限制各作业只读但不准写。
  7. 操作系统中,根据对文件的使用方式及存储介质的特性等因素,可将文件的存取方式分为顺序存取和随机存取两种。
  8. 斯普林系统(SPOOLING)由输入模块程序、输出模块程序和作业调度程序三部分组成。
  9. 一般采用两种办法解除死锁。一种是终止一个或几个死锁进程的执行以破坏循环等待,另一种是从涉及死锁的进程中抢夺资源。

 

  1. 简述操作系统提供的系统调用的种类及每一类的功能。
  • 文件操作类。功能有打开文件、建立文件、读文件、写文件、关闭文件等。
  • 资源申请类。功能有请求分配、归还主存空间,分配、归还外围设备等。
  • 控制类。功能有请求正常结束、异常结束,返回断点/指定点等。
  • 信息维护类。功能有设置、获取日历时间,设置、获取文件属性等。

 

  1. 简述树形目录结构的优点。
  • 解决了文件重名问题
  • 有利于文件分类
  • 提高检索文件的速度
  • 能进行存取权限的控制

 

  1. 简述操作系统中引入缓冲技术的主要目的,并列出常用的缓冲技术的名称。

引入缓冲技术的主要目的:在主存中开辟缓冲区,用来临时存放输入/输出信息,从而缓解CPU和外设速度不匹配产生的矛盾。

常用的缓冲技术:根据系统设置的缓冲区的个数分为单缓冲技术、双缓冲技术和缓冲池技术。

 

  1. 简述线程的4个属性。
  • 每个线程都有唯一的标识符。
  • 每个线程都有一张线程描述表。
  • 不同线程可执行相同的程序。
  • 同一进程的各个线程共享分配给进程的主存地址空间。
  • 线程是处理器的独立调度单位。
  • 多个线程可以并发执行。
  • 每个线程创建后,便开始了它的生命周期。
  • 线程的生命周期内经历等待、就绪、运行等状态变化。

 

  1. 简述防止死锁发生的应对策略

只要采用适当的资源分配策略使死锁的四个必要条件之一不成立,就可预防死锁的发生。

  • 要使“占有并等待条件”不成立,采用静态资源分配和释放已占资源策略。
  • 要使“不可抢夺条件”不成立,采用抢夺的分配资源策略。
  • 要使“循环等待条件”不成立,采用按序分配资源策略。

 

201704

  1. 能实现用户程序按照作业说明书的内容自动控制执行的是 批处理操作系统
  2. 具有微型化和实时性两个主要特点的操作系统是 嵌入式操作系统
  3. 从UNIX第二个版本开始,设计UNIX绝大部分程序所采用的语言是 C语言
  4. CH语言属于 系统软件。【Ch是一个跨平台的C/C++脚本解释器】
  5. 当用户程序执行中出现了某一中断事件,则处理器的状态会从目态转换为管态
  6. UNIX用于改变对文件访问权限的系统调用是chmod
  7. 在多进程的系统中,进程以不可预知的速度向前推进,这种特性称为进程的异步性
  8. 属于强迫性中断事件:硬件故障中断事件、程序性中断事件、外部中断事件;非强迫性中断事件(自愿性中断):访管中断事件
  9. 在分时操作系统中,进程调度算法主要采用 时间片轮转算法
  10. 当用户程序执行时,对主存空间保护措施有
  • 对自己主存区域中的信息既可读,又可写
  • 对共享区域中的信息可读,不可写
  • 对非共享区域中的信息不可读,也不可写

 

  1. 使用8个字(字长32位)组成的位示图来管理页式主存空间的分配与回收,“0”表示空闲,“1”表示占用。假定将位示图中字号为4,位号为5的空闲块分配出去,则该块的块号是 133(4*32+5)
  2. 当用磁带作为文件存储介质时,文件只能组织成顺序文件
  3. 对磁盘进行移臂调度的目的是为了缩短寻找时间
  4. 缓冲技术中的缓冲池设置在主存
  5. PV操作是供进程调用,执行时不可中断的过程,操作系统通常称这种过程为原语
  6. 用PV操作正确管理进程互斥使用某共享资源情况下,假定现在有n一1个进程(n≧3)在等待使用该资源,那么调用过P操作的进程数至少是 n
  7. 按序分配的策略 破坏了循环等待条件
  8. 某系统中仅有5个并发进程竞争某类资源,并都需要该类资源4个单位。如要使这个系统不会发生死锁,那么该类资源的单位个数至少有16个 (5*3+1)
  9. 设有两个进程共享5个同类资源,为使系统不会死锁,每个进程可以申请的该类资源数目最多为 3个(5/3+1=2+1)
  10. UNIX常用的shell命令是、mkdir 、rmdir、pwd、cp、mv
  11. 在UNIX中被称为“异常情况”的有
  • 执行一条trap指令
  • 执行操作码无效的指令
  • 执行地址越界的指令
  1. 地址动态重定位方式适用于 可变分区存储管理、页式存储管理、页式虚拟存储管理
  2. 斯普林系统(SPOOLING)的组成部分有 预输入程序、井管理程序、缓输出程序
  3. 一个进程独占处理器顺序执行时具有封闭性和可再现性,其含义是进程
  • 执行结果只取决于进程本身
  • 执行的结果与其执行的速度无关
  • 多次重复执行都有相同结果
  • 总按程序规定的顺序执行

 

  1. 在多道批处理系统中,作业成批输入、自动选择和控制作业的执行,减少了作业交接时间和人工操作时间,有利于提高系统的吞吐率。
  2. 操作系统中每创建一个进程就要为该进程建立一个进程控制块。一个刚被创建的进程,它的初始状态为就绪态。
  3. UNIX系统有一个2号进程,其作用是保证有足够的物理空闲页可供使用,这个2号进程称为页面守护进程。
  4. 从逻辑结构上讲,文件可分为流式文件和记录式文件两种。
  5. 操作系统为每一台设备确定一个编号,以便区分和识别,这个确定的编号称为设备的绝对号。由用户在程序中定义的设备编号称为设备的相对号。
  6. 把固定在一对进程之间的通信方式称为直接通信方式。这种方式中进程可调用send原语直接将信件传送给接收进程。
  7. 银行家算法能确保系统处于安全状态时才把资源分配给申请的进程,从而使系统避免发生死锁。
  8. 简述操作系统结构设计的主要方法。
  • 无序模块法
  • 内核扩充法
  • 层次结构法
  • 管程设计法

 

  1. 简述进程调度的含义以及常用的进程调度算法。

从就绪进程中选一个进程,让它占用CPU的工作称为进程调度。

常用的进程调度算法有:先来先服务调度算法、最高优先级调度算法、时间片轮转调度算法、分级调度算法

 

  1. 简述设置文件目录的主要目的以及目录项中包括的主要内容。

设置文件目录的主要目的是能够实现“按名存取”。

目录项中包含的主要内容有:有关文件存取控制的信息、有关文件结构的信息和有关文件管理的信息

 

  1. 解释通道命令、通道程序、通道地址字和通道状态字。

通道命令:规定了设备一种操作的命令。

通道程序:若干条通道命令组成的程序,由通道执行,完成一次I/O操作。

通道地址字:用来存放通道程序首地址的主存固定单元。

通道状态字:用来记录通道程序执行结果的主存固定单元。

 

  1. 简述死锁的含义以及形成死锁的原因。

若系统中存在一组进程,其中每个进程都占用了某种资源,又都在等待已被该组进程中的其他进程占用的资源,这种等待永远不能结束,称为死锁。

形成死锁的原因是若干进程需求的资源总数大于系统能提供的资源数,而系统对进程竞争资源的管理或分配不当。

 

201710

  1. 主存储器的编址单位是字节
  2. 用户程序可以通过访管指令调用系统调用程序
  3. 进程调度主要负责的工作是 选一进程占用CPU
  4. 终端用户的注册过程就是对终端作业的作业调度
  5. 抢占式静态优先权法 可能会出现进程长期得不到调度
  6. 处理器不能直接访问的是辅助存储器
  7. 在可变分区存储管理中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减2的情况是 有上邻空闲区,也有下邻空闲区
  8. 若处理器有32位地址,则它的虚拟地址空间为 4GB
  9. UNIX系统采用的目录结构是 树形目录结构
  10. 并发进程失去封闭性,是指 并发进程共享变量,其执行结果与速度有关
  11. 设系统有一类数量为M的独占性资源,系统中N个进程竞争该类资源,每个进程对资源的最大需求为W。当M、N、W的取值为【M=3;N=2;W=3】,系统可能发生死锁
  12. 批处理多道系统能较好地提高计算机系统的工作效率,理由包括
  • 可提高处理器的利用率
  • 可充分利用计算机系统的资源
  • 使系统单位时间内的处理能力得到提高
  • 有利于提高系统的吞吐量
  1. 操作系统为用户提供两种类型的使用接口使用计算机系统,分别是程序员接口和操作员接口。
  2. 从资源管理的角度看,操作系统的功能可分为处理器管理(CPU管理)、存储管理、文件管理和设备管理四部分。
  3. 在UNIX系统的各个寄存器中,程序计数器寄存器用来存放指令地址,当出现某个中断事件时,程序计数器寄存器中当前的值就是被中断程序的断点(或返回地址)。
  4. 从对文件信息的存取次序考虑,在对文件存取时,可以采用的文件存取方式有顺序存取和随机存取两种。
  5. I/O中断事件一般分为两大类,即操作正常结束和操作异常结束。
  6. 哲学家进餐问题中,因为资源的分配策略以及进程的执行速度,系统会产生死锁(或饿死,或饥饿)。
  7. 当每个程序在主存中占一个连续的存储空间时,系统使用哪两个寄存器来实现存储保护。当处理器在目态下执行程序时,对每一个访问主存空问的地址都要进行核查,请写出访问地址与这两个寄存器值之间的关系。
  • 基址寄存器、限长寄存器
  • 基址寄存器的值 小于等于 访问地址 小于等于 限长寄存器的值

 

  1. 请分别从资源分配、创建速度、通信、并行执行效率的角度简述多线程技术的优势。
  • 创建线程无需另外分配资源,而创建进程需要分配资源;
  • 因为创建线程无需分配资源,因此创建线程速度比创建进程速度快;
  • 线程间通信在同一地址空间中进行,不需要额外的通信机制,所以通信简单,信息传递速度也更快;
  • 线程能独立执行,充分利用和发挥处理器与外围设备并行工作的能力。

 

  1. 防止死锁发生时可采用什么策略来使循环等待资源的条件不成立?这个策略如何应用到5个哲学家就餐问题中?
  • 对资源采用按序分配的策略。修改第五个哲学家的程序,即规定每个哲学家想吃面条时,总是从自己左右两旁的筷子中先取编号小的筷子,再取编号大的筷子;对于第5个哲学家,他必须先拿到右边编号小的筷子,然后才能拿左边的筷子。
  • 可以采用静态分配资源策略。修改哲学家程序,每个哲学家只有当左右两个筷子都空闲时,哲学家才能拿取筷子就餐。

 

201804

  1. 裸机安装了操作系统之后,成为功能强大、使用方便的计算机系统,这种计算机系统被称为虚拟计算机
  2. 按照UNIX操作系统的体系结构,从里向外各层分别是硬件层、操作系统内核层、系统调用层和应用层【硬核调用】
  3. 内存空间的最小分配单位是 块
  4. 当处理器处于管态时,可以执行全部指令
  5. 在用户程序中要将运行结果打印出来,使用操作系统提供的接口类型是 系统调用
  6. 对信号量S实施V操作之后 ,当S≤0时要释放一个等待进程,将其改为就绪态
  7. 用信号量S来管理一组临界资源,S初值为4,若多次P、V操作后,S当前值为-1,则表示当前正在使用这些临界资源的进程共有4个
  8. 由于系统无法预先知道一个进程未来访问页面的情况,所以下列算法在实际中无法实现的是 理想页面置换算法
  9. 为避免页表占用较多存储空间的情况,大多数操作系统采用的进程页表是 二级页表
  10. 操作系统中,统一管理信息资源的软件是 文件系统
  11. 顺序文件,文件不能动态增长
  12. 操作系统底层中唯一知道各种输入输出设备控制器细节及其用途的部分是 设备驱动程序
  13. 为了提高设备分配的灵活性,用户申请设备时应使用 设备类、相对号
  14. 常见的操作系统结构有整体式结构、层次式结构和微内核(客户/服务器)结构。
  15. 为了便于管理,操作系统把所有的PCB用适当方式组织起来。一般的组织方式有:线性方式、索引方式和链接方式。
  16. 原语是操作系统核心的一个组成部分,由若干条指令组成,用来实现某个特定的操作功能,执行时具有不可中断性(或不可间断性、不可分割性、连续性)。
  17. 管程中的共享变量在管程外部是不可见的,外部只能通过调用管程中所说明的外部过程(函数)来间接地对其进行访问。
  18. 死锁检测的实质是通过检测是否存在循环等待条件,以此来确定死锁的存在与否,并识别出与死锁有关的进程和资源。
  19. 存储管理的主要任务包括内存的分配与回收、内存扩充、存储共享和存储保护。
  20. 在可变分区存储管理方案中,解决碎片问题的一个有效办法是采用紧缩技术,通过移动内存中的程序,把所有空闲碎片合并成一个连续的大空闲区置于内存的一端,把所有程序占用区放在内存的另一端。
  21. 按文件的用途进行分类,可以把文件分成系统文件、库函数文件和用户文件等三类。
  22. 为了实现“按名存取”,操作系统给每个文件都设置了一个描述性数据结构,即文件控制块(FCB),它是文件存在的标志。把所有文件的描述性数据结构组织起来,就构成了文件目录。
  23. 在SPOOLing系统中,作业执行时,从磁盘上的输入井中读取数据,并把作业的执行结果暂时存放在磁盘上的输出井中。
  24. 什么是程序性中断?程序性中断都必须由操作系统来完成吗?举例说明。
  • 程序性中断是指程序指令出错、指令越权或者指令寻址越界而引发的系统保护。
  • 不一定。程序性中断也可以由程序自己完成,如系统调试中断和算术错误等。

 

  1. 在七状态进程模型中,什么是阻塞状态?什么是阻塞挂起状态?两个状态如何转换?
  • 进程阻塞:进程在内存并等待某事件出现。
  • 阻塞挂起:进程在外存并等待某事件出现。
  • 当没有进程处于就绪状态或就绪状态进程要求更多内存资源时,会把进程从阻塞状态转为阻塞挂起状态;
  • 当一个进程释放足够内存时,系统会把一个高优先级阻塞挂起进程激活,变成阻塞状态。

 

  1. 什么是死锁?产生死锁的两个主要原因是什么?
  • 死锁是指一组进程中的每一个进程均无限期地等待进程中的另一个进程所占有且永远不会释放的资源的现象。
  • 产生死锁的两个主要原因:一是竞争资源,系统资源分配不当,进程间对资源的相互争夺而造成僵局;二是多道程序运行时,进程推进顺序不合理。

 

  1. 简述虚拟页式存储管理的优缺点。
  • 主要优点:由于其不要求进程的程序段和数据在内存中连续存放,从而有效的解决了碎片问题。既提高了内存的利用率,又有利于组织多道程序执行。
  • 主要缺点:由于不同代码的长度不同,但页面大小固定,导致每个程序最后一页总有一部分空间得不到利用,从而存在页面浪费问题。

 

 

201810

  1. OS功能:进程管理、存储管理、文件管理、作业管理和设备管理
  2. 微内核结构将操作系统分成用于实现操作系统最基本功能的内核和提供各种服务的服务进程两个部分
  3. RAM存储器是可随机存取数据的
  4. 应用程序通过系统调用来获得操作系统内核提供的服务
  5. 程序运行后其计算结果只取决于程序自身,由给定的初始条件决定,不受外界因素的影响,这个特点体现了程序执行的 封闭性
  6. 进程状态转换原因
  • 进程从运行状态进入阻塞状态的原因可能是等待某一事件的发生;
  • 进程从就绪状态进入运行状态的原因可能是 被进程调度程序选中占有处理机;
  • 进程从等待状态进入就绪状态的原因可能是 等待的事件已发生;
  • 进程从运行状态进入就绪状态的原因可能是 时间片用完;
  • 进程从运行状态进入等待状态的原因可能是( ①操作系统尚未完成某项服务。② 这个进程对某项资源的访问不能得到满足。③ 初始化I/O且须等待结果。④ 等待某一进程提供输入。)
  1. 正在运行的进程在信号量s上作P操作之后,当S=0时,该进程保持运行状态
  2. 在五个哲学家就餐问题中,为保证其不发生死锁,可限定同时要求就餐的人数最多不超过4个
  3. 只要系统发生死锁,则产生死锁的四个必要条件一定成立。
  4. 采用页式存储管理的主要目的是提高内存的利用率
  5. 存储管理方法中可能使系统产生颠簸现象的是 请求调页
  6. 存储容量大、但存取速度慢且只能进行顺序存取的存储介质是 磁带
  7. Windows操作系统的体系结构采用了分层的模块结构,主要层次有硬件抽象层HAL、内核、执行体和子系统集合【硬核执子】。
  8. 线程的主要属性是:每个线程有一个唯一的标识符和一张线程描述表,同一进程中各个线程共享该进程的主存地址空间。
  9. 进程由程序、数据和进程控制块(PCB)三部分组成。
  10. 一个管程由管程名称、共享数据说明、对数据进行操作的一组过程和对共享数据赋初值的语句四个部分组成。
  11. 若检测后发现系统有死锁,则可通过剥夺资源或撤销进程方法来解除死锁。
  12. 在存储管理中,将绝对地址对应的存储空间称为物理空间地址,将逻辑地址对应的存储空间称为逻辑地址空间。
  13. 在分区存储管理方案中,有两种存储分配保护方法,即设置界限寄存器和保护键方法。
  14. 把文件按组织形式进行分类,可以分为普通文件、目录文件和特殊文件等三类。
  15. 记录的成组和分解技术是磁盘高速缓存的一种应用,虽然需要代价,但是具有提高存储空间的利用率和减少启动设备次数的优点。
  16. 在典型的计算机系统硬件结构中,CPU与内存在最里层,通过总线与第二层的接口(适配器)部件相连,第三层是各种外围设备控制器,最外层是外围设备。

 

  1. 什么是中断?如果同一中断级中的多个设备接口中同时都有中断请求时,如何处理?
  • 中断是指处理器对系统中或系统外发生的异步事件的响应。
  • 如果同一中断级中的多个设备接口中同时都有中断请求,可以采用固定优先数或者轮转法。

 

  1. 进程控制通过进程控制原语来实现,请分别描述创建原语和撤销原语的操作过程。
  • 创建原语:先申请一个空闲PCB区域,然后将有关信息填入PCB,置该进程为就绪态,然后把它插入到就绪队列中。
  • 撤销原语:找到要被撤销进程的PCB,将它从所在队列中消去,撤销属于该进程的一切“子孙进程”,释放该进程所占用的全部资源,并消去该进程的PCB。

 

  1. 什么是资源有序分配法?请筒述此方法能够预防死锁的原因。
  • 资源有序分配法是指对系统中的所有资源顺序编号,规定任一进程申请两个以上资源时,按资源编号顺序申请,只有在得到编号小的资源之后,才能申请编号大的资源。
  • 资源有序分配法破坏了死锁的四个必要条件之一的循环等待条件,达到了预防死锁的目的。

 

  1. 虚拟存储器的工作原理是什么?
  • 当进程开始运行时,先将程序的一部分装入内存,另一部分暂时留在外存;
  • 当要执行的指令不在内存时,系统自动完成将它们从外存调入内存进行工作;
  • 当没有足够的内存空间时,系统自动选择部分内存空间,将其中原有的内容交换到磁盘,并释放这些内存空间,供该进程或者其他进程使用。

 

 

201904

  1. 按照用户界面的使用环境和功能特征的不同,操作系统分三种基本类型:批处理操作系统、分时操作系统和实时操作系统
  2. 并发性是指若干事件在同一时间间隔内发生;并行性是指若干事件在同一时刻发生。
  3. 界地址寄存器 用于存储保护的技术
  4. 系统调用的目的是请求系统服务
  5. I/O指令必须在管态执行
  6. 某进程在运行过程中需要等待从磁盘中读入数据,此时该进程的状态 从运行状态变为阻塞状态
  7. 三状态进程模型:就绪状态、运行状态、阻塞状态
  8. P、V操作是进程同步原语
  9. 进程高级通信原语:共享内存、消息机制、管道通信
  10. 资源有序分配法在解决死锁的问题中用于预防死锁
  11. 15个资源,多个进程均需3个,规定每个进程一次仅允许申请1个,确保不发生死锁,至多允许参与竞争的进程数为 15/2=7 个
  12. 虚拟存储技术的目的 扩充内存容量
  13. 无快表时,页式存储管理按照虚拟地址读写,必须访问内存的次数:2次
  14. 页式存储器提供编程使用的虚拟地址=虚拟页号+页内地址
  15. 磁带作为存储介质,文件只能组织成顺序文件
  16. 位示图可用于磁盘空间的管理
  17. I/O设备控制方式中的程序控制方式:由用户进程直接控制处理器和外围设备之间信息传送的方式
  18. 单缓冲技术不能用于实现两台I/O设备之间的并行操作,而双缓冲区、多缓冲区、缓冲池技术可以
  19. Linux操作系统的体系结构包括四个主要部分,即Linux内核、Linux Shell、文件系统和用户应用程序【核Shell文用】
  20. 在引入线程的操作系统中,线程作为调度和分派的基本单位,而进程作为资源拥有的基本单位
  21. 五状态进程模型中,进程状态被分为创建状态、就绪状态、运行状态、阻塞状态和结束状态
  22. 管程定义了一个共享变量的数据结构,以及在该数据结构上所执行的一组操作(组成:还有管程名称、说明)
  23. 死锁产生的四个必要条件是 互斥条件、不可剥夺条件、请求和保持条件、循环等待条件
  24. 静态重定位:地址转换工作是在程序开始执行前(程序装入时)集中完成的,而程序执行过程中不需要再进行地址转换工作。
  25. 采用可变分区存储管理方案的有优点是分区方案的灵活性好,较之固定分区能获得较好的内存利用率。
  26. 在管理磁盘空闲空间时,一般采用四种不同的数据结构,即位示图、空闲块表、空闲块链表、空闲块成组链接
  27. 为了保护文件,可以对用户的存取权限实施控制。当用户数目和文件数目不多时,可以采用存取控制矩阵方式,但是当文件和用户较多时,为了减少空间和时间的开销,则采用二级存取控制。
  28. I/O设备管理中,每个设备控制器都有若干寄存器用来与处理器进行通信,包括控制寄存器、数据寄存器、状态寄存器

 

  1. 中断和异常的区别是什么?请指出“时间片到时”、“算术溢出”、“掉电”、“虚拟存储中的缺页”分别属于中断和异常的哪一种
  • 中断是由外部事件引发的,异常是有正在执行的指令引发的。
  • 中断:时间片到时、掉电
  • 异常:算术溢出、虚拟存储中的缺页

 

  1. 什么是轮转调度算法?请分析时间片长短对算法性能的影响
  • 轮转调度算法是指将处理器的处理时间划分成一个个时间片,就绪队列中的进程轮流运行一个时间片。当时间片结束时,让出处理器,进入就绪队列,等待下一次调度。
  • 时间片太短,进程切换频繁,加重系统开销(或降低了处理器效率)。
  • 时间片太长,引发了对短的交互请求的响应时间变长。

 

  1. 请简述死锁预防和死锁避免这种死锁解决方法的含义
  • 死锁预防:系统预先确定资源分配策略,这些策略至少能破坏死锁四个必要条件中的一个,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生。
  • 死锁避免:当进程提出资源申请时,系统先测试资源分配后系统的安全状态,仅当能确保系统安全时才把资源分配给进程,使系统一直处于安全状态之中,从未避免了死锁。

 

  1. 请阐述实现虚拟存储器需要哪些硬件支持
  • 系统有容量足够大的外存
  • 系统有一定容量的内存
  • 硬件提供实现虚——实地址映射的机制。

 

  1. 请回答通道有哪三种类型?简述优缺点
  • 选择通道、数组多路通道、字节多路通道
  • 选择通道的优点:以数据块为单位进行传输,传输效率高。缺点是:通道利用率低。
  • 数组多路通道的优点:以数据块为单位进行传输,传输效率高,具有多路并行操作的能力,通道利用率高。缺点是:控制复杂。
  • 字节多路通道的优点:具有多路并行操作的能力。缺点是:以字节为单位传输,传输效率低。

 

  1. 某单CPU系统有如下一批处于就绪状态的进程

截图.png

截图.png

 

 

  1. 请补充P、V操作

 

截图.png

截图.png

 

 

  1. 解答UNIX管理文件问题

截图.png

截图.png

 

 

201910

  1. 简述分时操作系统的特点:独占性、交互性、及时性、多路性【分时:独交及多】
  2. 资源的共享方式:同时共享和互斥共享。磁带机 属于 互斥共享,硬盘、内存、用重入码编写的文件 属于同时共享。
  3. 屏蔽中断指令 必须在管态执行;读时钟周期指令、存数指令、取数指令可在目态执行
  4. 用户程序向系统提出使用外设的请求方式是 系统调用
  5. 创建一个进程的具体操作是:建立一个进程控制块、为进程分配内存、将该进程控制块插入就绪队列
  6. 进程和程序的一个本质区别是:进程为动态的,程序为静态的
  7. 简述P、V操作:都是原语操作、实现进程间同步、解决任何进程的互斥问题
  8. 信号量的值具有明确的物理意义,当值小于0时,其绝对值表示等待队列中进程的个数
  9. 在虚拟页式存储管理方案中,系统建立的用来实现从页号到物理页面号之间映射的数据结构是:页表
  10. 简述交换技术

又称对换技术。将系统中不在运行中的进程或某一部分从内存中调出,让出内存空间以调入其他需要内存空间的进程

 

  1. 简述覆盖技术

是指一个程序的若干程序段,或几个程序的某些部分共享某一个存储空间。覆盖技术的实现就是把程序划分为若干个功能上相对独立的程序段,按照其自身的逻辑结构使那些不会同时执行的程序段共享同一块内存区域。未执行的程序段先保存在磁盘上,当有关程序段的前一部分执行结束后,把后续程序段调入内存,覆盖前面的程序段。

 

  1. 简述虚拟技术

利用大容量的外存来扩充内存,产生一个比有限的实际内存空间大得多的、逻辑的虚拟内存空间,简称虚存,以便能够有效地支持多道程序系统的实现和大型程序运行的需要,从而增强系统的处理能力

 

  1. 简述物理扩充技术??? TODO

 

  1. 简述转换检测缓冲区(TLB)

在带有转换检测缓冲区(TLB)的页式存储管理方式中,TLB只存储了当前进程中最活跃的少数活动页面的页号,随着进程的推进,TLB的内容会动态更新

 

  1. UNIX系统中,把I/O设备看成是特殊文件
  2. 使用文件的第一步,是把文件控制块FCB送到内存,即打开文件
  3. 采用中断控制方式进行数据传送时,处理器具备的功能:识别中断请求的能力、响应中断的能力、按优先级响应中断请求的能力
  4. SPOOLing(斯普林)技术优点包括
  • 提高了设备的利用率
  • 缩短了用户程序执行时间
  • 缩短了用户程序的响应时间

 

  1. Android操作系统体系结构:从高到低层分别是:应用程序层、应用框架、系统运行库层、Linux内核【Android程框运核】
  2. 在线程的两种实现方式中,不依赖于内核的是用户级线程,而所有线程的创建、撤销和切换都由内核实现的是 内核级线程
  3. 对于处于等待状态的进程,在其被阻塞的原因获得解除后,其状态将转变为就绪状态,仅当得到处理器时,才可恢复运行。
  4. 文件系统经常采用以下两种方法来保护文件,即建立副本和定时转储
  5. 每个索引文件都有一个索引表,索引表的条目包括文件的逻辑块号及所对应的物理块号
  6. 在磁盘读写请求来到时,应采用调度策略降低访问者的总访问时间。磁盘驱动调度由移臂调度和旋转调度两部分组成。

 

  1. 中断系统由哪两大部分组成?请介绍计算机系统中比较典型的中断有哪些?
  • 硬件中断装置和软件中断处理程序。
  • I/O中断、时钟中断、硬件故障中断、程序性中断、系统服务请求(或自愿性中断)

 

  1. 什么是进程调度?在设计进程调度算法时通常使用吞吐量、周转时间和处理器利用率作为衡量指标,请解释吞吐量和周转时间的含义?
  • 进程调度:即处理器调度,是指根据一定的调度算法,系统从就绪队列中选择一个进程,把处理器分配给它。
  • 吞吐量:系统每小时完成的进程数量
  • 周转时间:指从一个批处理进程提交时刻开始到该进程完成时刻为止的统计平均时间。

 

  1. 某系统中有10个打印机,有3个进程P1 P2 P3 分别需要 8 7 4 台。若P1 P2 P3 已申请到4 2 2 台。试问:系统目前还有几台可申请的打印机?各个进程还需要几个打印机?目前系统是否处于安全状态?为什么?
  • 目前系统还有2台可申请的打印机。进程P1 P2 P3 还分别需要 4 5 2 。
  • 系统处于安全状态。根据目前的各进程资源分配状况,可以先分配2台给进程P3达到最大需求,然后P3释放其原来占用的资源,系统就有4个资源,然后分配给进程P1达到最大需求,然后P1释放其原来占用的资源,系统就有8个资源,可满足P2的最大需求,所以目前系统处于安全状态。

 

  1. 简述虚拟存储技术的基本思想和目的
  • 基本思想:在硬件支持下对内存和外存统一实施管理,利用大容量的外内来扩充内存,产生一个比有限的实际内存空间大得多的、逻辑的虚拟内存空间。
  • 目的:有效地支持多道程序的实现和大型程序运行的需要,从而增强系统的处理能力。

 

  1. 什么是设备独立性?实现设备独立性的好处是什么
  • 设备独立性就是应用程序独立于具体使用的物理设备。
  • 可带来好处:提高设备管理软件的设计效率,当I/O设备更新时,不需要重新编写全部软件。

 

  1. 简述UNIX管理文件问题

截图.png

截图.png

 

202204

  1. 简述进程控制的主要任务:

创建进程、撤销结束的进程、控制进程运行时的状态转换

 

  1. 简述微内核结构的操作系统。

操作系统在内核中建立最小的机制,而把资源留给用户空间中的服务进程,其带来的直接好处是:可靠性、灵活性、适宜于分布式处理

 

  1. 通道的作用
  • 可以实现中央处理器和各种外部设备并行工作
  • 可以实现各种外设之间并行工作
  • 采用通道后,处理器和外部设备都能都能够访问存储器

 

  1. 指令寄存器:对用户不可见
  2. 应用程序可以通过系统调用来获得操作系统内核提供的服务
  3. P、V操作可实现进程的互斥和同步
  4. 系统发生死锁时,死锁进程的个数至少为2个
  5. 撤销进程 可以 解除死锁
  6. 安全状态是没有死锁的状态;不安全状态不一定就是死锁状态,是可能发生死锁
  7. 把逻辑地址转换成物理地址(绝对地址)的过程称为 地址映射
  8. 虚拟存储器的特征:程序运行前不必全部装入内存,且在运行过程中不必一直驻留在内存
  9. 防止用户越权操作,采取的策略是 存取控制表
  10. FAT-16文件系统的根目录在磁盘的位置和大小是固定的
  11. 进程具有三个基本状态。在单处理器系统中,处于等待状态和阻塞状态这两个状态的进程可能有多个,可以将他们组成相应的队列。
  12. 信箱通信:通过发送信件以及接收回答信件进行进程之间的大量信息通信方式
  13. 就“预防死锁”“避免死锁”“检测与解除死锁”三种解决死锁的方法而言,资源利用率最低的是 预防死锁,有可能出现死锁的是 检测与解除死锁
  14. 存储管理主要的任务是 存储保护、内存分配和回收、存储共享 、扩充内存容量
  15. 空闲分区的分配法有 最先适应算法、最优适应算法、最坏适应算法
  16. 允许用户按任意次序存取文件中的任意一个记录的文件存取方式称为 随机存取(直接存取)
  17. UNIX操作系统的i节点采用了多级索引(或三级索引、索引)文件物理结构,支持直接寻址和间接寻址方式。
  18. I/O设备性能同CPU性能不匹配的矛盾,操作系统主要通过缓冲技术、虚拟技术、中断技术来解决。
  19. 什么是中断屏蔽?采用什么方式来屏蔽?被屏蔽的中断信号保存在哪里?
  • 在整个中断系统中,可以允许或者禁止中断系统对某些类别中断的响应。
  • 在程序状态字PSW中设计有中断屏蔽位,主机是否允许响应或禁止某些中断,则由PSW中的中断屏蔽位来决定。
  • 被屏蔽的中断信号,通常保存在中断寄存器中。

 

  1. 抢占式调度和非抢占式调度有何区别?
  • 抢占式调度就是当就绪队列中一旦有优先级高于当前运行进程优先级的进程存在时,便立即进行调度,转让处理器。
  • 非抢占式调度就是一旦把处理器分配给一个进程,它就一直占用处理器,直到进程运行结束或者因为I/O阻塞等原因,才会自愿让出处理器。

 

  1. 虚拟页式系统中页表的主要作用?通常页表项会包含哪些信息?
  • 页表中的每个表项指出了程序逻辑地址中的页号与所占有的物理页面号之间的对应关系,系统要通过查页表完成从逻辑地址到相应物理地址的变换,即地址转换。
  • 通常页表项包含物理页面号、有效位(驻留位、存在位)、访问位、修改位、保护位等信息。

 

 

  1. 为什么要引入缓冲技术?常用的缓冲技术?
  • 引入缓冲技术的目的:匹配CPU与I/O设备、I/O设备之间的处理速度;减少外部中断的次数及处理器进行中断处理所花费的时间。
  • 常用缓冲技术:单缓冲、双缓冲、多缓冲、缓冲池

 

  1. 简述虚拟页式存储问题

截图.png

截图.png

 

202210

  1. 实时操作系统对可靠性要求最高

 

posted @ 2023-09-06 16:45  lanrenka  阅读(259)  评论(0编辑  收藏  举报