如何选择嵌入式软件开发平台

合集下载

Ubuntu下嵌入式Qt开发环境配置全攻略

Ubuntu下嵌入式Qt开发环境配置全攻略

Ubuntu下嵌入式Qt开发环境配置全攻略本文以友善之臂的Mini6410嵌入式开发板为目标板,介绍ubuntu 12.04系统下,配置嵌入式Qt开发工具的过程。

本文中介绍的工具、大部分步骤和脚本来自开发板附带资料光盘,但其默认配置环境为老旧的Fedora 9.0,在ubuntu中配置过程已需要修正。

一、背景众所周知Qt是一个跨平台的开发工具,与本文相关的分支有3个,分别是Linux下的Qt桌面版(基于X Window),嵌入式桌面环境Qtopia(Qt Extended)和嵌入式基础类库Qt Embedded。

嵌入式桌面版拥有集成开发工具Qt Creator,方便进行Qt 程序的设计,默认配置用于开发桌面程序,进行交叉编译设置(有时间待后文详述)后,可以直接编译嵌入式程序。

Qt Embedded也称Qt/E,是运行于嵌入式Linux的Qt基础类库,目前最高版本为4.8(不确定)。

它的图形界面直接工作于Frame Buffer 上,绕过了窗口管理系统,具有较高的效率,适于嵌入式环境。

Qtopia是一个嵌入式桌面环境,以Qt Embedded(在某些版本中称Qtopia Core)为基础,在后期改名为Qt Extended。

它提拥有一个桌面,并供了手机/PDA中常用的基本功能软件(如电话本等等),在4.4.3后官方停止开发(或改由开源社区维护)。

不同的开发目标应当选择不同的开发工具和环境,如果读者不开发桌面程序,也不需要Qt Creator(自己写makefile),可以不用安装桌面版,但装上对后续配置还是有一定方便作用的。

对嵌入式开发者来说,如果仅仅开发单独的图形界面程序,不需要嵌入式桌面的话,只使用Qt/E即可,没必要使用过时的Qtopia。

友善之臂开发板默认的Qtopia环境是2.2,已经与4.x的Qt/E库不兼容,除了演示自带程序外,对开发而言几乎不堪用。

开发板还提供了Qt Extended 4.4.3,但这个环境提供的是一个诺基亚功能机的界面,基本上也只能供学习研究使用了。

嵌入式linux系统开发标准教程

嵌入式linux系统开发标准教程

嵌入式linux系统开发标准教程嵌入式Linux系统开发是一门非常重要的技术,它在嵌入式设备、物联网和智能家居等领域中得到广泛应用。

本文将介绍嵌入式Linux系统开发的标准教程,帮助读者了解该技术的基本原理和常用的开发工具。

一、嵌入式Linux系统开发的基本原理嵌入式Linux系统开发是指将Linux操作系统移植到嵌入式设备中,并针对特定的应用领域进行定制开发。

它与传统的桌面Linux系统有很大的区别,主要体现在以下几个方面:1. 硬件平台的选择:嵌入式设备通常采用ARM架构或者其他低功耗的处理器架构,而不是传统的x86架构。

因此,在进行嵌入式Linux系统开发时,需要根据具体的处理器架构进行相应的移植和优化。

2. 精简的内核:由于嵌入式设备的资源有限,为了提高系统性能和节省资源,嵌入式Linux系统通常会精简内核。

这需要对Linux内核的源代码进行裁剪和优化,以去除不必要的模块和功能,并保留对应用需求的必要功能。

3. 定制化的驱动程序和应用程序:嵌入式设备通常需要与各种外设进行交互,因此需要编写相应的驱动程序。

此外,根据具体的应用需求,还需要定制相关的应用程序和用户界面。

二、嵌入式Linux系统开发的工具嵌入式Linux系统开发需要使用一些常用的工具,下面是一些常用的工具和其功能的介绍:1. 交叉编译工具链:由于嵌入式设备和开发主机的处理器架构不同,无法直接在开发主机上编译和运行目标代码。

