新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 从RTOS移植到实时Linux

从RTOS移植到实时Linux

作者:时间:2010-07-01来源:网络收藏

在过去的10年中,成功地取代了一些最主要的传统平台,成为了各种各样的嵌入式设备和应用中首选的新的嵌入式操作系统。尽管一度曾被认为是不重要的平台,但今天嵌入式已经成为主流,并引领着如下重要应用领域的市场和设计份额:消费电子、移动和无线设备、数据联网以及电信设备。

本文引用地址:http://www.eepw.com.cn/article/151757.htm


设计团队越来越多地期望使用作为标准的嵌入式操作系统。考虑Linux的种种原因包括:广泛的硬件支持、更高的可靠性、更优异的性能、可扩展性以及更快的响应速度。不过,工程师在将基于传统的设计到嵌入式Linux时会遇到几大难题,因为Linux的架构和传统有很大的不同。

的时机
随着应用开发步伐的不断加快和产品生命周期的不断缩短,对于设计团队而言,能够将传统软件到这些新平台上并重新使用是十分重要的。尽管嵌入式Linux有许多优势,但是设计团队在选择从传统的RTOS进行移植之前,必须考虑如下几项因素:


● 内存占用量。嵌入式Linux没有传统RTOS那样紧凑。因此,工程师必须确保设备有足够的内存和闪存来应对Linux更大的内存占用量。


性考虑。嵌入式Linux可以实现50μs以下的响应时间。不过,这不一定能够满足项目需求,这一点有助于确定是否需要RTOS。


● 认证需求。期望转换到嵌入式Linux的设计团队应确保项目将仍然满足业界特有的认证需求,例如安全认证或美国国防部认证。

移植路径选择
尽管移植过程中存在固有的难题,但从传统RTOS到Linux的移植不需要转弯抹角。工程师可以采用以下三种路径将应用从传统的RTOS移植到Linux。

仿真RTOS的API
第一种移植路径是仿真传统RTOS的API。为了使传统RTOS应用能够驻留并运行在Linux上,必须具备基于Linux的运行时服务于RTOS系统调用和其他API。许多(但并非全部)RTOS入口点和独立编译器库例行程序都在Linux和glibc运行时库中有原样的类似程序。如果不存在类似程序,就必须有新的代码介入来仿真缺失的功能。即使存在类似的API,可能也会出现参数类型和数量不同的情况。

图1 在Linux上仿真RTOS


传统RTOS可以实现数百种系统调用和库API。例如,VxWorks文档描述了超过一千种独特的函数和子例程。实际应用只使用数十个独特的RTOS API,而它们其余的操作都使用来自标准C/C++库的调用函数。


为了仿真这些接口以用于移植,开发人员只需要RTOS调用的核心子集。许多OEM选择自己建立和维护仿真轻量级库,而其他OEM则使用来自供应商的更全面的商用库。除了商用库和自主开发之外,另一种选择是一个叫做v2lin的开源项目,它可以仿真数十种常用的VxWorks API。此外,v2lin项目经过架构改造之后,可用于较新的兼容于POSIX的glibc版本。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

关键词: Linux 实时 移植 RTOS

评论


相关推荐

技术专区

关闭