linux的实时性,linux嵌入式软件开发
这篇文章给大家聊聊关于linux的实时性,以及linux嵌入式软件开发对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
linux是 实时操作系统还是分时操作系统
linux属于实时操作系统。
实时系统与分时系统特征的比较
(1)多路性。
实时信息处理系统与分时系统一样具有多路性。系统按分时原则为多个终端用户服务;而对实时控制系统,其多路性则主要表现在经常对多路的现场信息进行采集以及对多个对象或多个执行机构进行控制。
(2)独立性。
实时信息处理系统与分时系统一样具有独立性。每个终端用户在向分时系统提出服务请求时,是彼此独立的操作,互不干扰;而在实时控制系统中信息的采集和对对象的控制,也彼此互不干扰。
(3)及时性。
实时信息系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,则是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级、百毫秒级直至毫秒级,甚至有的要低于100微秒。
(4)交互性。
实时信息处理系统具有交互性,但这里人与系统的交互,仅限于访问系统中某些特定的专用服务程序。它不像分时系统那样能向终端用户提供数据处理服务、资源共享等服务。
(5)可靠性。
分时系统要求系统可靠,相比之下,实时系统则要求系统高度可靠。因为任何差错都可能带来巨大的经济损失甚至无法预料的灾难性后果。因此,在实时系统中,采取了多级容错措施来保证系统的安全及数据的安全。
嵌入式系统采用linux系统,怎样保证实时性
并非所有的嵌入式系统都需要实时操作系统,只有在一些特定的场合,对时间比较敏感的应用才会使用实时操作系统。实时操作系统必须及时响应所要求的任务,在限定时间内完成任务。非实时的操作系统,多时间不是很敏感,对所要求的任务只是会保证完成,但在什么时候完成,或用多长的时间完成就不一定了。例如:手机它不需要实时性。我们发短信时,系统对它的处理早1秒或者晚1秒都不会影响到我们的使用。而对于导弹这样的应用必须具有实时性。导弹被发射出去锁定目标后要不断修正飞行方向,以保证击中目标,如果它的实时性不好的话,从传感器传来的信号没有及时响应,即使完了1毫秒的时间,那误差就会很大。用这样的导弹攻打敌方目标的话,目标很可能没有击中,美国大使馆倒是有可能被炸掉。另外一般linux不具有实时性,它是分时操作系统一般是面向用户的,但是因为它的源代码是公开的,它是可以改造成实时系统的,但即使是这样它的实时性也不会很好,毕竟它最初的设计并不是为了实时性。我们在Linux上面同时运行好几个程序,它们会被并发的执行。我们会发现同时多运行几个程序可能会比只允许一个程序慢,这是因为操作系统把处理器按时间片分给了每一个程序。自然会慢一些。而实时操作系统,一般不同的任务会有不同的优先级,他会把拥有最高的优先级的程序一次性执行完毕。然后再执行次一级的程序。这要的系统只适用于控制,不适合一般的应用。
Linux能实现“硬”实时性能吗
对Kevin Morgan来说,硬实时Linux工程是一件需要下决心的事。不在乎嵌入式工业界的
质疑,不在乎那些尝试编写硬实时Unix内核的努力都以失败告终,Morgan仅把它视作一项
单纯的挑战。
“这不是火箭式的科学,”MontaVista软件公司工程副总裁 Morgan表示,“它是一件类
似举重的苦差。”
前不久,MontaVista发布了硬实时Linux内核的参考实现方案,并声称其远远超过现有各
种Linux版本的实时能力。在未来几个月,这家开放源代码软件开发商将围绕此项新技术
与Linux团体展开合作。与此同时,MontaVista计划在2005年初发布一款基于实时内核
的产品。
“我们将与开放源代码团体合作,但在将这些技术推向市场以前,我们不会坐等用户采
用它们,”Morgan说。
一旦得到采用,MontaVista的“开放源代码实时Linux项目”将为Linux在移动手持设备
和电信交换设备中开辟一个新的市场空间。在这些领域,为了确保实时响应,设备必须
有一个单独的实时操作系统(RTOS)。此外,该技术还能应用于其它行业,如工业自动化、
国防和航天等实时能力至关重要的领域。
“如果能提供一个硬实时内核的稳定版本,他们显然将比其它公司具有优势,”Gartner
Dataquest公司高级分析师Daya Nadamuni表示,“拥有实时Linux将会加速深度嵌入式
领域对Linux的接受。”
“实时”的使命
在过去三十年,其它公司也曾尝试为类似Unix的操作系统内核提供实时性能。早期的Unix
衍生产品,如Silicon Graphics的Irix、惠普的HP-UX以及Sun的Solaris,都曾试图提高
响应特性和可确定性,但只获得有限的成功。最近,开放源码团体发布了Linux2.6版,它
可提供一些有限形式的实时性能。
然而,MontaVista计划把Linux的实时性能提升到更高层面。该公司宣称,它的努力将实
现两到三个数量级的改进,提供响应时间为100微秒的硬实时性能。尽管没有严格的定
义,“硬”实时性能一般是指系统每一次都可满足规定的时序要
求的能力。大多数这样的
系统提供几毫妙或更短的响应时间。另一方面,“软”实时系统能满足大部分但不能满足
全部的时序要求。
“这大大减少了延迟时间,从而获得更好的响应特性。”MontaVista的移动和无线产品
经理Jacob Lehrbaum表示,“最终,我们的目标是让其实时性能与专有RTOS一样好。”
MontaVista设想该实时软件将被应用在双处理器智能手机和单处理器低端手机上。该公
司的工程师还预测它会被用在电信交换和基础设施设备上,帮助降低这些设备的成本。
“我们已经看到通信市场对Linux具有强大的牵引力,因此这是我们将专注的领域。”
Lehrbaum说。
不过,实时Linux内核的影响将远远超出通信市场。实时操作系统在许多工业领域都是至
关重要的,包括工业自动化、机械设计、国防和航天等。另外,开发者都期待实时Linux
版本的出现。在今年上半年Venture Development公司的一份报告中,工程师们认为实时
限制是阻碍Linux得到广泛应用的最重要因素。
MontaVista的工程师表示,尽管他们并没有打算瞄准通信以外的实时Linux市场,但相信
改进的Linux内核能够被应用在其它领域。“我们还没有讨论把Linux推入到智能炸弹或任
何传统的超实时嵌入式应用中。”Lehrbaum说,“但这项技术能满足其它工业的需要。”
迄今为止,Linux还从没有被视为一种真正的硬RTOS。在过去,Linux一贯回避需要以精
确的时序运行软件或者总要求满足规定截止时间的应用。
事实上,那些想要实时Linux的人有一个选择:实时扩展。例如,FSMLabs公司的产品将
Linux作为一种实时操作系统的非实时线程来运行。自1996年开始,FSM就一直在成功开发
这种系统。业界的许多工程师都公开怀疑是否还能更进一步。“人们试图使HP-UX和SGI
Irix实时化。但没有人能够创建一个通用Unix内核,完成RTOS能做的所有事。” FSM公司
CEO Victor Yodaiken说。
然而,MontaVista宣称它已经达到这种水平,并希望获得Linux团体的支持。它的关键技
术是对Linux内核架构的两方面改进:多任务和优先权。
该公司表示,它正在改进Linux的多任务能力,以便实时任务能够在任意时间抢占其它任
何任务的优先权。“如果实时应用需要访问内核中一个锁定的关键区域,那么在锁定区域
的应用程序将更新优先级,从而让实时应用可以完成它的任务。”
Lehrbaum说。
MontaVista的工程师表示,他们还改进了优先权能力,使硬件任务不再能抢占其它任务。
这种新的方法允许系统按优先级排列硬件事件,这样硬件任务就不再能抢占更重要的实时
任务。
MontaVista预计明年推出基于该技术的产品。该公司还透露,它正在与客户合作将这项新
技术应用到他们的嵌入式产品中。“我们的策略是向开放源码社群推广该技术,并鼓励合
作和采用。”Lehrbaum说,“当你在内核OS级增加专有扩展时,这将导致与单家供应商捆
绑在一起。这与真正的开放源码是不相同的。”
专家们承认,Linux最终能实现真正的实时性能,但这样的性能需要重大的创新。
“许多熟悉Linux的人都决定走扩展路线,”Real Time Development公司的总裁Nat
Frampton表示,“为了获得硬实时性能,你不得不重写大部分Linux。这是有可能的,但
绝不是一件小任务。”该公司专注于开发实时软件系统。
竞争对手也对MontaVista的技术基础颇有争议,主要是因为Linux2.6版只能提供很粗略
的实时性能。FSMLabs的Yodaiken表示,在使用该版本Linux的应用中,他们很容易导致
高达0.5秒的非实时延迟。他指出,这些延迟的原因是Linux在本质上仍然是非实时的。
“要设计一台具有灵活转弯性能的混凝土搅拌机是很难的,”他解释说,“你或者要跑
车,或者要混凝土搅拌机。他们不可能是相同的东西。”
竞争对手还质疑软件开发商能否把新技术推广到开放源码团体。“技术上,我们正越来越
接近实时,”风河系统公司首席行销官 John Bruggeman表示,“但即使技术是可行的,
要让开放源码团体接纳和采用它却是一件非常困难的事情。几家供应商曾试图在开放源码
团体中推行该技术,但没有得到拥护。”
然而,MontaVista的执行官们辩解说,在HP-UX、Irix和Solaris方面的类似努力之所以
不成功是因为他们瞄准服务器和工作站市场,而没有考虑嵌入式市场的需求。此外,
MontaVista表示他们已经与开放源码团体合作多年,知道它运作的方式。“我们利用过去
在这个领域的成果,并增加我们自己的关键技术。”MontaVista的Morgan表示,“我们从
开放源码团体获得力量。”