因此,需要使用交叉编译工具链,在开发主机上生成适用于目标设备的可执行文件。

2. 调试工具:在嵌入式Linux系统开发过程中,调试是非常重要的一环。

常用的调试工具包括GDB(GNU调试器)和strace(系统调用跟踪工具),它们可以帮助开发人员追踪程序的执行过程和定位错误。

3. 文件系统工具:嵌入式设备的存储资源有限,需要使用文件系统来组织和管理存储的数据。

常用的文件系统工具包括mkfs(创建文件系统)、mount(挂载文件系统)以及文件传输工具(如scp和rsync)等。

Qt嵌入式开发环境的建立

Qt嵌入式开发环境的建立

Qt嵌入式开发环境的建立Qt是一种跨平台的C++应用程序开发框架,它可以用于开发桌面应用程序、移动应用程序和嵌入式应用程序。

在嵌入式领域,Qt可以用于开发各种类型的应用程序,例如智能家居系统、医疗设备、工业自动化设备等。

本文将介绍如何建立Qt嵌入式开发环境。

第一步:选择嵌入式平台在建立Qt嵌入式开发环境之前,需要先选择嵌入式平台。

Qt支持多种嵌入式平台,例如Linux、Windows Embedded、Android、iOS等。

选择嵌入式平台的时候需要考虑硬件性能、系统稳定性、开发成本等因素。

第二步:安装Qt开发工具在选择嵌入式平台之后,需要安装Qt开发工具。

Qt提供了多种开发工具,例如Qt Creator、Qt Designer、Qt Linguist等。

其中,Qt Creator是一种集成开发环境,可以用于编写、调试和部署Qt应用程序。

Qt Designer是一种可视化界面设计工具,可以用于设计Qt应用程序的用户界面。

Qt Linguist是一种多语言翻译工具,可以用于翻译Qt应用程序的界面文本。

第三步:配置Qt开发环境在安装Qt开发工具之后,需要配置Qt开发环境。

配置Qt开发环境的过程包括以下几个步骤:1. 配置Qt版本:在Qt Creator中,需要选择正确的Qt版本。

如果没有安装Qt版本,需要先下载并安装Qt版本。

2. 配置编译器:在Qt Creator中,需要选择正确的编译器。

如果没有安装编译器,需要先下载并安装编译器。

3. 配置调试器:在Qt Creator中,需要选择正确的调试器。

如果没有安装调试器,需要先下载并安装调试器。

4. 配置嵌入式平台:在Qt Creator中,需要配置嵌入式平台。

配置嵌入式平台的过程包括选择嵌入式平台、设置交叉编译工具链、设置Qt库路径等。

第四步:编写Qt应用程序在配置好Qt开发环境之后,可以开始编写Qt应用程序了。

Qt应用程序可以使用C++语言编写,也可以使用QML语言编写。

嵌入式系统硬件开发流程

嵌入式系统硬件开发流程

嵌入式系统硬件开发流程1.需求分析:首先需要与客户或项目团队明确嵌入式系统的需求和功能。

根据需求,确定系统的输入输出接口、处理器类型、存储器需求和其他关键硬件组件。

2.系统设计:根据需求分析的结果,开始进行系统设计。

设计包括了整体体系结构的设计、硬件模块的设计以及各模块之间的接口设计。

在这个阶段,还需要确定系统的电源需求、尺寸和外壳设计等。

3.选择硬件平台:根据系统的需求和设计,选择合适的硬件平台。

硬件平台可以是单片机、FPGA、ARM等。

选择硬件平台时需要考虑功耗、性能、成本和开发工具的可用性等方面。

4.硬件原理图设计:根据系统的需求和设计,进行硬件原理图设计。

硬件原理图设计主要包括选择和连接各种硬件模块、设计电源电路和时钟电路等。

在设计过程中,需考虑信号完整性、电磁兼容性和热管理等问题。

