问题标签 [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.
cvs - 我是否应该将完整的 Tornado 树置于版本控制之下?
我终于有了一个对控制固件感兴趣的硬件人员。
这是针对 vxworks 固件的。tornado (2.2.1) gui 创建一个项目文件,其中包含已修改的文件列表,但它们似乎来自整个目录树。
所以我很想控制这些文件。
vxworks - 如何在 VxWorks 5.5 和 6.x 之间设置兼容的代码环境?
我们有一个现有的 VxWorks 5.5 项目并希望将其移植到 VxWorks 6.6。
VxWorks 6.x 有很多新功能(MMU、RTP 等),我们现在不想使用这些功能,因为这会使移植工作复杂化。
我们如何指定我们想要一个 5.5 兼容的环境?
namespaces - 在 VxWorks 中多次实例化程序时如何解决命名冲突
我需要在 VxWorks 中运行 C 程序的多个实例(VxWorks 有一个全局命名空间)。问题是 C 程序定义了在全局命名空间中冲突的全局变量(旨在供该程序的特定实例使用)。为了完成这项工作,我想对程序进行最小的更改。欢迎所有想法!
问候
顺便说一句……现在不是提及全局变量不是最佳实践的好时机!
vxworks - 如何在 VxWorks 项目中获取变量的地址
VxWorks 如何获取局部变量的地址以查看内存内容。
vxworks - 如何从 Workbench 构建 PXE 可引导引导加载程序?
我正在尝试构建一个可从 Workbench 进行 PXE 引导的 VxWorks 引导加载程序,但没有任何成功。这是我的环境的一个破败:
- VxWorks 6.6 + 最新补丁
- Workbench 3.0 + 最新补丁
- 蒙特维纳 BSP 版本 2.0/1
目标是戴尔 Precision M4400 笔记本电脑。这是我一直在做的事情,但没有成功:
VxWorks Image Project
使用配置文件在基于 Montevina BSP 的 Workbench 中创建一个新的PROFILE_BOOTAPP
。- 将以下组件添加到内核配置(否则构建失败):
-INCLUDE_TIMER_SYS
-INCLUDE_PCI_BUS
-INCLUDE_PCI_OLD_CONFIG_ROUTINES
-INCLUDE_PENTIUM_PCI
- 将
INCLUDE_PC_CONSOLE
组件添加到内核配置中以进行控制台显示(目标上没有任何串行端口) - 将构建规范设置为
default_romCompress
并添加一个名为的新构建目标vxWorks_romCompress.bin
- 构建
vxWorks_romCompress.bin
目标,这将创建相应的文件。 - 将 PXE 填充添加到文件中:
cat $WIND_BASE/vxworks-6.6/target/config/montevina/pxeBoot.bin vxWorks_romCompress.bin > vxWorks_romCompress.pxe
- 复制
vxWorks_romCompress.pxe
到我的 TFTP 服务器的适当位置,然后从我的目标执行 PXE 引导。
此时,目标成功地从 TFTP 服务器下载文件,但停在那里没有输出。控制台上没有显示任何内容。
和似乎在 Workbench 项目中设置正确(它们分别与旧 config.h 文件的设置匹配和RAM_HIGH_ADRS
)。RAM_LOW_ADRS
0x00108000
0x003080000
(请注意,Montevina BSP 确实附带了一个预构建的bootrom.pxe
引导加载程序,我已经能够成功地进行 PXE 引导。不过,我需要向引导加载程序添加几个组件,并且真的更喜欢通过Workbench 环境,而不是旧的 config.h 方法。)
我还尝试镜像 Workbench 项目的内核配置中包含的组件,以尽可能接近地匹配旧版 config.h 设置,但没有成功。这些是添加的组件(除了这些组件的任何依赖项):
INCLUDE_PLB_BUS
DRV_NVRAM_FILE
INCLUDE_GENERICPHY
DRV_INTCTLR_IOAPIC
INCLUDE_GEI825XX_VXB_END
DRV_TIMER_IA_TIMESTAMP
INCLUDE_MII_BUS
DRV_INTCTLR_MPAPIC
DRV_SIO_NS16550
INCLUDE_FEI8255X_VXB_END
DRV_TIMER_LOAPIC
INCLUDE_SIO_UTILS
VXBUS_TABLE_CONFIG
INCLUDE_INTCTLR_LIB
INCLUDE_DMA_SYS
INCLUDE_PARAM_SYS
INCLUDE_SW_FPP
所以,这就是我现在的位置。我猜问题出在上面的步骤 4-6 中,但我在文档中没有看到任何关于从 Workbench 中使引导加载程序 PXE 可引导的正确方法。
vxworks - 批处理文件疑问
我有一个如下所示的 .bat 文件,我想在其中将 IDE 中存在的全部内容重定向到某个文本文件。
我只能得到一些部分输出,即我无法得到在编译或构建过程中抛出的错误。这是正确的还是任何人都可以建议任何其他方式?
非常感谢麦迪
c++ - Issues in porting c/c++ code to VxWorks
I need to port a c/c++ codebase that already supports Linux/Mac, to VxWorks. I am pretty new to VxWorks. Could you let me know what are the possible issues that could arise?
vxworks - 将问题移植到 VxWorks
我正在发布我以前的问题的详细信息。我需要将已经支持 Linux/Mac 的 ac/c++ 代码库移植到 VxWorks。该应用程序使用套接字、pthread、互斥锁和临界区处理 API。
我对 VxWorks 很陌生。你能告诉我可能出现的问题吗?
vxworks - taskVarAdd 对同一个变量使用了两次
我使用 taskVarAdd() API 将全局结构添加到我的任务中。
但是在某些情况下,使用 taskVarAdd() API 再次将相同的全局结构添加到相同的任务中。[即,taskVarAdd() 从同一个变量的任务中被调用两次]。
该结构将维护该任务的任务 ID、消息队列 ID。
我的问题:
- 如果我们在一个任务中为同一个变量调用 taskVarAdd() 两次,会发生什么行为?
- 第一个添加的struct变量是否会被第二个变量覆盖?{感觉这个会被覆盖]
vxworks - taskVarAdd 对同一个变量使用了两次
我使用 taskVarAdd() API 将全局结构添加到我的任务中。
但是在某些情况下,使用 taskVarAdd() API 再次将相同的全局结构添加到相同的任务中。[即,taskVarAdd() 从同一个变量的任务中被调用两次]。
此结构将维护该任务的任务 ID、消息队列 ID
以下是 Benoit 编写的用于解释该场景的示例程序,
诠释v1;
无效的电视()
{
诠释 i = 0;
v1 = 1;
taskVarAdd(0, &v1);
v1 = 2;
taskVarAdd(0, &v1);
v1 = 3;
任务延迟(1);
printf("初始 v1 = %d\n", v1);
for(i = 0;i<10;i++)
{
}
}
当我使用 tornado 测试代码时,每次执行程序时都会得到不同的结果
//第一次尝试 -> tv1
初始 v1 = V1 = 3
V1 = 3
V1 = 2
V1 = 4
V1 = 4
V1 = 3
V1 = 5
V1 = 5
V1 = 5
V1 = 6
//第二次尝试
- >电视1
初始 v1 = V1 = 1
V1 = 3
V1 = 4
V1 = 2
V1 = 4
V1 = 5
V1 = 3
V1 = 5
V1 = 6
但是当我评论第二个 taskVarAdd() 并对其进行测试时,我得到了一致的预期结果,如下所示
//第一次尝试
- >电视1
初始 v1 = 3
V1 = 4
V1 = 5
V1 = 6
V1 = 7
V1 = 8
V1 = 9
V1 = 10
V1 = 11
V1 = 12
V1 = 13
//第二次尝试
- >电视1
初始 v1 = 3
V1 = 4
V1 = 5
V1 = 6
V1 = 7
V1 = 8
V1 = 9
V1 = 10
V1 = 11
V1 = 12
V1 = 13
我们正在使用 VxWork 5.5
我的问题:
在同一个任务中为同一个变量使用两个 taskVarAdd() 是否正确?
如果两个 taskVarAdd() 用于同一个任务中的同一个变量,会有什么行为?
请解释您的程序流程