- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ArdenceRtx环境搭建
Ardence RTX简介作为控制系统的开发平台,Windows XP 具有如下优点:高性价比;可运行多种应用程序;支持多种开发工具;丰富的Win32应用程序接口;大量的熟悉本系统的开发支持人员和最终用户。有很多其他环境有使用Windows的要求,譬如制造车间,医疗设备,仿真器械,测试设备和通信器材。这些环境的共同特点就是它们都要求系统拥有硬实时特性。由于Win32 应用程序运行在Windows 用户层级别,而所有硬件管理都在核心层,Win32 应用程序不能直接访问硬件,必须通过系统服务调用来获得核心层级别的访问。这就限制了Windows 系统的实时性,也造成了利用其开发实时控制系统的局限性。总的来说,WindowsXP系统不能成为一个实时操作系统,主要有以下几点原因:线程优先级太少;不确定的线程调度机制;优先级倒置,尤其体现在中断处理中。通过附加软件就可以在Windows上实现所需要的硬实时特性。否则的话,开发者必须增加一台实时计算机,并承担额外的费用和复杂度。下文讨论了Ardence公司的硬实时产品RTX,其中包括RTSS实时子系统(Real-Time Sub-System),它是专门为PC架构的Windows平台设计的。Ardence RTX 利用Windows 的这个特点,按照微软Windows XP 驱动开发工具、(DriverDevelopment Kit,DDK)和HAL 模型对Windows 的实时功能进行了扩展,具体体现在以下几个方面:通过修改 WindowsHAL,增加了Real Time HAL Extension,简称rtHAL,它提供了对拦截中断和直接访问硬件的支持。利用 DDK,开发了一套完全独立于Windows 内核的中断处理、线程调度、事件同步机制。 RTX 的优先级高于Windows 的内核。当有硬件中断到来时,rtHAL会首先拦截该中断,交给实时子系统处理,如果实时子系统不处理该中断,中断会被交给Windows 内核去处理。可见通过rtHAL、独立的中断处理、线程调度、事件同步机制及优先执行,使得RTX 能够真正避开Windows 内核,实现实时处理。RTX 和Windows 的关系如下图所示:RTX 实现为一套动态库和静态库的集合,它增加了一个子系统RTSS 作为Windows 系统的内核设备驱动与HAL 的扩展(见图3.2)。该子系统实现了对实时对象的调度,通过一套被称作RtWinAPI的实时API(RtWinAPI同时也被Windows CE 和PharLap ETS 支持)提供了对这些对象的访问方法。RtWinAPI可以被标准Win32 环境和RTSS 环境调用。虽然在Win32 环境中使用RtWinAPI不能提供在RTSS 下的确定性,但是却可以允许应用程序在更加友好的Win32 编程环境中开发而不是DDK 环境。将Win32 程序转化为RTX 程序只需要重新链接一套不同的库而已。Windows 系统的服务控制管理器直接将RTX 进程和动态链接库(DLL)的可执行映像装入内核的不分页内存中。RTSS 有其独立的进程线程管理、进程间通讯、时钟、中断、IO 管理等机制。RTSS 线程具有128 个优先级,分别对应Win32 的32 个线程优先级RTSS 的线程优先级都要高于相应Windows 功能的线程,为实时任务的优先执行提供了保障。在RTX 环境下完成实时任务,实时任务运行在Ring 0 级别,以提供最好的时间响应特性。在Win32 环境下开发用户界面程序,用户程序运行在Ring 3 级别,这里可以利用Windows 的所有资源。RTX 与Windows 之间通过IPC 进行高速实时的数据交换。IPC是一个Unix 标准通讯机制,它提供了同一台主机不同进程之间可以相互通讯的方法。基本的IPC 处理机制有3 种:共享内存、信号量和消息队列。Windows 下基于RTX 的实时控制系统结构如图环境搭建环境搭建很简单,执行安装程序,输入序列号,最后重启电脑就可以了。需要注意的是,重启电脑之后:在系统启动项的选单里多了两项:Microsoft Windows XP Professional - RTX MP SharedMicrosoft Windows XP Professional - RTX MP Dedicated这两项的区别位,在多核的机器上,RTX MP Shared是一个处理器同时支持RTX和Windows运算;其他的处理器为Windows独享。这种方式是默认的配置,而选择RTX MP Dedicated的时候,RTSS会在系统启动的时候自动选择逻辑上最后一个处理器独占运行,而windows系统运行于其他的处理器上。不过在编程上没有影响。开发应用程序RTX支持以下几种程序和对
文档评论(0)