当前位置:文档之家› 简述单内核操作系统及其优缺点

简述单内核操作系统及其优缺点

简述单内核操作系统及其优缺点
简述单内核操作系统及其优缺点

简述单内核操作系统及其优缺点

单内核也叫集中式操作系统。整个系统是一个大模块,可以被分为若干逻辑模块,即

处理器管理、存储器管理、设备管理和文件管理,其模块间的交互是通过直接调用其他模

块中的函数实现的。

优点:

单内核模型以提高系统执行效率为设计理念,因为整个系统是一个统一的内核,所以

其内部调用效率很高。

缺点:

单内核的缺点也正是由于其源代码是一个整体而造成的,通常各模块之间的界限并不

特别清晰,模块间的调用比较随意,所以进行系统修改或升级时,往往“牵一发而动全身”,导致工作量加大,使其难于维护。

补充:1.微内核操作系统及其优缺点

微内核是指把操作系统结构中的内存管理、设备管理、文件系统等高级服务功能尽可

能地从内核中分离出来,变成几个独立的非内核模块,而在内核只保留少量最基本的功能,使内核变得简洁可靠,因此叫微内核。

微内核实现的基础是操作系统理论层面的逻辑功能划分。几大功能模块在理论上是相

互独立的,形成比较明显的界限,其优点如下:

· 充分的模块化,可独立更换任一模块而不会影响其他模块,从而方便第三方开发、设计模块。

· 未被使用的模块功能不必运行,因而能大幅度减少系统的内存需求。

· 具有很高的可移植性,理论上讲只需要单独对各微内核部分进行移植修改即可。

由于微内核的体积通常很小,而且互不影响,因此工作量很小。

不出:2.操作系统其它两种内核系统简述

外内核

外内核系统,也被称为纵向结构操作系统,是一种比较极端的设计方法。

外内核这种内核不提供任何硬件抽象操作,但是允许为内核增加额外的运行库,通过

这些运行库应用程序可以直接地或者接近直接地对硬件进行操作。它的设计理念是让用户

程序的设计者来决定硬件接口的设计。外内核本身非常的小,它通常只负责系统保护和系

统资源复用相关的服务。

传统的内核设计包括单核和微核都对硬件作了抽象,把硬件资源或设备驱动程序都隐

藏在硬件抽象层下。比方说,在这些系统中,如果分配一段物理存储,应用程序并不知道

它的实际位置。而外核的目标就是让应用程序直接请求一块特定的物理空间,一块特定的

磁盘块等等。系统本身只保证被请求的资源当前是空闲的,应用程序就允许直接存取它。

既然外核系统只提供了比较低级的硬件操作,而没有像其他系统一样提供高级的硬件抽象,那么就需要增加额外的运行库支持。这些运行库运行在外核之上,给用户程序提供了完整

的功能。

理论上,这种设计可以让各种操作系统运行在一个外核之上,如Windows和Unix。并且设计人员可以根据运行效率调整系统的各部分功能。

混合内核

混合内核它很像微内核结构,只不过它的的组件更多的在核心态中运行以获得更快的

执行速度。

混合内核实质上是微内核,只不过它让一些微核结构运行在用户空间的代码运行在内

核空间,这样让内核的运行效率更高些。这是一种妥协做法,设计者参考了微内核结构的

系统运行速度不佳的理论。然而后来的实验证明,纯微内核的系统实际上也可以是高效率的。大多数现代操作系统遵循这种设计范畴,微软公司开发的Windows操作系统就是一个

很好的例子。另外还有XNU,运行在苹果Mac OS

X上的内核,也是一个混合内核。

混合内核的例子: BeOS 内核,DragonFly BSD,ReactOS 内核Windows NT、Windows 2000、Windows XP、Windows Server 2021以及Windows Vista等基于NT技术的操作系统。

感谢您的阅读,祝您生活愉快。

计算机操作系统(第四版)课后答案第一,二,三章

