1)前言
面向试题学习,能不能完全搞懂操作系统是不太能保证,能保证的是,能够把卷子上的题目嘎嘎秒了。
长文警告+多图警告,假如跟着文章走,独立写完试题+批改+看我提供的解析,大概需要1一个小时以上
既然看视频也是要一个小时,看完还不一定会写题。看我文章导图加上写题也要一个小时,但是我一个小时之后,几乎不怕什么习题了呀~
不建议在手机端看,其一是因为打开思维导图原文件不方便,其二是因为手机端的文章布局被渲染得真的,一言难尽。
2)正文
2.1)看完文档总结的思维导图
在看文章之前,因为待会会直接写操作系统概述中比较典型的题目来巩固知识点。那么可以大致花四五分钟浏览由辅导资料中总结出来的知识大纲(我下面提供了导图源文件的下载地址),顺着思维导图逐字逐句过一遍,然后就可以开始刷题目了。
当然,看这么长的截图是十分费劲的,所有的思维导图(408相关)我都会托管到github以及gitee中,可以直接download zip或者用git 拉取到自己的本地计算机上,使用软件和打开我提供的思维导图,可以鼠标滚轮缩放以及拖动或者编辑。
例如:
操作系统思维导图笔记以及软件链接——github
倘若觉得访问github速度太慢的小伙伴可以试试gitee的仓库呀
操作系统思维导图笔记以及软件链接——gitee
2.2)横扫试题
2.2.1)代表性试题讲解
① 操作系统的基本认识
答案:B
系统软件包括操作系统、数据库管理系统、语言处理程序、服务性程序、标准库程序等。
答案:C
操作系统管理计算机的硬件和软件资源,这些资源统称为计算机资源。需要注意的是,操作系统也管理文件,文件不属于硬件资源(比如处理机、存储器等硬件资源),但是属于计算机资源
答案:D
操作系统是指控制和管理整个计算机系统的硬件和软件资源。合理地组织、调度计算机的工作和资源的分配。以便为用户和其他软件提供方便的接口与环境的程序集合。
A、B、C都可理解是应用程序为用户提供的服务,是应用程序的功能,而不是操作系统的功能。
答案:D
从这个题中可以学会从一个形象的角度看操作系统。
上一题咱们提到,“操作系统也管理软件”,那源程序存储在文件中,也应该被管理吧。
那咱们再进一步认识操作系统到底在管理什么😝😝😝
操作系统管理文件,指的是操作系统会关心计算中的文件的逻辑结构、物理结构、文件内部结构、多文件之间如何组织等等问题。
比如我们是操作系统,负责的任务是将十个水杯放在合适的位置,那我们是没有必要去关心水杯盛的是橙汁还是凉白开,把杯子放在恰当的位置就好。操作系统管理文件也可以类似的理解。源程序是放在文件这个杯子种的水。
答案:D
上面一题的再度巩固
② 并发和并行
答案:B
操作系统最基本的特征是并发和共享,两者互为存在条件。
答案:C
这里需要扣字眼,着重理解同一时刻和同一时间间隔,同一时间间隔可以说是一个区间,同一时刻就更像区间上的一个点。
那么,再顺势理解并发和并行,并发性是指若干事件同一时间间隔内发生,而并行性是指若干时间在同一时刻发生。
③ 系统调用
答案:B
这里考察的知识点点是:操作系统主要向用户提供命令接口和程序接口(也可以称为系统调用),此外了,还在咱们属性的图形化接口(在调用系统调用的基础上再实现的功能),总结成图:
答案:A
上一个知识点的变式。
答案:B
系统调用是操作系统为应用程序使用内核功能所提供的接口。
就像我上面图中阐述的那样,内核功能过于偏向于底层,直接使用并不安全且不方便,所以设计为只能通过用户程序间接的使用。
答案:C
答案:D
放置这个题目的主要目的是积累词条。
shell 是命令解析器,它服务于命令接口;命令解释器也是直接属于命令接口;广义指令就是系统调用命令(第一次听到这个词条);
对于D,应该是计算机组成原理知识的一个积累。系统中的缓存全部由操作系统管理,那么,对于用户是透明的,因此操作系统不会提供管理系统缓存的接口。
④ 操作系统分类与发展
答案:B
这个题就是纯纯的知识点啦
答案:BACD
这个题目在对操作系统的各个发展阶段产品的特点有一定了解之后,就能够很快乐的秒了。
首先,为了调解手工操作阶段独占设备的情况,发展出了批处理操作系统,使得允许多个用户使用计算机了,美好了,但是呢,美中不足,这种操作系统缺乏交互性,致命缺陷。
然后,为了解决交互性的问题,发展出了分时操作系统。更加完美了,但是呢,分时操作系统应对需要及时做出相应的环境表现不太好。
紧接着,为了满足需求,就发展出了实时操作系统。
答案:D
多道程序设计技术由于同时在主存中运行多个程序,在一个程序等待的时候,可以去执行其他程序,因此提高了系统资源的利用率。
脱机技术用于解决独占设备问题,至于虚拟技术还有交换技术,都隶属于为多道程序设计技术的前提。
答案:D
在批处理系统中,作业执行的时候,用户是无法进行干预的,只能通过事先编制的作业控制说明书来间接干预,因此批处理系统是十分缺乏交互能力的。
答案:C
批处理的主要缺点是缺乏交互性。(批处理系统的缺点十分常考)
输入/输出指令需要中断操作,中断必须在核心态下执行。
多道程序设计技术是为了提高系统利用率和吞吐量而产生的,因此III说法是错的。
I/O通道实际上是一种特殊的处理器,处理器是硬件,所以第四个说法是没错的,它具有执行I/O指令的能力,并通过执行多道程序来控制I/O 操作,这里当做常识积累。
答案:C
多道程序的运行环境比单道程序的运行环境更加复杂。引入多道程序之后,程序的执行会失去封闭性和顺序性。程序的执行因为共享资源以及相互协同的原因产生了竞争,相互制约。为了保证竞争的公平,程序的执行是间断性的
答案:B
裸知识点。分时操作系统的设计目标是能够快速响应用户。
答案:C
采用优先级可以让重要的作用或者进程能够通过高优先级尽快获得系统响应;采用非抢占式调度算法可以保证次要的进程或者作业在非抢占式调度下,不会迟迟得不到系统的响应。
至于加大时间片了,只会延迟系统的响应时间,因为分时技术是指把处理器的运行时间分成很短的时间片,按时间片轮流把处理器分配给各个联机作业使用。,那么加大时间片,只会加大延迟。
静态页式管理和代码可重入与系统响应时间无关。
答案:C
在分时操作系统中,有这么一个计算式:相应时间 T = 时间片 Q ∗ 用户数 N 相应时间T = 时间片Q*用户数N相应时间T=时间片Q∗用户数N,那么对于此题而言,当时间片固定的时候,用户数量越多,每个用户分到的时间片就越少。
答案:B
机制的小伙伴可能已经发现,这个题就是上一个题的变式~。
相应时间 T = 时间片 Q ∗ 用户数 N 相应时间T = 时间片Q*用户数N相应时间T=时间片Q∗用户数N
当前的相应时间是2S,然后进程数其实相当于用户数量,用户使用计算机作业之后才能才生进程,对吧。
那么最后的结果就很容易得出了。
答案:B
裸知识点。
实时操作系统要求能够在规定的时间内完成对外部事件的处理。
答案:B
实时性和可靠性是实时操作系统最重要的两个目标。
安全可靠体现了可靠性,快速处理和及时响应体现着实时性。
资源利用率不是实时操作系统的主要目标,在为了保证快速处理高优先级的紧急任务的时候,"浪费"一些系统资源是情有可原的嗷~
答案:C
这个题和上面的改善分时系统的题联系着学习。
实时操作系统是分时操作系统的进一步发展。在分时操作系统中,为了能够让重要的作用或者进程尽快获得响应,采用了高优先级,在实时操作中,必须能足够及时的处理某些紧急的外部事件,因此普遍还是采用高优先级。
在实时操作系统中,为了保证紧急事件能够及时处理,还追加了可抢占式来确保实时处理。
活学活用,来切实的刷一个实时操作系统的应用例子。
答案:D
实时操作系统主要应用在需要对外界输入立即作出反应的场合,不能拖延,否则会发生严重的后果。
航空订票系统需要实时处理事务,因为票额数据库的数量直接反映了航班的可订机位,必须立即更新。
机床控制也必须要实时操作系统,倘若不能立即做出反应,一批工件可能就会被削坏。
股票交易系统也必须要实时操作系统,因为股票行情瞬息万变,倘若不能实时更新,就会出现时间差,导致巨额亏损。
⑤ 操作系统的运行机制和体系结构
答案:D
操作系统(也可以说是内核)可以执行处理器能够执行的任何指令。
只是有一定的限制,对于用户程序而言,只能执行除特权指令以外的指令;特权指令只能由操作系统使用。
答案:A
计算机通过硬件中断机制完成由用户态到核心态的转换。
核心态程序了,就像它的名字一样,只能在进入核心态之后才能执行。
中断处理程序一般也是在核心态执行,这是后续的知识点,暂时不细谈。
答案:C
在前面的例题中提到过,广义指令就是系统调用命令,它必然是在核心态下执行的。
这个主要是想要提醒:注意区分调用/使用和执行的区别。广义指令的调用可能是发生在用户态,调用广义指令的那条指令不一定是特权指令;但是因为广义指令存在于用户态中,所以执行一定是在核心态。
按照我现在浅陋的理解呢,使用和执行相当于拿水瓶和拧开瓶子的瓶盖喝水。前者只是动作,不会产生结果;而后者会有结果。
答案:D
核心是要知道输入输出指令会涉及到中断操作,而中断处理是由核心态负责的,因此必须在核心态下执行。
答案:A
放置这个题目的主要目的是想让了解什么是访管指令。核心态又可以称为是管态。那么从字面意思理解,访管指令是访问核心态的指令。
在核心态访问核心态蛮奇怪的吧,那顺理成章理解可以理解为:在用户态执行访问核心态的"访管指令",然后就能够成功进入核心态。
答案:D
上一个题的再度巩固。访管指令在用户态使用,是用户程序"自愿进管"的手段。
用户态是不能执行特权指令的,这点不变;在核心态下,CPU可以执行指令系统中的任何一个指令。
答案:A
这个题呢,更偏向于与对计算机基础知识的积累。
中断系统和地址映射都是需要硬件支持的,因为中断指令和地址映射中的重定位都是离不开地址支持的。
时钟管理中,重置时钟等操作是由硬件直接完成的。
对于进程调度而言,是根据调度来决定当前的CPU交给哪个进程使用,由操作系统控制,和硬件无关。
⑥ 中断以及异常
答案:C
进入中断处理的程序是在核心态执行,核心态了,向着操作系统程序选择了。
答案:D
看到"访管"二字,应该可以联想到上面的两个习题中解释了什么是访管指令,访管指令的执行位置。
因为操作系统不允许用户直接使用某些"危险性高"的指令,因此用户态运行的这些指令的结果会转成操作系统在核心态执行,这个过程了,就是访管中断。