主页 文档 下载 莱特 Salon English

RTESM文档
RTEMS精彩应用
RTEMS版权
其他RTOS
ARM/DSP专区
AVR/PCB/FPGA
嵌入式文件系统
ARM/AVR仿真器DIY
招募公告
莱特电子工作室
联系我们

 

订阅 RTEMS Chinese User Group
电子邮件:
访问此论坛

 

 

 

 

 

 

欢迎来到RTEMS的神奇世界!

RTEMS, 即: 实时多处理器系统(Real Time Executive for Multiprocessor Systems),是一个开源的无版税实时嵌入操作系统RTOS。 它最早用于美国国防系统,早期的名称为实时导弹系统(Real Time Executive for Missile Systems),后来改名为实时军用系统(Real Time Executive for Military Systems),现在由OAR公司负责版本的升级与维护。目前无论是航空航天、军工,还是民用领域RTEMS都有着极为广泛的应用

从体系结构上来看,RTEMS是微内核抢占式的实时系统,他具有下面的优点:

  • 优秀的实时性能
    • 支持硬实时和软实时(可抢占内核)
    • 支持优先级继承,防止优先级反转
    • 支持单调周期调度
    • 支持优先级高度协议
  • 非常的稳定
  • 运行速度快
  • 支持多种CPU,无论是ARM, MIPS,PowerPC,i386还是DSP,AVR,Zilog,都可以找到对应的BSP。
  • 高度可剪裁内核(目标系统小只有30KB;大可上百兆)1,2,3
  • 占用系统资源小,在32位系统中最小的内核只有30Kb左右1,2
  • 支持多处理器(不同于SMP,RTEMS中多个处理器是协作关系)
  • 提供POSIX API,Linux/UNIX下的程序可以方便移植
  • 提供完整的BSD的TCP/IP协议栈以及FTP、WebServer、NFS等服务
  • 使用面向对象思想设计,可以大大缩短开发周期
  • 核心代码使用C/C++写作,可移植性好
  • 支持ISO/ANSI C库
  • 支持ISO/ANSI C++库以及STL库
  • 支持精简的可重入glibc库
  • 支持图形用户界面(Microwindows/Nano-X)
  • 支持文件系统(FAT,IMFS等)
  • 支持多种调试模式(包括GDB,DDD,串口调试,以太网调试)
  • 支持32位处理器,Tiny RTEMS项目将对8位和16位处理器进行支持2
  • 支持JAVA虚拟机

(注1:最小内核指的是只包含BSP、任务调度、内存模块这些功能的内核。它的大小和CPU指令集、外设多少、二进制代码格式等相关。CPU是ARM7时,产生的ELF格式标准ARM目标可以减少到46kb。通常来说如果只需要最主要的功能,未压缩目标目标可以控制在60kb(内核+BSP+简单应用),这比起Linux2.4 压缩后还有700K的庞大体积来说,更适合成本体积敏感的应用)

(注2:现在也有hacker主持Tiny RTEMS项目,该项目中,未压缩的最小的RTEMS bin镜像(内核+BSP)只有20kb。该项目将RTEMS id变成了16bit了,此外该项目将BSD TCP/IP换成了LWIP。这样RTEMS变成了能给8bit和16bit用户使用的小型RTOS,COOL!!。)

(注3:如果只是RTEMS可管理的存储空间,rtems.com公布的应用中,基于RTEMS的飞行记录仪提供多达8G的存储空间。)

RTEMS在性能上丝毫不输于VxWorks,他和VxWorks以及RtLinux的性能比较可以参考《RTEMS简介》。他在全球有不少的用户,尤其是在通信、航空航天、工业控制、军事等领域有着非常广泛的应用,在系统实现上,RTEMS和VxWorks以及NucleusPlus的实现基本相同。

RTEMS的官方网站是www.rtems.com,当前最新的稳定版本是4.7.1,开发版是4.9。在国内,RTEMS主要用在航空航天和军工领域。 我们希望这个网站能普及RTEMS知识,帮助RTEMS在民用领域发挥更大的作用。

本站开设的目的主要是在国内推广嵌入式系统知识(主要介绍RTEMS,此外也不排除其他优秀的嵌入式系统比如 eCos、Linux等)。

RTEMS.net近期项目计划

下面是近期的开放项目,如果你有兴趣、有时间、有能力,可以申请加入。

未来任务

  • RTEMS Support for S3C44B0/AT91M40800/LPC2210
  • USB Support for RTEMS
  • RTEMS的GUI图形配置界面

RTEMS要闻