5.PCB设计:将硬件原理图转化为PCB设计。

PCB设计包括在PCB上放置元件、连线布局和绘制电源层和地层等。

在设计过程中,还需考虑电磁兼容性和阻抗匹配等问题。

6.PCB制造:将PCB设计文件传输给PCB制造厂商,制造出实际的PCB板。

制造过程包括PCB板材的选择、蚀刻、钻孔、贴片、焊接和检查等。

7.原型测试:制造完成的PCB板与其他硬件模块进行组装,形成嵌入式系统原型。

通过连接电源,测试系统的各个功能和性能是否满足需求。

如发现问题,需要返工或重新设计。

8.硬件调试和优化:对原型进行硬件调试,包括调试电路连接的正确性、性能和稳定性等。

通过对系统的不断调试和优化,确保系统的稳定运行。

9.硬件验证和认证:对已调试和优化的嵌入式系统进行验证和认证。

验证过程包括功能验证、稳定性测试、可靠性测试等。

认证过程可能涉及到特定行业的标准和要求,如电磁兼容性认证等。

10.批量生产:通过验证和认证后,嵌入式系统可以进行批量生产。

在批量生产之前,需确保原材料的供应链和生产工艺的稳定性。

同时,还需考虑生产成本和交货时间等因素。

11.维护和升级:一旦嵌入式系统投入使用,可能会出现问题或有新需求。

单片机的软件开发工具与环境介绍

单片机的软件开发工具与环境介绍

单片机的软件开发工具与环境介绍单片机是指集成在单个芯片上的微型计算机系统。

它具备较小的体积、低功耗、低成本以及较强的功能等特点,被广泛应用于各个领域。

在单片机的开发过程中,选择合适的软件开发工具和环境非常关键。

本文将介绍几种常用的单片机软件开发工具与环境。

一、Keil μVisionKeil μVision是一款由Keil Software公司推出的嵌入式系统开发工具。

它是一套集成开发环境(IDE),包含了编译器、调试器、仿真器等功能模块,可以实现单片机程序的编写、编译以及调试。

KeilμVision支持多种芯片系列,如STMicroelectronics的STM32系列、NXP的LPC系列等。

其可视化界面友好,功能强大,被广泛应用于单片机软件开发领域。

二、IAR Embedded WorkbenchIAR Embedded Workbench是由IAR Systems推出的单片机开发工具。

它提供了完整的软件开发流程,包括编写、编译、调试和优化等环节。

IAR Embedded Workbench支持多种单片机系列,如Texas Instruments的MSP430系列、Renesas的RL78系列等。

该工具具有较高的代码生成效率和卓越的调试功能,可以帮助开发者提高开发效率和代码质量。

三、MPLAB X IDEMPLAB X IDE是由Microchip公司开发的一款集成开发环境。

它主要用于开发与Microchip单片机相关的应用程序。

MPLAB X IDE支持多种编程语言,如C、C++以及汇编语言。

该工具提供了丰富的调试功能和模拟器功能,并能够与硬件调试器(如PICkit)结合使用,使得开发者可以更加方便地进行单片机程序的开发和调试。

四、Arduino IDEArduino IDE是一款面向Arduino单片机的开发工具。

Arduino是一种开源的电子原型平台,广泛应用于各个领域的快速原型开发。

Qt嵌入式开发环境搭建

Qt嵌入式开发环境搭建

Qt嵌入式开发环境搭建一、Qt版本介绍按照不同的图形界面来划分,分为四个版本:1、Win32版:适用于windows平台2、X11版:适用于各种X系统的Linux和Unix平台3、Mac版:适用于苹果的MacOS4、Embedded版:适用于具有帧缓冲(Frame buffer)的linux 平台Qtopia是基于qt开发的一个软件平台,Qtopia是构建于Qt/E 之上的一系列应用程序,在这个平台上我们可以开发各种应用程序。

