毕业论文嵌入式操作系统的研究与实现.doc
《毕业论文嵌入式操作系统的研究与实现.doc》由会员分享,可在线阅读,更多相关《毕业论文嵌入式操作系统的研究与实现.doc(18页珍藏版)》请在三一办公上搜索。
1、目录摘要1引言21.嵌入式实时系统的概况21.1.嵌入式系统的定义和应用前景21.1.1.典型的嵌入式操作系统21.2.实时系统的概述31.2.1.实时系统的定义31.2.2.实时操作系统的特点32.实时系统的相关研究42.1.LINUX的分时特性43 .嵌入式实时LINUX系统RTLINUX的设计与实现63.1.RTLinux的结构63.2.中断模拟73.3.实时任务93.3.1.实时进程数据结构103.3.2.实时进程的创建113.4.实时调度133.4.1.实现的调度器133.4.2.设计用户自己的调度器143.5.计 时153.6.进程间通信153.6.1.FIFO设备153.6.2.
2、共享内存16结束语17参考文献17 嵌入式操作系统的研究与实现电子信息科学与技术专业学生:指导老师:摘要:伴随着科学技术不断的日新月异的推陈出新,以信息家电为中心的嵌入式操作系统得到了蓬勃的发展。本文主要介绍了嵌入式操作系统和实时系统,分析了嵌入式操作系统和实时系统的特点,嵌入式实时LINUX系统RTLINUX的设计与实现.利用了Linux得天独厚的优势,构造了以Linux为操作系统的嵌入式的实时系统。关键词:Linux;RT Linux;实时系统;嵌入式系统。 Research and Realization of the Embedded Operating SystemElectroni
3、c and Information Science and TechnologyCandidate: CHANG XinAdvisor: Gong dao rongAbstract: In the fast-changing world of science and technology, the significant applications of Embedded Operation System on information household appliances have flourishingly development. This paper mainly introduces
4、 the Embedded Operation System and Real-Time System. The characteristic of the Embedded Operation System and Real-Time System utilizing the gifted advantage for the Linux System and the design and realization of the embedded operating system are analyzed. An Embedded Real-Time System is structured b
5、ased on Linux which regarding as the Operating System. Keywords: Linux, RT Linux, Real Time System, Embedded Operation System引言利用Linux搭建嵌入式操作系统是近年来出现的最令人振奋的方案。首先,运行在嵌入式系统上的Linux能够提供全功能的桌面计算(Desktop Computing),且由于开放源代码,定制变得非常方便。其次,Linux已经支持大多数嵌入式系统上使用的芯片,包括StrongARM,MIPS和PowerPC。最后,Linux是免费的,所以利用linu
6、x作为底层操作系统,在其上进行实时化改造,建立一个具有实时应用能力的操作系统是现在日益流行的嵌入式操作系统的解决方案。论文首先概述了嵌入式系统与实时系统的定义和特点。第二章介绍了在实时Linux领域的相关研究。第三章介绍了典型的实时系统RTLinux的设计与实现。最后是一点感想和展望。1.嵌入式实时系统的概况1.1.嵌入式系统的定义和应用前景嵌入式系统一般指非PC系统,有计算机功能但又不称之为计算机的设备或器材。嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成。它是以应用为中心,软硬件可裁减的,能够适应实际应用中在功能、可靠性、成本、体积、功耗等综合性严格要求的专
7、用计算机系统。嵌入式系统具备下列特性: 通常只执行特定功能; 以微电脑与周边器件构成核心,其规模可在大范围内变化,如从8051芯片到X86芯片; 严格的时序和稳定性要求,在机器控制的大型系统中,程序运行稍有差错则可能造成整个系统失去控制; 全自动操作循环。嵌入式计算机在应用数量上远远超过各种通用计算机。一台通用计算机的外部设备就包含了510个嵌入式微处理器,键盘、鼠标、软驱、硬盘、显示卡、显示器、Modem、网卡、声卡、打印机、扫描仪、数码相机、USB集线器等均是由嵌入式处理器进行控制的。在制造工业、过程控制、通信、仪器、汽车、航空、军事装备、消费类产品等方面,嵌入式计算机都有用武之地!1.1
8、.1.典型的嵌入式操作系统信息家电商机引发全球嵌入式操作系统平台大战,全球4大操作系统阵容WinCE、Palm OS、EPOC和Linux展开规格战,各拥有软件及硬件合作厂商逐鹿信息家电市场的份额。微软窗口操作系统拥有在个人电脑上的操作系统绝对占有率的优势,使WinCE拥有强大的窗口资源后盾。不过Palm OS操作系统拥有全球PDA产品70%的市场占有率;同时获得3COM、IBM和索尼等跨国公司的支持。EPOC是来自于欧洲的操作系统,有全球最大的3家移动电话厂商诺基亚、爱立信和摩托罗拉共同开发出来的新操作系统;在3大电话厂商的合作下,EPOC市场潜力很大,且占有率高,但应用功能以手机为主,目前
9、并不开发授权。由于Linux开发源代码,经过这些年的发展,已经成为一个健壮的可靠的高性能操作系统。Linux是遵守GDL(通用公共许可),它没有版税,也没有项目和人数限制。使用Linux,这将大大降低产品研发和最终产品成本。在开发过程中遇到的各种的硬件设备,可以方便的在网上找到这些设备的驱动程序,并得到支持。Linux内置网络支持,用户可以轻松地使自己的嵌入式系统具有网络功能。Linux是模块化的操作系统,提供了优秀的可所缩放功能,用户可以方便地删除不需要的模块,自主地搭建嵌入式操作系统。Linux支持绝大多数CPU,包括Intel,MIPS、ASIC、ALPHA、68K、POWER PC等。
10、嵌入式Linux应用随处可见,并在嵌入式系统变革中,以其特殊优势扮演些重要的角色。1.2.实时系统的概述1.2.1.实时系统的定义实时系统是指生产系统输出的时间对系统是至关重要的系统。从输入到输出的滞后时间必须足够小到一个可以接受的时限内。我们可以根据对任务截止时间的要求,将实时系统进行分类。由于时限对系统性能的影响程度不同,实时系统还可划分为软实时系统(soft real-time-system)和硬实时系统(hard real-time-system).如果一个任务时限到来之前这个任务尚未完成,对于软实时来说还是可以容忍的,只会降低系统性能。而对于硬实时系统则是不允许的,这样的后果是无法预
11、测的,甚至是灾难性的。在一个大的实时系统中,软硬两种实时可以同时存在。一些时间没有时限,一些事件的时限的可能是软实时的,而另一些事件的计算时间则在硬实时的,对系统产生关键的影响。1.2.2.实时操作系统的特点 实时系统对时限和可靠性的要求相当高,它的特点有: 多路性。实时系统的多路性表现在对多个不同的现场信息进行采集以及对多个对象和多个执行机构进行控制。 独立性。每个用户向实时系统提出服务要求,相互间是独立的,在实时控制系统中对信息的采集和对象的控制也是相互独立的。 及时性。实时系统所产生的结果在时间上有着严格的要求,只有符合时间约束的结果才是正确的。特别对于硬实时系统来说,如果所产生的结果不
12、符合时间的约束,由此带来的错误将是严重的和不可恢复的。 同时性。一般来说,一个实时系统常常有多个输入源,因此,要求系统具有并行处理的能力,以便能同时处理来自不同输入源的输入。 嵌入式系统一般都是实时系统,实时系统大都是用在嵌入式环境,用于嵌入式场合的实时操作系统就是嵌入式实时操作系统。在一个较为完善的嵌入式系统环境中,需要一个支持实时多任务的操作系统内核,因为广泛应用于现实世界的嵌入式设备必须具有与外部环境实时交互的能力。2.实时系统的相关研究 尽管现在的操作系统变得种类繁多,但是UNIX及其兼容的系统仍然是工业和学术领域标准的操作系统。一些非UNIX系统,比如WindowsNT,也是与POS
13、IX.1003标准兼容,这个标准无疑是基于UNIX。这个系统的成功是由于它的开放性、稳定性和事实的标准。随着POSIX1003.1b实时扩展标准的发布,UNIX有机会成为分布最广泛的实时处理平台。Linux作为一个类UNIX的系统,凭借其开放源码的优势,获得越来越广泛的应用。由于以上的原因,在这一章我将集中讨论与Linux相关的实时系统。我将讨论在Linux上进行实时运算的问题,和在一些系统中如何解决这些问题。2.1.LINUX的分时特性 UNIX最初是作为一个分时系统设计的。LINUX作为UNIX的克隆,很多当前的实现中仍然保留了这些特点。它们力争最优的平均性能。这个目标通常与实时系统的低延
14、迟和高可预言的要求相勃的。Linux的设计和实现的原理大体上与UNIX是相同的。它们都是采用分时的调度,低的计时分辨率,非占先式内核,关中断和虚拟内存。我们在细节上来考虑这些问题。 调度程序是内建在操作系统内部的一组策略和机制,它决定哪一项工作由计算机来完成。Linux操作系统的调度程序追求的是平均响应时间,吞吐量和在进程之间的公平的CPU时间分配。每个进程的优先级是动态的基于进程已经花费的CPU时间,输入/输出强度和别的一些因素来决定。 Linux系统使用固定的时间片(time slices)来调度CPU时间。最开始进程赋予一个高的优先级。如果在某个进程的时间片内,这个进程放弃CPU,它的优
15、先级将不会变,或者变的更高。另一方面,如果一个进程使用完它的时间片,它的优先级将会变低。这种策略关心的是交互式程序,比如说编辑器,由于这类程序更多的把时间花费在等待I/O输入输出的完成。虽然对在终端前的用户来说有利的。由于程序的执行完全依赖于复杂的、不可预知的系统负荷与别的进程的活动,这种调度方式对于实时进程而言完全没有用。 Linux中引进了实时进程的概念,允许一个进程定义为一个实时进程。Linux区分实时进程和普通进程(如图2-1所示),采用不同的调度策略,实时进程调度策略为SCHED_FIFO和SCHED_RR,SCHED_OTHER为普通进程调度策略。在SCHED-RR调度中,任务一旦
16、时间片用完就被移动到优先级队列的队尾,并允许同一优先级的其它任务运行。如果同一优先级没有其他任务,该任务继续运行下一级时间片。SCHED-FIFO是运行直至阻塞的策略。SCHED-FIFO任务按优先级调度,一旦开始就一直运行到结束或阻塞在某种资源上,不象SCHED-RR任务那样共享处理器。 Goodness 开始 p-policy 分类 SCHED_FIFO SCHED_RRSCHED_OTHER Weight= p-counter Weight= 1000+rt_priority 返回weight 图2-1 Linux的调度框图大部分的Linux 的核心进程是不能中断的。一旦一个进程进入到核
17、心模式,它将运行到系统调用的完成或者被阻塞为止。假如在这期间有一个更高优先级的实时进程准备好运行了,它将不得不等待。由于不需要考虑内核重入的问题,这种设计的方式使内核的开发更为简单。然而,一个系统调用可能花费很长时间来完成,对于一个实时进程来说长的延迟是不能接受的。 于非占先式内核相关的问题是系统的同步,为了保护数据可能被非同步的操作,比方说中断处理函数,系统设计者通常在临界区代码中选择关中断的方式来处理。比如信号量(semaphores)或者自悬锁(spinlocks)这是更为简单有效的技术。但是,禁止中断是系统能力与系统对外部事件的快速响应的一个折中办法,这种方法还是不能解决多处理器系统的
18、同步化问题。 Linux系统使用了虚拟内存用于分页。虚拟内存技术只是保护程序在运行部分在RAM中,可以使运行的程序超过系统RAM的容量。在分时系统中能很好的运行,然而,对于实时系统来说,虚拟内存引起的系统不可确定性达到一个无法忍受的地步。所有考虑的这些因素来看,显然传统的Linux是不可能用于实时处理。我们需要一些根本的改变。3 .嵌入式实时LINUX系统RTLINUX的设计与实现 从上一章的分析,我们已经知道Linux是一个通用操作系统,将它应用于嵌入式实时环境有许多缺点和不足。特别是在运行内核线程时,Linux关闭中断,别的问题包括分时的调度,虚拟文件系统的时间不确定性,缺乏高精度的计时器
19、。所以要对现在的Linux进行改造,即要对Linux进行实时化,这一章将介绍RTLinux的结构和如何对RTLinux进行实时化。3.1.RTLinux的结构 RTLinux使用众所周知的虚拟机技术的简单方案来解决这些上面提到的问题。增加了一个仿真程序来替换Linux的底层中断程序。一个小的实时内核与Linux内核共享控制处理器。如果来自硬件的属于实时内核的中断将直接被处理,属于Linux内核的中断通过中断仿真程序处理。假如Linux内核中断请求没有被允许,中断模拟程序将在中断队列中标记这次中断的发生。当Linux内核的中断请求被允许时,在中断队列中的中断将别执行。因此,实时内核的操作可以得到
20、机器的立即相应,而且Linux内核不能延迟实时任务的执行。实时任务与运行在Linux内核中的进程之间的通讯通过FIFOs与共享内存的方式进行。使用实时内核中的调度器调度实时任务,调度器的算法和策略可以用户自己定义;而系统也已经实现了RMS和EDF算法。 这样就保留了Linux操作系统所提供的丰富的功能,而且改动它使其作为一个基本内核与实时内核共享控制CPU。实际上,系统可以看作具有双内核可以看作实时系统的空闲任务;只是在没有实时处理要求的时候运行。这样实现的RTLinux的详细结构图如图3-1所示。 用户进程bca 系统库 Liunx内核 设备中断程序 I/O 软件中断 硬 件 用户进程cba
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 嵌入式 操作系统 研究 实现
链接地址:https://www.31ppt.com/p-3973137.html