(2008-09-24) 4.9.0发布,除了新的BSP/CPU之外,增加/改善了大量的API,并且在sample里面提供了对shell的缺省支持,改shell能显示文件信息以及当前处理器使用情况,堆栈信息等等。
(2008-02-14) 4.8.0发布,除了新的BSP/CPU之外,还提供了纳秒级的时间粒度,正式提供Windows的开发包。
(2007-04-13) 4.7.1发布,除了bugfix,RTEMS小型化的一些成果放到了这个版本中。
(2007-03-07) 4.7.0版本正式发布,增加了 Yum/APT ,加快FAT访问速度,新增了十余种BSP。
(2006-11-12) 4.8版本加入对Blackfiin处理器的支持。
(2006-09-12) 4.7进入发布最后阶段,开发版本将进入4.8。
(2006-08-9) 官方CVS新增 Kolja Waschk 提供的 Altera NIOS II BSP。
(2006-04-7) FreeROTS 4.0.1发布。
(2006-1-25)代码CVS树增加下面内容
  • BSP for MPC5200 by Thomas Doerfler
  • FAT文件系统改善 by Thomas Doerfler
  • aototools修改 by Ralf Corsepius
  • RTEMS RPMs包 by Ralf Corsepius
  • 内核的注释by Joel Sherrill
(2005-10-7) rtems.com发布了RTEMS4.6.5版本,该版本修改了4.6.4中的问题。
(2005-09-1) rtems.com发布了RTEMS4.6.4版本,该版本这里下载,该版本修改了4.6.2中38处问题,并在性能上有所改善。
(2005-06-1) rtems.com发布了RTEMS4.7开发工具包,包括4.7版本的ARM/AVR等系列的GNU开发工具链。可以在这里下载,看来RTEMS4.70正式版发布也快了。
(2003-4-18)RTMES 4.6版本正式发布。该版本作出了下面的优化:
  • 更新了ARM的接口,优化了网络性能。
  • 增加了对OR32(开源嵌入式CPU,MCU+DSP)的支持
  • 提高了MIPS BSP性能
  • 更新/增加了下面的BSP
    • GDB的ARM simulator
    • Cogent公司EDP7312 ARM开发板BSP
    • 支持ARM SoC外部设备的ARM VegaPlus
    • MIPS Mongoose V 和SoC外设
    • Motorola ColdFire MCF5206Elite
    • Motorola MTX603e 和 MVME230x
    • Motorola MPC8260ADS
    • i386对486、Pentium、PII、Athlon 的性能优化。
    • Reneas/Hitachi SH4 BSP
    • SPARC ERC32 系列中支持浮点运算单元(FPU)和片上外设新列的BSP
    • SPARC LEON 系列的BSP优化
    • Tosbiba MIPS JMR3904以及片上外设
  • FAT 文件系统(FAT12, FAT16, and FAT32)
  • ATA/IDE设备支持
  • NFS客户端
  • 通过CEXP shell下载操作系统镜像
  • 其他第三方软件包的支持(包括Python、JAVA和TCL)
  • 优化了POSIX的API性能
  • 优化了automake脚本,优化了对不同CPU的支持

关于站长

Ray, 92年就开始在Apple上写程序,目前在从事firmware开发,使用的硬件平台主要是ARM,CF和DSP等。业余时间从事Open Source开发以及电路设计。喜欢BSD,常使用的开发工具是Candence、Gcc等。

email:rayx.cn AT gmail.com

 

 
关注

(20/7/07)沙龙已迁移至Google论坛。谢谢!

(27/5/07)文档区新增xiaojiashan的RTEMS s3c2410移植备忘录

(27/5/07)RTEMS新增NXP ARM处理器BSP

(27/6/06)文档区增加Daniliu的RTEMS仿真环境QEMU建立手记

(03/22/05)RTEMS开发连载1-26
more>>

(06/06/05)NeilWong 的RTEMS 开发环境建立,很不错的经验之谈 , 涉及交叉编译器,MicroWin,文件系统等内容。
more>>

(05/07/05)RTEM BSP开发者参考
more>>

(04/30/05)bradon上传的中文版RTEMS C语言用户参考手册,开发人员的常备书目。
download>>


欢迎有经验的用户上传相关文档资料,谢谢!

 

 

最近更新

RTEMS开发连载 1-26
more>>

RTEMS C语言用户参考手册。
download>>

RTEMS for Skyeye文档。
more>>

Linux 2.6驱动设计快速入门(从2.4到2.6)
more>>

Linux 2.6,嵌入式开发的福音,还是陷阱
more>>

03/12/2006

 

©RTEMS.NET 版权所有

友情链接