Embedded 版 (精华区)

发信人: vmlinuz (基于考试结束后的庆祝活动计划的研究), 信区: Embeded_system
标  题: CMX实时多任务操作系统
发信站: 哈工大紫丁香 (2001年05月16日14:42:09 星期三), 站内信件

你的处理器是不是需要一套实时多任务操作系统?
    *你的处理器控制的方式和你设计的一样吗?
    *你是否发现自己花费很多时间盘算怎样能使一段代码在该执行的时候执行?
    *你是否花费太多时间在中断子程序上,知道主程序不可能顺序地处理中断事件,便
试图编出所有代码来处理中断事件?
    *你是否发现自己在不断地测试标志或调用测试标志的子程序,来判断是否应当执行
一段子程序?
如果你对上面问题的回答有一个以上是肯定的话,那么你需要一套实时多任务操作系统
来把你从编程的琐碎中解脱出来。
                  CMX实时多任务操作系统
                                 一个工程师每天写程序时,天天碰到的问题实际上
只有几个
    在很多情况下,开发一个产品,结构良好的“线性”代码就完全可以满足了。可是
在大多数情况下,一个工程师还是愿意不必考虑怎样去将程序组织成“线性”形式,使
之能够顺次执行各个任务。
    这就是实时多任务操作系统(RTOS),比如CMX的产品,所要解决的问题。RTOS使各个
任务,实际上也就是能进行特定操作的一段代码,来“准同时”地运行。这意味着看上
去各个任务似乎是在同时运行,同时做很多特定的工作。
    可是不是所有的操作系统(OS)都有这种性能,许多OS只支持协作方式的任务调度,
即运行中的任务需要访问调度程序才能进行任务转换。这样工程师就要花费很多不必要
的心思来决定一个任务什么时候该进行任务切换。其它OS进行时间分片,也就是每段程
序执行一定长度的时间,然后无条件地转换到下一个任务上去。还有另外的OS厂商声称
自己的产品是完全优先执行。OS只是置位一个标志,在下一次任务调度时表明必须进行
任务的重新排序。取决于任务调度间隔和置位的时刻,任务的真正执行可能要等很长时
间。
    一个真正具有优先服务方式的操作系统,允许一个可以执行的高优先级的任务中断
低优先级的任务,取得先行权,不论是从头开始还是从断点继续。这要求任务调度器能
够保存正在运行的低优先级任务的执行现场,恢复高优先级任务的现场,并将它转换为
当前运行任务。真正优先服务方式的OS允许中断立即产生任务转换。这意味着中断增加
了触发OS操作的新功能。
    CMX公司给工程师提供了一种真正优先服务方式的多任务操作系统,能够以多种方式
和中断及任务协作。允许任务和中断利用有力的CMX功能,真正的优先服务方式核心,以
及可选的、能够在一瞬间开启的协作服务和时间分片调度方式,意味着CMX的RTOS在嵌入
式开发工具领域中是真正的优胜者,不仅仅是在功能意义上,而且在速度和效率意义上

    CMX的技术服务在世界上很不引人注意。考虑到95%以上的技术问题都通过电话解决
了的事实,就不会感到奇怪。如果技术问题不能通过电话解决,也就是剩下的不到5%的
电话询问,那么回答也会在几个小时内找到并传达给客户。
    CMX的信条也包括在OS中提供给工程师所有的源代码,除了CMX-Tiny RTOS。我们认
为这是一个无价的工具,因为这样工程师可以根据需要任意开/关编译、连接选项,并使
编译器厂商推出最新版本产品时,工程师就得回头重来这种情况成为过时的现象。将源
代码提供给用户不仅形成了一种无价的调试工具,而且大幅度改变了以往的对RTOS的学
习曲线,并且使代码尺寸更小,因为只有需要使用的代码才参与编译并连接到最终生成
的目标代码上。
    CMX的产品分成很多档次。从基本的RTOS工具包开始,不论是完全成熟的CMX-RTX还
是CMX-Tiny, CMX-Tiny+等,可以选择CMX-AIM (CMX-Add In Module)附加模块产品用于
你的特定应用场合。这可能是CMXBug调试器,CMXTracker实时任务流分析器,CMX-CAN局
域控制网附加模块,CMX-TCP/IP网络模块,或任何其它的CMX模块。产品可以充分地分解
,意味着作为工程师,你可以从这些CMX附加模块中任意挑选对自己有用的产品。
有效的CMX-RTX函数
任务管理                 定时管理                  存储器管理               
  资源管理