2008年,TrollTech公司被Nokia收购后,Qtopia被重新命名为Qt Extended。

Nokia在推出了Qt Extended的最新版Qt Extended 4.4.3之后的2009年3月3日,决定停止Qt Extended的后续开发,转而全心投入Qt的产品开发,并逐步会将一部分Qt Extended 的功能移植到Qt的开发框架中。

所以总的来说,QT也就三种:面向桌面的x11、面向嵌入式的Qt/E、以及面向嵌入式带各种应用程序的Qtopia桌面系统二、比如是Qt的各种版本介绍1、Qt的安装程序(包含了QtCreator,QtAssistant)Windows--x86--msvc2012_64_opengl :表示window平台,msvc2012可以与VS2012进行结合使用,64位应用程序,要求电脑装的是64位操作系统;opengl表示支持openGL的绘图模式Windows--x86--mingw48_opengl :window平台下的mingw48编译器进行编译。

2、Qt的库的源码包3、Qt安装包的下载网址:如果想下载Qt的以前版本,可以在上面网址的最下面的一栏有个Archive for old versions ,进去就可以下载qt的以前版本了。

三、嵌入式Qt开发环境的搭建1.预备知识,嵌入式qt开发环境的安装方法很多,qt的版本也很多。

有点让人不知所措,不知该按哪种方法去安装。

可编程片上系统开发平台

可编程片上系统开发平台
设计流程及EDK工具 -The Base System Builder(BSB) Wizard
基于设计人员选择的板子,设计人员通过BSB选择并 配置基本的元素,比如:处理器类型、调试接口、缓存配 置、存储器类型和大小、外设等。 对于BSB不支持的目标系统,设计人员可以选择定制 板选项。使用这个选项时,必须指定未来板子的硬件,并 且要给出用户约束文件UCF。 如果选择的是支持的目标板,BSB向导自动的加入 UCF文件。当退出BSB时,BSB所建立的MHS和MSS文 件自动加入到XPS工程中,设计人员能在XPS中进行更进 一步的设计。
软件开发
Library Generator(Libgen)
构建一个软件平台,该软件平台由定制的软件库、驱动程序和OS构成。
GNU Compiler Tools(GCC)
基于库产生器建立的平台,建立软件应用程序。
验证
Xilinx Microprocessor Debugger(XMD)
打开shell用于软件下载和调试,也提供通道用于GNU调试器访问设备。
设计流程及EDK工具 - Xilinx Platform Studio(XPS)
XPS提供下面的特性: (1) 能够添加核,编辑核参数和进行总线和信号连接,产生MHS 文件; (2) 能够产生和修改MSS文件; (3) 支持表5.1内的所有工具; (4) 能够产生和观察系统块图和设计报告; (5) 多用户软件应用支持; (6) 项目管理; (7) 过程和工具流程依赖管理; (8) 输出MHS文件到SDK工具
在主机上建立一个MFS存储器镜像,该镜像并被下载到嵌入式系统存储器。
Platform Specification Utility
自动产生微处理器外设定义MPD数据文件,该文件要求创建EDK兼容的制定外设。

STM32开发环境(工具)之Keil MDK 介绍

STM32开发环境(工具)之Keil MDK 介绍

STM32开发环境(工具)之Keil MDK介绍摘要:Keil是德国知名软件公司Keil(现已并入ARM 公司)开发的微控制器软件开发平台,是目前ARM内核单片机开发的主流工具。

Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器在内的完整开发方案....STM32微处理器基于ARM核,所以很多基于ARM嵌入式开发环境都可用于STM32开发平台。

开发工具都可用于STM32开发。

选择合适的开发环境可以加快开发进度,节省开发成本。

本章将先对STM32常用的开发工具Keil MDK和IAR EWARM进行简单介绍,然后结合STM32_SK仿真评估板和STM32F103C的开发板讲解STM32片上资源使用,最后给出一个基于STM32的数据采集器的应用实例。

