专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

浅析组件机制和操作系统的实现的论文

  1引言
  当前,操作系统的功能不断扩展,操作系统的类型呈现出多样化的趋向。一个小规模的开发小组已经不可能完全从头开始实现一个实用的操作系统,而一般情况下,探究人员只对操作系统的一些特定领域感喜好,而对于另外一些元素,如启动加载代码、核心启动代码、设备驱动程序和内存分配代码等往往不感喜好,但是一个可运行的原型系统又必须包含这些内容。编写这些基础结构延缓了操作系统探究项目的进度,同时也增加了进行操作系统探究的代价。为了解决这一新问题,犹他大学的flux探究小组开发了oskit,它提供了一个框架和一组模块化的、具有简单接口的库以及一组清楚的、可重用的os组件。oskit可以用来构建操作系统内核、外层服务和其他核心os功能模块。oskit提供了各种功能模块,诸如简单自举,一个可用于内核的最小化posix环境、和物理内存和其约束一致的内存管理、广泛的调试支持,以及高层子系统如协议栈和文件系统。开发者可以根据自己的探究喜好或所要考虑的性能来使用这些模块,或用他们自己的模块来替代标准的oskit模块。
  oskit公开了它内部的实现细节,答应用户从成熟的操作系统中不加修改地提取代码,然后通过一小部分经过仔细设计的粘接代码将它们合并到一起,隔离它们的依靠性,并输出良好定义的接口。oskit使用这一技术整合了许多稳定而成熟的源代码,包括设备驱动、文件系统、网络协议等等。实践表明,使用组件软件架构和重用技术会给操作系统实现领域带来大的影响。
  2组件技术简介
  组件技术是一种较新的软件开发技术。到目前为止,还难以确定组件技术的明确定义。比如,对组件技术的常见说法有以下这些摘要:二进制软件单元、任意场合可部署的软件、非凡适合第三方开发和规范定义的接口等等。大致上可以这样理解摘要:所谓组件,其实就是一种可部署软件的代码包,其中包括某些可执行模块。组件单独开发并作为软件单元使用,它具有明确的接口,软件就是通过这些接口调用组件所能提供的服务,多种组件可以联合起来构成更大型的组件乃至直接建立整个系统。组件的实现必须支持一种或者多种其用户所希望获得的接口。实现组件并不一定需要采用面向对象语言。为了构造新应用程序,软件开发人员找出适当的组件,将这些组件加入到正在开发中的应用程序,同时对应用程序进行测试并保证应用程序的组装工作按照预定的。规划正常进行。采用组件技术能降低开发、测试和维护成本,提高可靠性和稳定性。
  3oskit组件综述
  oskit的组件库提供了一般情况下更高层的功能,它通常只对外开放一些相关的公用调用接口。目标系统通过oskit的面向对象的com接口来和这些组件进行交互。以下几节概述了oskit所提供的组件。
  31引导程序
  大多数操作系统多有自身的启动加载机制,彼此互不兼容。这种加载机制的多样性并不是由于每个os所要求的自举服务不同而引起,而是由于构建启动加载器的特定方式造成的。因为从操作系统探究的立场来看,启动加载器是一个令人不敢喜好的领域,因此os开发者通常进行一个最小化、快捷的设计。由于设计理念和要求的稍微差别,每个启动加载器都不适用于下一个os。为了解决这个新问题,oskit直接支持多启动标准,这一标准是由几个os项目的成员共同设计的,它的目的是提供一个简单而通用的启动加载器和os内核间的接口,从而答应一个启动加载器加载任何兼容的os。
  在进行操作系统探究时,多启动标准非常有用,这其中的主要原因是启动加载器在加载内核自身的同时还具有加载附加文件或者启动模块的能力。这里的一个启动模块只是一个普通文件,启动加载器不以任何方式解释它,而仅仅把它随同内核映像一起加载到保留物理内存块中。在启动内核时,启动加载器提供给内核以下内容摘要:物理地址的列表、所有已加载的启动模块的大小,以及和每个模块相联系的由用户定义的字符串。这些启动模块和和它们相联系的用户定义的字符串由内核解释。这样做的目的是为了通过提供内核启动时需要的数据,诸如初始化程序、设备驱动和文件系统服务器,来减轻内核启动的负担。
  32核心支持库
  oskit核心支持库的主要用途是让客户os更轻易访问硬件设施。它包含了一个较大的实用函数和符号定义的集合,该集合对于管理模式代码是非常具体的。和此相对应,oskit的大多数其他库在用户模式代码中通常很有用。和oskit的其余部分所不同的是,多数核心支持代码必须是针对特定系统结构的,而这些特定机器的细节对客户os也是有用的。例如,在x86机器上,核心支持库包含一些函数,用来创建和操纵x86页表和段寄存器。其他oskit组件通常提供建立在这些低层机制上的和体系结构无关的设施,但是为了提供最大的灵活性,和特定结构相关的接口始终可以被访问。
  oskit核心支持库在x86体系结构上尤为重要,因为该体系结构的os级编程环境非凡复杂和模糊。核心支持库仔细地设置了一个基本的32位执行环境(为了和msdos兼容,x86处理器通常以16位模式开始),初始化段和页转换表,安装一个中断向量表,并提供缺省的陷阱和中断处理程序。当然,客户os能够修改或重载这些行为。然而,在缺省情况下,核心支持库自动地做所有必要的工作,以便使处理器进入一个方便的执行环境,此时中断、陷阱、调试以及其他标准设施已经如预期的那样开始工作。该库在缺省情况下自动地定位所有随内核加载的启动模块,并保留它们所在的物理内存。接下来,应用程序可以很轻易使用它们。客户os只需以标准c语言风格提供一个main()函数。一切都设置好以后,内核支持库将用所有参数和由启动加载器传递过来的环境变量来调用它。
  33内存管理库
  如同在一个标准c语言库中实现的malloc()一样,内存管理代码典型地用于用户空间。通常并不适用于内核。设备驱动经常需要分配特定类型的内存,并伴随具体的调整属性。例如,对于内建的dma控制器只能访问最初的16m物理内存。为解决这些内存管理新问题,oskit包含了两个简单而灵活的内存管理库摘要:(1)基于队列的内存管理器(或称lmm),它提供了功能强大且高效的原语来进行分配管理,并支持在一个池中管理多种类型的内存。(2)地址映射管理器(或称amm)被设计用来管理不必直接映射到物理内存或虚拟内存的地址空间,它对os的其他方面提供了类似的支持,诸如进程地址空间、分页、空闲块或ipc名字空间的管理。尽管这些库可以很轻易地应用在用户空间,但实际上它们是被非凡设计用来满足os内核的需求。
  34最小c语言库
  成熟的os内核一般都包含着相当数量的仅仅用来重新实现基本的c语言库函数如printf()和malloc()的代码。和此形成对比的是,oskit提供了一个最小化c语言函数库,它围绕着最小化依靠性而不是最大化函数性和性能的原则来设计。
  35调试支持
  oskit的一个最实用的好处是摘要:给定一个适当的硬件设置,它马上就能提供给os开发者一个完全源代码级的内核调试环境。oskit内核支持库包括一个可用于gnu调试器(gdb)的串行存根模块,它在客户os环境中处理陷阱,并使用gdb的标准远程调试协议通过一个串行程序和运行在另一台机器上的gdb通信。甚至当客户机os执行自己的陷阱处理时,oskit的gdb存根模块也是可用的。假如客户os提供适当的钩子,它甚至支持多线程调试。除了基本的调试器支持,oskit也提供了一个内存分配调试库,它可以跟踪内存分配并检测一般的错误,如缓冲区溢出和释放已释放的内存。这个库提供了和许多普通应用程序调试器相似的功能性,所不同的是它运行在由oskit提供的最小内核环境中
  36设备驱动支持
  在os开发和维护中最艰巨的一个任务是支持多种多样的io硬件。这些复杂的设备常会含有潜在的错误,而新硬件的发布又经常伴随着不兼容的软件接口。由于这些原因,oskit采用了为现有内核开发的稳定的、经过充分测试的驱动程序。oskit使用了一种封装技术,将现有的驱动程序代码基本上未加修改地合并到oskit中。这些现有的驱动程序被一个oskit粘结代码层所包装,从而使得这些驱动程序可以在和开发它们的环境完全不同的环境中工作。目前,来自linux的大多数以太网卡、scsi和ide磁盘的设备驱动程序被包括进来,总数超过了五十种。用同样的方式,来自freebsd的八个字符设备驱动程序也被包含了进来,它们支持标准pc控制台和串口及不同的多串口板。由于oskit把这些驱动仔细地进行了包装,freebsd驱动程序可以和linux驱动程序一起工作。
  37协议栈
  oskit提供了一个完整的tcpip网络协议栈。如同驱动程序一样,有关网络的代码也可以通过封装机制被合并进来。oskit当前可以从linux中获取网络设备驱动程序,它们是pc平台可获得的最大的免费资源。oskit的网络组件继续于freebsd4。4,它通常被认为具有更多成熟的网络协议。这显示了使用封装机制将现有软件包装成灵活的组件的第二个优点摘要:即从不同的资源中获取最好的组件,并让它们一起被使用。
  38文件系统
  通过使用封装技术,oskit吸收了netbsd的基于磁盘的文件系统代码。netbsd之所以被选择为首要资源库,是因为在可用的系统中,它的文件系统代码被最清楚地分离了出来,而freebsd和linux的文件系统和它们的虚拟内存系统结合的更紧密。当前,oskit也把linux文件系统合并了进来,以便能够支持多种类型的文件系统格式,如windows95、os2和systemv的文件系统格式等等。
  oskit文件系统输出的com接口类似于许多unix文件系统所使用的内部vfs接口。这些接口具有很好的粒度,使我们可以不必接触oskit文件系统的内部。例如,oskit接口只接受简单的路径名组件,答应平安封装的代码执行适当的访问许可检查。
  4oskit的目前状况
  自从在1996年6月发布了oskit的第一个公开发行版以来,oskit已经更新了多次,每次更新都增加了一些算法,并修正了一些错误。最新的发行版是2002年3月的版本。由此可见,oskit一直处于操作系统开发平台的前沿,其自身也在不断完善和发展。
  5结论
  作为一个操作系统探究和开发的平台,oskit大大减轻了操作系统探究和开发者的负担。它可以让开发人员避开复杂的底层,而把喜好集中和他们所感喜好的领域。开发者可以用自己编写的组件来取代oskit中的部分组件,以满足自己特定的需要,从而丰富了操作系统的应用层。总之,oskit满足了实际客户系统的需求,有助于操作系统的探究和开发。
  参考文献
  (1)汤海京基于面向对象操作系统开发平台(oskit)的分析和程序设计http摘要:www900。ibm。comdeveloperworkslinuxkerneloskitpart1
  (2)michaelhohmuthusingtheoskitasabaseforl4applications
  (3)bryanfordkevinvanmarenjaylepreaustephenclawsonbartrobinsonjeffturner
  thefluxostoolkit摘要:reusablecomponentsforosimplementation

