VxWorks的系统任务
VxWorks在引导时启动的系统任务依赖于配置,有些总是运行。任务集与VxWorks的基本配置相关,很少的任务常用于可选的组件。
注意:别挂起、删除或改变任何系统任务的优先级。否则将导致不可预期的系统行为。
基本VxWorks任务
Root Task任务名称
| tRootTask
|
优先级
| 0
|
触发事件
| 系统启动
|
组件
| N/A
|
描述
| 是第一个被内核执行的任务。入口函数是usrRoot,它初始化大部分VxWorks的功能。通常该任务在所有初始化完成之后终止。
它启动tLogTask,tExcTask任务,网络任务和tRlogin后代。
|
引用
| VxWorks BSP Developer’s Guide
|
Logging Task任务名称
| tLogTask
|
优先级
| 0
|
触发事件
| 从ISR或任务中调用logMsg函数
|
组件
| INCUDE_LOGGING
|
描述
| 该任务被VxWorks模块调用来记录系统消息和从不得不执行I/O的ISR中的消息。
|
引用
| logLib API
|
Exception Task任务名称
| tExcTask
|
优先级
| 0
|
触发事件
| 从ISR中调用excJobAdd函数
|
组件
| INCUDE_EXC_TASK
|
描述
| 代表ISR执行在中断时不能执行的函数调用。必须在系统中有最高优先级。
|
引用
| excLib API
|
Job Task任务名称
| tJobTask
|
优先级
| 0 while waitting for a request
|
触发事件
| N/A。所有被VxWorks系统压入队列的工作。
|
组件
| INCUDE_JOB_TASK
|
描述
| 代表任务执行执行工作。它运行在优先级0,然而等待请求,动态调整优先级来匹配请求执行工作的任务。一个主要用途是处理任务自删。
|
引用
| |
SMP ISR Task任务名称
| tISRn
|
优先级
| 0
|
触发事件
| 调用isrDeferJobAdd的设备中断
|
组件
| INCUDE_ISR_DEFER
|
描述
| 当设备驱动执行isrDeferJobAdd时,代表设备驱动来执行函数调用。n指的是延期任务真正运行的CPU的索引。按需要创建单独的任务,每个任务与CPU相关联。SMP感知的设备驱动,将延迟中断到运行在本地CPU的tIsrN任务处理,为了避免交叉处理通信的负载。
|
引用
| isrDeferLib API
|
Network Task任务名称
| tNet0
|
优先级
| 50(默认)
|
触发事件
| 报文到达,传输完毕,网络协议定时器过期,套接字请求等。
|
组件
| INCUDE_NET_DAEMON
|
描述
| tNet0为VxWorks网络协议栈执行网络驱动和网络协议处理。
|
引用
| Network Stack Programmer‘s Guide
|
WDB Target Agent Task任务名称
| tWdbTask
|
优先级
| 3 (默认)
|
触发事件
| N/A
|
组件
| INCUDE_WDB
|
描述
| 当目标代理被设置为以任务模式运行时,该任务呗创建。响应从主机工具过来的请求。
|
引用
| E.WDB Target Agent
|
WDB Target Agent Proxy Task任务名称
| tWdbProxyTask
|
优先级
| 55 (default)
|
触发事件
| N/A
|
组件
| INCUDE_WDB_PROXY
|
描述
| 当VxWorks没有配置网络栈时,代理用于与WDB通信。代理通过TCP/IP与主机工具通信,支持UDP/IP,TIPC,和MIPC。
|
引用
| E.WDB Target Agent
|
可选组件的任务
下面的任务是VxWorks常见配置中的额外的任务
Kernel Shell Task任务名称
| tShellN
|
优先级
| 1 (可配置)
|
触发事件
| 系统引导(默认)
|
组件
| INCUDE_SHELL
|
描述
| Kernel Shell作为任务发起。从内核Shell中调用的任何函数和任务,不是发起,都运行在tShellN的上下文中。在控制台shell中的任务名称是tShell0。内核shell可以被重入,因此可以在同时运行多个shell。远程登录的用户,名称也是一样的。如他ShellRem1。tShell的基本名称是可以配置的。
|
引用
| VxWorks Kernel Shell User's Guide
|
Kernel Shell Login Task任务名称
| tRlogind
|
优先级
| 55
|
触发事件
| 新的rlogin连接。
|
组件
| INCUDE_RLOGIN
|
描述
| 该登录后台允许用户远程登录。接受从另外一个VxWork或主机系统并启动tRlogInTask_hexNum任务和tRlogOutTask_hexNum任务(这里的_hexNum表示该连接的十六进制数值)。只要远程用户没有退出,该任务一直存在。另外,除非shell被配置成兼容5.5模式,服务器启动远程shell任务tShellRemdecNum(这里的decNum指向远程shell会话的十进制数值)。
|
引用
| rlogLib API
|
Kernel Shell Telnet Task任务名称
| ipcom_telnetd
|
优先级
| 50
|
触发事件
| 新的telnet连接
|
组件
| INCUDE_IPTELNETS
|
描述
| 运行用户通过telnet远程登录。ipcom_telnetd启动其它任务服务新的连接,包括ipcom_telnetspawn,tStdioProxyhexNum和 tLoginhexNum。除非shell被配置为兼容5.5模式,否则远程shell任务tShellRemdecNum被启动。
|
引用
| Wind River Network Stack Programmer's Guide
|
RPC Task任务名称
| tPortmapd
|
优先级
| 54
|
触发事件
| 客户端查询RPC服务时
|
组件
| INCUDE_RPC
|
描述
| 它作为RPC服务器处理运行在同一台机器上的RPC服务的中央注册器。RPC客户端通过查询它来找到如何与各种服务器通信的办法。
|
引用
| rpcLib API
|