第一章 1.设计现代OS的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象 3.为什么说OS实现了对计算机资源的抽象? 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4.试说明推劢多道批处理系统形成和収展的主要劢力是什么? 答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。5.何谓脱机I/O和联机I/O? 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 6.试说明推劢分时系统形成和収展的主要劢力是什么? 答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么?应如何解决? 答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设臵多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配臵缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 8.为什么要引入实时OS? 答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。引入实时OS 是为了满足应用的需求,更好地满足实时控制领域和实时信息处理领域的需要。 9.什么是硬实时任务和软实时任务?试举例说明。 答:硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。举例来说,运载火箭的控制等。软实时任务是指它的截止时间并不严格,偶尔错过了任务的截止时间,对系统产生的影响不大。举例:网页内计算机操作系统第三版答案 2 / 47 容的更新、火车售票系统。 10.试从交互性、及时性以及可靠性方面,将分时系统不实时系统迚行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 11.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。14.是什么原因使操作系统具有异步性特征? 答:操作系统的异步性体现在三个方面:一是进程的异步性,进程以人们不可预知的速度向前推进,二是程序的不可再现性,即程序执行的结果有时是不确定的,三是程序执行时间的不可预知性,即每个程序何时执行,执行顺序以及完成时间是不确定的。15.处理机管理有哪些主要功能?它们的主要任务是什么? 答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。进程同步:为多个进程(含线程)的运行进行协调。通信:用来实现在相互合作的进程之间的信息交换。处理机调度:(1)作业调度。从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源(首选是分配内存)。(2)进程调度:从进程的就绪队列中,按照一定算法选出一个进程,把处理机分配给它,并设臵运行现场,使进程投入执行。 16.内存管理有哪些主要功能?他们的主要任务是什么? 答:内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充。内存分配:为每道程序分配内存。内存保护:确保每道用户程序都只在自己的内存空间运行,彼此互不干扰。计算机操作系统第三版答案 3 / 47 地址映射:将地址空间的逻辑地址

操作系统内核的动态可信度量模型

操作系统内核的动态可信度量模型 摘要:动态可信度量是可信计算的研究热点和难点,针对由操作系统内核动态性所引起的可信度量困难问题,提出一种操作系统内核的动态可信度量模型,使用动态度量变量描述和构建系统动态数据对象及其关系,对内核内存进行实时数据采集,采用语义约束描述内核动态数据的动态完整性,通过语义约束检查验证内核动态数据是否维持其动态完整性。给出了模型的动态度量性质分析与证明,模型能够有效地对操作系统内核的动态数据进行可信度量,识别对内核动态数据的非法篡改。 关键词:可信计算;可信度量;动态度量;操作系统内核;远程证明 dynamic trusted measurement model of operating system kernel xin si.yuan1*, zhao yong2, liao jian.hua3, wang ting4 1.institute of electronic technology, information engineering university, zhengzhou henan 450004,china;2.college of computer science,beijing university of technology,beijing 100124,china; 3.school of electronics engineering and computer science, peking university, beijing 100871, china; 4. unit 65047 of pla,shenyang liaoning 100805,

计算机操作系统(第三版-汤小丹等)课后习题答案(全)整理后

第一章操作系统引论 1.设计现代OS的主要目标是什么 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面 答:(1)OS作为用户与计算机硬件系统之间的接口;(2)OS作为计算机系统资源的管理者;(3)OS实现了对计算机资源的抽象。 3.为什么说OS实现了对计算机资源的抽象 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4.试说明推动多道批处理系统形成和发展的主要动力是什么 答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。 5.何谓脱机I/O和联机I/O 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 6.试说明推动分时系统形成和发展的主要动力是什么 答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么应如何解决 答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。

简述单内核操作系统及其优缺点

简述单内核操作系统及其优缺点 单内核也叫集中式操作系统。整个系统是一个大模块,可以被分为若干逻辑模块,即 处理器管理、存储器管理、设备管理和文件管理,其模块间的交互是通过直接调用其他模 块中的函数实现的。 优点: 单内核模型以提高系统执行效率为设计理念,因为整个系统是一个统一的内核,所以 其内部调用效率很高。 缺点: 单内核的缺点也正是由于其源代码是一个整体而造成的,通常各模块之间的界限并不 特别清晰,模块间的调用比较随意,所以进行系统修改或升级时,往往“牵一发而动全身”,导致工作量加大,使其难于维护。 补充:1.微内核操作系统及其优缺点 微内核是指把操作系统结构中的内存管理、设备管理、文件系统等高级服务功能尽可 能地从内核中分离出来,变成几个独立的非内核模块,而在内核只保留少量最基本的功能,使内核变得简洁可靠,因此叫微内核。 微内核实现的基础是操作系统理论层面的逻辑功能划分。几大功能模块在理论上是相 互独立的,形成比较明显的界限,其优点如下: · 充分的模块化,可独立更换任一模块而不会影响其他模块,从而方便第三方开发、设计模块。 · 未被使用的模块功能不必运行,因而能大幅度减少系统的内存需求。 · 具有很高的可移植性,理论上讲只需要单独对各微内核部分进行移植修改即可。 由于微内核的体积通常很小,而且互不影响,因此工作量很小。 不出:2.操作系统其它两种内核系统简述 外内核 外内核系统,也被称为纵向结构操作系统,是一种比较极端的设计方法。 外内核这种内核不提供任何硬件抽象操作,但是允许为内核增加额外的运行库,通过 这些运行库应用程序可以直接地或者接近直接地对硬件进行操作。它的设计理念是让用户

