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

VxWorks 6.9 内核编程指导之读书笔记 -- 多任务(二)的更多相关文章

  1. VxWorks 6.9 内核编程指导之读书笔记 -- 多任务

    概述 VxWork系统任务 任务调度 任务创建和管理 任务的错误状态 任务异常处理 共享代码和重入 概述 现代实时操作系统是基于多任务和任务间通信的概念的.多任务环境运行一个实时进程RTP可以被作为一 ...

  2. VxWorks 6.9 内核编程指导之读书笔记 -- ISRs和Watchdog Timer

    中断服务程序 ISR 硬件中断处理是实时系统的关键,因为它是外部时间通知系统的方式. ISR亦称为中断处理函数,是对中断的正确响应.可以使用任何ISR连接到任何没有被VxWorks使用的中断上.当关联 ...

  3. VxWorks 6.9 内核编程指导之读书笔记 -- VxWorks kernel application (一)

    #1 什么是内核应用程序? #2 开发内核应用程序注意事项 什么是内核应用程序? 内核应用程序不同于RTP程序,它允许在内核态,与操作系统使用相同的地址空间.因此,它与操作系统会相互干扰.它可以编译成 ...

  4. VxWorks 6.9 内核编程指导之读书笔记 -- VxWorks Small-Footprint Configuration

    什么是Small-footprint? Small-footprint常见关键配置? 如何配置Small-footprint? 什么是Small-footprint? Small-footprint配 ...

  5. VxWorks 6.9 内核编程指导之读书笔记 -- POSIX

    POSIX能力 VxWorks扩展了POSIX,为了移植,VxWorks提供了额外的POSIX接口作为可选组件.VxWorks实现了POSIX 1003.1(POSIX .1)一些传统接口以及POSI ...

  6. VxWorks 6.9 内核编程指导之读书笔记 -- Singnals

    Signals 信号是操作系统用于异常处理和异步控制流的关键.在很多方面,信号相当于软件方面的硬件中的中断.操作系统产生的信号包括总线错误和浮点处理异常.信号也提供了API来管理和产生信号.在应用程序 ...

  7. VxWorks 6.9 内核编程指导之读书笔记 -- C++开发

    5.1 介绍 针对C++的VxWorks配置 C++头文件 使用C++启动任务 C和C++之前调用代码 C++编译器说明 在信号处理和ISR中使用C++ 下载C++编写的内核模块 C++编译器的不同 ...

  8. VxWorks 6.9 内核编程指导之读书笔记 -- VxWorks Kernel application (二)

    #1 内核对象的静态实例化 内核对象的静态实例化 任务的静态实例化 VX_TASK宏用来在编译时声明一个任务对象.该宏带有2个参数:任务名和栈大小.不像taskSpawn函数,任务名称可以是NULL. ...

  9. 《Java编程思想》读书笔记(二)

    三年之前就买了<Java编程思想>这本书,但是到现在为止都还没有好好看过这本书,这次希望能够坚持通读完整本书并整理好自己的读书笔记,上一篇文章是记录的第一章到第十章的内容,这一次记录的是第 ...

随机推荐

  1. 次表面散射(SubSurface Scattering) Shader 【转】

    原文 http://www.azure.com.cn/article.asp?id=231 用深度值近似模拟物体的厚度,厚度越小处透光越多. varying vec4 position;varying ...

  2. 【JavaScript】对比12 款优秀的JavaScript MVC/MVVC框架 你最喜欢Backbone or Ember

    http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/ 目前基本所以后台程序都是面向对象MVC模式开发, ...

  3. box-flex等分总结

    首先要知道在应用 box-flex 时必须给父容器定义 css 属性 display:box 其子容器才可以进行划分. .box{ display: -webkit-box; display: -mo ...

  4. centos 安装http协议的git server

    1.服务器端安装httpd,git,gitweb等 1 #yum install httpd git git-daemon  gitweb 2.服务器端初始化仓库 1 2 3 #mkdir -p /d ...

  5. 一款基于jQuery底部带缩略图的焦点图

    之前我们已经分享过不少实用的jQuery焦点图插件了,今天我们要介绍的这款jQuery焦点图插件是带有缩略图的,我们只需点击缩略图即可切换至相应的图片,图片切换的时候出现淡入淡出的动画效果. 在线预览 ...

  6. dpkg的用法

    转载:http://blog.csdn.net/sunjiajiang/article/details/7252593 dpkg是一个Debian的一个命令行工具,它可以用来安装.删除.构建和管理De ...

  7. 两种方式连接mysql

    一种方式:运行命令符后,mysql -u root -p(如果不成功,说明环境变量没配,命令行到 mysql的bin目录下,然后运行mysql -u root -p 应该成功了) 另外一种方式,直接有 ...

  8. Android获取网页上的图片的代码

    public Bitmap getWebBitmap(String imgUrl) { Bitmap bitmap =null; try { InputStream inputStream = nul ...

  9. SQL数据缓存依赖 [SqlServer | Cache | SqlCacheDependency ]

    前言 本文主要是对<ASP.NET 2.0开发指南>——<数据缓存>章节内容的提取并略有补充. 参考资料 1.     <ASP.NET 2.0开发指南> 2.   ...

  10. JSONP 跨域解决办法

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...