嵌入式系统介绍 VxWorks
简介 VxWorks是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是Tonado II嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发界面,使其在嵌入式操作系统领域占据一席之地。
简介 VxWorks以其良好的可靠性和卓越的实时性被广泛应用在通信、军事、航空、航天等高精尖技术和实时性要求极高的领域内,如卫星通信、弹道制导、军事演习、航空导航等。在美国的F—l6、FA—l8战斗机、B一2隐形轰炸机和爱国者导弹上,甚至连1997年在火星表面登陆的火星探测器上也使用到了VxWorks。
简介 1984年 WRS 公司推出它的第一个版本--VxWorks 1.0.1,在 1999年推出了它的最新版本VxWorks 6.0。从1995年以后, WRS 公司推出了一套实时操作系统开发环境– Tornado。
第一节 VxWorks操作系统的基本构成 1 板级支持包BSP(Board Support Package) 2 微内核wind 3 网络系统 4 文件系统 5 I/O系统
第一节 VxWorks操作系统的基本构成
第一节 VxWorks操作系统的基本构成 1 板级支持包BSP (Board Support Package)
第一节 VxWorks操作系统的基本构成 板级支持包BSP 所谓初始化是指从系统上电复位开始直到wind kernel和usrRoot根任务启动这段时间系统的执行过程。驱动程序就是一些包含I/O操作的子函数。 初始化包括CPU Init、Board Init和System Init。CPU Init初始化CPU的内部寄存器。Board Init初始化智能I/O的寄存器,将device打通。System Init为系统的运行准备数据结构,进行数据初始化。
第一节 VxWorks操作系统的基本构成 2 微内核wind 微内核wind是VxWorks的核心,它包括多任务调度(优先级抢占方式)、任务间的通信、同步和互斥、中断处理和内存管理机制等。
第一节 VxWorks操作系统的基本构成 第二节 开发工具tornado 2 微内核wind 系统结构 VxWorks 是由一个体积很小的内核及一些可以根据需要进行定制的系统模块组成。VxWorks 内核最小为8kB,即便加上其它必要模块,所占用的空间也很小,其不失实时、多任务的系统特征。由于它的高度灵活性,用户可以很容易地对这一操作系统进行定制或作适当开发,来满足自己的实际应用需要。
第一节 VxWorks操作系统的基本构成 第二节 开发工具tornado 2 微内核wind
第一节 VxWorks操作系统的基本构成 第二节 开发工具tornado 2 微内核wind
第一节 VxWorks操作系统的基本构成 3 网络系统 3 网络系统 VxWorks提供了对其他网络和TCP/IP网络系统的"透明"访问,包括与BSD套接字兼容的编程接口、远程过程调用(RPC)、SNMP、远程文件访问以及BOOTP和ARP代理。所有的VxWorks网络机制都遵循标准的Internet协议
第一节 VxWorks操作系统的基本构成 3 网络系统 VxWorks支持两种形式的网络驱动,一种是BSD驱动支持通用的BSD4.4网络,API,结构等和大多数BSD网络的驱动类似.另一种是END网络驱动,是VxWorks独有的,根据VxWorks MUX接口编程,不过END驱动在底层也要转换成BSD的形式.
第一节 VxWorks操作系统的基本构成 4 文件系统 4 文件系统 VxWorks提供了适合于实时应用的文件系统。主要包括与MS-DOS兼容的文件系统、TrueFFS闪存文件系统、Raw Disk文件系统,ISO9660CD-ROM文件系统,SCSI设备即tapeFsLib。
第一节 VxWorks操作系统的基本构成 文件系统 文件设备驱动有ramDrv,scsiDri,tffsDrv分别可以支持ram,csi设备和flash设备,还支持第三方驱动。 实现文件系统要添加一些该文件系统特有的设备访问例程。通过文件系统访问设备具有抽象性好的特点。
第一节 VxWorks操作系统的基本构成 5 I/O系统 VxWorks提供了一个快速灵活的与ANSI C兼容的I/O系统,包括UNIX标准的缓冲I/O和POSIX标准的异步I/O。
第一节 VxWorks操作系统的基本构成 5 I/O系统 在VxWorks系统中,I/O系统可以分为字符I/O和块I/O,文件系统是一种块I/O操作设备。VxWorks里的I/O系统的实现可以分为几个层次。底层的设备驱动,I/O系统,其他系统模块,应用程序。
第二节 VxWorks的启动 可选择的启动方案 A shared memory network 允许目标机 通过VMEbus启动。 B 从本地硬盘启动。 C 使用FTP服务器,从另一台机启动。 D 通过串口启动,使用SLIP、CSLIP、 PPP或TSFS,但比从以太网启动慢。 E 使用DHCP或BOOTP获取启动参数, 然后使用TFTP下载启动文件。 F 可以将VxWorks放入ROM中。
第二节 VxWorks的启动 工控板启动VxWorks一种方法介绍 (1)在工控板通过软驱或CF卡启动DOS6.22; (2)运行DOS程序Vxload.com,将BootRom拷贝到指定内存地址然后跳转到初始地址执行BootRom; ;
第二节 VxWorks的启动 工控板启动VxWorks一种方法介绍 (3) BootRom初始化CPU,内存和一些简单的外设,然后将系统内核VxWorks拷贝到指定内存地址,跳转到VxWorks的第一条语句; (4) Vxworks重新初始化CPU,内存和所有外设,最后初始化操作系统内核,启动应用程序。
第二节 VxWorks的启动 工控板启动VxWorks一种方法介绍 先启动BootRom然后再启动内核Vxworks的是先启动一个最小系统然后再加载完整的系统。 这样做的优点是可以先用有限的资源先启动小内核在通过网络等手段加载完整操作系统,这样做还方便软件的升级和调试。 这样做的缺点是启动慢。