![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Vxworks
bbs598598
这个作者很懒,什么都没留下…
展开
-
消息队列和管道的区别
管道通信方式的中间介质是文件,通常称这种文件为管道文件。两个进程利用管道文件进行通信时,一个进程为写进程,另一个进程为读进程。写进程通过写端(发送端)往管道文件中写入信息;读进程通过读端(接收端)从管道文件中读取信息。两个进程协调不断地进行写、读,便会构成双方通过管道传递信息的流水线。利用系统调用PIPE()创建一个无名管道文件,通常称为无名管道或PIPE;利用系统调用MKNOD()创建一个有名管转载 2012-04-29 23:23:43 · 5293 阅读 · 0 评论 -
vxWorks中对时间的精确统计
原始资料来源:http://topic.csdn.net/u/20070703/12/d94a3121-4272-4715-9de4-d39e201f6f56.html我查了一下,好多网友也给出了不少关于获得毫秒级时间的方法和建议,粘贴如下, 供大家参考: 帖1: 如果支持Timestamp,BSP应提供以下函数 sysTimestampConnect()转载 2012-07-09 14:45:22 · 11255 阅读 · 2 评论 -
vxworks错误调试
alignmentException current instruction address: 0x00082024Machine Status Register: 0x0000b030Data Access Register: 0x02716a0bCondition Register: 0x20000048Data storage interrupt Register: 0x原创 2012-07-02 22:14:54 · 2417 阅读 · 2 评论 -
VxWorks下使用双向链表lstLib的小例子
#include #include #include typedef struct _Queue{ NODE * next; NODE * prev; int age; char name[255];} QUEUE;LIST list;void TestList(){ QUEUE *p; int i转载 2012-07-03 15:45:39 · 3324 阅读 · 0 评论 -
火星探测器的优先级翻转
From: Mike Jones mbj@MICROSOFT.comSunday, December 07, 1997 6:47 PM翻译:zhou, 2002 自从1997年7月4日抵达火星表面后,火星探路者(The Mars Pathfinder)一直被大肆宣称为“完美的”。它确实包含了很多成功之处,从它那非传统的着陆方式――被巨大的气囊包裹着蹦蹦跳跳着陆,然后释放出 火星转载 2012-07-14 10:18:46 · 2452 阅读 · 2 评论 -
几次由于软件失误造成的航天事故
1. Ariane 5 爆炸, 调查小组后来分析是由于导航软件部分的一个类型转行造成的,将一个64位的浮点数转换成了16位的有符号整数。 2. Mars Pathfinder到达火星后不久,持续不断的重启,当时很多人都以为是因为系统做的工作太多,超负荷了才不断重启的。但在后来的一次IEEE Real-Time Systems Symposium会议上,VxWorks(pathfind转载 2012-07-14 09:46:25 · 6452 阅读 · 0 评论 -
NASA好奇号火星车安度 WindRiverVxWorks再建奇功
好奇号火星漫游车使用的是BAE制造的RAD750处理器,运行的是Wind River Systems开发的嵌入式实时操作系统VxWorks。根据开发者的幻灯片介绍(PDF),好奇号代码共250万行,程序语言是C,多是用Python脚本自动生成,NASA JPL共有30名程序员参与开发,测试团队超过10人,超过一百万行代码是手写。程序包括150个独立模块,每个模块执行不同的功能,高度耦合转载 2012-08-08 08:08:59 · 3900 阅读 · 0 评论 -
Q\A about VME bus for Vxworks
Aditya Amar wrote:> Calling upon all VxWorks Gurus for help !!> > My problem has to do with handling interrupts from the VMEbus> I am using various custom designed boards ( which are connected to转载 2012-08-14 20:19:37 · 770 阅读 · 0 评论 -
Q\A about VME bus for Vxworks 2
Aditya Amar wrote:> 1.The VMEbus has 7 levels of prioritized interrupts (IRQ1...IRQ7) . If> I am generating IRQ4 from our custom designed h/w board then what> should be the argument in the call to转载 2012-08-14 20:22:10 · 967 阅读 · 0 评论 -
VxWorks下MPC860的中断处理机制及其应用
嵌入式实时操作系统VxWorks提供的中断处理机制中断延迟小,应用编程方便。MPC860是目前在网络与通信领域应用非常广泛的一款微处理器芯片。论文详细分析了VxWorks及MPC860的中断处理机制,阐述了中断处理应用编程的过程,并给出了应用实例。 1 引言 中断是外部事件通知操作系统的最常用手段。中断处理机制是计算机多任务环境运行的基础,是系统实时性的保证[1].转载 2012-08-21 15:44:44 · 876 阅读 · 0 评论 -
转载的PCI驱动帖子整理
我有一块FPGA+PLX9030的继电器板,板的作用就是要通过上位机控制继电器的动作,在Windows平台下的驱动已经完成,并验证好用。现在想在运行有VxWorks5.5的Pentium3目标机上使用,则需要开发VxWorks的PCI驱动,目标机安装的是Tornado2.2版本。看了不少论文,里面提到了一些有用的思路,然后我就编写了下面的PCI设备初始化函数: int pciDevConfi转载 2012-09-01 08:35:22 · 2053 阅读 · 0 评论 -
关于vxworks下vme中断的理解(universeII转接桥)
工控机CPU为PPC,板卡外接为口VME总线。CPU通过PCI总线连接到universeII(PCI-VME转接桥),universeII连接到VME总线,如图:完成中断处理主要在BSP如下文件中,syslib.c universe.c1、系统启动时开启universe中断,从CPU看来所有的VME端中断经过universe转换,显示为一个PCI中断。2、其中原创 2012-08-23 08:34:48 · 4237 阅读 · 1 评论 -
vxWorks中对时间的精确统计2
wasuke大虾确实很严谨。争辩也没有关系呀,论坛本来就是通过讨论,达到相互学习,共同成长的目的嘛。不过我对于你提出的一些观点有一些不解。下面做一些分析。把tick设置成1ms再用tick进行延时1ms确实是不准确。但对于命题来说:是“获得毫秒级时间”,我的理解是:精确到若干个毫秒,比如说8ms,大概也就是7.x到8.x个毫秒。大致精确了。所以我对“获得毫秒级时间”的理解是:允许误转载 2013-03-14 21:12:58 · 5936 阅读 · 1 评论 -
cpu时钟频率和MIPS
首先,了解下晶振的作用。没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。 单片机工作时,是一条一条地从RoM中取指令,然后一步一步地执行。单片机访问一次存储器的时间,称之为一个机器周期,这是一个时间基准。—个机器周期包括12个时钟周期。如果一个单片机选择了12MHz晶振,它的时钟周期是1/12us,它的一个机器周期是12×(1/12)us,也就是1us。 MCS—51转载 2013-03-19 16:38:40 · 6459 阅读 · 0 评论 -
VxWorks启动后系统自带的任务
这里只总结几个VxWorks启动后系统自带的任务 (即:目标板加电启动成功后,系统便已经开始运行的任务) 1.tUsrRoot (根任务) VxWorks内核最先执行的一个任务,其入口点为文件config/all/usrConfig.c中的usrRoot()函数,它负责初始化VxWorks工具,并创建注册、异常处理、网络通信任务和tRlogind等任务。一般来说,在所有的初始化转载 2012-06-27 09:36:42 · 1609 阅读 · 0 评论 -
常用
#define IMPORT extern#define LOCAL static#define BOOL int#define ERROR -1#define NULL 0转载 2012-06-26 18:55:24 · 448 阅读 · 0 评论 -
FL2440_uCOS-II+ucGUI移植
需要的软件包:天嵌移植好的uCOS-II工程,ucgui324.zip,ucGUI2.rar一:在天嵌移植好的uCOS-II基础上增加ucGUI支持:移植前工程文件(天嵌移植好的uCOS-II工程)如下(不上图了): (uCos+ucGUI_移植前.rar) 二:添加相应工程文件并除错:1.增加工程文件夹,如下图: (uCos+ucGUI_1.rar)转载 2012-06-03 22:05:15 · 2002 阅读 · 0 评论 -
VxWorks BSP 制作概要
要了解VxWorks BSP的制作,首先要对VxWorks的启动过程有个大体的了解。下面首先说说VxWorks的启动过程。一般来说,所有的处理器执行相同的逻辑步骤初始化和加载VxWorks,但是一些处理器可能会有一些特殊的步骤,而另外一些则可能跳过一些步骤。但它们都进行如下步骤,入:初始化处理器,并在存储器的特定位置提供一段代码(可能还有一些表)以供处理器上电或重启时运行。这段代码设置处理器的状态转载 2012-06-03 16:58:18 · 1623 阅读 · 1 评论 -
Workbench3.0-vxworks6.6仿真测试和调试指南
VxWorks5.5只能创建静态库(.a),VxWorks6.0之后增加了动态链接库(.so)的功能,方便了多进程使用动态库。本文继承win32和linux编程入门的一贯风格,通过简单的动态库生成步骤,并编写RTP程序进行测试,让您初步认识VxWorks6.6强大的功能,同时也让我们注意到VxWorks6.6比VxWorks5.5在使用要复杂很多。我相信通过这些简单的编程知识点,您基本掌握了VxW转载 2012-06-06 09:32:18 · 3532 阅读 · 1 评论 -
VxWorks6.6动态创建RTP例程
VxWorks6.6中的RTP程序与WINDOWS的exe程序类似,我们可以使用操作系统的进程创建函数API,在程序中动态创建和调用。下面主要通过Download Kernel moudle来测试该API使用,整个调试过程与Tornado2.2基本相似,具体操作流程如下面描述。1、创建Downloadable Kernel module工程2、新建main.cpp文件3、mai转载 2012-06-06 09:41:56 · 3637 阅读 · 1 评论 -
Workbench3.0-vxworks6.6仿真测试和调试指南
VxWorks5.5只能创建静态库(.a),VxWorks6.0之后增加了动态链接库(.so)的功能,方便了多进程使用动态库。本文继承win32和linux编程入门的一贯风格,通过简单的动态库生成步骤,并编写RTP程序进行测试,让您初步认识VxWorks6.6强大的功能,同时也让我们注意到VxWorks6.6比VxWorks5.5在使用要复杂很多。我相信通过这些简单的编程知识点,您基本掌握了VxW转载 2012-06-06 09:43:22 · 1752 阅读 · 2 评论 -
Sqlite3.78移植到VxWorks6.6
1、准备工作 首先从网上下载一个Sqlite Developer 3.8.5管理工具,SharpPlus Sqlite Developer, 强大的Sqlite3数据库管理程序,具有如下功能:☆、强大的SQL编辑器☆、Sqlite Sql语法高亮☆、Sql编辑历史☆、Sql关键字自动完成☆、括号高亮匹配☆、表,字段名自动完成☆、自动SQL语法错误提示☆、支转载 2012-06-06 09:52:27 · 3608 阅读 · 1 评论 -
Tornado目录树
Tornado目录树 ┌host Tornado一些主机上的工具 ├SETUP 安装程序 /usr/wind ───┼share转载 2012-06-12 16:46:21 · 1256 阅读 · 0 评论 -
Simulator 学习小结
1. 虚拟硬件支持l VxWorks控制台l 系统计时器l MMUl NVRAMl 虚拟磁盘—用于文件系统l 时间标志驱动l 实时时钟2. VxWorks simulator缺省配置l 内核shelll Wind ri转载 2012-06-13 22:06:27 · 1308 阅读 · 0 评论 -
配置vxsim虚拟网卡(tornado)
1. 首先要安装虚拟网卡,方法: 添加新硬件->添加新设备->选择网卡->从磁盘安装->选择目录为Tornado2.2ppc\host\x86-win32\bin里的netULIP.inf然后安装。 安装完毕后要进行配置,例如ip地址为192.168.10.110,子网掩码为255.255.255.0 2. configure target server:tool->c转载 2012-06-13 22:55:24 · 1170 阅读 · 0 评论 -
ifconfig 用法详解
6.6没有ifAddrGet这几个函数了,从6.7又开始有了。我觉得可以自己编一个这个函数,大概思路是struct ifreq req;s=socket(AF_INET,SOCK_DGRAM,0);ioctl(s,SIOCGIFADDR,(int)&req);对req做些转换。转自Tony嵌入式论坛,地址:http://www.cevx.com/bbs/thread转载 2012-06-16 14:18:42 · 4894 阅读 · 0 评论 -
vxworks与linux比较
vxworks与linux内核比较vxWorksLinux内核结构微内核,内核只提供了基本的服务,如:任务管理,内存管理,中断处理等宏内核,除了基本的服务,内核还包括文件系统,网络协议等运行模式应用程序运行在“实模式”下,无用户模式和内核模式之转载 2012-06-16 19:04:58 · 1255 阅读 · 0 评论 -
字节对齐
gcc 中的"__attribute__ ((packed))" __attrubte__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐。#define __u8 unsigned char#define __u16 unsigned short/* __attribute__ ((pac转载 2012-07-04 08:47:24 · 1003 阅读 · 0 评论 -
一种VxWorks内存管理方案
摘要:探讨嵌入式开发对内存管理的基本要求、嵌入式开发内存管理的关键问题以及给出一种VxWorks内存管理方案,即把除VxWorks系统保留内存以外的内存分为三种类型进行管理:固定大小的缓冲池、动态可变的堆以及由各种固定大小的缓冲区组成的队列。 目前,针对有内存管理单元MMU(Memory Management Unit)的处理器设计的一些桌面操作系统,如Windows、Linux,使用了虚转载 2012-06-20 10:40:57 · 3525 阅读 · 0 评论 -
VxWorks for PowerPC的内存分配
PowerPC系统构造的内存构造包括5大局部,离别为系统映像(System Image)之前的系统启用相干的低端内存,系统映像,Host Memory Pool,间断堆栈以及系统内存池(System Memory Pool)。下面就各局部举行推荐。1. 系统映像之前的低端内存包括间断向量表(Interrupt Vector Table),分享内存符号(SM Anchor),启用参数转载 2012-06-20 10:27:56 · 2921 阅读 · 0 评论 -
PC中可重入函数
主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。 也可以这样理解,重入即表示重复进入,首先它意味着这个函数可以被中断,其转载 2012-06-25 09:54:47 · 2075 阅读 · 0 评论 -
vxworks环境下的CPU\内存\任务\异常 监控
任务运行状态监控任务运行时的状态信息主要包括任务名、任务状态、当前占用CPU的比率、任务优先级等。VxWorks的Spy工具利用辅助时钟的中断服务程序,在指定的统计周期内,统计应用任务、Interrupt、Kernel、Idle状态等所获得的ticks总数,以此分别统计它们的CPU占用率。VxWorks的spyLib函数库提供了对任务名、ID、优先级等任务属性信息以及CPU空闲率信息进行监控的转载 2013-03-19 16:25:45 · 9419 阅读 · 0 评论