|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
iOS5开始支持CoreImage了还没去看Mac上的CI是很强大的CFNetwork---从来没用过我一般都会用ASIHttpRequset封装好的高层网络库OBJC实现的CFNetwork好像是C实现CoreLocation---获取位置的库工具很少嵌进式体系无疑是以后最抢手最有开展出路的IT使用范畴之一。嵌进式体系用在一些特定公用设备上,一般这些设备的硬件资本(如处置器、存储器等)十分无限,而且对本钱很敏感,偶然对及时呼应请求很高等。出格是跟着消耗家电的智能化,嵌进式更显主要。像我们寻常罕见到的手机、PDA、电子字典、可视德律风、VCD/DVD/MP3Player、数字相机(DC)、数字摄像机(DV)、U-Disk、机顶盒(SetTopBox)、高清电视(HDTV)、游戏机、智能玩具、互换机、路由器、数控设备或仪表、汽车电子、家电把持体系、医疗仪器、航天航空设备等等都是典范的嵌进式体系。
嵌进式体系是软硬分离的工具,弄嵌进式开辟的人有两类。一类是学电子工程、通讯工程等偏硬件专业出生的人,他们次要是弄硬件计划,必要开辟一些与硬件干系最亲切的最底层软件:BootLoader、BoardSupportPackage(像PC的BIOS一样,往下驱动硬件,往上撑持操纵体系),最后级的硬件驱动程序等。他们的上风是对硬件道理十分分明,不敷是他们更善于界说各类硬件接口,但对庞大软件系统常常力所能及(比方嵌进式操纵体系道理和庞大使用软件等)。另外一类是学软件、盘算机专业出生的人,次要处置嵌进式操纵体系和使用软件的开辟。假如我们学软件的人对硬件道理和接口有较好的把握,我们完整也可写BSP和硬件驱动程序。嵌进式硬件计划完后,各类功效就端赖软件来完成了,嵌进式设备的增值很年夜水平上取决于嵌进式软件,这占了嵌进式体系的最次要事情(今朝有良多公司将硬件计划包给了专门的硬件公司,稍庞大的硬件都交给台湾或外洋公司计划,国际的硬件计划力气很弱,良多嵌进式公司本人只卖力开辟软件,由于公司都晓得,嵌进式产物的差别很年夜水平在软件上,在软件方面是最有“花头“可做的),以是我们弄软件的人完整不必忧虑我们在嵌进式市场上的用武之地,越是智能设备越是庞大体系,软件越起关头感化,并且这是今朝的趋向。
处置嵌进式软件开辟的优点是:
(1)今朝国际外这方面的人都很稀缺。一方面,是由于这一范畴进门门坎较高,不但要懂较底层软件(比方操纵体系级、驱动程序级软件),对软件专业程度请求较高(嵌进式体系对软件计划的工夫和空间效力请求较高),并且必需明白硬件的事情原理,以是非专业IT职员很难切进这一范畴;另外一方面,是由于这一范畴较新,今朝开展太快,良多软硬件手艺呈现工夫不长或正在呈现(如ARM处置器、嵌进式操纵体系、MPEG手艺、无线通讯协定等),把握这些新手艺的人固然很找。嵌进式人才网稀缺,身价天然就高,越有履历代价就越高。实在嵌进式人才网希少,基本缘故原由多是年夜多半人无前提打仗,这必要响应的嵌进式开辟板和软件,别的必要有履历的人举行引导开辟流程。
(2)嵌进式范畴人才网的事情强度一般低一些(但支出不低)。弄企业使用软件的IT企业,这个用户的体系弄完了,又得往弄下一个用户的,并且每一个用户的需乞降完成工夫都得按客户请求改动,常常疲于奔命,反复休息。比拟而言,弄嵌进式体系的公司,都有本人的产物企图,按本人的节拍行事。所开辟的产物一般是通用的,不会因客户的分歧而修正。一个产物型号开辟完了,常常有较长一段余暇工夫(或只是对软件举行一些小修补),偶然间举行充电和休整。别的,处置嵌进式软件的每一个野生作局限绝对局促,所触及的专业手艺局限就是那些(ARM、RTOS、MPEG、802.11等),工夫长了这些工具会越弄越有履历,卖卖成本,几句引导也够让那些初进道者揣摩半年的。若弄使用软件,大概下一个客户要换成一个完整分歧的软件开辟平台,那就苦了。
(3)哪天若想创业,弄自已的产物,那末嵌进式是一个不错的主张,这可不像使用软件那样简单被盗版。土木学院有一个叫启明星的公司开辟出一个好象叫“工程e”的掌上PDA(南校区门口有告白),施工手艺职员用该PDA可就地举行土木概预算和别的土木盘算,听说销路特好。我熟悉的某年夜学先生,他开辟的饭店用的点菜PDA(WinCE平台,可无线连网和上彀),据他说销路不错,饭店点点PDA让客户点菜,多显气派层次。我记得00级2+2班昔时有一组同砚在学Windows程序计划课程时用VC++计划了一个功效很强的点菜体系做为课程项目,事先真想倡议他们将这个软件做成PDA,估量会有些销路(上海火车站南广场的Macdonald便利用很大度的PDA给用户点食物,像摸像样的)。这些PDA的硬件计划一样平常都是请别的公司给订做(这叫“贴牌”:OEM),都是通用的硬件,我们尽管计划软件就酿成本人的产品了。
处置嵌进式软件开辟的弱点是:
(1)进门出发点较高。所用到的手艺常常都有必定难度,若软硬件基本欠好,出格是操纵体系级软件功底不深,则大概不适于此行。
(2)这方面的企业数目要远少于企业盘算类企业。出格是处置嵌进式的小企业数目较多(小企业要弄本人的产物创业),出名至公司较少(弄嵌进式的至公司次要有Intel、Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、意法半导体、Microtek、研华、华为、复兴通讯、上广电等打造类企业)。这些企业的习气头脑体例是到电子、通讯等偏硬专业找人。因为我院之前卒业生以企业盘算为主,以是我院与这些企业接洽绝对较少。我院正主动勉力,今朝已与个中部分公司创建了接洽,争夺今后能有我院同砚到这些企业中练习或失业。
(3)有多数公司常常要硕士以上的人弄嵌进式,次要是基于嵌进式的难度。但年夜多半公司也并没有此请求,只需有履历便可。我院同砚若进修嵌进式,明显应侧重于嵌进式软件,出格是嵌进式操纵体系方面,应是我们的刚强。
关于弄嵌进式软件的人,最主要的手艺明显是(实践上良多公司的雇用告白上就是如许写的):
(1)把握支流嵌进式微处置器的布局与道理
(2)必需把握一个嵌进式操纵体系
(3)必需熟习嵌进式软件开辟流程并最少做过一个嵌进式软件项目。
嵌进式软件方面最主要的课程包含:
(1)嵌进式微处置器布局与使用:这是一门嵌进式硬件基本课程,我院用这门课代替了传统的“微机道理与接口”课程(今朝国际已有少部分高校IT专业如许做了,由于讲x86微机道理与接口很难找到实践用途,只为教授教养罢了)。我们说过,嵌进式是软硬件分离的手艺,弄嵌进式软件的人应对ARM处置器事情道理和接口手艺有充实懂得,包含ARM的汇编指令体系。若不懂得处置器道理,怎样能把持硬件事情,怎样能写出节俭内存又运转高速的最优代码(嵌进式软件计划出格考究时空效力),怎样能写出驱动程序(驱动程序都是与硬件打交道的)?良多公司雇用嵌进式软件职员时都请求熟习ARM处置器,未来若同砚到公司中处置嵌进式软件开辟,公司城市给你一本该设备的硬件规格申明(xxxSpecification),您必需能看懂个中的内存分布和端口利用等最基础的申明(就像x86汇编一样),不然怎样计划软件。有些同砚以为嵌进式处置器课程较单调,这次要是硬件课程都较笼统的缘故原由,等我们的嵌进式实行室10月份建好后,您做了一些实行后就会以为看得见摸得着。另有同砚对ARM汇编不感乐趣,觉得嵌进式开辟用C言语就充足了。实在不该仅是将汇编言语当做一个程序计划言语,学汇编次要是为了把握处置器事情道理的。一个不熟习汇编言语的人,怎样能在该处置器写出最优的C言语代码。在嵌进式开辟的一
些关头部分,偶然还必需写汇编,如Bootloader等(大概还包含BSP)。出格是在对速率有极高请求的场所(如DSP处置器的高速图象收罗和图象解紧缩),今朝次要还要靠汇编写程序(我看到过良多公司是如许做的)。当您在一个嵌进式公司事情时,在检察形貌道理的手册时,大概良多都是用汇编形貌的(我就碰到过),这是由于良多硬件计划职员只会写大概喜好用汇编形貌,此时您就必需看懂汇编程序,不然软硬件职员大概就没法交流。良多嵌进式职位雇用时都请求熟习汇编。
(2)嵌进式操纵体系类课程:除WinCE的及时性稍差外,年夜多半嵌进式操纵体系的及时性都很强,以是也可称为及时操纵体系RealTimeOperatingSystem.处置嵌进式的人最少须把握一个嵌进式操纵体系(固然把握两个更好),这在嵌进式的一切手艺中是最为关头的了。目前最主要的RTOS次要包含:
第一类、传统的典范RTOS:最次要的即是Vxworks操纵体系,和其Tornado开辟平台。Vxworks因呈现稍早,及时性很强(听说可在1ms内呼应内部事务哀求),而且内核可极微(听说最小可8K),牢靠性较初等,以是在北美,Vxworks占有了嵌进式体系的多数疆山。出格是在通讯设备等及时性请求较高的体系中,几近非Vxworks莫属。Vxworks的良多观点和手艺都和Linux很相似,次要是C言语开辟。像Bell-alcatel、Lucent、华为等通讯企业在开辟产物时,Vxworks用得良多。但Vxworks因代价很高,以是一些小公司或小产物中常常用不起。今朝良多公司都在往嵌进式Linux转(传闻华为今朝正在如许转)。但不管怎样,Vxworks在一段长工夫内还是见异思迁的。与Vxworks相似的稍着名的及时操纵体系另有pSOS、QNX、Nucleus等RTOS。
第二类、嵌进式Linux操纵体系。Linux的出路除作为服务器操纵体系外,最乐成的即是在嵌进式范畴的使用,缘故原由固然是收费、开源、撑持软件多、呼拥者众,如许嵌进式产物本钱会低。Linux自己不是一个为嵌进式计划的操纵体系,不是微内核的,而且及时性不强。今朝使用在嵌进式范畴的Linux体系次要有两类:一类是专为嵌进式计划的已被扩充过的Linux体系,最经常使用的是uClinux(不带MMU功效),今朝占较年夜使用份额,可在ARM7上跑;另外一类是跑在ARM9上的,通常为将Linux2.4.18内核移植在其上,可以使用更多的Linux功效(固然uClinux更可跑在ARM9上)。良多人展望,嵌进式Linux估计将占嵌进式操纵体系的50%以上份额,十分主要。弱点是熟习Linux的人太少,开辟难度稍年夜。别的,今朝我们能发明良多课本和良多年夜学都以ucOS/II为教授教养用及时操纵体系,这次要是因为ucOS/II较复杂,且开源,十分合适进门者进修及时操纵体系道理,但因为ucOS/II功效无限,有用用得较少,以是我院不将
其作为教授教养重点,要进修就应学间接有用的,好比uClinux就很有用。何况熟习了Linux开辟,不但在嵌进式范畴有效,对开辟Linux使用软件,对加深操纵体系的熟悉也有匡助,可谓一举多得。据我所知,今朝Intel、Philip都在年夜弄ARM+LINUX的嵌进式开辟,Fujitum则是在本人的处置器上年夜弄Linux开辟。今朝在嵌进式Linux范畴,以下几个方面的人出格难找,一是能将Linux移植到某个新型号的开辟版上;二是能写Linux驱动程序的人;三是熟习Linux内核扩充和优化的人。我院在该嵌进式Linux方面的课程系列是:本科生操纵体系?课,然后是Linux程序计划选修课,最初是嵌进式Linux体系选修课。我院在Linux方脸孔前已有较强力气,魏先生和张先生熟习Linux开辟,金先生和唐先生熟习Linux体系办理。
第三类、WindowsCE嵌进式操纵体系。Microsoft也看准了嵌进式的伟大市场,MS永久是最凶猛的,WinCE出来只要几年工夫,但今朝已占有了很年夜市场份额,出格是在PDA、手机、显现仪表等界面请求较高大概请求疾速开辟的场所,WinCE今朝已很盛行(听说有一家卖工控机的公司板子卖得太好,以致来不及为客户扩充WinCE)。WinCE今朝次要为4.2版(.NET),开辟平台次要为WinCEPlatformBuilder,偶然也用EVC情况开辟一些较下层的使用,因为WinCE开辟都是人人熟习的VC++情况,以是我院学过Windows程序计划课程的同砚都不会有多浩劫度,这也是WinCE简单被人们承受的缘故原由,开辟情况便利疾速,微软的壮大手艺撑持,WinCE开辟难度远低于嵌进式Linux。关于急于完成,不想拿嵌进式Linux冒险的开辟场所,WinCE是最符合了(找嵌进式Linux的人可没那末好找的),究竟公司不克不及像先生进修那样碰运气,包管开辟乐成更主要。依据分歧的偏重点,WinCE另有两个特别版本,一个是MSPocketPC操纵体系公用于PDA上(掌上电脑),另外一个是MSSmartPhone操纵体系用于智妙手机上(带PDA功效的手机),二者也都属于WinCE平台。在PDA和手机市场上,除WinCE外,出名的PDA嵌进式操纵体系另有PalmOS(因呈现很早,很着名)、Symbian等,但在WinCE的微弱打击下,Palm和Symbian往日还能有多长?我院多是天下高校中独一一家开设专门的“WindowsCE嵌进式操纵体系“课程的黉舍,这次要是基于以下缘故原由:我院自己后面便有Windows程序计划课程,同砚学过VC++后再学WinCE,十分便利天然,经由过程进修WinCE一样也可懂得嵌进式软件的一样平常开辟历程,对Linux有害怕心思的同砚也很符合。很明显,嵌进式Linux永久不成能替换WinCE,并且未来谁占份额年夜还很难讲,究竟良多人更乐意承受MS的平台,就像列国当局都在鼎力推LINUX已好长工夫,但您能看到几个在PC机上真正利用LINUX的用户?据我察看,今朝在嵌进式平台上,LINUX是叫得最响,但仍是WinCE实践用得更多.嵌进式LINUX大概更多地是一些有久远产物企图的公司,为下降本钱而举行久远思索;二是微软亚洲研讨院对我院WinCE课程的撑持企图,我们也很但愿未来我院能有同砚经由过程微软的口试往练习。WinCE和多媒体(如MPEG手艺)是微软亚洲工程院今朝做得较多的项目范畴之一,他们很必要精晓WinCE的人。
总结关于嵌进式操纵体系类课程,若您以为本人功底较深且能研究下往,则可往学嵌进式Linux;若您以为本人VC++功底较好且想短平快地学嵌进式开辟,则我院的WinCE课程是最好的选择。
(3)嵌进式开辟的别的相干软件课程
弄嵌进式若能熟习嵌进式使用的一些次要范畴,如许的人更受企业接待。次要的相干范畴包含:
A、数字图象紧缩手艺:这是嵌进式最主要最抢手的使用范畴之一,次要是应把握MPEG编解码算法和手艺,如DVD、MP3、PDA、高精电视、机顶盒等都触及MPEG高速解码成绩。为此,我院已预订了一名能开设数字图象处置课程的博士。
B、通讯协定及编程手艺:这包含传统的TCP/IP协定和抢手的无线通讯协定。起首,年夜多半嵌进式设备都要连进局域网或Internet,以是起首应把握TCP/IP协定及其编程,这是需主要把握的基础手艺;其次,无线通讯是今朝的年夜趋向,以是把握无线通讯协定及编程也是是很主要的。无结通讯协定包含无线局域网通讯协议802.11系列,Bluetooth,和挪动通讯(如GPRS、GSM、CDMA等)。
C、收集与信息平安手艺:如加密手艺,数字证书CA等。我院有这方面的选修课。
D、DSP手艺:DSP是DigitalSignalProcess数字旌旗灯号处置的意义,DSP处置器经由过程硬件完成数字旌旗灯号处置算法,如高速数据收罗、紧缩、解紧缩、通讯等。数字旌旗灯号处置是电子、通讯等硬件专业的课程,关于弄软件的人若能懂得一下最好。今朝DSP人才网较缺。假如有旌旗灯号与体系、数字旌旗灯号处置等课程基本,关于进修MPEG编解码道理会有很年夜匡助。
(4)嵌进式开辟的相干硬件基本
关于软件工程专业的先生,处置嵌进式软件开辟,像数字电路、盘算机构成道理、嵌进式微处置器布局等硬件课程是较主要的。别的,汇编言语、C/C++、数据布局和算法、出格是操纵体系等软件基本课也是非常主要的。我们的次要目地是能看懂硬件事情道理,但重点应是在嵌进式软件,出格操纵体系级软件,那将是我们的上风。我们的研讨生里有些是学电子、通讯类专业过去的,有较好的摹拟电路和单片机基本,学嵌进式十分符合。嵌进式自己就是从单片机开展过去的,只是单片机不带OS,而如今良多嵌进式使用愈来愈庞大,以致不能不引进嵌进式操纵体系。别的,为寻求更高速的旌旗灯号处置速率,如今在一些速率请求较高的场所,有很多公司是将一些DSP算法,如MPEG紧缩解紧缩算法等用硬件来完成,这就触及到HDL数字电路计划手艺及其FPGA/IP核完成手艺,这方面的人今朝市场上也很缺。
题外话
别的,能写驱动程序的人今朝长短常紧缺的(驱动程序也可回于嵌进式范围),包含桌面Windows中的DDK开辟情况和WDM驱动程序。公司时时刻刻都要推出新产物,每个新产物出来了,要能被操纵体系所利用,是必需写驱动程序的。写驱动程序就必需把握操纵体系(如Windows或Linux)的外部事情道理,还触及到大批硬件常识,难度较年夜,以是这方面的人很难找。想成为妙手的同砚,也可从驱动程序方面取得冲破。我可说一下本人的履历,三年前我曾长久地在一家公司写过WinCE驱动程序(恰是由于晓得这方面的人紧缺,以是才要做这方面的事),只管那之前从未做过驱动程序,招聘谁人职位时恰是看准了公司是很难雇用到这方面的人,既然都找不到人,驱动还得有人做,这恰是大概无机会切进这一范畴的年夜好时机。口试时年夜讲本人写过量少万行汇编程序,对盘算机事情道理怎样分明,简历中又写着我曾浏览完两本关于WindowsDriverModel的两本英文原版书,写过几个小型的驱动程序实习程序(实在基本没写过,我们的同砚未来万万不要像我如许,早练就些过硬工夫,就不至于沉溺到我这等境地,就不必像我那样往“棍骗”公司了,我这是一个典范的不和课本),竟然统统都PASS(固然最主要的是口试和口试成绩还说得已往),这只能申明这一范畴找人的坚苦水平。公司本就未期望找到弄过驱动的人,找个有相干基本的人就算不错了。做了今后,发明也并非如何难的。实在弄驱动程序的事情是很恬逸的,弄完一个版本就会空一段工夫,只要等公司新的芯片推出或新的OS呈现后,才必要再往开辟新一版驱动,当时有快要一个月工夫余暇着在等WinCE.NETBeta版推出,筹办将驱动程序晋级到CE.NET上,如今在软件学院事情全日忙,无穷吊唁那段安闲光阴。
很偶合,比来自己偶然中再次体味到了嵌进式的诱人的地方。上周我那用了3年的手机终究不克不及WORK了。此次更新,除请求有手机罕见功效外,最好有MP3功效(如今良多英语听力都有MP3文件),最好有英汉辞书,最好还能读WORD文档。最初选了个满意以上前提的最廉价的手机DOPOD515(斩了我2.2K,但想一想这也算本人对嵌进式奇迹的撑持,如许便也想开了),算得上最高档的智妙手机了。返来一查,手机的about显现,本手机Processor是ARM,其OS是MSSmartphone(即WinCE.NET4.2),这么偶合,几乎可做为进修嵌进式课程的产物案例了(等我们的WinCE课程开得有条有理后,但愿能从微软研讨院弄些Smartphone来开辟开辟)。有OS的手机公然了得,金山词霸、WORD、EXCEL、REGEDIT等竟然都有smartphone版的,PC上的MP3、DOC等竟然在download时都可被主动转换成smartphone格局,真是爽。完整可用WindowsCE本人开辟一些必要的程序download到本人的手机上。如今市情发卖PDA智妙手机火爆,MS老是财路滔滔。但我已发明国产的ARM+LINUX手机呈现在市情上,代价只1.2K。在GOOGLE网上能搜刮太多的关于嵌进式体系的会商了,我刚发明一个http://www.embyte.com十分不错,有良多有履历者谈本人的体味,投进到个中的论坛中,你会亲身感应嵌进式进修的高潮。
掌握上面的内容差不多就能写个APP了最好的学习方法就是边写边学自己构想一个小的APP在做的时候遇到问题去找找资料我觉得这样学习比较快也比较扎实下面这些库都是有专门功能的库 |
|