WindRiver产品介绍(3)——部分OS扩展模块介绍
呵呵,小子借花献佛,下列内容来自WindRiver的相关
产品介绍资料,偶只是编辑整理了一下下 ^_*。
三、OS扩展模块
VxSim
VxSim是一种作为原型开发和测试环境来用的﹑仿真VxWorks目标机的应用程序
,它的作用是协助用户开发高性能的嵌入式系统。
通过在宿主机工作站上提供完整的VxWorks仿真环境,VxSim免除了用户购买硬
件评估板的需要,它也能够在用户的硬件环境搭建之前就进行应用的开发,并
且允许在开发周期前就进行绝大多数的软件测试。
那些能从VxSim获益的开发团体包括那些硬件尚未到货的用户,受购买硬件的
预算限制的用户和那些所做的应用模块不需要直接访问硬件的用户。
对应用程序的精确模拟
作为VxWorks操作系统的宿主机环境的一部分,VxSim能精确地实现许多
VxWorks的复杂特性,其中包括DOS文件系统和UNIX方式的网络连接(TCP/IP,
rlogin等)以及通过增加处理器之间通信的驱动程序,支持多达16个目标机共
享一个公共的背板。
VxWorks的调度程序可在模拟环境中完全执行,并且保持了基于优先级和抢占
的多任务的运行功能。
完备的Tornado开发环境
对于VxWorks的仿真工具VxSim来说,它包括完整的Tornado开发工具和可选的
Wind River的工具和组件,使开发者在目标硬件设计完成前就进行应用的开发
,并且在硬件设计完成后能平滑地过渡到Tornado的开发环境。
Features
·支持Sun SPARC系统,HP9000/700系列工作站,MS Windows NT
·宿主机上的完整的Tornado开发环境
·快速原型设计与仿真
·无需目标机硬件
·可选择的WindPower工具和附件
·和Tornado1.0或更高版本兼容
VxDCOM
VxDCOM 是风河系统依据DCOM 标准实现的。它为嵌入式领域量身定做,并应用
在Tornado II的开发平台上。使用VxDCOM ,运行VxWorks的嵌入式设备能够与
其他系统和PC平台系统实现无缝连接。 VxDCOM支持工业标准和提供一种在分
布式环境下可裁减的,实时的解决方案。
COM 类似CORBA的处理标准, 而且微软基于COM 实现了许多视窗系统接口。例
如ActiveX ,其相互通讯直接使用COM协议。DCOM(分布式对象模式)是应用于
交叉系统的一种面向对象的接口。
* 与PC控制平台的无缝集成
嵌入式系统产品的使用者希望更加容易的与其他设备实现无缝连接,特别是基
于PC平台的管理系统和基于Windows 的应用软件和工具。在PC领域里DCOM已经
成为面向对象系统的事实标准。因为VxWorks 在工业控制领域有着广泛的应用
,这些领域要求系统非常小、非常快、非常可靠。所以VxDCOM将成为一种重要
的OEM 产品。例如在工业测控领域,一个简洁的,可靠的面向开放的标准变得
非常重要。
应用VxDCOM.生产者能够更容易的创建快而简洁的嵌入式应用,该应用能够与
远程PC机实现无缝连接。 例如VxDCOM允许Windows NT 工作站通过图形监控包
与制造业的机器人互动,或者基于VxWorks的传感器将数据直接传至PC机的数
据表格。VxWorks设备同样可以通过标准的对象接口相互间进行通讯。
* 兼容性
VxDCOM遵从二进制COM和DCOM连接协议以确保数据传送至远端系统时的兼容性
。通过标准的I unknown 接口提供组件查询。NT主机无需任何修改就能与运行
VxWorks的目标系统通讯,例如,一套工业生产软件已经为一个开放的分布式
控制系统框架定义一个标准接口(例如:过程控制系统OPC-OLE)。VxDCOM的OPC
支持面向所有的数据存取,报警,事件,以及在用户界面设置中的通用元素,
从而保证可以快速而有效的开发驻留目标系统的OPC服务器。
大多数同时提供在Windows平台上的最终用户工具和开发者工具的厂商都保证
他们的应用符合COM 标准。
* 语言的无关性
COM 是一种与语言无关的标准。一旦创建了组件,它能够与任何能提供
ActiveX组件的语言编写的应用程序连接,包括Java,VB,C++等。语言无关性
确保可以通过Tornado II平台直接创建接口定义语言。
* 实时升级解决方案
在VxWorks中,任务VxDCOM拥有单独的线程池,新的线程动态的加入线程池以
处理峰值。任务拥有优先级以保证实时性。优先级在运行中可以是固定的或者
是随时间变化的以满足客户优先级的要求。
* 易用性
Tornado II 能够为嵌入式系统的快速开发提供途径。由于与Tornado II开发
平台的紧密联系, VxDCOM能够快速的在嵌入式系统中创建COM对象。
* 对象的可重用性
COM 鼓励代码的重用,它提供了标准的框架,通过它不同的厂商和公司内不同
部门制造的软件对象能够互相通讯。 VxDCOM框架具有一致性,这就允许重用
VxWorks的组件。
* 紧凑的代码
VxDCOM解决方案具有可裁减性,以满足嵌入式领域的需求。因此提供了一个大
约有280KB紧凑的代码。为缩小对象代码尺寸, Tornado 的工程工具允许使用
COM 或者DCOM来构造VxWorks。
特点:
1、与PC系统无缝集成
2、实时扩充
3、真正的DCOM 连接协议
4、“通用配置”OLE自动代理
5、支持OPC客户接口
6、对用户系统的高可配置性
7、对应用系统的可升级性
8、对象的可重用性
9、语言无关性
10、280K的紧凑内核
11、RUN-TIME 库
(分离的COM和DCOM API)
目标方头文件
主机方组件(makefiles 样板,代码生成器,样板代码)
12、文档
系统要求:
Tornado II, MSVC 5.0 或者Visual Studio 6.0
主机系统
Windows NT
目标系统
ARM,PowerPC,x86,MIPS,68K,CPU32,SPARC,i960,SimNT结构
VxVMI
VxVMI,即虚拟内存接口,是VxWorks的一个功能模块,它利用用户片上或板上
的内存管理单元(MMU),为用户提供了对内存的高级管理功能。
VxVMI提高了调试和开发效率,并为运行时的VxWorks提供一个与MMU的接口,
该接口功能强大且可移植。VxVMI通过使用与应用无关的应用编程接口,从而
更适合于构建较复杂的特殊应用。
保护特性:
在VxVMI的最小配置中,它写保护了几个关键资源,其中包括VxWorks程序代码
体、异常向量表、以及通过VxWorks装载器下载的应用程序代码体。保护特性
让开发人员集中精力编写自己的程序,无需当心无意中修改关键代码段或引发
耗时的系统错误。这在开发阶段是很有用的,因为它简化了对致命性错误的诊
断。在产品的定型阶段也是如此,因为它提高了系统可靠性。VxVMI提供的其
它工具主要用于修改这些被保护的区域,如修改异常表或者插入断点。
灵活的扩展性:
VxVMI提供了一个应用程序编程接口(API),以便于用户针对特殊需要创建和
管理多个虚拟内存空间。API提供了把物理内存映射到虚拟内存的函数,以及
修改和检查虚拟内存状态,并生成其报告的函数。
由于这些编程接口与结构无关,VxVMI具有很高的移植性。针对一种芯片开发
的应用程序可以很容易的移植到其它所支持的芯片上,因此可以流水线开发。
基本特性
* 正文写保护
* 内核向量表写保护
扩展特性
* 编程API
* 多虚存区创建
VxMP
VxMP是VxWorks操作系统支持多处理器的一个附件,允许实时嵌入式应用的性
能超出单个CPU所能提供的性能。透明设计扩充了以有VxWorks操作系统功能来
支持多处理器的应用,而不需要任何代码修改。
透明性
VxMP允许执行在多CPU上的任务之间同步、交换数据和提供互斥操作。这些是
由我们所熟悉的VxWorks操作系统的功能,如二值和多值信号量、消息队列、
内存分配,实现的。为了得到最优的执行性能,VxMP的数据结构是存储在所有
CPU都能访问到的共享内存中的。对这些共享内存对象的操作具有与对局部对
象操作相同的接口和语义,所以已经提供的函数如semGive/semTake可以被使
用。这种透明设计使VxWorks的开发者能够很快熟悉VxMP,缩短培训的时间,
增强多处理器应用设计的可移植性,减少复杂性。
灵活的CPU支持
在一个系统中VxMP可以支持20个CPU,使VxWorks能够支持应用程序达到很高的
吞吐量。一个系统可以被灵活地设计为一个背板上的多板结构,或一块板子上
的多CPU结构(或两者兼而有之)。VxMP对于多处理器包是唯一的,对硬件没
有什么特殊要求,它支持混合的CPU结构。这使用户在选择处理平台时,可尽
量符合应用的性能和功能的要求。VxMP提供高性能、紧耦合的功能,弥补了
VxWorks提供的松耦合、基于网络的通信机制。用户可以选择最优的方式来构
造多处理分布式环境。
TrueFFS
True FFS for Tornado 是集成于风河公司嵌入式系统开发平台Tornado 中的
闪存文件系统。使用TrueFFS for Tornado,可以缩短嵌入式系统开发的产品
上市时间,减少开发难度,建立一种可靠的面向各种嵌入式闪存设备的固态存
储系统。仿效VxWorks在硬盘上的DOS文件系统,开发者可以通过标准的文件系
统的接口建立和维护一个文件。使得文件系统的读写工作如同操作其他DOS文
件系统一样直接。
TrueFFS for Tornado 使很多琐碎的工作变得清晰。例如:减少对闪存设备的
操作频率以延长设备使用年限,建立冗余校验数据以确保对数据操作的可靠性
,在闪存设备上标记坏块的或超过寿命的数据块以避免错误。
* 闪存转换层标准(FTL)
TrueFFS for Tornado 数据格式建立在M-System Flash Disk Pioneers' True
FFS 核心专利技术上。该技术曾应用于PCMCIA 设备的闪存转换层标准。应用
FTL,线性闪存PC 卡能够被完全仿真成硬盘设备,从而将具有高性能,低功耗
的存储设备引入嵌入式系统的开发。为了在闪存上提供更高的性能,FTL可以
在ATA 标准上仿真昂贵设备。
TrueFFS for Tornado提供既可以应用于DOS 文件系统又可以应用于VxWorks
下的NFS文件系统的驱动层接口。在嵌入式中如同写硬盘文件一样,应用程序
可以简单的通过调用文件系统接口来操作文件。TrueFFS for Tornado 对标准
文件系统的支持和TFL的兼容性确保与PC机的数据交换。当使用可移动闪存介
质时,这种特性时非常重要的。例如:PC卡和微型卡。
* 错误预防
TrueFFS for Tornado 通过监测和校验以确保对数据操作的成功。防止基于闪
存设备的数据丢失或者重大的错误。它通常通过片上状态寄存器和其他硬件设
备来校验写操作和擦除操作是否成功。它的校验工作通过回读写入数据与用户
数据进行比较来完成。当写操作失败时,系统并不将错误简单的反馈给用户,
而是通过运用TrueFFS for Tornado 的块映射特性,在不同的空数据块重新执
行写操作。通过这种自动错误预防来确保数据的完整性。
* Wear leveling
因为对闪存的读写操作的次数是有限制的,所以要通过Wear Leveling 来保证
整个闪存的读写次数的平衡,从而确保平稳的性能表现。TrueFFS fir
Tornado 通过静态方法实现,这样可以确保闪存设备中的所用单元使用的几率
大致相等,并且最终保证相同的读写时间。通过TrueFFS fir Tornado 的错误
预防机制,当闪存的某些单元达到操作次数限制时不会丢失数据或操作。
* 废弃数据块的收集
通过废弃数据块的收集机制, TrueFFS fir Tornado 回收不再记录有效数据
的数据块。正常的闪存可以从可擦除的数据块恢复成只读数据块, TrueFFS
fir Tornado能够辨识闪存状态,并且在可能的情况下,将一个数据单元中的
连续数据块作为一个池来维护。为防止过度使用此技术,废弃数据块的收集机
制是作为wear leveling 的一部分来运行的。
* 掉电预防
TrueFFS for Tornado为了确保数据的准确性,因此它的算法是基于'先写入后
删除'而不是'先删除后写入'。覆盖操作是在分离的数据映射区内实现的。只
有当整个写操作完成后,原始数据块才会被收回。块映射信息被更新并存储在
闪存中,使用'先写入后删除'算法,即使掉电,也能保证块映射信息的一致性
。
* 数据块分配
为确保访问数据的一致性,物理块是作为虚拟数据块来分配的。目的是为了使
相关的数据群放在同一个单元中,而将不相关的数据群分布到整个单元。这种
方法具有不少优点,当TrueFFS for Tornado 通过一个很小的存储窗口读写闪
存,在这种环境下,可以减少为了把不同物理块映射到该窗口而进行的调用的
需求,并且减少碎片,使废弃数据块的收集更有效。
特点:
1、通过NFS和DOS 文件系统无缝接入。
2、通过虚拟数据块到物理数据块的映射表来模拟硬盘设备。
3、在闪存中创建基于VxWorks的引导设备时,支持底层的设备API.
4、内建的wear leveling 技术,延长闪存的使用年限。
5、错误和不可使用数据区的监测。
6、保护已有的数据和目录结构,使之可靠。
7、对特殊的闪存使用不同的编程算法。
支持的目标系统:
1、英特尔:28F008,28F016,Series-2/2+/100 PC 卡
2、三星,松下,东芝:29Vxx000
3、AMD,富士通:29F016(c),29F040,29F080,29LV008,29LV080
支持的目标平台:
68K,PowerPC,80x86/Pentium,CPU32,MIPS,ARM,SPARC,i960
主机平台:
UNIX,Windows 95/NT
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。