任务删除                       创建循环计时器                  创建固定的存储
器块区            取得资源
任务启动                       改变循环计时器事件参数          从块区中请求存
储器分配          释放资源
任务悬挂                       启动循环计时器                  释放存储器块 
                   保留资源
带有超时防护功能               复位循环计时器                               
                   带有超时防护
悬挂任务唤醒                   置入新的定时间隔                标志管理     
                   自动优先级转换
任务紧急唤醒                   和/或新的循环时间间隔           标志等待
任务优先级改变                 停止循环计时器                  带有超时防护
提前中断任务                                                   标志发送
进行协作方式调度                                               复位标志计数
关闭任务调度
使能任务调度
 事件管理               系统管理                    消息管理                
  排队管理
事件等待                      初始化CMX                         取得消息    
                    创建循环队列
带有超时防护                  进入CMX                           消息发送    
                    循环队列复位为空
置位事件                      进入中断                          等待消息    
                    增加任务到队首
清除事件                      退出中断                          带有超时防护
                    增加任务到队尾
                              进入下电模式(调度器自动执行)      消息发送    
                    从队首删除任务
                                                                等待答复    
                    从队尾删除任务
                                                                唤醒发送过消
息的任务
基于CMX的实时多任务操作系统的专家库函数
CMX-RTX:                                  TCP/IP:
*充分支持嵌入式中断                                    CMX TCP/IP是用于嵌入式
系统的小巧的TCP/IP协议网络接口专家库函数。
*嵌入式代码没有版税                                    能用于从使用电视连接到
Internet的顶视盒,到允许一个人跨越半个世界
*提供所有的源代码(CMX-Tiny出外)                        检查一个报警系统的状态
的远程管理的各种场合。这是通过CMX TCP/IP所
*超快的现场保护任务转换                                连接于其上的神奇的Int
ernet来实现的。
*超低的中断潜伏时间
*支持多个C编译器                                      PCProto-RTX:
*在线帮助和用户手册                                    CMX的PCProto-RTX实时多
任务操作系统是将CMX-RTX RTOS移植到PC上的版
*以汇编写成的调度器和中断处理器,以求速度和优化        本。这样可以使用80x86
PC作为开发平台,不管目标处理器是什么。
*CMX基本函数库及专家库函数                             PCProto-RTX使用户可以
使用目前为PC开发的各种复杂的工具来编写、开发
*紧凑的代码,然而很鲁棒                                和测试他们的应用代码。
许多工程师都很熟悉PC,因此这使得他们的开发
*容易和汇编语言接口                                    效率提高。
*可以写入ROM                                           CMX-RTX支持的所有功能
在PCProto-RTX中均有实现,例如用于嵌入式中断、
*用户可安装                                            中断调用、真正的优先调
度等函数,以及可选的协作和时间分片调度方式。
*中断调用功能,例如:消息发送,事件发送,
 标志置位,改变循环定时器,任务唤醒,任务启动等
DOS FILESYSTEM:CMX DOS兼容的文体系统实现了文件系统所有功能,包括大数据库以及
小的安装文件,支持超过32M字节的分区。
PCMCIA:PCMCIA的一个最大的功能是可以插入各种标准器件,从磁盘控制器到网卡。CM
X的接口支持PCMCIA的一个最大特点之一,存储
          器映象。
CMX-CAN的主要特征:
*消息接收                                  CMX-CAN:CMX提供一个复杂的CAN总线
接口软件包,用于应用程序作为CMX实时操作系
*消息发送                                             统的扩展。CAN-bus专家库
函数可以和CMX RTOS一起或单独销售。
*初始化CAN控制器芯片
*管理CAN控制器中断                             CMX-CAN软件建立一个CAN总线监视
任务,在CMX下运行,来管理CAN控制器和应用任
*管理节点地址和CAN标识                     务之间交换的各种信息。
*管理缓冲存储区,用于CAN信息包                 应用任务和CAN之间的接口是通过
一组C语言函数调用来完成的,与应用任务和CMX-
*通知一个任务,消息已经收到                RTOS的接口非常类似。
※  作 者: 晴云雨雪 00-6-20 下午 05:07:36 ※

--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.239.97]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:206.840毫秒