体育教育中要确立指导思想,提高趣味性和能力培养论文坚持健康第一的指导思想,激发和培养学生的运动兴趣,重视学生的主体地位,关注学生的个体差异和不同需求,重视学生个性的发展,是新课程?体育与健康的本理念。本文通过在体育课堂教学中,教师浅谈小学体育教学论文导语小学体育教学与其它科目教学一样,也有其固定的教学内容和一定的教学方法。以下是小编整理浅谈小学体育教学论文的资料,欢迎阅读参考。小孩子爱玩好动是他们的天性,在小学时期的学生,兴趣论文的总结一般都写啥毕业论文是本科学习阶段一次非常难得的理论与实际相结合的机会,通过这次比较完整的给排水系统设计,我摆脱了单纯的理论知识学习状态,和实际设计的结合锻炼了我的综合运用所学的专业基础知识,保护历史文物的小论文文物是人类在社会活动中遗留下来的具有历史艺术科学价值的遗物和遗迹。小编精心为你整理了保护历史文物的小论文,希望对你有所借鉴作用哟。第一篇保护历史文物的小论文一基层文物保护宣传的作用平面设计中空符号的运用论文通过空符号的运用有时候胜过千言万语,可以令观者疲劳的视觉得到些许放松,这种空符号交流的最高境界也就是观念的交流,这种交流的最高境界也就是观念的交流,成为设计和艺术中的某种共通性,呈应用型人才培养中数学建模所起到的作用论文随着社会经济的飞速发展,数学在各种领域中所发挥的作用也越来越显著高技术实质即数学技术这一观点广受肯定,有关数学的应用性也备受社会各界关注和重视。为了反映社会及经济发展的需要,我国教小学语文教研组教学大比武综述论文冬寒料峭,江都区宜陵中心小学教学大比武如期拉开了序幕,给这严冬增添了一丝温暖。题记20xx年12月8日,江都区宜陵中心小学语文教研组教学大比武活动正式开始。整个活动以备课组为单位,高职学生职业素质教育论文对于素质教育来说,已有相关文件对其作出了解释,其宗旨主要就是将民族素质提高。下面是小编为大家整理的高职学生职业素质教育论文,欢迎阅读。摘要重视学生职业素质教育成为了我国高职院校的发茶之品性中职业素质教育的运用论文摘要茶之品性是中国传统茶文化的重要体现,在中国传统文化的熏陶下,人的思想可以得到净化,也能够使人的品质提升。而茶品在职业素养教育中的应用,能够促进教育的实施和开展,丰富教育的内容,我国三板市场发展的一些思考论文摘要2006年1月23日,经国务院批准,证监会正式下发了批复,作为试点的中关村科技园区两家非公开发行股份公司世纪瑞尔和中科软科技,直接首发登陆三板市场。一时间,一度被人遗忘的三板市高校体育舞蹈教学论文一高校体育舞蹈教学中存在的问题分析1。缺乏完善的教学内容体系。同其他运动项目一样,体育舞蹈的教学内容同样是包括理论与实践两部分。体育舞蹈它具有较高的审美价值以及社会价值,教材的选用
轻质油污染对两种海洋微藻生长的影响海洋是我们地球孕育生命的伟大母亲,它在人类社会的发展历史上占有着非常重要的地位,海洋同样是我们人类所赖以生存发展的重要物质基础,海洋中蕴藏的资源非常丰富。但是如今,随着人类对地球资探析西南铁路地质灾害的勘察与防治技术随着我国的不断发展和科技的不断进步,我国的铁路建设也得到了很大的提升,现如今我国已经在西南地区的一些复杂地区建设成功了几条铁路干线,本文就针对具体的西南地区铁路建设中涉及到的勘察和三年级下册数学小论文如何写三年级下册数学的小论文呢,你有何见解?下面就由品学网范文网小编为你分享一下三年级下册数学小论文范文吧,仅供参考!小论文题目怎样上好小学数学实践活动课义务教育课程标准实验教科书浅析流行音乐在高校音乐教育中的作用在高校教育中进行音乐教育不仅可以提升学生们的艺术鉴赏水平,更重要的是可以提升他们的人文素质。但是,由于音乐具有时代性与现实性,所以在进行音乐教学时,有必要紧跟时代的需要来进行教学活试论中小学音乐教育中的美和乐毕业论文摘要中小学音乐教育是1种面向全体学生的基本素质教育,它的目的不是培养音乐家,首先是培养人,是培养全面发展的1代新人,它的宗旨是使学生具备1定的审美能力和音乐素养,让学生能够让幼儿在舞蹈学习中发展身心毕业论文摘要本文分析了素质教育在当今社会的重要性,说明了舞蹈教育在素质教育中的重要地位,特别是幼儿舞蹈教育在幼儿教育中的重要地位。提出幼儿教育与幼儿身体发展,心理素质的重要性,加强实践活动是数学课堂的有效拓展论文背景分析教学了长方体和正方体的表面积体积后,学生在面对现实灵活多变的问题时,总是容易出错。在学习长方体和正方体的表面积之前,学生已认识了常见的平面图形,初步建立了长度面积的概念,能小学数学自主学习的实践与思考论文所谓目标导引下的小学数学自主学习,是以学生的发展为本的教学理念为指导,在恰当的学习目标导引下,学生通过动手实践自主探索与合作交流等方式,在主动获得对数学理解的同时,在思维能力,情感新课改下数学教学有效生成策略的探究教育论文新课改下的课堂教学是学生自主体验探究发现的过程,课堂活动的主体学生是开放性的创造性的,他们带着自己的知识经验思考灵感和兴致参与课堂活动,使课堂教学呈现出丰富性多变性和复杂性。那么在数学教学需要合作教育论文合作学习既是对教师教学观念和教学能力的挑战,也是培养学生创新精神和实践能力的重要途径。实践证明,数学课堂合作学习的教育模式对学生积极性的培养对学生探究能力和合作意识的培养对学生创造新课标下体育课的自主学习新课标下体育课的自主学习新课标下体育课的自主学习要求有利于推进素质教育有利于落实新的课程标准的要求有利于树立新课程改革的理念。因此,我在教育教学实践中,根据学生的实际情况,指导学生
友情链接:快好知快生活快百科快传网中准网文好找聚热点快软网