交叉兼容
交叉兼容是指可以处理其他厂商的同一类产品的数据。对于纯软件来说,交叉兼容是指验证两个同类但不同厂商的产品可以同时运行在同一台计算机上,也可以运行在通过 Internet 连接的不同计算机之间,例如从 Web 页面剪切文字,可以粘贴到其他文字处理程序中(如 Word)。对于嵌入式产品来说,交叉兼容性是指同一类不同类型的数据可以相互处理,例如厂家 A 的心电图机可以正确解释厂家 B 的心电图机生成的数据。
硬件兼容
硬件平台是软件运行的基础,不管是计算机还是嵌入式产品,都有一个硬件平台来支持。但即使是同一类硬件(如显卡),也有很多不同的生产厂商,所以在软件设计的时候就必须考虑如何兼容这些不同生产厂商的产品。
对于计算机来说,常见的硬件兼容包括:主板、处理器、内存、显卡、显示器。市场上的台式计算机以及笔记本电脑在测试时就必须对不同的硬件配置进行测试,测试不同硬件配置在不同的操作系统下运行的情况,并且必须考虑主要厂商的不同硬件型号。
对于应用软件考虑最多的则是显示器兼容性的测试,因为不同的显示器其支持的最佳分辨率不同,但分辨率会直接影响应用软件的显示情况,所以在测试时就不得不考虑显示器分辨率的影响。当然并不只有显示器才有影响,其他的硬件也有可能对应用软件产生影响,主板、处理器也可能对该软件有影响,特别是对于底层通信的程序,由于它使用硬件中断,所以即使同样的中断方式在不同的主板和处理器上也可能产生不同的影响。
对于嵌入式产品的硬件兼容性来说,大家可能会觉得很纳闷,因为嵌入式产品并不像计算机软件一样需要考虑其他计算机的硬件配置,嵌入式产品的软件与硬件是捆绑在一起销售的,只要兼容当前产品的硬件配置即可。但即便是这样,嵌入式产品也存在兼容性的问题。通常嵌入式产品需要考虑的兼容性主要为元器件和显示屏的兼容性,如平板电脑的 LED 触摸屏,供应商在开发产品的时候肯定不希望只能兼容某个厂家的 LED 屏,而是希望至少能兼容两家厂家的 LED 屏。之所以考虑这个方面的兼容性,通常有两个方面的原因:
第一,多供应商可以降低由于供应商倒闭带来的风险;
第二,在与供应商谈价格的时候不至于太过被动,当供应商随意提价时,可以及时启用备选方案。