5.1 Keil MDK介绍Keil是德国知名软件公司Keil(现已并入ARM 公司)开发的微控制器软件开发平台,是目前ARM内核单片机开发的主流工具。

Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器在内的完整开发方案,通过一个集成开发环境(uVision)将这些功能组合在一起。

uVision当前最高版本是uVision3,它的界面和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。

因此很多开发ARM应用的工程师,都对它十分喜欢。

5.1.1 开发过程及集成开发环境简介1. Keil的软件开发周期使用Keil来开发嵌入式软件,开发周期和其他的平台软件开发周期是差不多的,大致有以下几个步骤:1. 创建一个工程,选择一块目标芯片,并且做一些必要的工程配置。

2. 编写C或者汇编源文件。

3. 编译应用程序。

4. 修改源程序中的错误。

5. 联机调试。

下面这种结构图完整描述了Keil开发软件的整个过程。

2. uVision3 集成开发环境uVision3 IDE是一款集编辑,编译和项目管理于一身的基于窗口的软件开发环境。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

久前,市场研究机构Embedded Market Forecasters (EMF)发布了一份报告指出:与嵌入式Linux平台相比,基于Microsoft Windows Embedded操作系统平台进行嵌入式系统开发,速度快43%,开发成本低68%.得出这个结论所采用的是TCD (Total Cost of Development,开发总成本)。

这个结论一经发布,可谓一石激起千层浪,热衷于嵌入式Linux的人们纷纷出来辩论,对其提出质疑。

人们首先要怀疑这份报告的公正性,因为报告作者——EMF分析师Jerry Krasner博士公开承认,微软为他做出这份研究报告向他支付了费用。

在包括嵌入式软件在内的大多数软件领域,微软的地位无疑是非常重要的。

Linux不仅因为继承了Unix的技术特色,更因为开放源代码而在商业机制上与一贯封闭的微软相对垒,赢得了众多口碑。

不过,我们不应该忘记,在嵌入式软件开发领域并不是两军对垒,而是三足鼎立。

这里还有一个非常重要的阵营——商业嵌入式软件开发工具提供商,例如Wind River的VxWorks.在激烈竞争的商业环境中,谁都希望以更低的成本、更快的速度推出满足市场需求、具有独特竞争力的产品呢。

那么,嵌入式软件开发平台究竟应该采用什么样的衡量标准呢?哪一种嵌入式软件开发平台更能有效地帮助电子产品开发商降低产品成本、加快上市速度呢?为了对这些问题有一个全面的认识,让我们对来自微软、嵌入式Linux和商业嵌入式软件开发商的声音做一个全面的了解。

争执,从衡量尺度开始衡量任何事情,都必须先有一个标准的尺度。

为了说明什么样的嵌入式开发平台最经济有效,首先必须形成一套衡量标准。

在这个关键问题上,的确是公说公有理、婆说婆有理。

究竟谁的对,我们不妨来个“兼听则明”。

受微软公司的委托,EMF研究机构Krasner博士所提出的报告标题是《TCD:嵌入式开发平台的成本评估框架》,其中首先针对如何评估一个嵌入式软件开发平台提出了一套方法。

Krasner博士说:“TCD( Total Cost of Development)评估框架可以帮助嵌入式设备制造厂商评估他们花在软件设计中的总体成本,从而便于他们提高开发设计质量,控制开发设计成本。

”Krasner博士在报告中提出了这样一个模型:TCD=TTM x NOE x CPMM其中:TTM(Time to Market)为产品从开发工作开始到上市所用的时间,以“月”为单位;NOE(Number of Engineers used)为开发该产品所需的工程师数量;CPMM(Cost per Man-Month)为每个工程师每个月所需的费用。