计算机操作系统(第四版)1-8章 课后答案(全)

第一章操作系统引论 1.设计现代OS的主要目标是什么?答:方便性,开放性,有效性,可扩充性 2.OS的作用可表现在哪几个方面?答:OS作为用户与计算机硬件系统之间的接口;OS作为计算机系统资的管理者;OS实现了对计算机资源的抽象。 3.为什么说操作系统实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层1/0设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。0s通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4·说明推动分时系统形成和发展的主要动力是什么?答:主要动力是提高资源利用率和系统吞吐里,为了满足用户对人一机交互的需求和共享主机。 5.何谓脱机I/O和联机I/O?答:脱机1/0是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或一片上的数据或程序输入到殖带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而耽机1/0方式是指程序和数据的輸入输出都是在主机的直接控制下进行的。 6.试说明推动分时系统形成和发展的主要动力是什么?答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及寸接收并及时处理该命令,在用户能接受的时采内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设路多路卡,健主机能同时接收用户从各个终端上轮入的数据;为每个终端配路缓冲区,暂存用户捷入的命令或教据。针对反时处理问题,应便所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 8.为什么要引入实时OS?答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。引入实时OS是为了满足应用的需求,熏好地满足实时控制领域和实时信息处涯领域的需要。 9.什么是硬实时任务和款实时任务?试举例说明。答:硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结是。举例来说,运载火箭的控制等。软实时任务是指它的截止时间并不严格,偶尔错过了任务的截止时间,对系统产生的影响不大。举例:网页内容的更新、火车售票系统。 10.试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带未巨大的经济损失,甚至是灾难性后,,所以在实时系统中,往往都采取了

操作系统内核态和用户态

操作系统内核态和用户态 操作系统内核态和用户态几乎是考研试题中必考的题目,一般是一道选择题,但是在教材中对着一部分讲解的不是很全面。在复习中(包括我在内),往往面临两难的问题,一方面教材上的内容较少,另一方面网上的东西又太多,看的时候又不知所措。所在在这里给大家把这一块的知识点总结一下,希望能给大家带来一些启迪,同时也欢迎大家一起讨论。 一、操作系统结构: 操作系统的发展大致经历了无结构操作系统(第一代),模块化的操作系统(第二代),分层式结构(第三代),这些称为传统操作系统结构。而微内核操作系统是现代操作系统结构,他是在C/S(客户端/服务器)这种架构方式上发展起来的。传统操作系统的内容,大家只需要了解就可以了。重点在微内核操作系统。 二、微内核操作系统 微内核操作系统往往采用的是C/S模式,它把操作系统分为微内核和多个服务器。微内核主要用于(1)实现与硬件紧密相关的处理,(2)实现一些较基本的功能,(3)负责客户和服务器之间的通信。 内核的功能: (1)进程(线程)管理(进程或者线程的调度) (2)低级存储器管理(用户程序逻辑空间到内存空间的物理地址的变换) (3)中断和陷入管理(中断和陷入) 由于微内核结构的存在,那么程序就运行在两种不同的地方,内核态和用户态,内核态与用户态是操作系统的两种运行级别,跟intel cpu没有必然的联系。 三、内核态和用户态 内核态:当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。其他的属于用户态。用户程序运行在用户态,操作系统运行在内核态.(操作系统内核运行在内核态,而服务器运行在用户态)。用户态不能干扰内核态.所以CPU指令就有两种,特权指令和非特权指令.不同的状态对应不同的指令。特权指令:只能由操作系统内核部分使用,不允许用户直接使用的指令。如,I/O指令、置终端屏蔽指令、清内存、建存储保护、设置时钟指令(这几种记好,属于内核态)。非特权指令:所有程序均可直接使用。 所以: 系统态(核心态、特态、管态):执行全部指令。 用户态(常态、目态):执行非特权指令。 2. 用户态和内核态的转换 1)用户态切换到内核态的3种方式 a. 系统调用 这是用户态进程主动要求切换到内核态的一种方式,用户态进程通过系统调用申请使用操作系统提供的服务程序完成工作,比如前例中fork()实际上就是执行了一个创建新进程的系统调用。而系统调用的机制其核心还是使用了操作系统为用户特别开放的一个中断来实现,例如Linux的int 80h中断。 b. 异常 当CPU在执行运行在用户态下的程序时,发生了某些事先不可知的异常,这时会触发由当

