操作系统-若干问题答案.doc_第1页
操作系统-若干问题答案.doc_第2页
操作系统-若干问题答案.doc_第3页
操作系统-若干问题答案.doc_第4页
操作系统-若干问题答案.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一部分 基本知识 用户使用操作系统提供的操作接口操作计算机,常见的操作接口有:终端命令、图形用户接口、和( )。 高级指令 宏命令 汇编语言 作业控制语言 操作系统在执行系统调用时会产生一种中断,这种中断称为( )。 外中断 I/O中断 程序性中断 访管中断 在下列操作中,不会引起处理器模式转换的操作是( )。 中断 键盘命令 系统调用 程序调用 ( )中断事件是正在运行的进程所期待的自愿中断事件。 程序 I/O 时钟 访管 当用户程序执行访管指令时,系统( )。 维持在目态 维持在管态 从管态到目态 从目态到管态注:管态又叫核心态;目态又叫用户态。 从作业提交到作业完成的时间间隔是( )。 响应时间 周转时间 运行时间 等待时间 以下选项中何种处理不属于系统内核的范围( )。 进程调度 执行原语 执行外设基本操作 命令解释 在同步控制中,所谓的临界区是指( )。 一个缓冲区 一段共享数据区 一段程序 一个互斥的硬件资源 一个进程被唤醒意味着( )。 进程重新占有CPU并变为运行状态 进程保持等待状态 进程PCB移到等待队列首部 进程变为就绪状态 在下列事件中不立即进入进程调度程序进行调度的是( )。 等待I/O 时间片到 进程执行完 输入新作业 Windows XP系统的线程调度策略是( )。 时间片调度 先来先调度 C 短线程优先调度 优先级抢占式调度 如下所述的工作中,( )不是创建进程所必须做的。 为进程分配CPU 为进程分配内存 建立一个PCB 将PCB链入就绪队列 进程管理中,在( )情况下,进程的状态由等待变为就绪。 进程被调度 等待某一事件 时间片用完 等待的事件发生 当作业调度程序将某作业调入内存并建立一个相应进程时,该进程的状态处于( )。 等待状态 后备状态 就绪状态 执行状态 对于两个并发进程,设互斥信号量为mutex,若mutex.value=0; 则表示( )。 没有进程进入临界区 一个进程进入临界区 一个进入另一个等待 二个进程进入临界区 系统处理某一紧急任务时,应选择( )。 最高响应比优先 优先数调度 短作业优先 先来先服务 在下列状态中不是属于进程状态的是( )。 等待状态 后备状态 就绪状态 执行状态 在单处理机上执行多道程序,是在( )进行的。 同一时刻 某一时刻 同一时间间隔内 某一时间间隔内 如下的进程状态变化,不可能发生的是( )。 运行-就绪 运行-等待 等待-就绪 等待-运行 当某进程被调度建立一个相应的进程并分配到必要的资源,该进程的状态是( )。 等待状态 后备状态 就绪状态 执行状态 在生产者消费者问题中,设置信号量empty以确保生产者进程能向缓冲区存入信息,设置信号量full以确保消费者进程能从缓冲区中取出信息。生产者进程向缓冲区存入信息后应执行以下的那一种P、V操作( )。 P(empty) V(full) P(full) V(empty) 若某临界资源r的信号量s的初值为3,且有4个进程共享r,则s的取值范围是( )。 -3,3 -1,3 0,3 -4,3 MS-DOS操作系统的命令处理程序分为常驻、暂驻二部分,其暂驻部分存放在主存中的高地址区域,以便用户区可向该区域扩展,这种存储管理技术称为( )。 虚存管理 交换 覆盖 重定位 在请求分页虚拟存储管理中,为了避免不必要的页面回写,在页表中须设置( )。 主存块号 辅存地址 引用位 修改位 在页面替换算法中,淘汰主存中下次访问离当前访问的页面最远的页面,这种页面替换算法称为( )。 OPT算法 FIFO算法 LRU算法 WS算法 分段存储管理中,( )。 段与段之间必定连续 以段为单位分配,段内连续 段与段之间必定不连续 以段为单位分配,每段等长 在下列存储管理方式中,不要求连续空间且不要求作业全部装入的管理方式是( )。 可变分区存储管理 分页存储管理 分段存储管理 请求分页存储管理 能够实际增加存储单元的存储扩充方式是( )。 覆盖技术 交换技术 物理扩充 虚存技术 LRU页面替换算法选择( )页面作为淘汰页面。 最先进入 访问次数最少 此前最长时间未访问 此后最长时间未访问 在存储管理中,所谓的虚拟存储技术是指( )的技术。 扩充逻辑空间 扩充内存空间 扩充外存空间 扩充存储空间 采用( ),目标程序可以不经任何改动而装入内存。 静态重定位 动态重定位 交换技术 覆盖技术 在下列概念中,与虚存有关的概念是( )。 最优适应 覆盖技术 动态可变 抖动 要求存储分配时地址连续的管理方式是( )。 分区存储管理 段式存储管理 分页存储管理 段页式存储管理 将暂不执行的进程映象移到外存,让出内存空间另作它用的技术是( )。 覆盖技术 交换技术 物理扩充 虚存技术 在下列存储管理方法中,属于连续存储空间管理方法的是( )。 分页存储管理 分段存储管理 虚拟存储管理 可变分区存储管理 为了使大作业可在小的主存空间中运行,可采用的技术是( )。 分页存储管理 分段存储管理 请求分页存储管理 可变分区存储管理 程序的( )原理是虚拟存储管理系统的基础。 动态性 虚拟性 局部性 全局性 CPU启动通道后( )。 CPU执行程序来控制设备 通道执行通道程序来控制设备 CPU执行通道程序来控制设备 以上都不对 一般来说,用户程序是通过使用( )向操作系统提出使用外部设备的要求的。 作业申请 系统调用 I/O指令 操作原语 用户在使用设备时,用的是逻辑设备名,而在操作系统内部,是按( )来启动I/O设备的。 设备号 设备名 设备型号 逻辑设备名 在下列设备中可以进行直接存取的设备是( )。 键盘 打印机 磁盘机 显示器 CPU与通道并行执行,彼此之间的通信与同步是通过( )实现的。 操作员 I/O指令 I/O指令与I/O中断 I/O中断 索引结构文件中的索引表是用来( )的。 指示逻辑记录与物理块的对应关系 存放有关的数据结构和文件信息 指示逻辑地址 存放查找关键字 进程和线程的一个本质区别是( )。 进程有地址空间,线程没有地址空间。 进程存储在外存,线程存储在磁盘。 进程存放于一个文件中,线程存放在多个文件中。 进程是拥有资源的基本单位,线程是CPU执行的基本单位。 在下列系统调用中,将文件目录读入内存的系统调用是( )。 建立文件 打开文件 读取文件 写入文件 在使用文件系统的系统调用进行信息读写时,下列那些功能不是文件系统完成的( )。 核实参数的合法性 核实操作权限 确定物理地址 读写磁盘 文件的物理结构主要有( )四类。 索引、直接、顺序、记录 顺序、直接、连接、索引 顺序、连接、索引、记录 顺序、索引、目录、连接 为了防止死锁,某系统采用一次性分配全部资源的方法,这种方法是破坏了产生死锁的那一个必要条件( )。 互斥资源 占有等待 循环等待 非剥夺式分配 在解决死锁的方法中属于死锁防止的策略是( )。 死锁检测法 资源分配图化简 银行家算法 资源有序分配法 迪克斯特拉(Dijkstra)提出的银行家算法是具有代表性的( )算法。 死锁预防 死锁避免 死锁检测 死锁解除 系统中有3个并发进程都需要同类资源4个,则系统不会发生死锁的最少资源数是( )。 8 9 10 11记住公式: 如果只对一种资源而言,用下列公式判断。否则要用死锁定理或者死锁检测算法判断。 满则公式 r-1(m-1)p; 则不会死锁。 其中r表示资源数,p表示进程数,m表示每个进程最多需要的资源数。 某系统中有同类互斥资源m个,可并发执行且共享该类资源的进程有n个,每个进程申请该类资源的最大量为x(nxm),当不等式( )成立时,系统一定不发生死锁。 nx+1m nxm m(x-1)+1n m-nx+(n-1)0 就是上面的公式变一下。 死锁的必要条件是: 互斥、占有等待、非剥夺、循环等待 。 死锁的充分条件是: 资源分配图不可完全简化 。死锁的充分条件也叫死锁定理。 一次性分配进程所需的全部资源,这种死锁防止方法破坏了产生死锁四个必要条件中的_占有等待_条件。 采用资源编号顺序分配法,可以破坏产生死锁四个必要条件中的_循环等待_条件。 产生死锁的主要原因是 系统资源不足 、 进程推进顺序不当 、 资源分配策略不当 。 操作系统提供的基本服务有 执行程序、信息存取、通信服务、差错检测和处理 。 在分时系统中,影响响应时间的主要因素有_主机速度_、_会话终端数_。 设计实时系统时应特别强调系统的_实时性_和_可靠性_。 操作系统的主要特征是:_并发性、共享性、不确定性及虚拟性。 按中断信号来源,可把硬中断分为 内中断(异常)和 外中断 二大类,属于第一类的中断例子有 访管中断、故障、程序异常、终止 ,属于第二类的中断例子有 外设中断 。 _中断_是激活操作系统的手段。 用户程序是通过使用_系统调用_产生中断进入系统内核的。 系统调用与一般过程的主要区别是_系统调用在管态(又叫核心态)下执行_。 用户程序请求系统服务的唯一途径是 系统调用 。 用户程序访问系统资源(如PCB、磁盘)的唯一途径是 系统调用 。 用户程序执行特权指令的唯一途径是 系统调用 。 进程在运行过程中若要从键盘读入键值,则进程状态会从运行态转变为 等待态 。 线程的状态至少有就绪、运行和 等待 。 多任务系统采用优先级抢占调度,紧急任务的优先级应比其他一般性任务的优先级 高 。 设信号量S的初值为2,若对S执行3次P操作,则S的值是 -1 。 设信号量S的初值为2,若对S执行3次V操作,则S的值是 5 。 地址重定位是指把 逻辑地址转 变为内存物理地址的过程,地址重定位分为静态地址重定位和动态地址重定位。 路径名是指从某个目录开始到目标文件为止,沿目录结构路径形成的名称。绝对路径名是从根目录开始的路径名,相对路径名是从 当前目录 开始的路径名。 把非必要功能移到内核之外,留下来的内核很小,称为 内核 。微内核操作系统稳定可靠,易于扩展,但运行效率较低。 分段存储管理系统中,越界中断有两种情况,若段号s 大于段表长,则发生地址越界中断;若 段内位移d 大于段表中的段长,则发生地址越界中断。 文件结构分为物理结构和逻辑结构,用户所看到的文件组织形式称为文件的逻辑结构。指文件在存储设备上的存放方法就是文件的 物理结构 。 原语是运行在核心态完成特定动能的程序段。原语执行时不允许 被中断 ,也不允许被分割执行。 设备驱动程序是内核的一部分,运行在 核心态 ,拥有特权,所以很多病毒利用它处理执行特定的任务。 Linux链接文件分为硬链接文件和软链接文件。 硬链接文 件把文件名与inode链接起来,而 软链接文件 只链接文件名,不指向inode。软链接文件类似于Windows快捷方式,不仅可以链接文件还可以链接目录。Linux链接命令是ln。 一个用作业说明书组织的批处理作业,其作业体一般由_程序_ 、_数据_和_JCL_组成。 按作业到达时间的先后进行调度称为_先来先服务调度算法 ,按作业执行时间的长短进行调度称为_短作业优先_调度算法,既考虑到等待时间又考虑到执行时间的调度算法称为_最高响应比优先_调度算法。 操作系统内核的主要功能是_执行原语、处理中断、进程调度、执行外设基本操作_。 系统中用以表征进程的数据结构是_ PCB_,表征“作业”的数据结构是_JCB_。 一次仅允许一个进程使用的资源叫 临界资源 ,访问这种资源的那段程序称为 临界区 。 分时操作系统按照 时间片轮转 原则把处理器轮流分配给各终端交互作业。 分时操作系统允许多个用户以 交互 方式使用计算机。 进程的基本状态有 就绪 、 等待 、 执行 。 进程的基本属性有_动态性_、_并发性_、_独立性_和_制约性_。 并行性是指两个或多个事件在 同一时刻 发生;并发性是指两个或多个事件在 同一时间间隔 发生。 处于执行状态的进程被高优先级进程剥夺时,其状态变为_就绪 。 进程映象由 程序 、 数据 、 PCB 和 栈 组成。 在时间片调度算法中,如果时间片过大,则该调度算法就会退化为_先来先服务_。 信号量的物理意义是:信号量大于零表示_可用的资源数_,信号量小于零其绝对值表示_等待该信号量的进程数_。 有n个进程共享同一临界资源,若使用信号量机制实现对临界资源的互斥访问,则信号量的变化范围是_1, -(n-1)_。 进程间的制约关系可分为两类:_互斥_和_同步_,其中_同步_指合作进程之间具有一定的时序逻辑关系;_互斥_指多个进程竞争使用独占型资源的约束关系。 原语在执行过程中必须保证 不被分割或不被中断 。 在现代操作系统中,多个进程可共享同一个程序代码,这种可共享的程序代码称为_可重入代码或纯代码_在执行过程中不能被改变。 进程映像由进程控制块、 程序块 、数据块、核心栈组成。 从资源分配的角度看,P操作意味着向系统_申请_资源,V操作意味着系统_释放_资源。 可变分区存储管理中, 最先适应法(又叫首次满足法)按空闲块起始地址的递增顺序排列空闲区。_最优适用法(又叫最佳满足法)则按空闲块长度的递增顺序排列空闲区。 为了提高内存的使用效率,将暂不执行的进程映象移到外存,当具备执行条件时再将它调入内存,这种存储管理技术称为 交换 。 在程序开始装入时先装入部分模块,当程序运行过程中调用另一模块时再从外存调入到同一内存区域,这种存储管理技术称为 覆盖 。 在页式管理系统中,用户程序中使用的地址称为 逻辑地址 ,实际访问主存时由系统将它转化为 物理地址 。 分页管理是把内存分为大小相等的区,每个区称为_页帧(或页框)_,而把程序的逻辑空间分为若干_页_,页的大小与页帧的大小 相等 。 在分页存储管理中,为了加快地址变换速度,页面大小的值常取_2的整数次幂_。 在请求式分页系统中,被调出的页面又立刻被调入,这种频繁的调页现象称为_抖动_。 采用可变分区存储管理主存,存储空间存在 外部碎片 ,可用 主存紧凑 方法消除。 分段管理中,若逻辑地址中的段内地址大于段表中该段的段长,则发生 地址越界中断。 段页式存储管理中,每道程序都有一个 段 表和若干个 页 表。 页式管理系统的逻辑地址结构由 页号 和 页内位移 组成。 分段管理中的地址映射过程是:首先找到该作业段表的 起始地址 ,然后根据逻辑地址中的 段号 去查找段表得到该段的内存起始地址,再与逻辑地址中的 段内位移 相加得到物理地址。 内核是常驻内存且运行在 核心态 的一组程序模块。 对磁盘移臂调度,电梯调度不会产生饥饿现象,而SSTF调度 会 产生饥饿现象。SCAN调度也不会产生饥饿现象。 请求分页虚拟存储管理系统中,既有页表又有快表时,应先查 快表 ,若快表失效,再查 页表 。 用户级线程是指线程的管理由应用程序,在 用户空间 中实现。 内核级线程是指线程的管理由内核负责,在 内核空间 中实现。 软件中断是一种 软中断 ,信号也是一种软中断。 分段存储管理 和可变分区存储管理都会产生碎片。分页存储管理系统中,只有最后一页可能产生内部碎片,其它页不会产生碎片。 存储管理的任务是_内存分配_、_地址转换_、_存储保护_和_内存扩充_。 _请求分页存储管理_也称为动态页面管理,不是把一个进程映象的所有页面一次性全部装入内存,而只装入一部分,其余部分在执行中动态调入。 在段页式管理中,逻辑地址分解为_段号_、_页号_、_页内位移 三部分。 CPU与通道双向通讯是指:CPU向通道发 I/O指令 ,通道向CPU发 中断信号 。 I/O设备与系统进行数据交换的常用I/O控制方式有 轮询 、 中断 、 DMA 、 通道 CPU最基本的I/O指令有: 启动I/O指令 、 查询I/O指令 和 停止I/O指令 。 设备管理程序对I/O设备的分配和控制是借助 系统设备表 、设备控制表 、控制器控制 表 、 通道控制表 等一些表格来实现的。 设备的独立性是指 用户程序 与 物理设备 无关,即用户程序只使用逻辑设备名。 计算机系统的外部设备可分为: _输入输出设备_和_存储设备_ 二大类。 SPOOLing系统由 输入井 、 输出井 、 预输入程序 、缓输出程序 、 井管理程序 和 作业调度程序 六部分组成。 设备管理中为了实现设备无关性,在使用设备时用户程序中不指定_物理设备名_,而代之以另一种名称,这就是_逻辑设备名_。 写一次磁盘所需的时间可以分解为: 寻找时间 、_延迟时间_和_传输时间_ 三类。 引入缓冲的主要目的之一是改善 CPU 和 I/O设备 之间速度的不匹配。 在用户看来,所看到的文件组织形式称为文件的_逻辑结构_。 文件的逻辑结构有_流式文件_和_记录式文件_ 二种。 从实现的观点出发,文件在外存中的存放组织形式称为文件的_物理结构_。 文件的物理结构可采用_顺序结构_、_连接结构_、_直接结构 和_索引结构_等形式。 目录文件是指_同一卷中所有文件目录构成的文件_。 顺序存取是按文件的逻辑地址顺序访问;而_随机存取_是按记录的编号,通过移动读写指针的办法来存取文件中的任一记录。 按用途可以把文件分为:系统文件、_库文件_和_用户文件_ 三类。 操作系统实现按名存取,关键是解决文件名与_文件的存储地址_的转换问题。 从文件管理的角度看,文件由_文件控制块_和文件内容二部分组成。 Linux系统中,若某文件的操作访问权限为xxxxx-x-,则网络上的其它用户对该文件的访问权限是 只写 。 LINUX系统把设备当作一种_文件_来对待,对它进行写操作即完成_输出_功能,对它进行读操作即完成_输入_功能。 在UNIX系统中,采用_成组链接法_对磁盘的空闲块进行管理。第二部分 思考教材353页12题答:I/O缓冲是在主存中开辟的临时存放I/O数据的一片存储区。(1) 引入缓冲技术的目的是:解决CPU与设备之间速度不匹配的矛盾;协调逻辑块与物理块大小的不一致,提高CPU和设备的并行性,减少I/O操作的中断次数。(2) 实现缓冲技术的基本思想是:进程向设备输出数据时,先向系统申请一个输出缓冲区,然后将数据送至缓冲区(若有连续的数据,则不断送入缓冲区,直到缓冲装满为止),之后进程继续自己的工作。系统将缓冲区的数据写到设备。进程向设备输入数据时,先向系统申请一个输入缓冲区,系统从设备读数据到缓冲区,再由缓冲区传送给进程。354页21题答: 实现虚拟设备的硬件条件是:大容量存储设备;中断装置或通道;中央处理器与设备并行工作的能力。实现虚拟设备的软件条件是:操作系统支持多道程序设计。扩展知识 将一台物理设备虚拟成多台逻辑设备,供多个用户进程同时使用,这种虚拟出来的逻辑设备称为虚拟设备。典型的例子是虚拟光驱,虚拟打印机。虚拟的本质是用一种物理设备模拟另一类物理设备(比如,虚拟光驱就是用磁盘模拟光驱,虚拟打印机也是用磁盘来模拟打印机)。354页24题答:(1)单位时间内所处理的作业数增加了。因为多个作业共享虚拟设备(即作为井的磁盘缓存),实现了设备与CPU的并行工作。(2) 每个作业的周转时间缩短了。因为虚拟I/O速度比实际I/O速度高,缩短了作业的执行时间和等待时间。354页31题答:设备独立性是指应用程序独立于具体的物理设备(设备独立性也叫设备无关性,即编程使用的设备与物理设备无关)。引入设备独立性的原因是:为了解决使用物理设备名时设备分配的不灵活性问题,提高操作系统的可适应性和可扩展性。引入设备独立性以后,I/O设备故障处理变得容易,增加了设备分配灵活性,设备增减或变更时不须修改用户源程序。实现方法是:应用程序以逻辑设备名来请求使用某类设备,就是说用户使用设备时不指定物理设备名,而指定逻辑设备名,使用户作业和物力设备分离;分配什么设备,由操作系统负责,操作系统负责把逻辑设备名转换成物理设备名。354页36题答:本质区别是块设备文件需要使用设备缓冲,字符设备文件一般不使用设备缓冲。扩展知识块设备文件的读写以数据块为单位,支持随机访问,输入输出时需要使用缓冲;字符设备文件的读写以字节为单位,且只能顺序访问,不能随机访问,输入输出时不需要使用缓冲。415页10题预备知识什么是虚拟文件系统?我们知道,不同的公司设计的文件系统不同,比如FAT,NTFS,EXT3,不同的文件系统操作方法不同,给用户带来不便。虚拟文件系统(VFS)是一种仅存在于内存的逻辑文件系统。目的是为了屏蔽具体文件系统的细节,给用户提供统一的使用接口,减少用户使用的复杂度首先,VFS为用户定义了统一的文件系统调用(即函数原型统一定义),不管用户对什么文件系统进行操作,函数原型不变。其次,它负责把用户提交的系统调用函数转换成具体文件系统的操作函数。答:Linux虚拟文件系统设计思想是:借鉴面向对象的思想,把虚拟文件系统看作基类,具体文件系统作为子类。基类提供统一的框架(向用户提供统一的文件系统调用)。子类是基类方法的具体实现(文件系统调用被具体的文件系统操作取代)。Linux虚拟文件系统的是实现:用C语言实现类对象,对象用结构体表示,方法用函数指针表示。实现的主要对象有:超级块(super-block):存放已经挂装的具体文件系统的信息;索引节点(inode):存放具体文件的一般信息;文件(file):存放打开文件与进程间交互的有关信息;目录项(dentry):保存目录项与相应文件链接的信息。415页14题答:文件控制块(FCB)是管理文件属性信息的数据结构。FCB集中起来组成文件目录,文件目录又叫文件夹。文件目录的一个记录称为目录项,目录项的内容是一个FCB,即一个文件的FCB或者是一个子目录的FCB。把文件目以文件的形式保存在外存,这个文件叫目录文件。记忆通俗地说,文件目录就是文件夹,目录文件就是存放文件夹的文件。415页15题为什么要打开文件,请参看后面的35题。答:系统打开文件表存在于内存系统区,存放所有已打开的文件的FCB及其他信息。每个进程有一张用户打开文件表,存放指向系统打开文件表对应表项的FCB的指针、文件的打开方式、读写指针等信息。进程每打开一个文件就得到一个返回的文件描述符。文件描述符就是表中表项的序号,它是一个整数。416页31题答: 我们知道,一个文件的描述信息通常有很多,有文件名,文件长度等等,由这些描述信息形成的目录项就会较大。把文件名和其他文件描述信息分开,这些其他信息单独组成一个数据结构,称为索引节点(inode),inode集中存放在磁盘inode区,inode的地址由inode号标示。这样分离的结果是目录项仅由文件名和inode号组成。目录项大大缩小了,一个磁盘物理块可以存放更多的目录项,整个文件目录所占的磁盘物理块数就减少了。所以,把文件描述信息从墓中分离出来目的是:为了减少文件目录所占的磁盘物理块数, 减少检索文件目录的磁盘I/O次数,加快目录查找速度。416页35题答:(1) OPEN操作的目的是为了加快查找文件目录的速度(即,避免用户进程每次访问文件时从外存中查找文件目录)。打开文件操作建立了用户进程与文件的联系,它把文件的FCB(或inode)从外存读入内存的活动文件目录表(或活动inode表),把打开的文件信息登记在用户打开文件表和系统打开文件表中。 此后,每次存取该文件时,就不必到外存查找文件目录,可以直接在内存中找到它的FCB(或inode),从而加快了存取速度。CLOSE操作的目的是为了回收内存资源。关闭文件操作撤销内存中有关该文件的信息,切断用户进程与该文件的联系,回收该文件在占用的内存资源。(2) 显式的OPEN操作的优点:减少了文件读写时的系统开销。原因:若系统不向用户提供显式的打开操作,则每次读写文件时,系统要判断文件是否打开,若未打开则自动隐式打开。这就增加了系统的额外工作。 若系统不提供显式的打开操作,也不提供隐式的打开操作,则每次读写文件时,系统要外存查找目录,这会大大增加系统的额外工作。显式的CLOSE操作的优点:有利于系统回收资源。原因:若系统不向用户提供显式的关闭操作,系统就不知道用户是否还需要访问该文件,因而无法判断什么时间可以关闭该文件。(3) 办法一:根本就不考虑打开和关闭的问题。每次读写文件时,从外存查找目录。只是速度很慢而已。办法二:系统提供隐式打开和关闭操作。每次读写文件时,系统要判断文件是否打开,若未打开则自动隐式打开。关闭文件可以定时进行。若用户在规定时间内没有再访问该文件,则系统自动关闭该文件。57页15题答:多到程序设计是指多个作业或多个程序同时进入主存,多个作业交替在处理器上执行。特点是:多道(内存中存放多个作业或进程);宏观上并行(从宏观上看,多个作业在同时运行);微观上串行(从微观上看,这些作业在交替执行)。57页19题答:(1)交互进程提交请求开始直到得到响应为止的时间间隔称为响应时间。从用户的角度看,响应时间从用户输入命令开始,到回送信息显示在终端显示器为止这段时间间隔。(2)影响响应时间的因素有:时间片大小,联机终端数,CPU速度,此外还有系统调度开销,信息量多少等。152页15题答:系统调用是操作系统向用户提供的系统功能或系统服务函数,运行在核心态。用户要获得系统服务或者访问系统资源,唯一的途径是在程序中向操作系统发出系统调用。系统调用处理过程是:程序执行访管指令,并通过适当方式求取系统调用号;通过中断机制进入访管中断处理程序,保护现场到核心栈中,按功能号实现跳转;通过系统调用入口表找到相应功能服务例程入口地址;执行服务例程,服务例程结束后,系统调用的下一条指令继续执行。第三部分 应用158页21题分析: 10:00时刻只有A到达,就绪,运行。A运行到10:20时,B到达,因B优先级高,B抢占A,A回到就绪态,B运行。B运行30分钟再10:50结束。在10:50时刻,C早已就绪,D到达,因题目交待内存只能放3个作业,所以B退出后D就绪。C运行直到11:50结束。此时,D已就绪,E和F也到达,E先到,就绪,C退出后B就绪。E和F优先级高于D,且F作业短,F运行,直到12:结束,接下来是E,再接下来是A,最后运行的是D。这个题画甘特图来解思路较清晰。答:调度次序为A-B-C-F-E-A-D, 如图3.1甘特图所示。图3.1 调度示意图作业进入主存时间运行结束时间在作业周转时间/minA10:0012:40160minB10:2010:5030minC10:3011:5080minD10:5013:00130minE11:0012:2080minF11:1012:0050min作业的平均周转时间=(160+30+80+130+80+50)/6=88.3min练习:上题作业调度改为FCFS,其他条件不变。158页22题答:(1) 调度次序为P1-P2-P4-P2-P3-P1,如图3.2所示。图3.2 抢占优先级调度示意图各进程周转时间为:T1=31-0=31; T2=15-1=14; T3=23-2=21; T4=13-3=10;平均周转时间T=(31+14+21+10)/4=19ms(2) 调度次序为P1-P2-P4-P2-P3-P1,如图3.3所示。图3.3 轮转调度示意图各进程周转时间为:T1=25-0=25; T2=12-1=11; T3=27-2=25; T4=31-3=28;平均周转时间T=(25+11+25+28)/4=14.5ms221页20题答:#define M1 100#define M2 100Semaphore mutex1,mutex2,mutex3;Semaphore empty1, empty2, full1, full2;int in1,in2,out1,out2,count1,count2;item_t bufferM1, bufferM2; /产品缓冲区empty1.value=M1; empty2.value=M2;full1.value=0; full2.value=0;mutex1.value=1; mutex2.value=1; mutex3.value=1;in1=0; in2=0; in3=0; count1=0; count2=0;void make_item(item_t pp); /生产一件产品pp;void put_item(item_t &buf, item_t pp); /产品pp放入bufvoid take_item(item_t &bb, item_t buf); /从buf取出产品放入bbvoid assy_item(item_t &bb,item_1 b1,item_t b2); /产品b1,b2组装为bbvoid pack_item(item_t b1,item_t b2,item_t b3); / b1,b2,b3包装出厂cobeginprocessPi() item_t pp; while(1) make_item(pp); /生产产品pp P(empty1); P(mutex1); put_item(bufferin1,pp); /产品pp放入缓冲1 in1=(in1+1)%M1; count1+; if(count1=2)count1=0; V(full1); V(mutex1); processQ() item_t b1,b2,bb; while(1) P(full1); P(mutex1); take_item(b1,buffer1out1); /缓冲1中取产品放入b1 out1=(out1+1)%M1; take_item(b2,buffer1out1); /缓冲1中取产品放入b2 out1=(out1+1)%M1; V(mutex1); V(empty1); V(empty1); assy_item(bb,b1,b2); /把b1和b2组装为bb P(empty2); P(mutex2); put_item(buffer2in2,bb); /bb投入缓冲2 in2=(in2+1)%M2; count2+; if(count2=3)count2=0; V(full2); V(mutex2); processP3() item_t b1,b2,b3; while(1) P(full2); P(mutex2);take_item(b1, buffer2out2); out2=(out2+1)%M2;take_item(b2, buffer2out2); out2=(out2+1)%M2;take_item(b3, buffer2out2); out2=(out2+1)%M2; V(mutex2); V(empty2); V(empty2); V(empty2);pack_item(b1,b2,b3);/产品b1,b2,b3组装出厂 223页35题(1) P1,P2,P3,P4各需2台R1,1台R2。资源不足,可能死锁。(2) P1,P2,P3各申请到1台R1,P4申请不到R1,P4阻塞。然后P1,P2,P3各申请到1台R2,之后再申请R1,不能满足,于是R1,R2,R3都阻塞。死锁!资源分配图如图3.4所示,资源分配图不可完全简化,根据死锁定理,P1,P2,P3,P4死锁!图3.4 资源分配图223页36题 #define k 20 /桥面允许通行的车辆数int count1,count2; /车辆计数变量Semophore wait;/封锁对面上桥Semophore bridge; /禁止其它车辆过桥Semaphore mutex1,mutex2; /保护计数变量void go_across_bridge(); /过桥void go_across_bridge(); /过桥函数(已有定义)wait.Value=0;bridge.Value=k;mutex1.Value=1;mutex2.Value=1;count1=0; count2=0;cobeginvoid CarEast() /向东行驶的汽车 P(mutex1); count1+; if(count1=1)P(wait); V(mutex1); P(bridge); go_across_bridge(); V(bridge); P(mutex1); counter1-; if(count1=0) V(wait); V(mutex1);Void CarWest() /向西行驶的汽车 P(mutex2); count1+; if(count2=1)P(wait); V(mutex2); P(bridge); go_across_bridge(); V(bridge); P(mutex2); counter1-; if(count2=0) V(wait); V(mutex1);coend223页37题 303页1题答:页框数FIFOLRUOPT缺页数缺页率缺页数缺页率缺页数缺页率3456161412980%70%60%45%15108775%50%40%35%1187755%40%35%35%303页2题答:(1) FIFO缺页中断9次,缺页中断率=9/12=75%访问串143125142145f1111122244444f244445552222f33333111115缺页LRU缺页中断8次,缺页中断率=8/12=67%访问串143125142145f1111111111111f244422244444f33335552225缺页LRU还可以用栈算法来解,你试试吧。(2) FIFO缺页中断9次,缺页中断率=9/12=75% LRU缺页中断9次,缺页中断率=9/12=75%305页20题答:页大小位数=log21024=10位主存页框数位数log216=4位程序页数位数log232=5位方法1(移位法): 逻辑地址0x0AC5的二进制表示为 ( 00010 1011000101)2 页号p 页内位移d页号p=2,地址合法。查页表:p=2;时,f=8;f=8的进制表示为(1000)2, 与页内位移拼接得到物理地址:(1000 1011000101)2= (22C5)16 页帧号f 页内位移d逻辑地址0x1AC5: 00110 1011000101) 页号p 页内位移dP=6; 查页表; 缺页!方法2(乘除法): 逻辑地址0xAC5: p=0x0AC5/1024=2; d=0x0AC5%1024=709; 查页表,f=8; 物理地址=8*1024+709=8901=0x

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论