没有合适的资源?快使用搜索试试~ 我知道了~
VxWorks操作系统指南
5星 · 超过95%的资源 需积分: 3 28 下载量 171 浏览量
2011-12-09
21:53:02
上传
评论
收藏 185KB DOC 举报
温馨提示
试读
36页
1. VxWorks操作系统概述 1.1.VxWorks 操作系统简介 1.2.VxWorks操作系统内核 1.3.任务管理 1.3.1. 任务结构 1.3.2. 任务状态和状态迁移 1.3.3. 任务调度策略 1.3.4. 抢占禁止 1.3.5. 异常处理 1.3.6. 任务管理 1.4.通信、同步和互斥机制 1.4.1. 共享存储区 1.4.2. 互斥 1.4.3. 信号量 1.4.4. 消息队列 1.4.5. 管道 1.4.6. 系统实现 1.5.网络通信 1.5.1. 套接口(Sockets) 1.6.中断服务程序 1.7.时间管理器 2.VxWorks应用指导 2.1.系统启动 2.1.1. 启动盘的制作 2.1.1. 主机Tornado环境配置
资源推荐
资源详情
资源评论
VxWorks操作系统指南
目 录
1. VxWorks 操作系统概述 4
1.1. VxWorks 操作系统简介 4
1.2. VxWorks 操作系统内核 5
1.3. 任务管理 6
1.3.1. 任务结构
1.3.2. 任务状态和状态迁移
1.3.3. 任务调度策略
1.3.4. 抢占禁止
1.3.5. 异常处理
1.3.6. 任务管理
1.4. 通信、同步和互斥机制 9
1.4.1. 共享存储区
1.4.2. 互斥
1.4.3. 信号量
1.4.4. 消息队列
1.4.5. 管道
1.4.6. 系统实现
1.5. 网络通信 11
1.5. 1. 套接口( Sockets )
1.6. 中断服务程序 14
1.7. 时间管理器 14
2. VxWorks 应用指导 16
2.1. 系统启动 17
2.1.1. 启动盘的制作
2.1.1. 主机 Tornado 环境配置
2.2. 应用系统配置
19
2.2.1. 板级支持包 BSP
2.2.2. 虚拟内存
2.2.3. 串行设备
2.2.4. 初始化模块
2.2.5. 配置 VxWorks
2.3. 板级支持包 BSP
21
2.4.VxWorks 系统任务
23
2.5. 应用软件开发指导
23
2.6. 应用示例分析
25
2
关键词:实时操作系统 任务 消息 VxWorks Tornado
摘 要:本文档对实时操作系统作了简要介绍,并针对VxWorks系统的特点进行了具体的说明和
分析,从VxWorks系统的任务管理、通信机制、系统配置、系统接口几个方面展开。
1. VxWorks操作系统概述
1.1. VxWorks 操作系统简介
实时多任务操作系统是能在确定的时间内执行其功能,并对外部的异步事件作出响应的计算
机系统。多任务环境允许一个实时应用作为一系列独立任务来运行,各任务有各自的线程和系统
资源。VxWorks系统提供多处理器间和任务间高效的信号灯、消息队列、管道、网络透明的套接
字。 实时系统的另一关键特性是硬件中断处理。为了获得最快速可靠的中断响应, VxWorks系
统的中断服务程序ISR有自己的上下文。
VxWorks实时操作系统由400多个相对独立的、短小精炼的目标模块组成,用户可根据需要
选择适当模块来裁剪和配置系统,这有效地保证了系统的安全性和可靠性。系统的链接器可按应
用的需要自动链接一些目标模块。这样,通过目标模块之间的按需组合,可得到许多满足功能需
求的应用。
VxWorks操作系统的基本构成模块包括以下部分:
高效的实时内核Wind
VxWOrks实时内核(Wind)主要包括基于优先级的任务调度、任务同步和通信、中断处理、
定时器和内存管理。
兼容实时系统标准POSIX
VxWOrks提供接口来支持实时系统标准P.1003.1b.
I/O系统
VxWOrks提供快速灵活的与ANSI-C相兼容的I/O系统,包括UNIX的缓冲I/O和实时系统标准
POSIX的异步I/O。VxWOrks包括以下驱动:
网络 --- 网络设备(以太网、共享内存)
管道 --- 任务间通信
RAM --- 驻留内存文件
SCSI --- SCSI硬盘,磁碟,磁带
键盘 --- PC x86键盘(BSP仅支持x86)
显示器 --- PC x86显示器(BSP仅支持x86)
磁碟 --- IDE和软盘(BSP仅支持x86)
3
并口 --- PC格式的目标硬件
本机文件系统
VxWorks的文件系统与MS-DOS、RT-11、RAM、SCSI等相兼容。
网络特性
VxWorks 网 络 能 与 许 多 运 行 其 它 协 议 的 网 络 进 行 通 信 , 如 TCP/
IP、4.3BSD、NFS、UDP、SNMP、FTP等。VxWorks可通过网络允许任务存取文件到其它系统
中,并对任务进行远程调用。
虚拟内存(可选单元VxVMI)
VxVMI主要用于对指定内存区的保护,如内存块只读等,加强了系统的健壮性。
共享内存(可选单元VxMP)
VxMP主要用于多处理器上运行的任务之间的共享信号量、消息队列、内存块的管理。
驻留目标工具
Tornado集成环境中,开发工具工作于主机侧。驻留目标外壳、模块加载和卸载、符号表都
可进行配置。
Wind基类
VxWorks系统提供对C++的支持,并构造了系统基类函数。
工具库
VxWorks系统向用户提供丰富的系统调用,包括中断处理、定时器、消息注册、内存分配、
字符串转换、线性和环形缓冲区管理,以及标准ANSI-C程序库。
性能优化
VxWorks系统通过运行定时器来记录任务对CPU的利用率,从而进行有效地调整,合理安排
任务的运行,给定适宜的任务属性。
目标代理
目标代理可使用户远程调试应用程序。
板级支持包
板级支持包提供硬件的初始化、中断建立、定时器、内存映象等。
VxWorks仿真器(VxSim)
可选产品VxWorks仿真器,能模拟VxWorks目标机的运行,用于应用系统的分析。
1.2. VxWorks操作系统内核
VxWorks内核(wind)的基本功能可以分为如下几大类:
u 任务管理;
u 事件和异步信号服务;
4
u 信号量服务;
u 消息队列服务;
u 内存管理;
u 中断服务程序;
u 时钟管理和定时器服务;
u 出错处理。
在以下各节中将对VxWorks内核的各类功能分别进行描述。
1.1. 任务管理
任务是代码运行的一个映象,从系统的角度看,任务是竞争系统资源的最小运行单
元。任务可以使用或等待CPU、I/O设备及内存空间等系统资源,并独立于其它任务,与
它们一起并发运行(宏观上如此)。VxWorks内核使任务能快速共享系统的绝大部分资
源,同时有独立的上下文来控制个别线程的执行。
1.1.1. 任务结构
多任务设计能随时打断正在执行着的任务,对内部和外部发生的事件在确定的时间里
作出响应。VxWorks实时内核Wind提供了基本的多任务环境。从表面上来看,多个任务
正在同时执行,实际上,系统内核根据某一调度策略让它们交替运行。系统调度器使用任
务控制块的数据结构(简记为TCB)来管理任务调度功能。任务控制块用来描述一个任
务,每一任务都与一个TCB关联。TCB包括了任务的当前状态、优先级、要等待的事件或
资源、任务程序码的起始地址、初始堆栈指针等信息。调度器在任务最初被激活时以及从
休眠态重新被激活时,要用到这些信息。
此外,TCB还被用来存放任务的"上下文"(context)。任务的上下文就是当一个执
行中的任务被停止时,所要保存的所有信息。在任务被重新执行时,必须要恢复上下文。
通常,上下文就是计算机当前的状态,也即各个寄存器的内容。如同在发生中断所要保存
的内容一样。当发生任务切换时,当前运行的任务的上下文被存入TCB,将要被执行的任
务的上下文从它的TCB中取出,放入各个寄存器中。于是转而执行这个任务,执行的起点
是前次它在运行时被中止的位置。
VxWorks中,内存地址空间不是任务上下文的一部分。所有的代码运行在同一地址空
间。如每一任务需各自的内存空间,需可选产品VxVMI的支持。
1.1.2. 任务状态和状态迁移
实时系统的一个任务可有多种状态,其中最基本的状态有四种:
就绪态:任务只等待系统分配CPU资源;
5
剩余35页未读,继续阅读
资源评论
- yyy46973803662016-05-08资源还可以
- 还释2014-04-14资源很好,值得借鉴
- duan1234281110042013-01-30谢谢,具有一定的参考价值 看看。
- Animaling2017-03-11非常棒!!!!非常棒!
bl031
- 粉丝: 3
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功