departmentsww.38jjj.com

ww.38jjj.com  时间:2021-04-09  阅读:()
EasingembeddedLinuxsoftwaredevelopmentforSBCsMostprogrammerstodayleavingcollegewithElectricalEngineeringorComputerSciencedegreesarefairlywellversedinprogrammingonaLinuxdesktopplatform.
WhentheseprogrammersneedtotaketheleaptoprogrammingembeddedLinuxsystems,theyareoftensurprisedandbewilderedthattheprogramtheywroteontheirdesktopwillnotruntheirLinuxembeddedsystem.
Toalleviatethisproblem,someprogrammerschoosetouseversionsofdesktopsystemsinembeddedapplications.
Thisisgenerallynotagoodfitasdesktopsystemstypicallyhavefansandharddrives,whicharefailurepoints.
Abiggerobstacleisfastchange;theneedtohavethefastest,newesttechnologyobsoletesdesktopsystemsinaslittleassixmonths.
Designingalong-lifeembeddedproductaroundaplatformwithnolongevityisarecipefordisaster.
Evenifdesktopplatformscouldbeguaranteedtobearoundfiveyearsfromnow,theLinuxkernelandassociateddistributionsaremovingtargets.
Thekernelandstandardlibrariesareconstantlyevolving,anddistributionsarefightingtokeeppace.
Kernelpatchesandlibraryupdatescanrenderauser'sprograminoperable.
Thissituationisexacerbatedwhenengineersarerequiredtoupdatedevelopmentmachinesduetoasecurityholeorotherissue.
Awaytoabstracttheembeddeddevelopmentenvironmentfromthestandarddesktopenvironmentisneeded.
Thekeyisnotonlytofindalong-lifeembeddedLinuxhardwareplatform,butalsoalong-lifeembeddedLinuxsoftwareplatform.
AccomplishedembeddedLinuxprogrammersoftencancreateanembeddeddevelopmentplatformbygatheringthecorrectlibrariesandtoolversions,andmodifyingtheMakefileappropriately.
Evenwhensuccessful,it'sasuboptimumdevelopmentenvironment.
Ideally,compilersshouldnotrelyonthelibrariesandkernelsoftheirhost,butinsteadonthetoolchainofthemorestatictarget.
Thesoftwareplatformshouldbecompatiblewithotherplatforms,otherOperatingSystems(OSs),andotherlanguages.
TheSoftwareDevelopmentKit(SDK)shouldbebasedontoolchainswithbroadcommunitysupportsothatevenifoneoftheorganizationsdrivingtheSDKstopssupportingit,itsurvivesontheshouldersoftherest.
EnterEclipseEclipseisanopensource,redistributable,cross-platform,frameworkforcodedevelopment.
ItnativelysupportsJava,andC/C++withitsCDTplug-in.
ItprovidesmanyofthesamefunctionsthathavebeenreinventedoverandoverbythecommercialIntegratedDevelopmentEnvironments(IDEs)(syntaxhighlighting,languageawaresearches,codecompletion,andsoon)butdoesn'trelyonanyoneparticularsetoftoolstoaccomplishit(seeFigure1).
Printedfrom:http://www.
embedded-computing.
com/departments/eclipse/2006/11/ByNathanGustavsonEMAC,Inc.
andEricRossiEMAC,Inc.
Page1of5Printedfromembedded-computing.
comFigure1(clicktozoom)TheflexibilityofthissolutionledEMACandotherembeddedsoftwarecompaniestobuilddevelopmentplatformsinanEclipseenvironment.
Thiscommercialadoptionhascreateddefactostandardizationforembeddedcodedevelopers.
OEMscanwriteEclipseplug-insandprojectsthatworkwithGNUtoolchainswhileprovidingcompatibilitywithnumerouscommercialplatformsrunningbothWindowsandLinux.
EmbeddedJavaEMAC'soriginalEclipseenvironmentwasdevelopedfortheSoM-400Mmodule,usingaDS400TINIprocessorfromDallas/Maxim.
Thisprocessor'sfirmwarecontainsaproprietaryembeddedJRE.
BuildingJavacodeforthesystemiscompletedbycompilingclassesforanormalJREenvironment,replacingthecorejarswithTINIspecificjarsandthenconvertingtheresultingclassesintoTINIexecutables.
TodothisdeveloperstookadvantageofEclipse'snativeAntsupport,whichcanbeusedtocreateakindofadvancedJavaMakefileinXMLformat.
AntthenbuildstargetsbyusingEclipse'sJDTcompileradaptorclass,whichmakestheinternalcompileravailabletoAnt'stasks.
TheSourceforgeTiniAntextensionthenperformsthefinalconversionfromJavaclasstoTINIexecutable.
Allthecomplexdeclarationsrequiredtodothisarehiddeninatop-levelbuild.
propertiesfile,vastlyreducingthecomplexityofcompilationfortheSoM-400Mtosimple,standardAnttasks.
Cross-compiledCTheEclipsetoolsprojectprovidesanopen,redistributableCdevelopmentplug-incalledtheCDT.
Itprovides,amongotherthings:SyntaxhighlightingCodecompletionOn-the-flybuildsDebuggerintegration(usingGDB'sMIinterface)Itdoesnotprovidetheactualcompiler,linker,anddebuggerbinaries.
Thesearespecifictothetargetbeingbuiltforandmustbeprovidedfromanexternalsource.
TheycanthenbeintegratedintoEclipsebywritinganEclipseplug-in,or,moresimply,byusing"standard"makeprojectsandspecifyingthecompilerintheMakefile.
TheMakefileinListing1willcompileasimpleHelloWorldexampleprojectintheEMACEclipseenvironment.
Page2of5Printedfromembedded-computing.
comLiketheembeddedJavaenvironment,complexcompiler/linkerflagscommontoallprojectsarehiddeninahigher-levelfile,whichisthenincludedbyallMakefilesintheSDK.
EMACprovidescross-compilersforallitsboardsbybuildingfreelyavailableGNUcross-compilersagainstthelibrariesofthetargetdevelopmentOS.
OnLinuxtheselibrariesarenative;onWindowstheCygwinlibraryisused.
Wethen"hide"theactualEclipseexecutableandreplaceitwithabatchfilethattemporarilyaddstherequiredpathstosupporttheGNUtoolchainswhenEclipseisstarted.
DebuggingDebuggingtakesplaceusingGDBandGDBServertofacilitatearemotedebuggingenvironment.
Toaccomplishthis,thecompiledexecutableisuploadedtotheSBCandaGDBServersessionisinitiatedlisteningonaspecificportorserialterminal.
TheEclipseDebuggingperspectiveallowstheusertothendebugtheapplicationbyspecifyingtheconnectionparameterstouseaswellastheversionofGDBbuiltforthetargetarchitecture.
TheDebuggingperspectivedisplaysthesourcecodeoftheprogramtobedebuggedandthegeneratedassemblycode.
Itiseasytomanageandmonitorbreakpointsandvariables,aswellassingle-stepthroughtheprogramlinebyline.
Thecurrentpositioninthesourcecodeisautomaticallyhighlighted.
Eclipseprovidesagraphicaldebuggingenvironmentthatgreatlysimplifiestheprocessofremotetargetdebugging.
TargetcommunicationWhendevelopingforanembeddedenvironment,itwillbenecessarytoestablishaconnectionwiththetargetboard,eitherbyaserialterminalprogramorthroughTCPusingaTelnet,SSH,orothersimilarconnection.
Whenthisisdonethroughthecommandlineinterfaceoragraphicalfrontend,theprogrammerisforcedtoconstantlyswitchbetweenwindowstomonitortheconnectionandtheIDEsimultaneously.
EMACeliminatesthisproblembyintegratingEclipseplug-insthatallowforSSH,Telnet,andTerminalconnectionsallwithinEclipse.
ThisallowstheprogrammertomonitortheembeddedtargetboardasifitwerealocalfilesystemandissuecommandsdirectlywithouthavingtoleavetheEclipseenvironment.
CVSEclipseprovidesapowerfulCVSnatively.
BysettingupaCVSloginandprovidingpasswordstocustomers,developerscaninsuretheyalwayshaveaccesstothemostrecentversionsofcodeandbugfixesforproducts.
SDKBASE=.
.
/.
.
/CROSS=$(SDKBASE)gcc-4.
0.
0-i486-D/bin/i486-linux-CC=$(CROSS)gccLIBFLAGS=-lc#VERBOSE=-vCFLAGS=-gOFLAGS=-WlTARGET=helloCFILES=hello.
call:$(TARGET)$(TARGET):objects$(CC)$(VERBOSE)*.
o$(OFLAGS)$(SLIBS)-o$(TARGET)$(LIBFLAGS)objects:$(CFILES)$(CC)$(VERBOSE)$(CFLAGS)-c$(CFILES)clean:$(RM)*.
o*.
gdb$(TARGET)TARGET_IP=192.
168.
0.
1LOGIN=someuserPASSWORD=somepasswordupload:wput$(TARGET)ftp://$(LOGIN):$(PASSWORD)@$(TARGET_IP)/.
.
/.
.
/tmp/$(TARGET)"Withalittleintegration,anOEMcancreatearobust,cross-platformdevelopmentplatformfortheirboardsthatwillrunonthesameplatformadoptedbymanycommercialsoftwarevendors.
"Page3of5Printedfromembedded-computing.
comUploadingsoftwarepatchesandentirelynewcomponentsforSDKsontoaCVSserverprovidesup-to-the-minutesoftwaresupporttocustomers,whocangraphicallyviewdifferencesinfilesandpatchtheirownSDKwithsome,all,ornoneofwhathasbeenuploaded.
DocumentationEclipseprovidesitsownnativebrowser,whichisbeneficialforcreatingHTMLlinkeddocumentationrightintheworkspace.
Inthisway,customerscanbrowsethroughHTMLdocumentation(similartothatgeneratedbyDoxygenandJavadoc).
Context-sensitivehelpisalsointegratedinEclipse(seeFigure2),allowingnewuserstobemoreproductive.
Figure2(clicktozoom)Thisdocumentationcanlinkrightbacktothesoftwaredeveloper'swebsiteaswell,allowinguserdocumentationtobeaddeddynamically.
Userscanswitchrightfromcodetodocumentationwithatab,ratherthannavigatingseveralwindowsatonce.
Integratedtools,betterdevelopmentEclipseprovidesanenvironmentwhereGNUtoolsandcommercialtoolscanplaytogether.
Withalittleintegration,anOEMcancreatearobust,cross-platformdevelopmentplatformfortheirboardsthatwillrunonthesameplatformadoptedbymanycommercialsoftwarevendors.
WithintheEclipseframework,EMACusescross-compilationtoalleviatetheproblemofabstractingtheembeddeddevelopmentenvironmentfromthestandarddesktopenvironment.
DebuggingisaccomplishedusingGDBwithEclipsewindowsforthedebugger'sinputandoutput.
CommunicationwiththetargetisalsointegratedintoEclipsethroughTelnet,FTP,Terminal,andSSHplug-ins.
CVSversioncontrolandHTMLdocumentationarebothaccomplishedwithintheEclipseenvironmentaswell.
AlloftheaforementioneddevelopmentcapabilitiesrolledupintoastandardIDEmakeforapowerful,efficientdevelopmentplatformthatcanbeusedwithasmall8-bitJava-basedcontrolleranda32-bitLinuxserverprogrammedinC.
ThisisthepowerofEclipse.
NathanZ.
GustavsonisaseniorsystemsengineeratEMAC,Inc.
specializinginLinuxandreal-timecontrol.
HeholdsaBSinElectricalEngineeringandiscurrentlypursingaMSatSouthernIllinoisUniversity.
EricRossiisaseniormanageratEMAC,Inc.
whereheisresponsiblefornewproductdevelopmentandcustomengineeringmanagement.
Erichasmorethan25yearsofexperienceinembeddedsystemdesignandholdsaBSinElectricalEngineeringTechnologyaswellasaBSandMSinComputerScience.
Tolearnmore,contactNathanorEricat:EMAC,Inc.
2390EMACWayCarbondale,IL62902Page4of5Printedfromembedded-computing.
com618-529-4525Nathan:ngustavson@emacinc.
comEric:erossi@emacinc.
comwww.
emacinc.
comMMVIIEmbeddedComputingDesign.
AnOpenSystemsPublishing,LLCpublication.
Page5of5Printedfromembedded-computing.
com

wordpress外贸集团企业主题 wordpress高级推广外贸主题

wordpress外贸集团企业主题,wordpress通用跨屏外贸企业响应式布局设计,内置更完善的外贸企业网站优化推广功能,完善的企业产品营销展示 + 高效后台自定义设置。wordpress高级推广外贸主题,采用标准的HTML5+CSS3语言开发,兼容当下的各种主流浏览器,根据用户行为以及设备环境(系统平台、屏幕尺寸、屏幕定向等)进行自适应显示; 完美实现一套主题程序支持全部终端设备,保证网站在各...

华纳云,3折低至优惠云服务器,独立服务器/高防御服务器低至6折,免备案香港云服务器CN2 GIA三网直连线路月付18元起,10Mbps带宽不限流量

近日华纳云发布了最新的618返场优惠活动,主要针对旗下的免备案香港云服务器、香港独立服务器、香港高防御服务器等产品,月付6折优惠起,高防御服务器可提供20G DDOS防御,采用E5处理器V4CPU性能,10Mbps独享CN2 GIA高速优质带宽,有需要免备案香港服务器、香港云服务器、香港独立服务器、香港高防御服务器、香港物理服务器的朋友可以尝试一下。华纳云好不好?华纳云怎么样?华纳云服务器怎么样?...

MOACK:韩国服务器/双E5-2450L/8GB内存/1T硬盘/10M不限流量,$59.00/月

Moack怎么样?Moack(蘑菇主机)是一家成立于2016年的商家,据说是国人和韩国合资开办的主机商家,目前主要销售独立服务器,机房位于韩国MOACK机房,网络接入了kt/lg/kinx三条线路,目前到中国大陆的速度非常好,国内Ping值平均在45MS左右,而且商家的套餐比较便宜,针对国人有很多活动。不过目前如果购买机器如需现场处理,由于COVID-19越来越严重,MOACK办公楼里的人也被感染...

ww.38jjj.com为你推荐
京沪高铁上市首秀在中国股市中:京沪高铁概念股有哪些access数据库Access数据库对象的操作包括哪五种?刘祚天DJ这个职业怎么样?22zizi.com河南福利彩票22选52010175开奖结果www.qq530.com谁能给我一个听歌的网站?www.hhh258comwww.tx88d.com 有这个网站吗?www.ca800.comPLC好学吗dadi.tv1223tv影院首页地址是什么?1223tv影院在哪里可以找到?www.493333.comwww.xiaonei.comwww.diediao.com跪求鸭王2
国际域名 域名主机空间 rak机房 云主机51web 轻量 租空间 ca4249 京东商城0元抢购 hktv 能外链的相册 免费网页申请 drupal安装 厦门电信 空间购买 中国电信测速网站 supercache asp空间 超低价 kosskeb79 腾讯qq空间登录首页 更多