问题标签 [vxworks]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1382 浏览

networking - vxWorks FTP 启动错误 0x8800dd

在尝试更新设备上的固件时,我把它变砖了。现在我正在尝试通过 FTP 从 vxWorks 引导 rom 引导它。

它成功连接并从 FTP 服务器下载固件映像文件,但随后失败并出现以下错误:

vxWorks 不是我的领域,因此非常感谢任何帮助。

0 投票
1 回答
960 浏览

embedded - 如何在 VxWorks 6.3 中计算共享内存锚地址

我继承了通过 CompactPCI 背板连接的 3 台 SBS(现为 GE Fanuc)C2k 单板计算机,并且需要在它们之间启动和运行共享内存。我的理解是,在前几年,值SM_ANCHOR_ADRS最初是由某人“发现”的,每当 PMC 被换入或换出时,值都会SM_ANCHOR_ADRS被摆弄,直到它再次起作用。这一次,我不想随机戳内存地址,而是想了解这个值是如何开始的。

我注意到在 VxMP 手册中,有一个关于如何为 VME 计算这个地址的描述,给定一个内存映射和已知的偏移量。我尝试在 C2k 用户手册中查找类似的内存映射,但不存在。(我在板卡支持包中看到的关于 PCI 自动配置的部分可能与此有关?)

此外,如果有用,内核配置中的相关位:
主:

从卡:

有了这些信息,我将如何为 CompactPCI 背板上的设备计算 VxWorks 的共享内存锚地址?

0 投票
3 回答
1473 浏览

network-programming - 如何使用 VxWorks etherOutputHookAdd

我很难让 etherOutputHookAdd() 工作。它的对应物 etherInputHookAdd() 似乎工作正常。有问题的操作系统版本是 VxWorks 5.4 。

钩子代码看起来像这样(我打算实际运行的代码更复杂,但这只是一个例子。)

我可以像这样从 vxworks shell 连接 etherInputHookAdd

这将返回 0(状态正常),之后检查“anCounter”变量将表明活动符合预期。但是,输出方向没有这样的运气。我已经尝试过这两个命令行

这两个都返回 OK,但钩子例程似乎根本没有被调用。我最好的假设是(1)我错过了一个初始化步骤,或者说错了,(2)etherOutputHookAdd 实现只是一个存根,(3)你不能从shell调用它,或者(4)也许我的网卡驱动程序实现是错误的。

欢迎任何解决核心问题的想法 -我如何查看我的董事会发出的内容- 都是受欢迎的。

0 投票
1 回答
1052 浏览

linux - Linux/vxworks 信号

我在 vxworks 手册中遇到以下内容,想知道为什么会这样。

信号做了哪些类型的事情使它们不受欢迎?

在应用程序中,信号最适合错误和异常处理,而不是通用的任务间通信。

0 投票
2 回答
1523 浏览

vxworks - VxWorks 6.6 + / Wind River 3.0 上的谷歌测试

有没有人成功地将 googleTest 移植到 WindRiver 3.0 / VxWorks 6.6 中的实时进程?

我能够构建 gtest,但在链接时出现一些错误。我可以修改这些特定的代码部分,但这只会产生运行时错误。

这是我所看到的: googleTest.so:对isascii(int)' googleTest.so: undefined reference togettimeofday 的未定义引用 googleTest.so:对“strcasecmp”的未定义引用

我有 2 个共享库 (.so):1 个用于 gtest,1 个用于 gtest_main。我有 1 个 RTP(实时进程),其中有我的测试代码。

注意:要让 googletest 在 vxworks 中编译,我必须修改一些标志: 具体来说: GTEST_HAS_POSIX_RE - 0 GTEST_HAS_TR1_TUPLE - 0 GTEST_HAS_STREAM_REDIRECTION 0

非常感谢任何见解或建议。

0 投票
1 回答
2197 浏览

c - VxWorks sockLib 是否支持 SO_RCVTIMEO 选项,setsockopt 可以使用该选项来设置 recv 调用的超时,就像在 winsock 中一样?

VxWorks sockLib 是否支持 SO_RCVTIMEO 选项,setsockopt 可以使用该选项来设置 recv 调用的超时,就像在 winsock 中一样?

以下是 Windows 中的调用示例:

令人困惑的是,setsockopt 返回的状态并不表示来自未知选项的错误,并且 SO_RCVTIMEO 是在 sockets.h 中定义的。该调用仍然没有产生所需的操作,我找不到任何说明它受支持的文档。

如果不支持,对等效方法有什么建议吗?

我正在使用 VxWorks 5.4。我很想知道它是否适用于更高版本。

0 投票
3 回答
2331 浏览

serial-port - vxworks 中的串行端口访问不起作用

我需要通过 vxworks 中的串行端口发送数据。我正在使用以下代码。但它不起作用。谁能指出出了什么问题?

运行此代码后,没有数据通过串行端口传输,而是通过终端(Tornado shell)传输。系统有两个串行设备/tyCo/1 和/tyCo/0。我都试过了,但问题仍然存在。

提前感谢 Likhin。

0 投票
1 回答
3378 浏览

c - 在 vxworks 上设置串口波特率失败

我正在编写一个涉及通过串行端口发送数据的 vxworks 任务。打开串口成功。但是当我尝试使用 ioctl() 系统调用设置端口的波特率时,它会失败。我在下面给出代码。谁能解释一下?第二个功能总是失败......

0 投票
1 回答
1901 浏览

c - 错误的编译器选项使用会导致 TLB(加载字)异常吗?

我在 VxWorks 中遇到 TLB(加载字或取指令)异常。当我进一步分析时,我了解到所引用的内存地址并未指向有效的内存位置。

据我了解,这个问题可能是由于一些内存损坏(可能的内存覆盖)而发生的。但是,在 purify 下在 Windows 中分析代码和执行同一段代码不会显示任何内存错误。

所以,我想知道是否有任何编译器选项可能导致这种情况?可能吗?

另外,有关如何调试此类问题的任何指示?

0 投票
6 回答
4494 浏览

c++ - 中断处理程序中的浮点操作(PowerPC、VxWorks)

我还没有找到任何资源可以准确地回答我在我正在开发的软件中看到的问题,所以我会在这里问天才!

首先,我在 PowerPC 处理器上运行 VxWorks。

在尝试调试一个单独的问题时,我尝试在中断处理例程中抛出一些快速而肮脏的调试代码。它涉及一个双精度浮点运算来存储一个感兴趣的值(即,自从我看到最后一次中断进来以来已经过了多长时间),我稍后在我正在运行的线程中的处理程序之外使用它。我没有看到这方面的问题(当然,这需要更长的时间,但从时间上讲,我很满意;中断不会太快出现)但是 VxWorks 肯定不喜欢它。它在到达该代码时始终崩溃,这是重新启动系统的严重崩溃之一。我花了一些时间才找到作为问题根源的双重操作,我意识到它甚至不是双重“操作”,甚至从中断中调用的例程中返回一个常量双重失败也惨遭失败。

在 PowerPC(或一般的其他架构)上,在中断处理程序中执行浮点操作并在中断处理程序调用的函数中返回浮点(或其他类型)值通常存在问题?我不知道为什么这会导致程序崩溃。

(解决方法是将自上次中断以来的“滴答声”转换为自上次中断以来的“时间”,直到代码超出处理程序,因为它似乎可以很好地处理长整数操作。)