已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章课后操作系统概述练习1.硬件将处理器分为两种状态,即管道状态和目标状态。这对操作系统设计有什么好处?答:设计一个安全可靠的操作系统很方便。管道状态和目标状态是由计算机硬件引入的两种状态,用于保护操作系统免受用户程序的干扰和破坏。通常,操作系统以管道状态运行,并且可以执行所有机器指令。而用户程序在目标状态下运行且只能执行非特权指令。如果用户程序试图在目标状态下执行特权指令,它将导致保护性中断,操作系统将终止程序的执行,从而保护操作系统。2.什么是特权指令?举个例子。如果允许用户执行特权指令,会发生什么?答:只能在托管状态下执行的命令称为特权命令。如开关中断、程序状态寄存器等。如果允许用户执行特权指令,不仅会影响当前运行的程序,还可能影响操作系统的正常运行,甚至整个系统。3.中断向量在机器中的存储位置是由硬件还是软件决定的?答:中断向量在机器中的位置由硬件决定。例如,在英特尔80x86处理器中,内存空间0x000000x003ff是中断向量空间。4.中断向量的内容是由操作系统程序还是由用户程序决定的?答:中断向量的内容由操作系统程序决定。向量的内容包括中断处理程序的入口地址和程序状态字(中断处理程序的操作环境)。操作系统将中断处理程序载入内存。操作系统将根据加载的实际地址和中断处理程序的操作环境填写中断向量。5.中断向量中的处理器状态位应该指示它是管道状态还是目的地状态。为什么?答:应该标记为管道状态。该状态由系统的初步测试程序设置,以确保操作系统指定的中断处理程序可以在中断发生后进入。6.中断和程序并发之间的关系是什么?答:中断是并发程序的必要条件。如果没有中断,操作系统就不能控制系统,也不能根据调度算法重新分配机器。一个程序会不间断地运行到最后。7.解释“堆栈”和“堆”的区别。堆栈是根据先进先出(FIFO)规则访问的存储区域,用于实现中断嵌套、子程序调用和返回断点的参数。虽然堆是一个存储区域,但是对堆的访问是任意的,并且没有后进先出的要求。堆主要用于为动态变量分配存储空间。什么是系统堆栈?什么是用户堆栈?系统堆栈的目的是什么?用户堆栈的目的是什么?答:系统堆栈是内存中操作系统空间的固定区域。用户堆栈是内存中用户空间的一个区域。系统栈的功能是:(1)保存中断站点,对于嵌套的中断,被中断程序的站点信息被依次推入系统栈,中断按相反的顺序返回并弹出;(2)保存操作系统子程序之间相互调用的子程序的参数、返回值、返回点和局部变量。用户堆栈用于保存在用户进程的子程序之间调用的子程序的参数、返回值、返回点和局部变量。9.为什么不能确定用户堆叠部分的长度?答:用户堆栈部分的长度主要取决于两个因素:(1)用户进程(线程)中子程序(函数)之间嵌套调用的深度;(2)子程序参数和局部变量的数量和类型;(3)动态变量的使用。这些无法在进程(线程)运行之前确定,因此用户堆栈段的长度无法提前准确确定。为什么10个堆栈部分的动态扩展会导致流程空间的重新定位?答:堆栈部分的扩展需要在原始进程空间大小的基础上添加一个新的存储区域,并且通常需要与原始存储区域保持连续性。因为原始的可扩展区域11.什么是平行的?什么是并发?在单处理器系统中,下列哪些并行和并发现象是可能的,哪些是不可能的?(1)进程间的并行性;(2)进程间的并发性;(3)处理器和设备之间的并行性;(4)处理器和通道之间的并行性;(5)通道间的平行度;(6)设备与设备之间的平行度;答:所谓并行是指同时进行的进程。并行进程需要多个处理器的支持。并发指的是多个进程向前移动的一段时间,同时,可能只有一个进程在执行,多个进程可能轮流使用处理器。在单处理器的传统中,可能的并行和并发现象如下:(2)进程间并发。例如,在视窗操作系统中,mp3播放过程和文字处理过程可以同时执行,这样用户可以一边听音乐一边写文章。(3)处理器和设备之间的并行性。例如,当处理器执行科学操作时,打印机可以打印文档。(4)处理器和通道之间的并行性。通道程序的执行可以与处理器的操作并行。(5)通道间的平行度。通常一个系统中有多个通道,这些通道可以并行执行相应的通道程序。(6)设备与设备之间的平行度。例如,当打印机打印文档时,磁带机正在输入数据。12.什么是家庭作业?它包括哪些部分?每个部分的用途是什么?答:所谓的工作是指用户要求计算机系统完成的计算任务的集合。作业通常包括程序、程序处理的数据和作业描述。程序用于完成特定的功能,数据是程序处理的对象,操作指令用于解释作业处理的步骤。13.从透明性和资源共享的角度解释网络操作系统和分布式操作系统的区别。答:从透明度的角度来看,分布式操作系统优于网络操作系统。网络用户可以感觉到被访问的资源是本地的还是远程的。然而,在分布式系统中,用户感觉不到被访问的资源是否是本地的,分布式操作系统掩盖了资源地理位置的差异。从资源共享的角度来看,分布式操作系统可以比网络操作系统共享更多的资源。在网络操作系统中,计算任务不能从一台主机任意迁移到另一台主机上运行;在分布式操作系统中,所有作业可以从一台主机转移到另一台主机进行处理,从而共享处理器资源,实现整个系统的负载平衡。14.为什么组成分布式系统的主机通常是相同或兼容的?答:这更有利于过程的动态迁移。如果主机不兼容,由于指令系统不同,可以在一台主机上运行的进程可能无法在另一台主机上运行,这使得进程难以在不同主机之间迁移,分布式系统难以实现负载平衡。组成分布式系统的主机通常是相同或兼容的。15.为什么嵌入式操作系统通常采用微内核架构?答:与通用操作系统相比,嵌入式操作系统有明显的区别: (1)嵌入式操作系统的规模一般较小,因为通用硬件配置低,操作系统提供的功能要求不高。(2)应用领域差异很大。不同应用领域的硬件环境和设备配置存在明显差异。因此,嵌入式操作系统一般采用微内核结构,包括以下基本功能: (1)处理器调度;(2)基本内存管理;(3)沟通机制;(4)电源管理。这些基本组件可以扩展以适应不同的应用目标。第二章过程、思路和课后作业练习1.为什么要引入多频道节目?在多通道程序系统中,让尽可能多的通道在内存中工作是否更好?请解释原因。答:引入多渠道编程技术,提高计算机系统资源的利用率。在多通道程序系统中,在内存中运行的通道数量不是尽可能多。计算机系统中的内存和外围设备等资源是有限的,只能容纳适当数量的作业。当作业数量增加时,将导致对资源的激烈竞争和系统开销的增加,这将导致作业执行缓慢和系统效率降低。2.过程是什么?流程的主要特征是什么?比较过程和程序的异同。答:进程是一个程序的执行活动,它在数据集上具有某些独立的功能。特征:并发性、动态性、独立性、通信性、异步性和结构性。联系人:程序是流程的一部分。进程的目的是执行相应的程序。区别在于程序是静态的,而过程是动态的。这个过程有生命,但程序没有。一个程序可以对应多个进程,而一个进程只能对应一个程序。有人说用户进程执行的程序必须由用户自己编写。这样对吗?如果没有插图。这不是真的。例如,C编译器作为用户进程运行,但是C编译器不是由用户自己编写的。此外,还有文字处理程序等软件工具。4.流程背景是什么?流程上下文包括哪些组件?哪些组件对目标程序可见?答:在UNIX系统V中,流程的物理实体和支持流程的物理环境统称为流程上下文。流程上下文包括三个部分:用户级上下文。它是一个进程地址空间,由用户进程程序块、用户数据块(包括共享数据块)和用户堆栈组成。系统级上下文。包括过程控制块、内存管理信息、过程环境块和系统堆栈。它由程序状态字寄存器、各种控制寄存器、地址寄存器、通用寄存器、用户堆栈指针等组成。用户级上下文和一些寄存器上下文对目标程序是可见的。5.流程的三种主要状态是什么?举个例子来解释状态转换的原因。答:进程在其生命周期内可能处于以下三种基本状态之一: (1)运行:该进程占用处理器资源并正在运行。显然,在单处理器系统中,任何时候都只能有一个进程处于这种状态。(2)Ready):进程有自己的运行条件,但它还没有投入运行,因为处理器的数量少于可运行进程的数量。即等同于等待处理器资源;(3)等待):也被称为暂停、阻塞和睡眠。进程本身没有运行条件,甚至分配给它的处理器也不能运行。该进程正在等待一个事件发生,如等待资源释放,等待与该进程相关的输入/输出传输完成信号等。一个过程的三种基本状态可以相互转换。具体来说,当就绪进程获得处理器时,其状态从就绪变为运行;当一个正在运行的进程失去一个处理器时,例如系统或其他具有高优先级的进程分配给它的时间用完了,它的状态从运行变为就绪;当一个正在运行的进程由于某个事件而被阻塞时,如果所应用的资源被占用,则启动输入/输出传输没有完成,并且其状态从运行变为等待;当等待事件发生时,如果获得了所请求的资源,则输入/输出传输完成,并且其状态从等待变为就绪。6.有多少种类型的流程队列?每个类别应该设置多少个队列?答:有三种类型进程队列:就绪队列(一个用于整个系统)、等待队列(一个用于每个等待事件)和运行队列(在单个中央处理器系统中只有一个)7.线程控制块TCB应该包括什么?答:总的来说,TCB的内容较少,因为大部分关于资源分配等的信息都记录在其所属流程的印刷电路板上。TCB中的主要信息包括:线程标识、线程状态、调度参数、站点和链接指针。站点信息主要包括通用寄存器、指令计数器和用户堆栈指针。对于操作系统支持的线程,TCB还应该包括系统堆栈指针。8.同一进程中的多个线程共有哪些组件,哪些组件是私有的?答:常见的组件有:堆、数据和程序代码;私有组件包括:线程控制块、寄存器和用户堆栈。9.比较用户级线程和系统级线程在以下方面的差异及其各自的优缺点。(1)创造的速度;(2)切换速度;(3)平行性;(TCB的存储位置:系统库支持用户级线程。线程的创建和撤销以及线程状态的改变由库函数控制,并在目标状态下完成。线程相关的控制结构TCB存储在目标状态空间中,并由操作系统维护。由于线程对操作系统不可见,系统调度仍然基于进程,并且核心堆栈的数量对应于进程的数量。用户级线程的优点是:(1)线程不依赖于操作系统,可以灵活地采用与问题相关的调度策略;(2)同一进程中的线程切换不需要进入操作系统,从而实现更高的效率。缺点是:(1)同一个进程中的多个线程不能真正并行,即使在多处理器环境中也是如此;(2)因为线程对操作系统不可见,所以调度是在进程级别进行的,进程中的一个线程被阻止通过系统调用进入操作系统,并且进程的其他线程不能运行。核心级线程由操作系统通过系统调用创建,线程控制结构TCB存储在操作系统空间,线程状态转换由操作系统完成,线程是中央处理器调度的基本单元。此外,由于系统调度是基于线程的,操作系统还需要为每个线程维护一个核心堆栈。核心级线程的优势是良好的并发性,并且同一进程中的多个线程可以在多CPU环境中实时并行执行。核心级线程的缺点是线程控制和状态转换需要在操作系统中完成,这导致了很高的系统开销。10.什么是锻炼走路?这项工作什么时候会变成一个过程?答:作业步骤:作业中相对独立的处理步骤。作业进入内存,并根据作业步骤的要求建立一个过程。11.分析工作、过程和线程之间的关系。答:连接:一个作业包含多个进程,一个进程包含多个线程;区别:作业是向计算机提交任务的任务实体,而进程是执行实体,是资源分配的基本单位,线程是处理器调度的基本单位。12.什么是系统开销?给出了三个实例来说明运行操作系统程序来管理系统所花费的时间和空间,例如作业调度、进程调度、进程切换等。第三章和处理器中间课后调度练习1.试解释以下概念之间的联系和区别: (1)系统调用命令(2)访问命令(3)通用命令A:访问命令由指令代码和访问中断号组成。即: SVC n其中SVC(SuperVisor Call)是指令代码,表示它是进入管道的指令;n是访问中断号,它的值是一个整数,具体表示什么是访问要求。当中断发生时,硬件中断设备将访问中断号n发送到旧程序状态字中的中断代码字段,访问中断主控制程序从系统堆栈中取出,并相应地传送到相应的服务程序。在实际使用中,用户程序和操作系统还需要相互传递参数和返回值。这样,用户访问指令的一般形式是:准备参数SVC n取返回值 根据具体的访问要求协议,参数和返回值可以通过寄存器或通过存储器传递。对于后者,操作系统必须能够访问进程空间。(2)通常被称为系统调用命令,它不仅访问管道指令,还准备参数和获取返回值。为了便于使用,它通常以类似于高级语言中的过程调用的形式编写,即:返回值=系统调用名(参数1,参数2,参数m);当然,编译器会将翻译成的形式。系统调用名对应于,不同的系统调用名对应于不同的整数n。在一些书中,也被称为代表的宏指令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 包装服务个性化升级策略沟通信(3篇)
- 推进双方合作的深入商谈函件(5篇)
- 精准物流配送流程梳理商洽函6篇范文
- 绿色出行共护地球家园-小学主题班会课件
- 科学创新思维点亮智慧新生活小学主题班会课件
- 金属冶炼企业中层管理人员试题(附答案)
- 2026年专业技术人员知识产权保护公需科目题库及答案
- 2026年专业技术人员公需科目森林防火管理题库及答案
- 年度总结及计划安排函5篇
- 化妆品公司付款延迟三十天协商函(6篇范文)
- 2026年四川发展控股有限责任公司招聘笔试题
- 2026年民政业务基础知识核心考试题库含答案
- 2025年湖南医药学院马克思主义基本原理概论期末考试参考题库
- 医学人文岗前培训课件
- JJF 2329-2025 转动惯量测量仪校准规范
- 主播签约合同保底协议
- 2026国家能源集团新能源院校园招聘备考考试题库附答案解析
- 高血压糖尿病患者随访表
- 蒸汽管道试压作业方案
- GB/T 41850.9-2024机械振动机器振动的测量和评价第9部分:齿轮装置
- 初中数学综合实践活动课
评论
0/150
提交评论