基于Linux内核定制X86平台的微操作系统(很完整详尽文章)

基于Linux内核定制X86平台的微操作系统摘要:1 0 前言2 0.1 Linux系统简介2 0.2 Linux的基本思想2 0.3 Linux内核2 0.4 Linux内核版本命名3 0.5 Linux文件系统3 0.6Linux内核引导4 0.7Linux系统组成4 1 平台的搭建4 1.1 硬件平台4 1.2 软件平台4 1.2.1 Ubuntu系统的下载4 1.2.2 Ubuntu系统的安装4 1.2.3 Ubuntu系统的配置4 2 Linux内核的编译5 2.1 内核的下载5 2.2 内核的定制5 2.3 内核的编译5 2.4 内核的制作6 3 BusyBox的编译6 3.1 BusyBox的下载6 3.2 BusyBox的配置6 3.3 BusyBox的编译7 4 Linux文件系统的制作7 4.1 文件系统的制作7 4.2 文件系统的配置9 4.3 文件系统的压缩7 5 Linux引导程序配置10 5.1 ISOLINUX的下载10 5.2 ISOLINUX的配置10 6 LinuxCD-ROM的制作10 7 Linux定制系统的运行11 7.1 VirtualBox下的运行11 7.2 U盘引导在X86平台下的运行12 8定制系统过程中的问题12 8.1 平台搭建中的问题12 8.2 内核编译中的问题12

8.3 BusyBox编译中的问题12 8.4 文件系统制作中的问题12 8.5 引导程序制作中的问题12 8.6 CD-ROM制作中的问题13 8.7 定制系统运行的问题13 参考13 基于Linux内核定制X86平台的微操作系统 王林强 (河南大学物理与电子学院通信专业,河南开封,475004) 摘要: Linux是一种自由和开放,用C语言和汇编语言写成,并符合POSIX标准的类Unix操作系统。并且由于其可定制、可裁剪的特性,不仅在桌面操作系统中有重要的地位,而且在手机、平板电脑、路由器和视频游戏控制台等嵌入式设备有其巨大的优势。 为了更好、更深入的了解及掌握Linux系统。本文详细的讲述并实践,如何从Linux内核源码,经过定制、裁剪、编译、制作文件系统、内核引导,iso光盘制作到最终完整的基于Linux内核定制的微操作系统。 通过基于Linux内核定制的微操作系统的制作,深入的理解Linux内核的工作原理、文件系统结构、内核引导等,从而精通嵌入式开发。 关键词: Linux;定制;嵌入式;微系统 An implementation of micro-operating system based on the x86 platform Linux kernel customization Wang Lin-qiang (School of Physics and Electronics, Henan University, Henan Kaifeng 475004, China) Abstract: Linux is a free and open, and POSIX-compliant Unix-like operating system written in C and assembly language. And can be cut because of its customizable features, not only in the desktop o perating system in an important position, and its huge advantage in the embedded devices, mobile phones, tablet PCs, routers, and video game consoles. In order to better and deeper understanding of and master Linux system. This article tells in d etail and practice, from the Linux kernel source code has been customized, cutting, compiling, pro

一种超微内核嵌入式实时操作系统的设计

