您的位置:首页 > 其它

Vxworks嵌入式开发系统入门基础概念学习

2013-05-18 23:27 756 查看
1.VxWorks应用
自动化设备、工业控制(实时性好)、***设备以及消费电子。
2.实时性
实时性包括硬实时、软实时。硬实时系统有一个刚性的、不可改变的deadlines,它不允许任何超出deadlines的错误。而软实时是一个柔性灵活的,它可以容忍偶然的超时错误,失败造成的后果并不严重,例如在网络中仅仅是轻微地降低了系统的吞吐量等。一句话区别就是是不是所有的响应都在规定的deadlines内完成。
3.系统结构



4.BSP的功能
(1)CPU初始化(2)内存控制器初始化(3)串口、网口、硬盘的初始化(4)中断控制器、时钟和定时器初始化
5.vxworks image类型
主要包括四种:
(1)Loadable:这种包含用户程序的Vxworks操作系统镜像不具备引导功能,需要借助bootrom通过网口或串口下载到RAM中,多用于调试。
(2)BootRoom:引导程序,通常烧写在rom或flash,,上电后执行本身引导操作系统。Rom-based image包括bootroom压缩的引导程序以及bootrom_uncmp未经压缩的引导程序。上电以后会从ROM启动,加载vxworks镜像到内存中运行,类似于u-boot。
(3)Vxworks_rom以及Vxworks_romCompress产品中应用,直接从ROM启动,包含了引导程序以及OS镜像,适用于最终产品。
(4)ROM-Resident:image的指令部分在ROM中运行,仅将数据段拷贝到RAM适用于内存较小的嵌入式处理器。
6. 什么是bootrom
Vxworks引导程序,不是BSP,类似于uboot。上电先自解压,再从指定的地址加载OS,可以用于做logo。
7.开发流程
建立开发环境à内核启动之前代码研究à启动vxworks最小内核,提供系统时钟和中断向量à使用Tornado进行调试à完成具体驱动。
8.wind内核



9.Vxworks没有进程和线程的概念,任务相当于线程,所有的线程都可以访问共有资源。
10.Vxworks中断处理
中断抢占最高优先级任务。ARM有专用中断堆栈
不能调用信号量、不能调用malloc()、不能调用IO函数printf等阻塞函数,要做到尽量短小,避免做浮点运算,因为运行速度慢,可以使用logMsg。
11.应用程序的开发
线程间通信



任务间通信手段:共享数据结构、共享内存,信号量,消息队列,管道,信号,socket通信。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: