问题标签 [lynxos]
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.
visual-studio - 使用 Visual Studio 2005 构建 LynxOS 应用程序
我正在尝试为 LynxOS(硬实时操作系统)构建应用程序。到目前为止,最好的方法是使用一个名为 VisualLynx 的插件,它将自己附加到 VS 6.0 并用其交叉编译器链接器等替换它的 make 系统。VS 6.0 使用起来真的很痛苦,所以我想使用 VS 2005 但它似乎 VS 2005 没有附加功能。有没有办法在 VS 2005 上使用我已经拥有的东西(Visual Lynx for VS 6.0)......会有很大帮助。
谢谢
c - Posix evtsuspend 等效项
我正在将 LynxOS 程序迁移到 ubuntu 发行版和 gcc 4.1.3
我快完成了,但是我遇到了一个问题,我收到了 SIGALRM 信号,这迫使我的程序退出。如果我不打电话给警报(x),我不知道为什么我会收到这个信号。
我通过 sigaction 绕过了这一点,但我的程序无法正常工作,每次收到此 SIGALRM 时,mq_receive 都会失败。
我想知道是否可能是因为这个代码翻译:
现在是
这是 LynxOS 提供的有关 evtsuspend 的信息:
evtsuspend (由于我缺乏声誉,无法插入图片)
你认为它们的工作方式相同吗?(不指定事件掩码) sleep() 也等待 SIGALRM 继续。
谢谢并恭祝安康
c - 如何在 LynxOS/POSIX 中同步对共享内存的访问?
我正在LynxOS SE(符合 POSIX 标准)系统上实现两个进程,它们将通过共享内存进行通信。
一个过程将充当“生产者”,而另一个过程将充当“消费者”。在多线程系统中,我的解决方法是使用互斥锁和 condvar(条件变量)对,当共享内存更新时,消费者等待 condvar(with pthread_cond_wait
),生产者发出信号(with )。pthread_cond_signal
如何在多进程而不是多线程架构中实现这一点?
是否有 LynxOS/POSIX 方法来创建可在进程之间使用的 condvar/mutex 对?
还是在这种情况下其他一些同步机制更合适?
unix - 共享内存中的条件变量 - 此代码符合 POSIX 标准吗?
POSIX 标准是否允许命名共享内存块包含互斥锁和条件变量?
我们一直在尝试使用互斥锁和条件变量来同步LynuxWorks LynxOS-SE 系统(符合 POSIX)上的两个进程对命名共享内存的访问。
一个共享内存块被调用"/sync"
并包含互斥量和条件变量,另一个是"/data"
并包含我们正在同步访问的实际数据。
pthread_cond_signal()
如果两个进程没有以完全相同的顺序mmap()
执行调用,或者如果一个进程在映射内存之前先映射到另一块共享内存,我们就会看到失败。"/sync"
这个示例代码尽可能短:
不带 args 运行这个程序,然后运行另一个带 args 的副本,第一个将在断言检查pthread_cond_signal()
. 但是将open()
函数的顺序更改mmap()
为"/sync
" 之前的内存"/data"
,它就可以正常工作了。
对我来说,这似乎是 LynxOS 中的一个主要错误,但 LynuxWorks 声称以这种方式在命名共享内存中使用互斥锁和条件变量不在 POSIX 标准中,因此他们不感兴趣。
谁能确定这段代码是否确实违反了 POSIX?
或者是否有人有任何令人信服的文档证明它符合 POSIX?
编辑:我们知道这PTHREAD_PROCESS_SHARED
是 POSIX 并且由 LynxOS 支持。争论的焦点是互斥体和信号量是否可以在命名共享内存中使用(正如我们所做的那样),或者 POSIX 是否只允许在一个进程创建并映射共享内存然后分叉第二个进程时使用它们。
c - LynxOS strtod 与 Linux 不一样
似乎 LynxOS 的实现strtod
不能处理与 Linux 或 Solaris 相同的所有情况。我遇到的问题是我正在尝试解析一些可以包含十进制或十六进制数字的文本。
在Linux上我打电话
我得到了a
输入字符串的预期值,例如1.234567
和0x40
。
在 LynxOS 上,十进制数字解析正确,但十六进制解析为 0,因为它在碰到“x”时停止。查看手册页,似乎 LynxOS 的 strtod 仅支持输入中的十进制字符串。
这里有人知道可以在 Lynx 和 Linux 上运行的替代方案吗?
unix - 带有锁定的 SqLite3 NFS 挂载问题 - 我可以使用 CIFS nobrl 之类的东西吗?
我遇到了一个锁定问题,在 NFS 文件系统上创建 SQLITE3 数据库时,它会被永久锁定。我已经读到,nobrl
当所讨论的文件系统是 CIFS 时,一个名为的选项可以帮助解决这个问题。(它是 mount 命令的一个选项)。
来自: http: //linux.die.net/man/8/mount.cifs
诺布尔
不要向服务器发送字节范围锁定请求。这对于某些违反 cifs 样式强制字节范围锁的应用程序是必要的(并且大多数 cifs 服务器还不支持请求咨询字节范围锁)。
有没有办法阻止 NFS 中的字节范围锁定请求(如果它们发生),或者我是否考虑到这一点而在错误的方向上运行?我很高兴像为 CIFS 解决方案所做的那样更改 mount 命令。
java - 从远程服务器捕获数据的机制
我们有一个嵌入式系统,它以 lynx OS 作为底层操作系统,我们在其上安装了一个运行 java 程序的虚拟机。现在我需要捕获基本操作系统的进程运行和内存利用率,还需要一个跟踪系统来跟踪虚拟机上运行的多线程应用程序。我需要将捕获的数据发送到远程服务器。请就实现此方案提出一些建议。
lua - Lua 在 PowerPC/LynxOS 平台上的行为很奇怪,为什么?
我选择 Lua 5.1 作为我的应用程序的嵌入式脚本语言,但是当我将应用程序移植到在 PowerPC 上运行 LynxOS 的旧平台时,事情似乎出了问题。
我在 PC 上运行了以下代码,一切看起来都不错:
使用 PC (Visual C++ 6.0) 我期待“vfoo = 5.000000”
但是使用 LynxOS/PowerPC 我得到了“vfoo = 0.000000”。
那么 LynxOS/PowerPC 上的 Lua 发生了什么?我想知道大端机器是否有一些配置,我在“luaconf.h”中寻找它,但什么也没找到。我也尝试了配置项“LUA_USE_POSIX”但没有帮助。
我知道这不是 lua 编程的典型平台。但是,欢迎提出任何建议并予以赞赏。
c - LynxOS 2.4 上 libc 调用的线程安全
我现在正在 LynxOS 2.4 上做一个项目,我有多个线程对一些 C 标准库进行了多次调用。我需要控制的功能主要是文件操作,例如“打开”、“读取”和“写入”。
现在,在 POSIX.1 2001 之后的所有 POSIX 兼容系统中,所有这些调用都必须是线程安全的,但是 LynxOS 2.4 是在该标准之前开发的,并且与一些不要求这样做的旧版本的 POSIX 兼容。
谁能指出我正确的方向,找出哪些 C 标准库调用是线程安全的,哪些不在这个操作系统中。我已经搜索了大部分官方文档,但没有找到太多。
提前谢谢各位。
c++ - g++ 2.9-gnupro-98r2,错误:内部编译器错误
我在 LynxOS-178B 2.2.2 的一个 g++ 版本 (2.9-gnupro-98r2) 中遇到编译错误,而对于新版本的 g++,例如 VxWorks 653 2.4 的 4.3.3,将编译相同的代码而不会抱怨。 0.2。
下面的例子说明了这个问题:
我在哪里调用 double i = a(3.6); 和 int i = a(6); 我收到错误
对于 2.9-gnupro-98r2 我得到:
如果一个编译器版本接受该代码,则它不可能完全错误。我的猜测是它符合 C++ 标准,但旧的编译器缺乏相同的正确实现。
- 究竟是什么问题?
- 是否有一种可移植的方式来编写这种代码,以便尽可能多的编译器接受它?