Krasner的调查结果认为:Windows Embedded平台的平均TTM为8.1个月,而嵌入式Linux平台的平均TTM为14.3个月,前者比后者快了43%;从对软件工程师的需求来看,Windows Embedded 平台中每开发一个产品所需的平均工程师数量为7.9人,而嵌入式Linux平台需要14.2人,前者比后者节省44%.不管是在哪一种平台之中,调查报告把每个嵌入式软件工程师的平均月成本都假定为7500美元,从而得出结论:Windows Embedded平台中,每个项目的TCD为48万美元,而嵌入式Linux的TCD为150万美元,前者大约只是后者的四分之一。

Krasner博士对如此之大的差别所作的解释是:Windows CE .NET和Windows XP Embedded更为成熟,功能更加丰富,采用基于构件的设计方法,具有集成化的工具集,支持并行开发工作流程。

然而,热衷于嵌入式Linux的人们对这样的结论非常不以为然,并且提出了强有力的反击。

Jerry Epplin是一家名为EmbeddedSpace的嵌入式系统咨询公司的首席咨询师。

他尖锐地指出:嵌入式开发平台的评估方法应该准确地衡量开发工作中的全部因素,TTM和TCD的确是很重要的因素,但是,除此之外还有很多不可忽视的因素。

例如:。

产品差别化:采用廉价方法开发的产品并不一定能够在市场上获得独特的竞争力;。

产品成本:采用能够运行在较廉价的硬件平台上的嵌入式操作系统,将会使产品成本大幅度降低,从而在市场上具有更强的竞争力;。

工具的延续性:如果嵌入式软件开发者长期采用同一个平台,并且积累了大量的工具软件和开发经验,必将在产品功能、性能和成本方面占据更大的优势。

另外还有其他许多因素都应当纳入嵌入式软件开发平台的评估体系之中。

如果只是拿出来一两个指标来衡量,其结果一定是片面的……真正应该关注的是TCPKrasner博士提出的嵌入式开发平台TCD评估方法不仅非常简单,而且完全站在了微软的立场上,当然是树大招风,而且由于过于简单而显得非常脆弱,很容易受到攻击。

反过来,对于简单而直截了当的结论,最有效的攻击方法莫过于让事情复杂化,即使自己提不出任何明确的结论,至少能够让对方的论断受到怀疑。

这就是Jerry Epplin所采用的办法。

在Window Embedded和嵌入式Linux争执不下的时候,我们不妨听听另外一方面的说法,相信有助于我们明辨是非。

不论是微软还是Linux,实际上都是嵌入式系统的后来者。

在这个领域,本来就有一些长期获得认同的开发平台,比如Wind River的VxWorks. Wind River 中国区总经理韩青指出:“Krasner博士和Jerry Epplin先生是从不同层面得出的不同结论,他们所说的都有道理,对于搞清楚如何选择嵌入式软件开发平台都是有帮助的。

Wind River在嵌入式软件开发领域已经有20多年的经验,对此也有自己的认识。

”韩青先生认为:选择和采用一种开发平台,对于一个电子产品厂商来说就是一笔投资。

现在人们都开始认识到“Total Cost”,而不是只看最初的一次性投资。

总的来看,对于嵌入式软件开发工具的投资,人们的认识水平可以分为以下几个层面:第一层面:只看到购买开发工具时所花的费用。

在这个层面上,OpenSource的Linux无疑是最吸引人的,因为它是免费的,而其他商用嵌入式软件开发工具和商业化的Linux都需要支付一定的费用。

第二层面:不仅看到购买开发工具软件是所花的费用,而且看到在一个产品开发过程中所花的费用,主要是产品License和产品生产成本。

微软及Krasner 博士的报告对于人们认识到开发过程中的隐形费用很有帮助,只是他们提出的TCD模型过于简单了。

Jerry Epplin则提出了一些同样值得重视的因素。

第三层面:从一个产品整个生命周期的范围内来看待不同嵌入式软件开发平台对成本的影响,所以我们要关注TCP(Total Cost of Product,产品总成本)。

因为,企业开发和销售一个产品,最终要关注的是获利能力,所以就必须关注TCP.其实,关于嵌入式软件开发平台的投入产出分析还可以在更高的层面——整个企业的高度来进行。

