没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
第一部分 VxWorks & Tornado Overview
第一章 绪论
是一种嵌入式的实时操作系统,所谓嵌入式系统就是用户自己开发设计板子 ,
板 子 上 通 常 有 一 颗 , 支 持 位 的 , 包 括 公 司 的
、 公司的 和 、、、 公司的 、 公
司的 。我们设计的这块板子通常没有软件的自开发能力,所以我们需要一台通用机来
辅助开发,这台通用机可以是 或工作站,我们称辅助我们软件开发的通用机为宿主机
!,用户自己开发的板子为目标机 "#!。宿主机上要有一个集成开发环境 $%!来
辅助我们的软件开发,这套集成开发环境可以运行在 &'()" 或 )* 下,包括
交叉编译器 +,-!和交叉调试器 +$./##!0所谓交叉编译器就是在宿
主机上编译生成可以在目标机上运行的代码 1%,交叉调试器就是通过宿主机和目标机
之间的某种耦合方式实现前后台调试。我们称宿主机上的这套集成开发环境为 "&,
编译生成的目标机上的可执行代码 1% 为 。在系统安装的时候,集成调试环
境和 的原材料(一些 .2 文件)都安装到宿主机上,编译生成的在目标机上运
行的 1% 内包含操作系统。下面我们分别来介绍这两部分内容。
+++++++++++++++++++++-
++++++++++++++++++++或
第二章 VxWorks
第一节 IMAGE 的结构
的 1% 有三个层次、四个部分。
1
Host
Cross
compiler
Cross
debugger
Target
IMAGE
APP
WindKernel components
VxMP VxVMI TrueFFS
……..
BSP (板级支持包)
其 "3 内核是 &+,这个内核有两个特点:
4. &+ 是一个微内核,这个特点导致 有许多的 ,-
. &+ 对外设不做假设。所谓对外设不做假设是指操作系统不假设用户开发的
板子上是否有总线以及有什么样的总线,也不假设内存的大小及内存如何定位,不假设
(3 及有多少 (3。举一个对外设假设的例子:$3 就是一个对外设假设的操作系统,
$3 系统的移植中,外设必须符合 53 标准。&+ 对外设不做假设的优点
就是系统只与 有关,移植性好。由于 &+ 对外设不做假设,1% 中
就要有板级支持包 5(即驱动程序)来完成对外设的管理。
第二节 IMAGE 的生成
"&++++
+++++++++++
+++++++++++#+++++6#
++++++++++++++++++++++
7
7
%89.-
7&+
第三节 IMAGE 各部分的细述
2.3.1 RTOS 内核
4. 功能组成:任务的管理与调度、任务的同步与通信、动态内存的管理、软时钟的管理、
(3 管理
. 版本:用户可裁减掉程序员认为没有使用到的功能,直到只剩下最简内核(任务的管
理与调度,我们称其为纳核,可以只有 )。
+++++++++:标准的单 版本。
+++++++++:/:标准的多 版本,应用程序在多个 上运行,但仍然象在一个
2
文件系统 虚拟内存管理
网络协议栈 I/O 系统接口
多任务环境
( Kernel )
+上运行那样进行数据的交换、通信与同步。
;
3;
7统一的 :可以从两个角度来理解,即对于 支持的不同的 、
的不同版本, 都是一样的。 的 是由操作系统内核提供的服务原语搭建起
来的。服务原语,是不可打断的,这样可以保证系统调用的时间尽量小、尽量是常量和可
确定。举例:$3 的 是 )"4,)* 的 是 <,+。
=7验证性::、:$。
'7实时性:指操作系统内核采用了一种算法,使 +!和 <,+!尽
可能小、尽可能是常量和可确定。所谓可确定是指 和 有一个上限,而不是一个统计
的结果,即不会出现峰值,不会随系统任务的增多而增多。
"4+++++++++++++++++++++"
++++++++++++++++++"
+++++++++++++++++++++++++++++++++++
2.3.2 Components
1.基本模块:
$5+#;两种工作模式(中断或查询),支持系统级和任务级调试
;
>&;+支持动态地下载或卸载模块
& 支持模块: 支持利用 & 动态调试目标程序
&" 支持模块: 支持利用 &" 测试系统的代码覆盖率和内存使用情况
%); 是 的 可 裁 减 的 增 强 型 网 络 协 议 栈 ( .+%&+)
)。它除了提供 "( 协议栈,还支持其它协议。最大的特点就是采
用零拷贝机制,即打包/解包是通过指标的方式
网 络扩 展模 块: 提 供 了 丰 富 的 网 络 协议 ( 5$=70"=0$+7 ) , 路 由 协 议
3:0+7!和网络应用 -#0)0$+8(0$)0
80:"+80):+8(0":"+8(!等
文件系统:支持五种档格式:?$3、、):、$?3+、"44 标签格式(为了
实现后向兼容)
对存储介质不做假设,可以是电的 如 的 "!、磁的
)+ 模块:解决了以下问题:库集成、库不可重入、版本兼容及移植性,该库中的函
数大致可分为4类:字符处理功能、字符串处理功能、通用功能、(3 处理功
能
3*;
$,;
;
"/::;
;
7
2.领域扩展模块(领域解决方案):
",@$,;+"("&+A+#&+);交换机管理解决方案
3
应用:(4)企业网:管理 /.、、/B
+ ! 网:边缘交换机, 网关,核心路由器;
+()消费类网络:.+&,0$>+&,0网关,家用网络设备
/,+%;+" "&+A++--!
应用: 9-+5;卫星、.、.
$
+++++++++++++++$#+,
+++++++++++++++%,.&&&+5
目的机运行组件:
Personal JWorks
TM
3.0.2 Platform(Java virtual machine)
VxWorks 5.4
WindStorm
TM
1.0
Internet Applications(IceStorm Browser 5.4)
BlueThunder,TCP/IP stack
宿主机开发工具:
Tornado 2.0
WindStorm 1.0 Tools(仿真,设备管理工具)
Zinc
硬件参考设计:StormPad(StrongArm1110)
4
IDB
Hardware
BSP SSP
Hardware Adaptation Layer
TCP, UDP, IP, ICMP, BOOTP,
TFTP, DHCP
802.1d
SNMP HTTP
Telnet
Consol
e
MIB-II
RMON
v1
Bridge
Enterp
rise
Other802.1p
802.1q
Etherlike Q MIB
P MIB Other
OSPFv2
RIPv2
IGMP
2.3.3 BSP
5 是系统用来管理外设的部分,由两部分组成:初始化、驱动程序。所谓初始化是
指从系统上电复位开始直到 &+ 和 / 根任务启动的这段时间,系统的执行
过程。驱动程序就是一些包含 (3 操作的子函数。
初始化包括:+、5&+、<,+。+ 初始化 的内部寄
存器。5&+ 初始化智能 (3 的寄存器,将 &8 打通。<,+ 为系统的运行
准备数据结构,进行数据初始化。
++
驱动程序的特点是不能自动执行,只能被动调用。调用可以有三种方式:任务直接调
用、任务调用 <,+、任务调用服务。
+++++++++++++++++++++++++++++++++++++"
++++++++++/./
+++++++++++++++++++<,++++++++++++++++++++8
++++++++++++++++++++++++++++++++++++++++++++++++++++++,-
+++++++++++++++++++++++++++++++++++++++&8
所 以 驱 动 程 序 可 以 抽 象 为 三 个 层 次 : 常 规 操 作 、 与 的 接 口 、 与
,- 的接口。
++++常规操作是设备的固有操作逻辑,有两层含义:
(3 编址
微观上表现为 操作 &8 的寄存器、宏观上表现为具体操作的含义。
+++++++++++++++++++++++#
++++++++++++++(
5
CPU Init
Board Init
System Init
usrRoot
VxWorks
VxWorkk
s+
驱动程序的常规操作
驱动程序与 VxWorks+的接口
驱动程序与 component 的接口
数字电路
电 电
I/O processor 光
机械
…
控制电路
Status
Address
control
CPU
剩余32页未读,继续阅读
资源评论
qiubo666
- 粉丝: 9
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功