操作系统概述

单选题


(华中科技大学,2005)程序正在试图读取某个磁盘的第100个逻辑块,使用操作系统提供的( )接口

  • [x] 系统调用
  • [ ] 图形用户
  • [ ] 原语
  • [ ] 键盘命令

操作系统作为用户和计算机硬件系统之间的接口,用户可以通过3种方式使用计算机,命令方式、系统调用方式、图形方式。系统调用按照功能分为进程管理、文件操作、设备管理等,本题描述的是文件操作系统调用相关的执行。

(2009计算机统考)单处理器系统中,可并行的是( ) 1)进程与进程 2)处理器与设备 3)处理器与通道 4)设备与设备

  • [ ] 1 2 3
  • [ ] 1 2 4
  • [ ] 1 3 4
  • [x] 2 3 4

并行指同一时刻同时发生,同一时刻单个处理器只能运行一个进程。

(2010统考)下列选项中,操作系统提供给应用程序的接口是( )

  • [x] 系统调用
  • [ ] 中断
  • [ ] 库函数
  • [ ] 原语

解释:略

(2011统考)下列选项中,在用户态执行的是( )

  • [x] 命令解释程序
  • [ ] 缺页处理程序
  • [ ] 进程调度程序
  • [ ] 时钟中断处理程序

后3个选项都属于内核的功能,在内核态。命令解释程序则属于应用程序。

(2013联考)计算机开机后,操作系统最终被加载到( )

  • [ ] BIOS
  • [ ] ROM
  • [ ] EPROM
  • [x] RAM

操作系统被加载到内存(RAM)中

操作系统属于__(单选)

  • [ ] 硬件
  • [x] 系统软件
  • [ ] 通用库
  • [ ] 应用软件

操作系统是管理计算机硬件与软件资源的计算机程序,例如Windows,Linux,Android,iOS等。应用软件一般是基于操作系统提供的接口,为针对使用者的某种应用目的所撰写的软件,例如Office Word,浏览器,手机游戏等。而通用库,一般是指为了便于程序开发,对常用的程序功能封装后被调用的程序。

以ucore OS为例,它通过I/O子系统和各种驱动程序直接控制时钟,串口,显示器等计算机硬件外设,并通过系统调用接口给在其上运行的应用软件提供服务,并通过进程管理子系统、CPU调度器、内存管理子系统、文件子系统、I/O子系统来管理应用软件的运行和实现具体的服务。

以下哪个不能用于描述操作系统(单选)

  • [ ] 使计算机方便使用
  • [ ] 可以管理计算机硬件
  • [ ] 可以控制应用软件的执行
  • [x] 负责生成应用软件

解释:操作系统负责管理计算机的硬件资源,使得用户不需要关心硬件的工作过程,极大地方便了计算机的使用。我们日常使用计算机,往往已经在使用了特定的操作系统,例如Windows,而在操作系统上,会同时运行多个应用软件,例如浏览器,音乐播放器等,为了让一个或者多个软件能够正常使用有限的硬件资源,操作系统需要管理应用程序的执行过程。一般来说,像浏览器,音乐播放器,和其他应用软件,都是由特定的个人和团队开发的,操作系统不负责生成应用软件。 以ucore OS开发为例,有了ucore OS,应用软件访问硬件跟简单了,有统一的文件访问方式来访问磁盘或各种外设。ucore OS 可以通过I/O操作控制硬件和应用软件的运行等。但编写软件是程序员的工作,把基于C语言或汇编语言的程序转换并生成执行代码是编译器(如gcc,gas)、连接器(如link)的工作。操作系统可加载运行应用软件的执行代码。

以下不属于操作系统的功能是()

  • [ ] 进程调度
  • [ ] 内存管理
  • [x] 视频编辑
  • [ ] 设备驱动

解释:视频编辑是一个特定的功能,不是系统范围内的共性需求,具体完成这个功能的是视频编辑应用软件。当然,视频编辑应用软件在涉及文件访问时,是需要操作系统中的文件子系统支持;在涉及视频显示方面,需要操作系统的显卡/GPU等设备驱动支持。

操作系统中的多道程序设计方式用于提高__(单选)

  • [ ] 稳定性
  • [x] 效率
  • [ ] 兼容性
  • [ ] 可靠性

解释:是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序(早期的操作系统)控制之下,相互穿插的运行。两个或两个以上程序在计算机系统中同处于开始到结束之间的状态(这里用进程来表示,在后续课程中会讲解“进程管理”)。这样可以使得几道独立的程序可以并发地共同使用各项硬件资源,提高了资源的利用率。 以ucore OS为例,在lab5中支持了用户进程,从而可以在内存中存放多个程序,并以进程的方式被操作系统管理和调度。

