|
课程先决条件 通用要求: 1. 一年的c语言程序设计经验,熟悉基本的数据结构、指针和预处理命令(&basic control structures)等。 2. 对操作系统和调试技术有一定的了解。 开发平台相关要求: 1. UNIX下能够使用文件系统和csh shell,能通过vi、emacs或其他编辑器编辑文件,会使用X windows GUI。 2. Windows下熟悉windows NT/XP/2000图形界面和命令行接口,熟悉文件系统和标准的windows编辑器。
课程目标 1. 了解Tornado/VxWorks。 2. 能够启动VxWorks并下载目标文件到VxWorks目标机中。 3. 使用Tornado工具进行交叉开发。 4. 控制VxWorks中任务的交互以及任务间的通信。 5. 使用WindView分析多任务应用程序。 6. 使用VxWorks原语访问互斥资源以及同步任务。 7. 使用定时器周期执行代码。 8. 区分标准IO、formattedIO和basicIO。 9. 创建和使用文件系统。 10. 从VxWorks上访问远程机器上的文件系统。 11. 配置VxWorks,链接用户自定义代码。
目录 1Getting Started Tornado组件 帮助 软/硬件配置 启动VxWorks 启动Tornado WDB Agent 2Project 工程概要 自启动工程以及相应的VxWorks配置 集成仿真器 可下载模块工程 编译选项 3WindSh and Browser WindSh Browser 4CrossWind 概述 准备开始调试 任务级调试(Basic Debugging) 系统级调试(System-level Debugging) 5Real-Time Multitasking 简介 任务基本知识 任务控制 错误状态 系统任务 6WindView 2.0 WindView配置 Events 7Semaphores 概述 二进制信号量与同步 互斥 8Intertask Communication 简介 共享内存 消息队列 管道 9Memory 内存分配 10Exceptions, Interrupts and Timers 异常处理以及Signals 中断服务程序 定时器 11I/O and File System 简介 Character I/O Block I/O 12Networking 简介 VxWorks网络配置 路由协议 远程访问服务 13Reconfiguring VxWorks 产品发布 VxWorks Start-up Appendix 代码举例
-------------------------------------------------------------------------------- 以下是额外一些资料
Tornado Train Workshop 要点: 1.Get start BootRom的启动参数,命令,如 c,p,h etc Tornado的文件目录结构,target server,WDB agent
2.project 增裁减componets, bootable project与downloadable project的区别, 如何将.o文件加入到一个project中, 生成库文件.a及替换库中的驱动。
3.Browser and Shell Shell的常用命令:如 i,ti,devs,pwd,ls,cd,d,lkup,sp,period,td,tr,ts,moduleShow,ld,repeat shell的批处理命令,符号表的概念 browser的使用,check stack,module show, spy,tasks,memory,vector table
4.crosswind task vs. system level debugging的区别, 如何调试一个已经运行任务,如何调试一段代码 几种断点的区别:temp breakpoit,Global breakpoit,普通breakpoit GDB的一些常用命令 AutoAttach的使用 如何进入系统级调试 系统级调试
5.real-time multitask real time的概念 task的几种状态 TCB的情况 抢占式调度和轮询调度 sysClkRateGet(),sysClkRateSet() task ID,task Name的情况 taskSpawn,taskDelete,taskResume,taskSuspend,taskDelay, task的优先级的动态改变 task Hooks errno
6.Windview and trigger windview的使用 通过target server上传windview图像 trigger的使用 用户event的定义,如e()的使用
7.semaphore 几种semaphore: binary mutex Counting 各自的使用场合 binary 与 mutex的区别 binary 同步问题 mutex 资源保护问题,优先级逆转问题的解决 死锁问题 资源保护的几种方式 semaphore taskLock intLock
8.Intertask Comm share memory lstLib rngLib message queue message's priority pipe message queue 与 pipe的比较
9.Memory memory layout some macros memory partition
10.Exceptions,Interrupts,Timers exception handling and signal 如何注册signal handler: signal(signo,handler) ISR的限制 如何察看矢量表 ISR的调试 system clock tick watchdog的两种使用例子 轮询的几种方式
11. I/O and file system i/o system的作用 driver的安装 Fd的情况 基本i/o函数 select()的使用 stdio与fioLib的比较 File system框图 dos file system 文件系统的使用例子
12.Networking 网络的配置 网络模块,MUX的作用 hostAdd(),hostShow(), Routing Protocols mRouteAdd(),routeShow(), Remote Services : server端,rlogin,telnet,NFS,FTP client端,nfsDrv-NFS,netDrv-FTP,RSH 可作一个FTP server的例子
13.Reconfiguring scaling vxworks autoscaling vxworks usrAppInit() 几种vxworks的映像文件 启动过程
14.补充的一些要点 用软盘作bootrom启动盘过程 target server的配置 用串口启动vxworks 应用程序调用driver的几种方式 网络启动的配置,包括Windows下ftp server的配置
BSP Train: 1.Bsp overview BSP 作用,Init 和 driver两方面 框图 2.vxworks image的类型 3.BSP 启动过程 Romable startup loadable startup 4.对应的启动函数及文件 5.BSP的文件及目录结构 \config\bsp, config\comps\src, src\drv,src\config,etc. 各目录文件的修改
|