我开始学习Ada在嵌入式设备中的潜在用途,这对于安全至关重要.到目前为止,我真的很喜欢它.但是,在我对嵌入式编程的研究中,我遇到了在嵌入式系统中是否使用异常处理的热门话题.我想我理解为什么有些人似乎避免它:
现在我的问题是,Ada语言或GNAT编译器是否解决了这些问题?我对安全关键代码的理解是,非确定性代码大小和执行时间通常是不可接受的.
尽职调查:我很难找到确切的Ada例外情况,但我的理解是他们的原始实现要求更多的运行时开销以换取减少代码大小的影响(上面的第一个链接明确提到了Ada).除了上面的第一个链接,我已经查看了提到代码确定性的配置文件,比如Ravenscar配置文件和本文,但似乎没有提到异常处理确定性.公平地说,我可能正在寻找错误的地方,因为这个话题似乎很深.