草庐IT

EMBEDDED

全部标签

ruby - 我可以设置 Vim 的 'embedded' ruby​​ 路径吗?

当我运行时::rubyprintVERSION在Vim中,我得到1.8.7。我安装了1.9.3,我想改用它。有办法改变吗?它会使用相同的Gem路径吗?我不是在谈论!ruby命令。我说的是Vim中的“嵌入式”Ruby。 最佳答案 是的,但是你必须重新编译Vim。Vim将在编译时针对$PATH中位于第一个的Ruby进行编译,因此您应该能够下载源代码并运行:./configure--enable-rubyinterp#+otheroptionsyouwantmakemakeinstall如果您在OSX上使用Homebrew,您可能希望只b

c++ - 在嵌入式环境中使用 html 渲染器

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter寻求指导。关闭10年前.我正在从事一个项目,我将为嵌入式设备设计一个GUI,并希望为此使用HTML。希望大家帮我找到适合我需要的渲染引擎。要求:网页必须渲染到内存缓冲区中。然后我会将内存缓冲区传输到显示器。必须通过回调或事件通知我渲染引擎需要获取新项目。HTML页面、图像等。原因是我必须获取资源并将其提供给渲染引擎(原因是设备在所有配置中都没有TCP/IP,然后需要通过串行

c++ - 在嵌入式环境中使用 html 渲染器

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter寻求指导。关闭10年前.我正在从事一个项目,我将为嵌入式设备设计一个GUI,并希望为此使用HTML。希望大家帮我找到适合我需要的渲染引擎。要求:网页必须渲染到内存缓冲区中。然后我会将内存缓冲区传输到显示器。必须通过回调或事件通知我渲染引擎需要获取新项目。HTML页面、图像等。原因是我必须获取资源并将其提供给渲染引擎(原因是设备在所有配置中都没有TCP/IP,然后需要通过串行

c++ - 堆栈大小估计

在多线程嵌入式软件(用C或C++编写)中,必须为线程提供足够的堆栈空间,以允许它完成其操作而不会溢出。在某些实时嵌入式环境中,堆栈的正确大小至关重要,因为(至少在我使用过的某些系统中),操作系统不会为您检测到这一点。通常,新线程(除了主线程)的堆栈大小是在创建线程时指定的(即在pthread_create()等的参数中)。通常,这些堆栈大小被硬编码为在最初编写或测试代码时已知良好的值。但是,future对代码的更改通常会破坏硬编码堆栈大小所基于的假设,并且有一天,您的线程进入其调用图的较深分支之一并溢出堆栈-导致整个系统或默默地破坏内存。我个人在线程中执行的代码在堆栈上声明结构实例的情

c++ - 堆栈大小估计

在多线程嵌入式软件(用C或C++编写)中,必须为线程提供足够的堆栈空间,以允许它完成其操作而不会溢出。在某些实时嵌入式环境中,堆栈的正确大小至关重要,因为(至少在我使用过的某些系统中),操作系统不会为您检测到这一点。通常,新线程(除了主线程)的堆栈大小是在创建线程时指定的(即在pthread_create()等的参数中)。通常,这些堆栈大小被硬编码为在最初编写或测试代码时已知良好的值。但是,future对代码的更改通常会破坏硬编码堆栈大小所基于的假设,并且有一天,您的线程进入其调用图的较深分支之一并溢出堆栈-导致整个系统或默默地破坏内存。我个人在线程中执行的代码在堆栈上声明结构实例的情

C++ 异常开销

为什么嵌入式平台开发人员不断尝试从他们的SDKs中移除使用C++异常?例如,BadaSDK为异常使用建议了以下解决方法,它看起来异常很难看:resultMyApp::InitTimer(){resultr=E_SUCCESS;_pTimer=newTimer;r=_pTimer->Construct(*this);if(IsFailed(r)){gotoCATCH;}_pTimer->Start(1000);if(IsFailed(r)){gotoCATCH;}returnr;CATCH:returnr;}这种行为的原因是什么?据我所知,ARM编译器完全支持C++异常,这实际上不是问题

C++ 异常开销

为什么嵌入式平台开发人员不断尝试从他们的SDKs中移除使用C++异常?例如,BadaSDK为异常使用建议了以下解决方法,它看起来异常很难看:resultMyApp::InitTimer(){resultr=E_SUCCESS;_pTimer=newTimer;r=_pTimer->Construct(*this);if(IsFailed(r)){gotoCATCH;}_pTimer->Start(1000);if(IsFailed(r)){gotoCATCH;}returnr;CATCH:returnr;}这种行为的原因是什么?据我所知,ARM编译器完全支持C++异常,这实际上不是问题

c++ - 在 C/C++ 中使用 % (模数)有什么替代方法吗?

我曾经在某处读到,模数运算符在小型嵌入式设备上效率低下,例如没有整数除法指令的8位微Controller。也许有人可以证实这一点,但我认为差异比整数除法运算慢5-10倍。除了保留一个计数器变量并在mod点手动溢出到0之外,还有其他方法吗?constintFIZZ=6;for(intx=0;x对比:我目前的做法:constintFIZZ=6;intfizzcount=1;for(intx=1;x=FIZZ){print("Fizz\n");fizzcount=0;}} 最佳答案 啊,按位算术的乐趣。许多除法例程的副作用是模数-因此在少

c++ - 在 C/C++ 中使用 % (模数)有什么替代方法吗?

我曾经在某处读到,模数运算符在小型嵌入式设备上效率低下,例如没有整数除法指令的8位微Controller。也许有人可以证实这一点,但我认为差异比整数除法运算慢5-10倍。除了保留一个计数器变量并在mod点手动溢出到0之外,还有其他方法吗?constintFIZZ=6;for(intx=0;x对比:我目前的做法:constintFIZZ=6;intfizzcount=1;for(intx=1;x=FIZZ){print("Fizz\n");fizzcount=0;}} 最佳答案 啊,按位算术的乐趣。许多除法例程的副作用是模数-因此在少

c++ - 嵌入式 C++ : to use exceptions or not?

我意识到这可能是主观的,所以会问一个具体的问题,但首先,背景:我一直是嵌入式软件工程师,但通常在OSI堆栈的第3层或第2层。我不是一个真正的硬件人。我一般一直做电信产品,通常是手机/手机,这通常意味着类似ARM7处理器的东西。现在我发现自己处于一个更通用的嵌入式世界,在一家小型初创公司中,我可能会转向“不那么强大”的处理器(这是主观的一点)——我无法预测是哪个。我已经阅读了很多关于嵌入式系统中C++异常处理的辩论,但没有明确的答案。对可移植性和运行时有一些小小的担忧,但这似乎主要归结为代码大小(或者我读错了辩论?)。现在我必须决定是使用还是放弃异常处理-为整个公司,永远(它进入一些非常