为何嵌入式开发人员对Ada不感兴趣?

发布时间:2009-5-6 20:29    发布者:李宽
关键词: Ada , 开发 , 嵌入式 , 兴趣
一次又一次的民意调查显示,即使四分之一个世纪过去了,在嵌入式领域,Ada还是没能获得可观的市场份额。然而,数据明显表明:用Ada编写的程序比用C编写的程序缺陷更少,并且交付更快。

Ada编译器都由Ada合格评估测试套件(ACATS)充分评估。最流行的Ada编译器GNAT可免费从GPL获得。

Ada完全是为高可靠性嵌入式应用而设计。在这方面,无论C还是C++都无法相比。Ravenscar Profile更加精妙的针对实时嵌入式系统。任务分配是内置功能,无需RTOS供应商额外提供。

你可能认为“更快,更好并且免费的工具”将是相当吸引人的理由,但是它却没能说服大部分人。这为什么呢?

这可能不是任何效率低下的原因所致。AdaCore的主席Robert Dewar告诉我,与C语言相比,即使采用所有运行时检查,所获得的性能预期虽然不会超过20%,但大约能达到10%。

或许我应该界定“运行时检查”,因为这个概念和C语言性质不同。Ada会寻找错误条件,例如被0除等。你甚至可以定义整数的非法范围。但在C语言中,我们可以这样写:

num_doses=0;

morphine=patient_pain/num_doses;

dispense_morphine(morphine);

我们不能将其归咎于缺乏编译器。AdaCore已经将GNAT移植到大部分主流的16和32位 CPU上。

根据我的经验,刚接触Ada的开发人员通常讨厌这种语言。要获得可编译的源代码显得非常困难。但是,经历了三个Ada项目后,大部分程序员学会喜欢上这种语言。当然,他们投入了更多努力,用来编写正确的代码(这当然是好事情),但是他们节省了大量调试的时间。

正如一位记者Rich Ries给我写的信所言:“Ada之所以不能成功,或许类似于我们对健康生活方式的态度-有时我们都知道应该那样做,但却很少真正去实践!”
本文地址:https://www.eechina.com/thread-3180-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表