经过多年发展和积淀,成熟的嵌入式软件开发平台支持基于构件(Components)的开发方法,从而让不同产品、不同开发项目之间实现大范围的软件构件重复使用,从而加快开发速度,降低开发成本。

另外,在工具与平台的维护以及工程师的培训方面都可以节省更多的成本。

特别是对于消费电子产品是嵌入式软件的新兴市场,由于这类产品主要是批量生产销售,所以对成本极为敏感。

软件对于消费电子产品成本的影响主要体现在四个方面:一是对CPU的要求越高,成本越高;二是对Flash存储器容量要求越高,成本越高;三是产品软件License的费用直接影响产品成本;四是系统稳定性、可靠性越好,产品售后服务费用就越低。

不同嵌入式软件平台的TCP分析比较对于一个产品从开发到批量上市,其中的费用大致由三个方面构成:开发工具License、产品生产的License和相关成本以及开发与生产中的隐性费用。

其中,隐形费用往往的不到应有的重视,这是因为开发工具与平台的选择常常有技术开发人员做出,而由此对产品开发整体成本(TCP)却远远超出了技术问题本身。

目前广泛采用的嵌入式软件开发工具,从商业模式上可以分为两类:In-House(由各生产厂商自行研发和维护)和商业化的嵌入式开发工具;从沿革历史上也可以分为两类:传统嵌入式平台和由桌面操作系统经过裁剪而来的平台。

对于嵌入式Linux要区别看待。

如果是完全免费的,那么必然要求开发者自行修改和维护,最终形成各自不同的版本,这样就和In-House的嵌入式开发工具没有什么区别了。

抛开桌面操作系统和嵌入式系统所用的RTOS(实时操作系统)在技术上的区别,仅仅从经济性上来看,我们可以Wind River 的VxWorks为代表,在传统商用嵌入式软件工具、免费的嵌入式Linux和Windows Embedded等不同工具之间作一下比较。

开发工具与平台的License费用:开发者可以选用免费的Linux.VxWorks、Windows Embedded和商业化的Linux的入门费大体在一个水平上。

产品License费用及生产成本:表面上看,Linux是Royalty Free(免收使用许可费)。

VxWorks和Windows是要收取使用许可费(Royalty)的。

产品license 费用对于价格敏感的设备,如消费电子类设备,是非常重要的。

基于VxWorks 所开发的产品对于CPU和存储Flash的需求更低,因此可为客户节省硬件成本。

据风河公司中国区总经理韩青先生透露“风河公司在消费电子类产品上产品license的订价很低,采用VxWorks为用户节省的硬件成本足以补偿使用许可费”。

Windows和Linux原本都是桌面操作系统,即使经过裁剪,其成品软件在节省CPU和内存方面仍然远远不及VxWorks.隐形费用:微软及Krasner博士的报告对于强调开发过程中的隐性成本具有非常大的积极作用,但是没有考虑到产品生产中的隐性成本,而且对开发阶段隐形费用所做的分析也过于简单化。

实际上,开发一个产品的成本究竟怎样,与开发者已有的资源密切相关。

具体产品开发者熟悉哪一种工具,目标产品的参考设计基于哪一种平台,这些都是非常关键的因素。

所以要具体情况具体分析。

从现实情况看,传统上熟悉VxWorks 平台的开发者很多,对于他们来说,当然是选用VxWorks平台成本最低。

Linux 和Windows都吸引了不少新加入的开发者。

嵌入式软件平台的选择对产品上市后隐形费用的影响不可忽视,这主要是体现在产品售后服务与维修方面。

如果产品稳定可靠、故障率低,售后服务与支持费用自然就低,通别是对消费电子产品更是如此。

VxWorks的可靠性和行为的确定性为开发者设计出精简、实用、可靠的嵌入式软件奠定了基础,这是它最独特的优势。

相关文档
最新文档