下面对于分时操作系统的说法,正确的是()

  • [ ] 应用程序执行的先后顺序是完全随机的
  • [ ] 应用程序按照启动的时间依次执行
  • [x] 应用程序可以交替执行
  • [ ] 应用程序等待的时间越长,下一次调度被选中的概率一定越大

解释:选择3更合适。分时操作系统把多个程序放到内存中,将处理机(CPU)时间按一定的时间间隔(简称时间片)分配给程序运行,这样CPU就可以轮流地切换给各终端用户的交互式程序使用。由于时间片很短,远小于用户的交互响应延迟,用户感觉上好像独占了这个计算机系统。应用程序执行的先后顺序主要是由操作系统的调度算法和应用程序本身的行为特征来确定的。调度算法需要考虑系统的效率、公平性等因素。对于1,2而言,从系统的效率上看不会带来好处;对于4而言,可以照顾到公平性,但“一定”的表述太强了,比如如果调度算法是简单的时间片轮转算法(在后续章节“处理器调度”),则4的要求就不会满足了,且更实际的调度算法其实还需考虑等待的事件等诸多因素。 以ucore OS为例,在lab6中支持实现不同的调度算法。对于分时操作系统而言,体现其特征的一个关键点就是要实现时间片轮转调度算法或多级反馈队列调度算法(在后续章节“处理器调度”)。在ucore OS中,可以比较方便地实现这两种调度算法。

Unix操作系统属于__()

  • [x] 分时操作系统
  • [ ] 批处理操作系统
  • [ ] 实时操作系统
  • [ ] 分布式操作系统

解释:选择1更合适。Unix操作系统支持交互式应用程序,属于分时操作系统。比早期的批处理操作系统要强大。且它更多地面向桌面和服务器领域,并没有很强的实时调度和实时处理功能,所以一边不划归为实时系统。它虽然有网络支持(如TCP/IP),但实际上它管理的主要还是单个计算机系统让的硬件和应用软件。 以ucore OS为例,它模仿的是Unix操作系统,实现了对应的分时调度算法(时间片轮转、多级反馈队列),所以也算是分时系统。如果ucore实现了实时进程管理、实时调度算法,并支持在内核中的抢占(preempt in kernel),则可以说它也是一个实时系统了。

批处理的主要缺点是__()

  • [ ] 效率低
  • [x] 失去了交互性
  • [ ] 失去了并行性
  • [ ] 以上都不是

解释:批处理操作系统没有考虑人机交互所需要的分时功能,所以开发人员或操作人员无法及时与计算机进行交互。 以ucore OS为例,如果它实现的调度算法是先来先服务调度算法(在后续章节“处理器调度”,相对其他调度算法,具体实现更简单),那它就是一种批处理操作系统了,没有很好的人机交互能力。


多选题


关于操作系统,说法正确的是()

  • [x] 操作系统属于软件
  • [x] 操作系统负责资源管理
  • [x] 操作系统使计算机的使用更加方便
  • [ ] 操作系统必须要有用户程序才能正常启动

操作系统是一种软件,特定指是系统软件,其更功能是管理计算机资源,让用户和应用程序更方便高效地使用计算机。 以ucore OS为例,其实没有用户程序,操作系统也可以正常运行。所以选项4是部队的。

设备管理的功能包括__()

  • [x] 设备的分配和回收
  • [ ] 进程调度
  • [x] 虚拟设备的实现
  • [x] 外围设备启动

进程调度是属于操作系统的进程管理和处理器调度子系统要完成的工作,与设备管理没有直接关系 以ucore OS为例(lab5以后的实验),与进程调度相关的实现位于kern/process和kern/schedule目录下;与设备管理相关的实现主要位于kern/driver目录下

多道批处理系统主要考虑的是__()

  • [ ] 交互性
  • [ ] 及时性
  • [x] 系统效率
  • [x] 吞吐量

解释:交互性和及时性是分时系统的主要特征。多道批处理系统主要考虑的是系统效率和系统的吞吐量。 以ucore OS为例(lab6实验),这主要看你如何设计调度策略了,所以如果实现FCFS(先来想服务)调度算法,这可以更好地为多道批处理系统服务;如果实现时间片轮转(time-slice round robin)调度算法,则可以有比较好的交互性;如果采用多级反馈队列调度算法,则可以兼顾上述4个选项,但交互性用户程序获得CPU的优先级更高。


results matching ""

    No results matching ""