嵌入式软件使用POSIX接口的优缺点

嵌入式软件使用POSIX接口的优缺点

POSIX,即Portable Operating System Interface,即可移植操作系统接口。是操作系统为应用程序提供的接口标准。POSIX标准同样适用于嵌入式软件,这里总结一下嵌入式软件使用POSIX接口的优缺点。

http://blog.csdn.net/zoomdy/article/details/50633554
mingdu.zheng at gmail dot com

优点

可移植性高

POSIX既然是可移植操作系统接口,那基于该接口的应用程序可移植性自然是很高的。基于POSIX接口设计的应用程序可以在不做修改或仅做极少量的修改就可以在支持POSIX的不同RTOS之间移植。如果仅使用POSIX中被广泛支持的部分,那么应用程序不需要做任何修改就可以在多个系统中编译执行。支持POSIX接口的RTOS包括eCos、VxWorks、RT-Linux、RTEMS、NuttX等。

可移植性高也就意味着开发效率高、开发成本低,这是老板们都喜欢的呀,让老板喜欢才能涨工资不是吗/p>

便于测试

因为嵌入式软件的开发环境和运行环境不一致,因此嵌入式软件的测试一直是个难题。解决这个难题的方案之一是将嵌入式软件在宿主机的模拟环境下执行,以便利用相对容易获得的桌面软件测试工具来对嵌入式软件进行测试。这种方案通常需要对嵌入式软件进行插桩,使用宿主机的API来模拟实现目标程序的底层API。如果嵌入式软件使用POSIX接口,那就容易多了。三大主流桌面系统Windows、Linux和Mac OS X中的Linux和Mac OS X本身就支持POSIX接口,而Windows则可以通过Cygwin等提供POSIX支持。在接口相同的情况下,目标程序不需要做任何修改就可以在宿主机上编译运行,当然还可以利用宿主机的测试工具对程序进行测试。

资料丰富

POSIX API的文档非常丰富,随便找一下就是一大堆,各国语言都有,应用的示例也很容易找到,因为人家是标准嘛,而且是应用极其广泛的标准。相对的,一些RTOS专有的API资料就相对难找了,而且基本上只有English版。

缺点

占用更多资源

多数支持POSIX的RTOS自身有一套专有的API,然后在这套专有的API上再建一层POSIX兼容层来提供POSIX支持。多一层意味着需要更多的代码空间、数据空间和执行时间。因此使用POSIX会多占用一点系统资源。然而从发展趋势看,硬件是越来越便宜的,而开发成本是越来越高的(开发人员的工资越来越高),牺牲一点执行效率来换取开发效率是值得的。Unix设计哲学中就有一条“舍高效率而取可移植性“。

总结

总而言之,使用POSIX虽然稍微会降低一点执行效率,但是可以大大提供开发效率,总体上讲是利大于弊的。

来源:半斗米

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年1月2日
下一篇 2016年1月2日

相关推荐