第一章绪论
1 ?什么是操作系统的基本功能??
答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源, 合 理地组织计算
机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系 统 的基本功能包括:
处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户 接 口等。 2 ?什么是批处理、分时和实时系统?各有什么特征?
答:批处理系统(batchprocess in gsystem ):操作员把用户提交的作业分 类,把一批作业编成一个作业执行序列,由专门编制的监督程序( monitor )自 动依次处理。其主要特征是:用户脱机使用计算机、成批处理、多道程序运 行。 分时系统(timesharingoperationsystem ):把处理机的运行时间分成很 短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。其主要特 征 是:交互性、多用户同时性、独立性。
实时系统(realtimesystem ):在被控对象允许 时间范围内作出响应。 其 主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资 源 利用率低。
3 .多道程序(multiprogramming )和多重处理(multiprocessing )有何 区别?
答;多道程序(multiprogramming )是作业之间自动调度执行、共享系统 资源,并不是真正地同时值行多个作业;而多重处理 (multiprocessing )系 统配置多个CPU能真正同时执行多道程序。要有效使用 多重处理,必须采用 多道程序设计技术,而多道程序设计原则上 不一定要求多重处理系统的支持。 6.设计计算机操作系统时与那些硬件器件有关 运算器、控制器、存储器、输入设备、输出设备 第二章 作业管理和用户接口 2. 作业由哪几部分组成?各有什么功能? 答:作业由三部分组成:程序、数据和作业说明书。程序和数据完成用 户 所要求的业务处理工作,作业说明书则体现用户的控制意图。
3. 作业的输入方式有哪几种?各有何特点
答:作业的输入方式有5种:联机输入方式、脱机输入方式、直接耦合 方 式、SPOOLING
(Simultaneous Peripheral OperationsOnline )系统和网络输入方式, 各有如下特点:
(1) 联机输入方式:用户和系统 通过交互式会话来输入作业。
(2) 脱机输入方式:又称预输入 方式,利用低档个人计算机作为外围处理 机进行输入处理,存储在后备存储器上,然后将此后援存储器连接到高速外 围 设备上和主机相连,从而在较短的时间内完成作业的输入工作。
(3) 直接耦合方式:把主机和外 围低档机通过一个公用的大容量外存直接 耦合起来,从而省去了在脱机输入中那种依靠人工干预宋传递后援存储器的 过 程。
(4) SPOOLIN系统:可译为外围设备同时联机操作。在 SPOOLIN系统中, 多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程 由主机中的操作系统控制。
(5) 网络输入方式:网络输入方式以 上述几种输入方式为基础,当用户需 要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上 进 行操作或执行时,就构成了网络输入方式。 4. 试述spooling系统的工作原理
—* SPOOI4NG聚嫌中■多台外瞒设希通过通道或DMA器件和主楙与外存连挨 —I 厳冷业的输人柠旳
过軒曲匸机屮的操并嘉址松制。操柞系忧叩胳输入稗序包咎阳牛血疗 的过程?一牛过程话资从外押设备把信息匾人遼冲咳,巧一于过程是埒过裡?負贡把绻冲匾 中豹信息送人鋤外存输人井中.
往星统输人棋块收判件业输AJ肯求焙?軸人管髀楔诧申的洼过禅负菸将信息从输 僅入统)tt<
?豊擢冲XIM时’曲勾过稈将信息从缓神风巧別外疗辅人井中\饿过稈和弓过稈 臣复蘑环显I钊一
牛柞叩输人壬毕 科匮过牡滾到一仆侵件貉卑标志后?累览理枚銀渤宵过樫 把駁后一批佔宜吗人外存并関屈个断处3!穆疔站束锻决输人\烬肩?系筑九谨柞业建立竹业 捋制而楼输人井中的作业进人件业器特駅网?零特伟业调度程序选中后进人内冇.
1
6?操作系统为用户提供哪些接口 ?它们的区别是什么?
答:操作系统为用户提供两个接口,一个是系统为用户提供的各种命令 接 口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统。另 一 个接口是系统调用,编程人员使用系统调用来请求操作系统提供服务,例如 申 请和释放外设等类资源、控制程序的执行速度等。
8 ?什么是系统调用?系统调用与一般用户程序有什么区别?与库函数和实用 程序又有什么区别?
答:系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系 统 调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能 来 完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。因此,系 统 调用像一个黑箱子那样,对用户屏蔽了操作系统的具体动作而只提供有关的 功
能。它与一般用户程序、库函数和实 用程序的区别是:系统调用程序是在核心 态执行,调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统 服 务。
9 ?简述系统调用的实现过程。
答;用户在程序中使用系统调用,给出系统凋用名和函数后,即产生一条 相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护 处 理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系 统 子程序,然后返回用户程序继续执行。
2.9为什么说分时系绽懣有徉业的概怎?
答:因期在分时累统屮.毎卜刖门得判苗肘阀片右眼.用门附出库和救据仃亘直搂排人 卿内存匸作区中和斗他程序一起枪ASttSFiSa人执行,而不必进人孙存?人井等待挥业 调度程呼选押,因此?分时条绫没右作业抹制表?也彼有作业閑度稈序.
第三章用户管理和配置管理 2 ?试比较进程和程序的区别。
答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有 序集合,无执行含义,进程则强调执行的过程。
(2) 进程具有并行特征(独立性,异步性),程序则没有。
(3) 不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个 进程。
X3我们说程序的井发执打将环包时终常餐失右封闭件这话对所冇的存宇那战英 吗?试舉例说
明\
寮、并非对膺有的祥序均成立.例哪I
bc^un
hicsl x
* i = 1& pr;ni I述程仔中r孚内器变齐可能械外邮震序访问■囚此这我趕序的运行不会受外嚣环 境秒I乳 4?试比较作业和进程的区别。 答:一个进程是一个程序对某个数据集的执行过程,是分配资源的基本 单 位。作业是用于需要计算机完成某项任务,而要求计算机所做工作的集合。 一 个作业的完成要经过作业提交,作业收容、作业执行和作业完成 4个阶段。而 进程是已提交完毕的程序所执行过程的描述,足资源分配的基本单位。其主 要 区别关系如下: (1) 作业是用户向计算机提交任 务的任务实体。在用户向计算机提交作业 之后,系统将存储在外存中的作业等待队列中等待执行。而进程则是完成用 户 任务的执行实体,是向系统申请分配资源的基本单位。任一进程,只要它被 创 建,总有相应的部分存在于内存中。 (2) 一个作业可由多个进程组成。且必须至少由一个进程组成,但反过来 不成立。 (3) 作业的概念主要用在批处理系统中。像Unix这样的分时系统中,则 没有作业概念。而进程的概念则用在几乎所有的多道程序系统中。 6?什么是临界区?试举一临界区的例子。 答:临界区是指不允许多个并发进程交叉执行的一段程序。它是由于不 同 并发进程的程序段共享公用数据或公用数据变量而引起的。所以它又被称为 访 问公用数据的那段程序。 例如: getspace : Beg in local g top = top — 1 End release (ad): Beg in top ' top 十 1 stack[top] = ad End 8.什么是进程间的互斥?什么是进程间同步? 答:进程间的互斥是指:一组并发进程中的一个或多个程序段,因共享 一公有资源而导致它们必须以一个不许交叉执行的单位执行,即不允许两个 上的共享该资源的并发进程同时进入临界区。 进程间的同步是指:异步环境下的一组并发进程因直接制约互相发送消息 而进行互相合作、互相等待,各进程按一定的速度执行的过程。 3」Ultfe P.V贰诜也和浙梏实理进虞刑疋斥的X均L 某 以 互斥的加镶实现是这样的匸艸某个进程进人临睜区之Sb它椿萤I】临界区“直到它 追出临 界区时为止.并疑进程在申请进人临界惊时,首先测试该临界区是否是上锁的?如果 i釦岛界1XC碱锁注+测曉进理豐尊到廈临界KJF递之后才有町能我即临聊区. 但是加傑徒存萩如F?井堆:u>福环测试接定也祥損耗校多的门P计算时制;(2 [产生 不公平现象. 有此?F?V麻谄准釆用信号城音理fH应收界区的公冇资源.信廿破的散恼仗能由F.V 原阳攏作改老「血P.V原语执件期間不允许中断发生,tt过禅是世样的m埠某个谨带正屈 林鼎恆内执上T时?Jt他暹程如果执打了 F原昭、呱谨遥程幷不像leek时那样懺毎点门鼬W 恠[tri返回ti] lock的區点?爭议乔前斷执行刪诫■而凰秆弃祈傾列中尊特由站他进祥做V诳 诰操作ffttfi源后.逬人购界海.这旧I3晾丰扌算煎止结束.若有多牛进程做P原语操作南 逬人苓恃戏握之后旦有廿脈涪释胶贺 as*則等群进程屮的一个进人临卑区■更余的缁缤 等特. 总之血锁法是采用反觸测试lock血实现互斥的?存崔LTU浪费和不公平现象?卩小 原语便用了伯号篁?克JK 了加桢达的咪端。 15.什么是线程?试述线程与进程的区 别, 答;线程是在进程内用于调度和占有处理机的基本单位,它由线程控制表、 存储线程上下文的用户栈以及核心栈组成。线程可分为用户级线程、核心 级线程以及用户/核心混合型线程等类型。其中用户级线程在用户态下执 行,CPU调度算法和各线程优先级都由用户设置,与操作 系统内核无关。核 心级线程的调度算法及线程优先级的控制权在操作系统内核。混合型线程 的控制权则在用户和操作系统内核二者。线程与进程的主要区别有: (1) 进程是资源管理的基本单位,它拥 有自己的地址空间和各种资源,例如 内 存空间、外部设备等;线程只是处理机调度的基本单位,它只和其他线 程 一起共享进程资源,但自己没有任何资源。 (2) 以进程为单位进行处理机切换和调度时,由于涉及到资源转移以及现场 保护等问题,将导致处理机切换时间变长,资源利用率降低。以线程为单 位进行处理机切换和调度时,由于不发生资源变化,特别是地址空间的变 化,处理机切换的时间较短,从而处理机效率也较高。 (3) 对用户来说,多线程可减少用户的等待时间。提高系统的响应速度。例 女口,当一个进程需要对两个不同的服务器进行远程过程凋用时,对于无线 程系统的操作系统来说需要顺序等待两个不同调用返回结果后才能继续执 行,且在等待中容易发生进程调度。对于多线程系统而言,则可以在同一 进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间。 (4) 线程和进程一样,都有自己的状态.也有相应的同步机制,不过,由于 线程没有单独的数据和程序空间,因此,线程不能像进程的数据与程序那 样,交换到外存存储空间。从而线程没有挂起状态。 (5) 进程的调度、同步等控制大多 由操作系统内核完成,而线程的控制 既可以由操作系统内核进行,也可以由用户控制进行。 第四章进程管理 2. 试述作业调度的主要功能。 答:作业调度的主要功能是:按一定的原则对外存输入井上的大量后备作 业进行选择,给选出的作业分配内存、输入输出设备等必要的资源,并建 立相应进程,使该作业的相关进程获得竞争处理机的权利。另外,当作业 执行完毕时,还负责回收系统资源。 3 ?作业调度的性能评价标准有哪些?这些性能评价标准在任何情况下都能反映 调度策略的优劣吗? 答:对于批处理系统,由于主要用于计算,因而对于作业的周转时间要求 较高。从而作业的平均周转时间或平均带权周转时间被用来衡量调度程序 的优劣。但对于分时系统来说,平均响应时间又被用来衡量调度策略的优 劣。对于分时系统, 除了要保证系统吞吐量大、资源利用率高之外,还应 保证用户能够容忍的响应时间。因此,在分时系统中,仅仅用周转时间或 带权周转时间来衡量调度性能是不够的。 对于实时系统,衡量调度算法优劣的主要标志则是满足用户要求的时限时 间。 4 ?进程调度的功能有哪些? 答:进程调度的功能有: (1) 记录和保存系统中所有进程 的执行情况; (2) 选择占有处理机的进程; (3) 进行进程上下文切换。 5 ?进程调度的时机有哪几种? 答:进程调度的时机有: (1) 正在执行的进程执行完毕。这时如果不选择新的就绪进程执行,将浪 费处理机资源。 (2) 执行中进程自己调用阻塞原 语将自己阻塞起来进入睡眠等待状态。 (3) 执行中进程调用了 P原语操作,从而因资源不足而被阻塞:或调用了 V原 语操作激活了等待资源的进程队列。 (4) 执行中进程提出I/O请求后被阻塞。 (5) 在分时系统中时间片已经用 完。 (6) 在执行完系统调用等系统程 序后返回用户程序时,可看做系统进程执 行完毕,从而调度选择一新的用户进程执行。 (7) 在CPL执行方式是可剥夺时,还 有:就绪队列中的某进程的优先级变 得高于当前执行进程的优先级,从而也将引发进 程调度。 6 ?进程上下文切换由哪几部分组成?描述进程上下文切换过程。 答:进程上下文切换由以下4个步骤组成; (1) 决定是否作上下文切换以及是否允许作上下文切换。包括对进程调度原因的 检查分析,以及当前执行进程的资格和 CPU执行方式的检查等。在操作系统中, 上下文切换程序并不是每时每刻都在检查和分析是否可作上下文切换,它们 设 置有适当的时机。 (2) 保存当前执行进程的上下文。这里所说的当前执行进程,实际上是指调用上 下文切换程序之前的执行进程。如果上下文切换不是被那个当前执行进程所 调 用,且不属于该进程,则所保存的上下文应是先前执行进程的上下文,或称 为 “老”进程上下文。显然,上下文切换程序不能破坏“老”进程的上下文结 构。 (3) 使用进程调度算法,选择一处于就绪状态的进程。 ⑷恢复或装配所选进程的上下文,将 CPU空制权交到所选进程手中 第五章处理器管理 2.什么是虚拟存储器?其特点是什么? 答:由进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存 储器。虚拟存储器不考虑物理存储器的大小和信息存放的实际位置,只规定 每 个进程中相互关联信息的相对位置。每个进程都拥有自己的虚拟存储器,且 虚 拟存储器的容量是由计算机的地址结构和寻址方式来确定。实现虚拟存储器 要 求有相应的地址转换机构,以便把指令的虚拟地址变换为实际物理地址;另 夕卜, 由于内存空间较小,进程只有部分内容存放于内存中,待执行时根据需要再 调 指令入内存。 3. 实现地址重定位的方法有哪几类? 答:实现地址重定位的方法有两种:静态地址重定位和动态地址重定位 。 (1)静态地址重定位是在虚空间 程序执行之前由装配程序完成地址映射工 作。 静态重定位的优点是不需要硬件支持,但是用静态地址重定位方法进行 地址变
相关推荐: