期末复习公务员考试专业科目计算机操作系统期末知识总结与试题.docx
《期末复习公务员考试专业科目计算机操作系统期末知识总结与试题.docx》由会员分享,可在线阅读,更多相关《期末复习公务员考试专业科目计算机操作系统期末知识总结与试题.docx(30页珍藏版)》请在冰豆网上搜索。
期末复习公务员考试专业科目计算机操作系统期末知识总结与试题
计算机操作系统期末复习指导(本科)
计算机操作系统课程是中央电大计算机科学与技术专业的一门必修课。
通过学习使学员掌握计算机操作系统的设计基本原理及组成;计算机操作系统的基本概念和相关的新概念、名词及术语;了解计算机操作系统的发展特点和设计技巧和方法;对常用计算机操作系统(Dos、Windows和UNIX或Linux)会进行基本的操作使用。
该课程使用的教材为《计算机操作系统》,吴企渊、梁燕编著,清华大学出版社出版。
主要内容包括:
计算机操作系统概述、作业管理、文件管理、存储管理、输入输出设备管理、进程及处理机管理、操作系统结构及程序设计。
操作系统是计算机系统的基本组成部分,是整个计算机系统的基础和核心。
计算机操作系统课程是理论性和实践性都较强的课程,具有概念多、较抽象、涉及面广。
为帮助大家复习这门课程,下面按照教学大纲要求,对各章的重点、难点进行归纳、总结,给出解答问题的指导,最后给出练习及参考解答,供大家复习时参考。
一、各章复习要点
第一章计算机操作系统概述
1、操作系统的概念
操作系统(OperatingSystem,OS),是一种软件,属于系统软件;
从用户角度看,操作系统可以看成是计算机的硬件扩充;从人机交互方式来看,操作系统是用户与机器的接口;从计算机的系统结构看,操作系统是一种层次、模块结构的程序集合,属于有序分层法,是无序模块的有序层次调用;操作系统体现了计算机技术和管理技术的结合。
2、操作系统的生成和五大类型
生成:
产生最适合自己工作环境的OS内核(kernel)。
既方便用户,又使系统开销尽量小;生成的配置过程如UNIX中newconfig命令;DOS中config.sys文件;维护由系统管理员负责。
操作系统的五大类型是批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统。
●多通道批处理操作系统
多道程序设计:
即在系统内(内存)同时存放并运行几道相互独立的程序。
多道程序设计的基础:
是将运行过程进一步细化成几个小的步骤,从而实现宏观上的并行。
但从微观上看,内存中的多道程序轮流地或分时地占用处理机,交替执行。
注意:
多道程序系统≠多重处理系统≠多用户≠多终端
多道是指内存中驻留多个程序或一个程序的多个程序段,因此,多用户系统一定是采用多道技术。
而多道系统不一定是多用户系统。
多重处理系统一般指多CPU系统。
当然,一个CPU的系统采用分时技术可以为多用户服务。
多用户的关键技术是在用户之间要有保密保安措施。
终端指用户使用的硬件设备,即使一个终端也可为多用户使用,例如,银行的自动取款机(ATM)。
●分时与实时
分时技术:
把CPU的时间分成很短的时间片(例如,几十至几百毫秒)工作。
随着时间片的时间减少,对换时间所占的比例随之增大。
随着用户数目的不断增加,这种矛盾会越来越突出。
实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应。
交互作用能力较差。
3、操作系统的五大功能
●作业管理:
包括任务管理、界面管理、人机交互、图形界面、语音控制和虚拟现实等;
●文件管理:
又称为信息管理;
●存储管理:
实质是对存储“空间”的管理,主要指对内存的管理;
●设备管理:
实质是对硬件设备的管理,其中包括对输入输出设备的分配、启动、完成和回收;
●进程管理:
又称处理机管理,实质上是对处理机执行“时间”的管理,即如何将CPU真正合理地分配给每个任务。
4、表征操作系统的属性
主要有:
响应比,并发性,信息的共享、保密与保护,可扩充性、可移植性、可读性、可“生成”性,安全可靠性,可测试性等。
第二章作业管理
1、基本概念
作业(Job)是让计算机完成一件事或任务,可大可小,可多可少。
作业步(Jobsteps):
作业顺序执行的工作单元。
作业流(JobStream):
作业步的控制流程。
作业类别:
终端交互作业、批处理作业。
2、用户界面
三代用户界面:
●第一代用户界面:
操作命令和系统调用在一维空间(命令行界面);
●第二代用户界面:
图形界面在二维空间(图形界面);
●第三代用户界面:
虚拟现实在三维空间(虚拟现实的界面元素)。
3、传统的人机接口
●操作命令
联机(键盘操作命令)、脱机(作业控制语言)
用户组合自编(Shell语言):
DOSShell;UNIX;BShell、CShell等
●系统调用(SystemCall)
4、作业输入输出方式
●输入输出方式:
脱机、直接耦合(交互联机)
●SPOOLing:
联机外围同时操作,假脱机(排队转储,设备虚拟技术)
5、作业调度
●作业调度的功能:
(1)采用JCB(作业控制块)表格,记录各作业状况;
(2)按选定的算法,从后备作业队列中选出一部分(多道)或一个作业投入运行;
(3)为被选中的作业做好运行前的准备工作。
例如建立相应的执行进程和分配系统资源;
(4)作业运行结束的善后处理工作。
●作业调度算法:
(1)先来先服务(FCFS)
作业平均周转时间=(作业完成时刻i作业提交时刻i)/n个作业
(2)最短作业优先:
在作业内容参差很不均衡时有合理性
(3)“响应比”最高的优先
“响应(系数)比”:
作业响应时间(等待和运行)/作业运行时间
(4)定时轮转法(按时间片):
适合作业不定的情况
(5)优先数法:
急事先办的原则
第三章文件管理
1、文件管理任务与功能
任务:
把存储、检索、共享和保护文件的手段,提供给操作系统本身和用户,以达到方便用户和提高资源利用率的目的。
功能:
---分配与管理外存
---提供合适的存储方法
---文件共享、保护,解决命名冲突
文件组织结构:
文件、文件元素、文件系统
●文件系统=文件管理程序(文件和目录的集合)+它所管理的全部文件;
●文件系统是用户与外存的接口;
●为用户提供统一方法(以数据记录的逻辑单位),访问存储在物理介质上的信息。
2、文件分类
(1)按文件性质与用途分:
系统文件、库文件、用户文件
(2)按操作保护分:
只读文件、可读可写文件、可执行文件
(3)按使用情况分:
临时文件、永久文件、档案文件
(4)按用户观点分:
普通文件、目录文件、特殊文件
(5)按存取的物理结构分:
顺序(连续)文件、链接文件、索引文件
(6)按文件的逻辑存储结构分:
有结构文件、无结构文件
(7)按文件中的数据形式分:
源文件、目标文件
3、文件的逻辑结构和物理结构
●文件的逻辑结构
---从用户观点看
---按文件名及记录号存取文件,是一维、连续的字符序列,方便存储、检索或加工
---文件由若干个逻辑记录组成,并加以命名或编号
●文件的物理结构
又称文件的存储结构,是指文件在外存上的存储组织形式,是与存储介质的存储性能有关;
空闲空间的管理方法主要有:
空闲表法、空闲(自由)链表法、成组链接法
4、文件目录
(1)文件目录分类:
一级文件目录、二级文件目录、多级文件目录
(2)文件目录的管理
●目录做成文件,文件系统便于内部统一管理,目录文件在使用时调入内存;
●在操作系统中,大量采用“表格”管理。
5、文件存取控制
●解决文件保护、保密和共享
●常用的文件存取控制方法有:
存取控制矩阵、用户权限表、使用口令、使用密码
6、文件系统的数据结构和表示
UNIX或Linux操作系统中文件系统的主要特点
(1)操作系统文件的目录组织是一个树形结构,从根结点到叶子称为文件的全路径名,文件可以由其全路径名唯一确定;
(2)文件本身是无结构的字符流;
(3)把外部设备的特殊文件和普通文件以及目录文件都统一在文件这一概念上,对于一般文件的访问、共享和保护方式也可以适用于外部设备。
第四章存储管理
1、存储管理使用的基本概念
●逻辑地址与物理地址
在具有地址变换机构的计算机中,允许程序中编排的地址和信息实际存放在内存中的地址有所不同。
前者叫逻辑(相对)地址,后者叫物理(绝对)地址。
●重定位:
将逻辑地址转换为物理地址。
●虚拟存储管理
虚存是由操作系统调度,采用内外存的交换技术,各道程序在必需使用时调入内存,不用的调出内存,这样好象内存容量不受限制。
虚存的特点:
(1)虚存容量不是无限的,极端情况受内存和外存可利用的总容量限制;
(2)虚存容量还受计算机总线地址结构限制;
(3)速度和容量的“时空”矛盾,虛存量的“扩大”是以牺牲CPU工作时间以及内外存交换时间为代价的。
●存储管理的目的及功能
目的是方便用户,提高内存资源的利用率,实现内存共享。
功能主要有内存的分配和管理、内存的扩充技术、内存保护技术
2、分区分配存储管理
分为固定分区、可变分区、可重定位分区、多重分区。
内存“扩充”技术:
●交换:
由操作系统做,用户不知道。
●覆盖:
由用户控制,操作系统提供覆盖机制。
内存保护技术:
---保护系统工作区和用户作业区,特别是如何防止系统区被破坏。
方法有存储保护键、界限寄存器
3、请求页式存储管理
(1)页式存储管理实现原理
基于程序在运行时不需要一开始都装入内存(局部性原理),更不应该把最近较长一段时间内不用的程序装入内存。
(2)页表的作用是将逻辑页号转换为物理块号。
(3)页面淘汰算法
先进先出算法(FIFO)、循环检测法、最近最少使用页面先淘汰(LRU)、最不经常使用的页面先淘汰(LFU)、最近没有使用页面先淘汰(NUR)、最优淘汰算法(OPT)等。
(4)页式存储管理的优、缺点
优点:
●虛存量大,适合多道程序运行,用户不必担心内存不够的调度操作;
●内存利用率高,不常用的页面尽量不留在内存;
●不要求作业连续存放,有效地解决了“碎片”问题。
与分区式相比,不需移动作业;与多重分区比,无零星碎片产生。
缺点:
●要处理页面中断、缺页中断处理等,系统开销较大;
●有可能产生“抖动”;
●地址变换机构复杂,为提高速度采用硬件实现,增加了机器成本。
4、段式、段页式存储管理
段式、页式存储管理的对比表见教材92页。
段页式存储管理特点:
●每一段分若干页,再按页式管理,页间不要求连续;
●用分段方法分配管理作业,用分页方法分配管理内存;
●兼有段式和页式管理的优点,系统复杂和开销增大,一般在大型机器上才使用。
第五章输入输出设备管理
1、设备管理的任务和功能
●设备管理的任务
(1)按用户需求提出的要求接入外部设备,系统按一定算法分配和管理控制,而用户不必关心设备的实际地址和控制指令;
(2)尽量提高输入输出设备的利用率,例如发挥主机与外设以及外设与外设之间的真正并行工作能力。
●设备管理的功能
(1)分配设备
(2)控制和实现真正的输入输出操作
(3)对输入输出缓冲区进行管理
(4)在一些较大系统中实现虚拟设备技术
2、外部设备分类
(1)按系统和用户分:
系统设备、用户设备
(2)按输入输出传送方式分(UNIX或Linux操作系统):
字符型设备、块设备
(3)按资源特点分:
独享设备、共享设备、虚拟设备
(4)按设备硬件物理特性分:
顺序存取设备、直接存取设备
(5)按设备使用分:
物理设备、逻辑设备、伪设备
●设备I/O方式:
询问、通道、中断
●I/O设备分配算法:
先来先服务(FCFS)、按优先级进行分配
3、设备管理技术
(1)I/O设置缓存理由
●解决信息的到达率和离去率不一致的矛盾;
●缓存起中转站的作用;
●使得一次输入的信息能多次使用;
●在通道或控制器内设置局部寄存器作为缓冲存储器,可暂存I/O信息,以减少中断CPU的次数。
这种情形可进一步推广,使得一次读入的信息可多次重复使用。
(2)虚拟设备的技术(SPOOLing)
SPOOLing,即外围设备联机并行操作,它是关于慢速字符设备如何与计算机主机交换信息的一种技术,通常也叫做“假脱机技术”。
是一种预输入、缓输出和转储的管理技术.
SPOOLing系统的特点:
●提高了I/O速度;
●将独享设备改造为共享设备(典型例子是打印机的“共享”);
●实现了虚拟设备功能。
4、设备处理程序编制内容
●设备驱动程序的功能
(1)将接收到的抽象要求转换为具体要求;
(2)检查用户I/O请求的合法性,了解I/O设备的状态,传递有I/O关参数,设置设备的工作方式;
(3)发出I/O命令,启动分配到的I/O设备,完成指定的I/O操作;
(4)及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断处理程序进行处理;
(5)对于设置有通道的计算机系统,驱动程序还应能够根据用户的I/O请求,自动地构成通道程序。
●设备驱动程序的特点
(1)驱动程序主要是在请求I/O的进程与设备控制器之间的一个通信程序。
(2)驱动程序与I/O设备的特性紧密相关。
(3)驱动程序与I/O控制方式紧密相关。
(4)由于驱动程序与硬件紧密相关,因而其中的一部分程序用汇编语言书写,目前有很多驱动程序,其基本部分已经固化,放在ROM中。
●设备处理方式
(1)将抽象要求转换为具体要求
(2)检查I/O请求的合法性
(3)读出和检查设备的状态
(4)传送必要的参数
(5)方式的设置和I/O设备启动
第六章进程及处理机管理
1、为什么要引入“进程”
(1)进程调度属于低级处理机管理,即确定系统中哪个进程将获得CPU;而作业调度属于高级处理机管理,即确定系统中哪些作业将获得CPU。
(2)进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
(3)引入进程的意义是描述多道程序设计系统中程序的动态执行过程。
2、进程的定义及特征
(1)程序和进程的区别见教材119页的表6-2;
(2)进程的五个基本特征:
动态性、并发性、独立性、制约性、结构性
3、进程调度
(1)进程的三个基本状态及转换
三个基本状态是等待、执行和就绪,在一定的条件下,进程的状态将发生转换。
见教材123页图6-1。
(2)进程调度算法
主要有先来先服务(FCFS)、时间片轮转法、多级反馈轮转法、优先数法。
(3)进程控制块(PCB)是进程存在的唯一标志,它描述了进程的动态性。
4、进程通信
(1)进程的同步与互斥
一般来说同步反映了进程之间的协作性质,往往指有几个进程共同完成一个任务时在时间次序上的某种限制,进程相互之间各自的存在及作用,通过交换信息完成通信。
如接力比赛中一组队员使用接力棒等。
进程互斥体现了进程之间对资源的竞争关系,这时进程相互之间不一定清楚其它进程情况,往往指多个任务多个进程间的通讯制约,因而使用更广泛。
如打篮球时双方挣抢篮板球等。
(2)临界区
并发进程中与共享变量有关的程序段定义为临界区。
进入临界区的准则是:
①一次只准一个进程进入临界区;②本进程结束负责通知下一进程;③进程调度,不能阻塞。
(3)原语
原语是不可中断的过程。
●加锁/开锁(LOCK/UNLOCK)原语
优点是实现互斥简单;缺点是效率很低。
●信号量(Semaphore)及PV操作
PV操作能够实现对临界区的管理要求。
它由P操作原语和V操作原语组成,对信号量进行操作,具体定义如下:
P(S):
①将信号量S的值减1,即S=S-1;
②如果S0,则该进程继续执行;否则该进程置为等待状态,排入等待队列。
V(S):
①将信号量S的值加1,即S=S+1;
②如果S>0,则该进程继续执行;否则释放队列中第一个等待信号量的进程。
信号量的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。
信号量的值与相应资源的使用情况有关。
当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数。
注意信号量的值仅能由PV操作来改变。
一般来说,信号量S0时,S表示可用资源的数量。
执行一次P操作意味着请求分配一个单位资源,因此S的值减1;当S<0时,表示已经没有可用资源,请求者必须等待别的进程释放该类资源,它才能运行下去。
而执行一个V操作意味着释放一个单位资源,因此S的值加1;若S0,表示有某些进程正在等待该资源,因此要唤醒一个等待状态的进程,使之运行下去。
●消息缓冲通信原语
高级通信原语,用于一组信息发送(Send)与读取(Read)。
5、死锁
(1)死锁的概念
死锁是两个或两个以上的进程中的每一个,都在等待其中另一个进程释放资源而被封锁,它们都无法向前推进,称这种现象为死锁现象。
产生死锁的原因是共享资源有限,多个进程对共享资源的竞争,而且操作不当。
(2)产生死锁的四个必要条件是资源互斥使用、保持和等待、非剥夺性、循环等待。
(3)解决死锁的方法
一般有死锁的预防,即破坏产生死锁的四个必要条件中的一个或多个,使系统绝不会进入死锁状态;死锁的避免,即在资源动态分配的过程中使用某种办法防止系统进人死锁状态;和允许系统产生死锁,然后使用检测算法及时地发现并解除它。
第七章操作系统结构和程序设计
1、操作系统研制过程
总体设计:
制订设计原则和要求、功能设计和结构设计等方案论证
具体设计:
程序框图、库程序和程序设计
调试:
分块和分阶段实现
维护:
建立或选用专门的维护程序
2、系统结构设计原则
●性能完善,系统效率高
●系统可靠性高
●易于掌握:
面对一般用户、系统管理员和程序开发人员
●适应性要强:
具有可扩充性和可移植性
3、结构方案
模块结构、层次结构、内核扩充结构(层次化核扩充结构和微内核层次化核扩充结构)
4、模块接口法
●用一个模块实现一个简单的功能
●模块实现比较容易
●模块间相互依赖和“链接”很复杂
●实现整个系统的总功能不太容易
●调试和修改,牵动面很大
5、操作系统的分层原则
(1)按程序的嵌套情况排成有序的层次;
(2)把活动频繁的模块和为很多模块所公用的模块放在最低软件层,存储器管理模块设置在较低软件层;
(3)为获得可移植性和可适应性而设置的软件层,应分别放在较低的层次和最外层。
(4)在严格的层次结构中,只允许高层调用低层中的软件,决不允许低层调用高层的软件。
二、难点分析
●如何理解操作系统在计算机系统中的地位?
操作系统是软件,而且是系统软件。
它在计算机系统中的作用,大致可以从两方面体会:
对内,操作系统管理计算机系统的各种资源,扩充硬件的功能;对外,操作系统提供良好的人机界面,方便用户使用计算机。
它在整个计算机系统中具有承上启下的地位。
●系统调用与一般过程调用的区别。
系统调用在本质上是一种过程调用,但它是一种特殊的过程调用,它与一般过程调用的主要区别如下:
(1)运行状态不同。
一般的过程调用,其调用和被调用过程都是用户程序,它们都运行在同一系统状态下;而系统调用的调用过程是用户程序,它运行在用户态,其被调用过程是系统过程,运行在系统态。
(2)进入方式不同。
一般过程调用可以直接通过过程调用语句将控制转移到被调用过程;而执行系统调用时,由于调用和被调用过程处于不同系统状态,必须通过访管中断进入。
(3)代码层次不同。
一般过程调用中的被调用程序是用户级程序,而系统调用是操作系统中的代码程序,是系统级程序。
●下表给出作业l、2、3的提交时间和运行时间。
采用先来先服务调度算法和短作业优先调度算法,试问平均周转时间各为多少?
(时间单位:
小时,以十进制进行计算。
)
作业号
提交时间
运行时间
1
2
3
0.0
0.4
1.0
8.0
4.0
1.0
解:
采用先来先服务调度策略,则调度顺序为l、2、3。
作业号提交时间运行时间开始时间完成时间周转时间
10.08.00.08.08.0
20.44.08.012.011.6
31.01.012.013.012.0
平均周转时间T=(8+11.6+12)/3=10.53
采用短作业优先调度策略,则调度顺序为l、3、2。
作业号提交时间运行时间开始时间完成时间周转时间
10.08.00.08.08.0
31.01.08.09.08.0
20.44.09.013.012.6
平均周转时间T=(8+8+12.6)/3=9.53
●试述文件管理系统设置打开文件、关闭文件命令的原因。
解:
操作系统需要处理大量用户文件,而访问一个文件需要查询目录,有时甚至需要多次查询目录。
由于文件目录与文件一起存放在辅存上,当存取文件时,必须先到辅存中读取文件目录信息,从中获得文件的存放地址,然后再去存取文件。
这样一来,文件信息的存取将花费很多时间。
如果将整个文件目录放入主存,虽然可以提高存取速度,但这需要占用大量主存空间,显然这也是不可取的。
实际上,在一段时间内使用的文件数总是有限的,因此只要将目录中当前要使用的那些文件的目录表目复制到内存中就可以了。
这样既不占用太多的主存空间,又可显著提高查询文件目录的速度。
为此,大多数操作系统中设置了两个文件操作:
打开文件和关闭文件。
打开文件操作完成的功能是将文件的有关目录信息复制到主存活动文件表中,以建立用户和这个文件的联系。
关闭文件操作的功能是用户宣布这个文件当前不再使用,系统将其在主存中的相应目录信息删去,因而也就切断了用户同这个文件的联系。
●有一个文件系统如图(a)所示,图中的框表示目录,圈表示普通文件。
根目录常驻内存,目录文件组织成链接文件,不设文件控制块,普通文件组织成索引文件。
目录表目指示下一级文件名及其磁盘地址(各占2个字节,共4个字节)。
若下级文件是目录文件,指示其第一个磁盘块地址。
若下级文件是普通文件,指示其文件控制块的磁盘地址。
每个目录文件磁盘块最后4个字节供拉链使用。
下级文件在上级目录文件中的次序在图中为从左至右。
每个磁盘块有512字节,与普通文件的一页等长。
……
……
……
…
图(a)文件结构示意图
普通文件的文件控制块组织结构如图(b)所示,其中每个磁盘地址占2个字节,前10个地址直接指示该文件前10页的地址。
第11个地址指示一级索引表地址,一级索引表中每个磁盘地址指示一个文件页地址;第12个地址指示二级索引表地址,二级索引表中每个地址指示一个一级索引表地址;第13个地址指示三级索引表地址,三级索引表中每个地址指示一个二级索引表地址。
问:
该文件的有关描述信息
1
磁盘地址
2
磁盘地址
3
磁盘地址
…
……
11
磁盘地址
12
磁盘地址
13
磁盘地址
图(b)文件控制块
(1)一个普通文件最多可有多少个文件页?
(2)若要读文件J中的某一页,最多启动磁盘多少次?
(3)若要读文件W中的某一页,最少启动磁盘多少次?
答:
(1)由题目中所给条件可知,磁盘块大小为512字节,每个磁盘地址占2个字节。
因此,一个一级索引表可容纳256个磁盘地址。
同样地,一个二级索引表可容纳256个一级索引表地址,一个三级索引表可容纳256个二级索引表地址。
这样,一个普通文件最多可有页数为:
10+256+256×256+256×256×256=16843018
(2)从图(a)中可以看出,目录文件A和目录文件D中的目录项都只有两个,因此这两个目录文件都不需要拉链。
若要读文件J中的某一项,首先从内存的根目录中找到目录文件A的磁盘地址,将其读入内存(第1次访问磁盘)。
然后再从目录A中找出目录文件D的磁盘地址,并将其读入内存(第2次访问磁盘)。
从目录D中找出文件J的文件控制块地址,将文件J的文件控制块读入内