开发研究与设计技术 本栏目责任编辑:谢媛媛 1引言 嵌入式实时系统,一般指计算机以片级、板级或箱级埋藏在智能设备中的实时系统。这种系统中,内存空间一般较小,且没有可用的外存,程序放在有限的内存中(一般是固化在ROM或 FLASH等)。 随着实时应用领域的扩大,实时应用覆盖的范围也不断加大,从低端到高端都有应用的需求,这给现代实时操作系统(RTOS)的研究提出了新的要求与挑战。 传统嵌入式实时操作系统设计采用一体化、高效大内核结构的方法。系统功能集中在内核实现,内核向应用程序提供高效率的系统调用及良好的系统响应时间。传统设计方法设计的嵌入式实时操作系统固然有其好的一面,但与现在嵌入式实时操作系统需求相比仍有较大差距,主要表现在操作系统的可伸缩性、可移植性、对新型结构的硬件平台的支持及接口标准的开放性上。而且大内核结构的系统设计对功能的扩展往往造成内核修改牵一发而动全身。为满足现在实时操作系统的需求,同时兼顾嵌入式应用的特点,本文提出了一种基于对象的超微内核嵌入式实时操作系统的设计方法。我们采用面向对象的分析和设计技术,结合了微内核和层次式操作系统的特点,设计了一种超微内核的嵌入式实时操作系统,有效地解决了实时操作系统的可伸缩性、实时性、可移植性等问题,并具有信息隐藏、代码可重用等优点,使得嵌入式实时系统的软件开发方便和快捷。 2可伸缩性设计 现代RTOS应能支持多种实时应用的需求,用户希望开发的RTOS可方便配置,满足各种实时应用的需求,无论它们是高端的实时分布式应用(如银行业务),还是低端的强实时、深嵌入应用(如智能武器系统和工业控制系统等)。要求RTOS有良好的可伸缩性、可裁剪性和重用性。 在用面向对象的分析和设计技术来设计超微内核嵌入式实时操作系统,内核的可伸缩性设计以下三个方面来设计: (1)从操作系统中抽象出超微内核,且内核的大小可以根据用户的需要和具体运行环境来配置的。超微内核抽象层次高、高内聚、代码小,以对象的形式提供给内核其他的部分使用,内核对象高内聚、松耦合,使得内核的扩充变得非常容易,扩充新的类和对象,并不影响超微内核代码本身,从而为系统功能的扩展提供条 件。超微内核中的就绪任务表结构设计如图1。超微内核维护了用于系统管理的数据结构,当系统创建新的任务时,调用超微内核的方法动态创建任务控制块并挂接到超微内核中的就绪任务控制块;而且系统中任务的最大优先级和任务的优先级都是由用户指定,从而实现内核的大小可以由用户根据具体情况设定。 图1就绪任务表结构 (2)通过在编译时进行重新配置来实现静态扩展系统功能。在 编译时进行重新配置,通过省略一些用不到的系统成分,或者在特定接口下对提供不同权衡的实现做出选择,来针对特定工作负载进行定制。 (3)使用微内核的消息传递机制来实现动态扩展系统功能。实时应用的多样性,要求实时操作系统为应用提供多种服务,甚至一些现在没有,但将来可能需要的应用提供扩展支持。现代新型操作系统采用基于消息传送的微内核设计来实现系统的可伸缩性,这一方法同样适合实时嵌入式操作系统设计。微内核设计思想是将操作系统中不常用的系统调用移到核外服务器中实现,并且支持核外服务器的动态配置(加入/退出),微内核与核外服务器之间的联系通过消息传送来实现。微内核可使操作系统的功能扩展靠加入服务器来方便完成。 3实时性能设计 对于实时系统,一个重要的条件就是延迟有确定的上界,这样的系统属于确定性系统,是从系统论的观点讲的一个功能完整的设计,能够独立和外部世界交互,实现预期功能,包括实时硬件系统设计、实时操作系统设计、实时多任务设计三个部分。 对于实时操作系统来说,应满足的条件有如下几点:可强占式内核、可强占优先级、中断优先级、中断可嵌套、系统服务的优先级由请求该服务的任务的优先级来确定、优先级保护(优先级翻转保护)、中断延迟时间有固定上界、任务切换时间有固定上界、系统响应时间有固定上界等。 (下转第231页) 收稿日期:2006-10-31 作者简介:杨小明(1978-),男,助教,研究方向:嵌入式系统;陈晓华(1977-),男,助教,硕士,主要研究方向:嵌入式系统,数据库技术;邹晓(1981-),女,硕士研究生,研究方向:数据库技术,远程网络教育。 一种超微内核嵌入式实时操作系统的设计 杨小明1,陈晓华1,邹晓2 (1.湖州师范学院信息工程学院,浙江湖州313000;2.华东师范大学教育科学学院,上海200062) 摘要:本文提出了一种基于对象的超微内核嵌入式实时操作系统的设计方法。采用面向对象的分析和设计技术,结合了微内核和层 次式操作系统的特点,设计了一种超微内核的嵌入式实时操作系统,有效地解决了实时操作系统的可伸缩性、 实时性、可移植性等问题,并具有信息隐藏、代码可重用等优点,使得嵌入式实时系统的软件开发方便和快捷。 关键词:超微内核;嵌入式;实时操作系统;面向对象 中图分类号:TP316 文献标识码:A文章编号:1009-3044(2007)01-10171-01TheDesignofaNanokernelEmbeddedReal-TimeOperatingSystem YANGXiao-ming1,CHENXiao-hua1,ZOUXiao2 (1.SchoolofInformation&Engineering,HuzhouTeachers,Huzhou313000,China;2.SchoolofEducationScience,EastChinaNormalUniversity, Shanghai200062,China) Abstract:Inthispaper,wepresentadesignmethodofanobject-basednanokernelembeddedreal-timeoperatingsystem.Weuseobject-orientedanalysisanddesigntechnology,andcombinemicrokernelandlayeredoperatingsystemcharacteristics.Thedesigncanefficientlyresolvetheseproblemsofscalability,real-timebehaviorsandportingbehaviorsinthereal-timeoperatingsystem,andhasmanyadvantages,suchasin-formationhiding,codingreusing.Italsomakessoftwaredevelopmentmoreconvenientandrapidintheembeddedreal-timesystem. Keywords:nanokernel;embedded;real-timeoperating system;object-oriented

