您的位置:首页 > 其它

嵌入式开发导读 - 上海嵌入式家园 贺工

2008-09-30 20:41 363 查看
嵌入式开发导读
嵌入式开发导读

  嵌入式系统是指将应用程序和操作系统与计算机硬件集成在一起的系统。简单的说就是系统的应用软件与系统的硬件一体化,类似于BIOS的工作方式。这种系统具有软件代码小,高度自动化,响应速度快等特点,特别适合于要求实时的和多任务的体系。嵌入式设备是指应用了嵌入式系统的计算机设备。从某种意义上来讲确实是大型计算设备的一个微缩,这一微缩肯定多少会带来相对性能上的减弱。但正是这一体积的微缩带给人们的方便却是无法比拟的。拥有嵌入式设备,人们可以随时随地的阅览电子书籍,预定机票,在任何一个陌生的城市都不会丢失,甚至可以在最短的时间内看到任何一部想看到的电影。

  目前嵌入式设备主要有手持电脑、掌上电脑,汽车电脑等。嵌入式设备现在正在日新月异的发展,并快速的侵入了我们的生活。就在一年前,掌上电脑在国内还只是一个在电视或者网络上看到的名词,而今却已经成为流行人士特别是年轻人最为青睐的时尚物品。

  嵌入式设备的操作系统主要有早期介入的palm,以及后来居上的WindowsCE,当然还有其它比如linux等等。嵌入式设备的发展空间是巨大的,巨大到何种程度,我们真的是无法想象。如果说PC将人类推向了一个新的高度,那么已经到来的嵌入式设备将开辟人类计算机史的新纪元。

  关于嵌入式设备的软件开发有消息说2001年IT产业将生产20亿台微型计算机。其中,95%将用于嵌入设备用途。因此,与其以每年上市的1亿5000万台网络化计算机为研究对象,倒不如加大力度推进80亿台嵌入设备的网络化、将注意力放在制造与之相适应的软件上来。美国英特尔公司研究部门的领导人DavidTennenhouse在旧金山召开的ComputingContinuumConference会议上这样说道"有关计算机的研究,比起1亿5000万台计算机,更应该加大8亿台嵌入微处理器设备的网络化"。构筑无论何时何地都可与网络连接的环境以及开发适应型软件已成为当务之急。我们在仔细考察了国外嵌入式设备软件现状和国内的市场潜力后充分认识到嵌入式设备软件将在国内掀起一场软件革命!

  认识了嵌入式设备以及在嵌入式设备上软件开发的重要性后我们来了解一下目前嵌入式设备的两大主流操作系统。

  首先来了解一下这一领域的元老palmos。

  Palm是个人数字助理(PDA)的先驱者,PalmOS更是全球最知名、使用人口最多的PDA作业系统。PalmOS的一个最大的特点就是省电以及系统资源开销少。由于palmos采用的是开放式的架构,所以有很多的palmos的使用者都投入到软件开发工作中。目前,palmos已经有超过一万种的软件,而且每天都还在有新的palm软件问世。没有人会有疑问pamlos在微软的CE到来前一直是嵌入式系统的绝对主流。

  目前的PalmOS操作系统已经推出了1.0,2.0,3.0,3.5,4.0等版本。无论您进行何种应用软件的开发,一个POSE模拟器是必不可少的。POSE是一个用于模拟掌上设备硬件功能的软件模拟器。通过模拟器来进行程序开发和调试,要比使用实际的掌上设备方便的多,因为首先模拟器能够使用具有调试功能的ROM文件,而且,模拟器还有好多专用的调试功能。开发环境方面当前最流行的开发环境是CodeWarrior和PRC-Tools。这些开发环境能够完成程序的编译、连接、应用软件的创建等工作。同样,还有很多其它的开发工具,包括视窗界面的和命令行类型的,如BASIC和Forth。

  还有你需要下载最新版本的软件开发工具包(SDK),这个工具包包含了重要的对象库文件以及其他用于PalmOS平台的重要文件。而且,所有这些都是免费的!当前对于开发PalmOS应用软件最重要的就是PalmOS3.5SDK。这里还有其他一些特殊的工具。例如,您可以开发conduit,一种用于同Windows系列或者Macintosh系列台式机进行热同步的插件。进行嵌入式开发获得帮助的另一个最好办法就是参加开发者论坛(www.dopda.com),在那里你可以获得许多热情朋友的帮助还可以得到一些有用的开发资料。

  下面再让我们来了解一下后起之秀WindowsCE

  微软公司的WindowsCE是专门为该公司提出的"信息电器"设计的紧凑型操作系统。按照微软公司的定义,所谓的"信息电器"范畴很广,包括手持计算装置、移动电话、汽车和工业设备。版本有微软自1996年发布的WindowsCE1.0版,以及目前常见的2.11和3.0版本。

  与palmos相比WindowsCE是一个32位的、多线程、多任务的操作系统,这是它的主要特色。WindowsCE的体系结构采用独立于通常的程序设计语言并且和Windows兼容的API的方式,这样就可以保障WindowsCE的组件化和ROM化,充分适应有限的存储空间和各种不同芯片的要求。WindowsCE是模块型的操作系统。这意味者可选择、组合和配置WindowsCE的模块和组件来创建用户版的操作系统。和Windows95/NT的API相比,WindowsCE中的API不提供冗余的API,更多关注的是内存的大小、电源的管理、驱动程序的模型以及如何使线程调度表更简单。

  许多基于微软Windows95的应用程序还是可以不用从头开发而移植到微软的WindowsCE中。但是对于那些习惯于在微软公司的Windows系列(95/98/NT/2000等)操作系统平台上进行开发的人们,WindowsCE的开发还是颇有挑战性的。原来的Windows应用程序必须经过重新编译,才能运行于CE的硬件平台上(CE装置并不一定使用Intelx86的芯片...)。在某些情况下,由于CE的应用程序接口(API)与标准的WindowsAPI之间的差异,必须对原来的代码进行修改后才能移植到CE上。此外,WindowsCE支持的内存容量和显示屏的面积也很有限,这是开发人员不得不考虑的方面。WindowsCE的功能是有别于象Windows2000这样的"工业级"操作系统的。CE能够运行于内存和电能都很有限的设备上,而且也很容易移植到一个新的硬件体系上。

  就基于CE的软件开发工具而言你可以选择使用VisualC++进行WindowsCE开发或者使用VisualBasic进行WindowsCE开发。当然你首先得有一个开发包(Windows CE Toolkit),微软的网站提供下载的。这里我们特别提一下微软的EMBDVTOOLS(

http://download.microsoft.com/download/wince/Install/3.0/W9X2K/EN-US/EN_WINCE_EMBDVTOOLS30.exe),它是一个相当不错的开发包,完全安装的话会有VC和VB两种开发选择,自带模拟环境,大小约为300多M,目前只有英文版本。

  如果你使用VisualC++进行WindowsCE开发,微软公司为WindowsCE提供了一个缩减版本的Win32API,使得开发WindowsCE的应用程序就像开发传统的Win32应用程序一样,甚至你还可以使用MFC和ATL(活动模板库)。虽然大多数的函数调用是完全一样的,但不是所有的Win32API、ATL和MFC都被WindowsCE支持。如果你使用VisualBasic来进行CE应用程序开发,那么有些东西是要注意的。比如它不再需要进行VB桌面应用程序开发时必须的动态运行库了,这可不是什么好事。微软公司使用了一个只有417KB的VBScript的动态链接库来代替原来1.34M的msvbvm60.dll。虽然这样避免了使用原来的VB运行库会耗尽CE装置的内存空间,而且也使得在VB下作CE应用程序开发更具创新性,但是它不提供原来很有用的错误捕捉(errortrapping)功能,而且也不支持Dir的声明和使得你的程序易于退出的End声明,等等。

  以上是对嵌入式设备的一些认识以及基于目前流行的嵌入式设备系统的软件开发介绍。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