免费智能真题库 > 历年试卷 > 系统架构设计师 > 2020年下半年 系统架构设计师 上午试卷 综合知识
  第9题      
  知识点:   操作系统的结构   操作系统
  章/节:   操作系统       

 
以下关于操作系统微内核架构特征的说法,不正确的是()。
 
 
  A.  微内核的系统结构清晰,利于协作开发
 
  B.  微内核代码量少,系统具有良好的可移植性
 
  C.  微内核有良好的伸缩性、扩展性
 
  D.  微内核的功能代码可以互相调用,性能很高
 
 
 

 
  第1题    2010年下半年  
   48%
采用微内核结构的操作系统提高了系统的灵活性和可扩展性,(1)
 
   知识点讲解    
   · 操作系统的结构    · 操作系统
 
       操作系统的结构
        操作系统的结构可以分为无序结构、层次结构、面向对象结构、对称多处理结构和微内核结构。
        (1)无序结构,又称整体结构或模块组合结构。它以大型表格和队列为中心,操作系统的各部分程序围绕着表格运行,整个系统是一个程序。这种操作系统常称为面向过程的操作系统。操作系统由许多标准的、可兼容的基本单位构成(称为模块),各模块相对独立,模块之间通过规定的接口相互调用。模块化设计方法的优点是缩短了系统的开发周期,缺点是模块之间调用关系复杂、相互依赖,从而使分析、移植和维护系统较易出错。
        (2)层次结构。把一个大型复杂的操作系统分解成若干个单向依赖的层次,由多层的正确性保证操作系统的可靠性。层次结构清晰,大大地简化了接口的设计,且有利于系统功能的增加或删改,易于保证可靠性,也便于维护和移植。
        (3)面向对象结构。基于面向对象程序设计的概念,采用了各种不同的对象技术。在计算机系统中对象是操作系统管理的信息和资源的抽象,是一种抽象的数据类型。可以把对象作为系统中的最小单位,由对象、对象操作、对象保护组成的操作系统,就是面向对象的操作系统,如Windows Server中有执行体对象(例如,进程、线程、文件和令牌等)和内核对象(例如,时钟、事件和信号等)。面向对象结构的优点是适用于网络操作系统和分布式操作系统中。
        (4)对称多处理结构。如果一个操作系统在系统中的所有处理机运行且共享同一内存(内存储器、主存、实存),这样的系统就是一个对称多处理系统。优点是适合共享存储器结构的多处理机系统,即紧耦合的多处理机系统。
        (5)微内核结构。把系统的公共部分抽象出来,形成一个底层核心,提供最基本的服务,其他功能以服务器形式建立在微内核之上。它具有良好的模块化和结构化特征,模块之间和上下层之间通过消息来通信。建立在微内核上的服务器可以根据不同的需要构造,从而形成不同的操作系统。
        现代操作系统大多拥有两种工作状态:核心态和用户态。我们使用的一般应用程序工作在用户态,而内核模块和最基本的操作系统核心工作在核心态。
        微内核结构由一个非常简单的硬件抽象层和一组比较关键的原语或系统调用组成,这些原语仅仅包括了建立一个系统必需的几个部分,如线程管理、地址空间和进程间通信等。微内核的目标是将系统服务的实现和系统的基本操作规则分离开来。例如,进程的输入/输出锁定服务可以由运行在微内核之外的一个服务组件来提供。这些模块化的用户态服务用于完成操作系统中比较高级的操作,这样的设计使内核中最核心的部分的设计更简单。一个服务组件的失效并不会导致整个系统的崩溃,内核需要做的,仅仅是重新启动这个组件,而不必影响其他的部分。
        微内核技术的主要优点如下:
        (1)具有统一的接口,在用户态和核心态之间无需进程识别。
        (2)可伸缩性好,能适应硬件更新和应用变化。
        (3)可移植性好,所有与具体机器特征相关的代码,全部隔离在微内核中,如果操作系统要移植到不同的硬件平台上,只需修改微内核中极少代码即可。
        (4)实时性好,微内核可以方便地支持实时处理。
        (5)安全可靠性高,微内核将安全性作为系统内部特性来进行设计,对外仅使用少量应用编程接口。
        (6)支持分布式系统,支持多处理器的架构和高度并行的应用程序。
        (7)真正面向对象的操作系统。
        由于操作系统核心常驻内存,而微内核结构精简了操作系统的核心功能,内核规模比较小,一些功能都移到了外存上,所以微内核结构十分适合嵌入式的专用系统,对于通用性较广的系统,将使CPU(Central Processing Unit,中央处理单元)的通信开销增大,从而影响到计算机的运行速度。
 
       操作系统
        编写嵌入式软件有两种选择:一是自己编写内核;二是使用现成的操作系统。如果嵌入式软件只需要完成一项非常小的工作,例如在电动玩具、空调中,就不需要一个功能完整的操作系统。但如果系统的规模较大、功能较复杂,那么最好还是使用一个现成的操作系统。可用于嵌入式系统软件开发的操作系统有很多,但关键是如何选择一个适合开发项目的操作系统,可以从以下几点进行考虑:
        (1)操作系统提供的开发工具。有些实时操作系统只支持该系统供应商的开发工具,因此,还必须从操作系统供应商处获得编译器、调试器等;而有的操作系统应用广泛,且有第三方工具可用,因此选择的余地比较大。
        (2)操作系统向硬件接口移植的难度。操作系统到硬件的移植是一个重要的问题,是关系到整个系统能否按期完工的一个关键因素。因此,要选择那些可移植性程度高的操作系统,以避免因移植带来的种种困难。
        (3)操作系统的内存要求,有些操作系统对内存有较大要求。
        (4)操作系统的可剪裁性、实时性能等。
   题号导航      2020年下半年 系统架构设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第9题    在手机中做本题