操作系统精髓与设计原理-第4章 线程_对称多处理和微内核

第四章线程、对称多处理和微内核 复习题: 4.1表3.5列出了在一个没有线程的操作系统中进程控制块的基本元素。对于多线程系统, 这些元素中那些可能属于线程控制块,那些可能属于进程控制块? 答:这对于不同的系统来说通常是不同的,但一般来说,进程是资源的所有者,而每个线程都有它自己的执行状态。关于表3.5中的每一项的一些结论如下:进程标识:进程必须被标识,而进程中的每一个线程也必须有自己的ID。处理器状态信息:这些信息通常只与进程有关。进程控制信息:调度和状态信息主要处于线程级;数据结构在两级都可出现;进程间通信和线程间通信都可以得到支持;特权在两级都可以存在;存储管理通常在进程级;资源信息通常也在进程级。 4.2请列出线程间的模式切换比进程间的模式切换开销更低的原因。 答:包含的状态信息更少。 4.3在进程概念中体现出的两个独立且无关的特点是什么? 答:资源所有权和调度/执行。 4.4给出在单用户多处理系统中使用线程的四个例子。 答:前台和后台操作,异步处理,加速执行和模块化程序结构。 4.5哪些资源通常被一个进程中的所有线程共享? 答:例如地址空间,文件资源,执行特权等。 4.6列出用户级线程优于内核级线程的三个优点。 答:1.由于所有线程管理数据结构都在一个进程的用户地址空间中,线程切换不需要内核模式的特权,因此,进程不需要为了线程管理而切换到内核模式,这节省了在两种模式间进行切换(从用户模式到内核模式;从内核模式返回用户模式)的开销。2.调用可以是应用程序专用的。一个应用程序可能倾向于简单的轮询调度算法,而另一个应用程序可能倾向于基于优先级的调度算法。调度算法可以去适应应用程序,而不会扰乱底层的操作系统调度器。3.用户级线程可以在任何操作系统中运行,不需要对底层内核进行修改以支持用户级线程。线程库是一组供所有应用程序共享的应用级软件包。 4.7列出用户级线程相对于内核级线程的两个缺点。 答:1.在典型的操作系统中,许多系统调用都会引起阻塞。因此,当用户级线程执行一个系统调用时,不仅这个线程会被阻塞,进程中的所有线程都会被阻塞。2.在纯粹的用户级进程策略中,一个多线程应用程序不能利用多处理技术。内核一次只把一个进程分配给一个处理器,因此一次进程中只能有一个线程可以执行。 4.8定义jacketing。 答:Jacketing通过调用一个应用级的I/O例程来检查I/O设备的状态,从而将一个产生阻塞的系统调用转化为一个不产生阻塞的系统调用。 4.9简单定义图4.8中列出的各种结构。 答:SIMD:一个机器指令控制许多处理部件步伐一致地同时执行。每个处理部件都有一个相关的数据存储空间,因此,每条指令由不同的处理器在不同的数据集合上执行。 MIMD:一组处理器同时在不同的数据集上执行不同的指令序列。主/从:操作系统内核总是在某个特定的处理器上运行,其他处理器只用于执行用户程序,还可能执行一些操作系统实用程序。SMP:内核可以在任何处理器上执行,并且通常是每个处理器从可用的进程或线程池中进行各自的调度工作。集群:每个处理器都有一个专用存储器,而且每个处理部件都是一个独立的计算机。 4.10列出SMP操作系统的主要设计问题。 答:同时的并发进程或线程,调度,同步,存储器管理,可靠性和容错。

微内核

微内核 1.简介 微内核结构由一个非常简单的硬件抽象层和一组比较关键的原语或系统调用组成,这些原语仅仅包括了建立一个系统必需的几个部分,如线程管理,地址空间和进程间通信等。 微核的目标是将系统服务的实现和系统的基本操作规则分离开来。例如,进程的输入/输出锁定服务可以由运行在微核之外的一个服务组件来提供。这些非常模块化的用户态服务用于完成操作系统中比较高级的操作,这样的设计使内核中最核心的部分的设计更简单。一个服务组件的失效并不会导致整个系统的崩溃,内核需要做的,仅仅是重新启动这个组件,而不必影响其它的部分。 微内核 在微内核结构中,操作系统的内核只需要提供最基本、最核心的一部分操作(比如创建和删除任务、内存管理、中断管理等)即可,而其他的管理程序(如文件系统、网络协议栈等)则尽可能的放在内核之外。这些外部程序可以独立运行,并对外部用户程序提供操作系统服务,服务之间使用进程间通信机制(IPC)进行交互,只在需要

内核的协助时,才通过一套接口对内核发出调用请求。 2.特点 在微内核结构中,操作系统的内核只需要提供最基本、最核心的一部分操作(比如创建和删除任务、内存管理、中断管理等)即可,而其他的管理程序(如文件系统、网络协议栈等)则尽可能的放在内核之外。这些外部程序可以独立运行,并对外部用户程序提供操作系统服务,服务之间使用进程间通信机制(IPC)进行交互,只在需要内核的协助时,才通过一套接口对内核发出调用请求。 3.优点 微内核系统的优点时操作系统具有良好的灵活性。它使得操作系统内部结构简单清晰。程序代码的维护非常之方便。但是也有不足之处。微内核系统由于核心态只实现了最基本的系统操作,这样内核以外的外部程序之间由于独立运行使得系统难以进行良好的整体优化。另外,进程间互相通信的开销也较单一内核系统要大许多。从整体上看,在当前的硬件条件下,微内核在效率上的损失小于其在结构上获得的收益,故而选取微内核成为操作系统的一大潮流。 https://www.doczj.com/doc/1a12649456.html,/logs/6204606.html

计算机操作系统第四版课后习题参考答案完整版

计算机操作系统第四版课后习题参考答案 集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]

第一章 1.设计现代OS的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象 3.为什么说OS实现了对计算机资源的抽象? 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4.试说明推劢多道批处理系统形成和収展的主要劢力是什么? 答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。 5.何谓脱机I/O和联机I/O? 答:脱机I/O是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 6.试说明推劢分时系统形成和収展的主要劢力是什么? 答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么应如何解决 答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设臵多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配臵缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 8.为什么要引入实时OS? 答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。引入实时OS是为了满足应用的需求,更好地满足实时控制领域和实时信息处理领域的需要。 9.什么是硬实时任务和软实时任务?试举例说明。答:硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。举例来说,运载火箭的控制等。软实时任务是指它的截止时间并不严格,偶尔错过了任务的截止时间,对系统产生的影响不大。举例:网页内计算机操作系统第三版答案2/47容的更新、火车售票系统。 10.试从交互性、及时性以及可靠性方面,将分时系统不实时系统迚行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 11.OS有哪几大特征其最基本的特征是什么 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。 14.是什么原因使操作系统具有异步性特征? 答:操作系统的异步性体现在三个方面:一是进程的异步性,进程以人们不可预知的速度向前推进,二是程序的不可再现性,即程序执行的结果有时是不确定的,三是程序执行时间的不可预知性,即每个程序何时执行,执行顺序以及完成时间是不确定的。 15.处理机管理有哪些主要功能它们的主要任务是什么 答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。进程同步:为多个进程(含线程)的运行进行协调。通信:用来实现在相互合作的进程之间的信息交换。处理

微内核操作系统及L4 概述

微内核操作系统及L4概述 杰夫 jliu71@https://www.doczj.com/doc/1a12649456.html, 摘要:本文是对微内核操作系统及L4的发展历程和主要功能的综述。本文还对微内核操作系统的优缺点及发展前景发表评论。 关键词:微内核,操作系统,L4 Abstract: This paper describes the history of microkernel-based operating systems, and the structure and main functions of L4. It also discusses the pros and cons of microkernel systems and their prospect of actual deployments in the industry. Keywords: microkernel, operating system, L4 1. Introduction 微内核(microkernel)并非是一个新的概念,这个名词至少在七十年代初就有了。一般认为,他的发明权属于Hansen [Han70] 和Wulf [Wul74]. 但是在这一名词出现之前已经有人使用类似的想法设计计算机操作系统了。 早期的操作系统绝大多数是Monolithic Kernel, 意思是整个操作系统 - 包括Scheduling (调度), File system (文件系统), Networking (网络), Device driver (设备驱动程序), Memory management (存储管理), Paging(存储页面管理) – 都在内核中完成。一直到现在广泛应用的操作系统,如UNIX,Linux,和Windows还大都是monolithic kernel操作系统。但随着操作系统变得越来越复杂(现代操作系统的内核有一两百万行C程序是很常见的事情),把所有这些功能都放在内核中使设计难度迅速增加。 微内核是一个与Monolithic Kernel相反的设计理念。它的目的是使内核缩到最小,把所有可能的功能模块移出内核。理想情况下,内核中仅留下Address Space Support(地址空间支持),IPC (Inter-Process Communication,进程间通讯),和Scheduling(调度),其他功能模块做为用户进程运行。对于内核来说,他们和一般用户进程并无区别。它们与其他用户进程之间的通讯通过IPC进行。 在八十年代中期,微内核的概念开始变得非常热门。第一代微内核操作系统的代表作品是Mach [Mac85]。Mach是由位于痞子堡的卡内基梅隆大学(CMU)设计。CMU是美国计算机科学研究重镇,其计算机排名长期位于美国大学前五位。美国只有少数几所大学的计算机是学院不是系,CMU就是其中之一。除Mach外,CMU的另一重要成果是衡量计算机软件设计能力的CMM (Capability Maturity Model) 模型,广泛用于评估业界软件公司的计算机软件开发能力。好像印度的软件公司们非常热衷于此,通过CMM-5最高规格评价的软件公司们有一半是印度的。 在微内核刚兴起时,学术界普遍认为其优点是显而易见的:

操作系统课后习题答案

操作系统以什么方式组织用户使用计算机? 答:操作系统以进程的方式组织用户使用计算机。用户所需完成的各种任务必须由相应的程序来表达出来。为了实现用户的任务,必须让相应功能的程序执行。而进程就是指程序的运行,操作系统的进程调度程序决定CPU在各进程间的切换。操作系统为用户提供进程创建和结束等的系统调用功能,使用户能够创建新进程。操作系统在初始化后,会为每个可能的系统用户创建第一个用户进程,用户的其他进程则可以由母进程通过“进程创建”系统调用进行创建。 早期监督程序(Monitor)的功能是什么? 答:早期监督程序的功能是代替系统操作员的部分工作,自动控制作业的运行。监督程序首先把第一道作业调入主存,并启动该作业。运行结束后,再把下一道作业调入主存启动运行。它如同一个系统操作员,负责批作业的I/O,并自动根据作业控制说明书以单道串行的方式控制作业运行,同时在程序运行过程中通过提供各种系统调用,控制使用计算机资源。试述多道程序设计技术的基本思想。为什么采用多道程序设计技术可以提高资源利用率? 答:多道程序设计技术的基本思想是,在主存同时保持多道程序,主机以交替的方式同时处理多道程序。从宏观上看,主机内同时保持和处理若干道已开始运行但尚未结束的程序。从微观上看,某一时刻处理机只运行某道程序。 可以提高资源利用率的原因:由于任何一道作业的运行总是交替地串行使用CPU、外设等资源,即使用一段时间的CPU,然后使用一段时间的I/O设备,由于采用多道程序设计技术,加之对多道程序实施合理的运行调度,则可以实现CPU和I/O设备的高度并行,可以大大提高CPU与外设的利用率。 什么是分时系统?其主要特征是什么?适用于哪些应用? 答:分时系统是以多道程序设计技术为基础的交互式系统,在此系统中,一台计算机与多台终端相连接,用户通过各自的终端和终端命令以交互的方式使用计算机系统。每个用户都感觉到好像是自己在独占计算机系统,而在系统内部则由操作系统以时间片轮转的方式负责协调多个用户分享CPU。主要特征是: 并行性:系统能协调多个终端用户同时使用计算机系统,能控制多道程序同时运行。 共享性:对资源而言,系统在宏观上使各终端用户共享计算机系统中的各种资源,而在微观上它们则分时使用这些资源。 交互性:人与计算机以交互的方式进行工作。 独占性:使用户感觉到他在独占使用计算机。 现在的系统大部分都是分时系统,主要应用于人机交互的方面。 什么是中断?什么是异常?它们有何区别? 答:中断是指来自CPU执行指令以外的事件发生后,处理机暂停正在运行的程序,转去执行处理该事件的程序的过程。 异常是指源自CPU执行指令内部的事件发生后,处理机暂停正在执行的程序,转去处理该事件的过程。 区别:广义的中断包括中断和异常,统一称为中断。狭义的中断和异常的区别在于是否与正在执行的指令有关,中断可以屏蔽,而异常不可屏蔽。 什么是多级中断?为什么要把中断分级?试述多级中断的处理原则。 答: 中断分级是根据中断的轻重缓急来排序,把紧迫程度大致相当的中断源归并在同一级,而把紧迫程度差别较大的中断源放在不同的级别。一般来说,高速设备的中断优先级高,慢速设备的中断优先级低。这就是多级中断。这所以引入多级中断是因为:为使系统能及时的响应和处理所发生的紧迫中断,同时又不至于发生中断信号丢失,计算机发展早起在设计中

相关主题
文本预览
相关文档 最新文档