Sie sind auf Seite 1von 46

JavainEmbeddedLinuxSystems

JavainEmbeddedLinuxSystems
ThomasPetazzoni/MichaelOpdenacker
FreeElectrons
http://freeelectrons.com/

CreatedwithOpenOffice.org2.x

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
1
Rightstocopy

AttributionShareAlike2.5
Copyright20042008
Youarefree FreeElectrons
tocopy,distribute,display,andperformthework feedback@freeelectrons.com
tomakederivativeworks
tomakecommercialuseofthework Documentsources,updatesandtranslations:
Underthefollowingconditions http://freeelectrons.com/articles/java
Attribution.Youmustgivetheoriginalauthorcredit.
Corrections,suggestions,contributionsand
ShareAlike.Ifyoualter,transform,orbuilduponthiswork,
youmaydistributetheresultingworkonlyunderalicense translationsarewelcome!
identicaltothisone.
Foranyreuseordistribution,youmustmakecleartoothersthe
licensetermsofthiswork.
Anyoftheseconditionscanbewaivedifyougetpermissionfrom
thecopyrightholder.
Yourfairuseandotherrightsareinnowayaffectedbytheabove.
Licensetext:http://creativecommons.org/licenses/bysa/2.5/legalcode

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
2
Bestviewedwith...
ThisdocumentisbestviewedwitharecentPDFreader
orwithOpenOffice.orgitself!
Takeadvantageofinternalorexternalhyperlinks.
So,donthesitatetoclickonthem!
Findpagesquicklythankstoautomaticsearch
Usethumbnailstonavigateinthedocumentinaquickway
IfyourereadingapaperorHTMLcopy,youshouldgetyour
copyinPDForOpenOffice.orgformaton
http://freeelectrons.com/articles/java!

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
3
Contents

Javahistory Javaimplementations
Keyconceptsandfeatures JVMimplementations
IssueswithJava Javahardware
accelerationandLinux
Java'sstrengthsfor
embeddedsystems Conclusion
Glossary Usefulreading

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
4
Javahistory(1)
1991:Sunstartedworkingonaprojecttoanticipatethenextwave
ofcomputing:theconvergenceofdigitallycontrolledconsumer
devicesandcomputers.
1992:Implementedhomeentertainmentcontroldemoswitha
processorindependentlanguage:Oak.
19921994:focusmovingfromdigitalcabletelevisionnetworkto
theInternetasawaytopublishandsharecontent.
1994:OakrenamedasJava.
1994:HotJavawebbrowserwithdynamic,executablecontent.
1995:FirstpublicreleaseofJava.Greatsuccess.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
5
Javahistory(2)
1995:NetscapeannouncedsupportforJava.
1996:Java1.0release.
1996:MicrosofttakesaJavalicense.
19972001:SunsuesMicrosoftfortryingviolatingitslicenseandtrying
toenforceitsownJavastandard.
2001:MicrosoftlosestherighttoadvertiseitsproductsasJava
Compatible.Microsoft'slicensedterminatedbutcancontinuetouseits
ownimplementations.
1998:Java1.2.RenamedasJava2
2006:SunannouncesthereleaseofJavaundertheGPLLicense.
JavaisFree!

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
6
Javakeyconcepts

WORE
WriteOnce,RunEverywhere
JavaapplicationsarecompiledinJavaVirtualMachine(JVM)
bytecode.CanberunonanyplatformwithaJVMimplementation.

Java Java JVM Developer


sourcecode Compiler binary environment

JVM JVM User


binary Interpreter environment

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
7
Javafeatures
Seehttp://java.sun.com/docs/overviews/java/javaoverview1.htmlfordetails
Simple Portable
Automaticgarbagecollection,smallfootprint Noarchitecturedependentdatasizes(int:32bit,
float:32bit).PortableVMsourceCcode.
Objectoriented
Forwelldefined,reusableswcomponents Interpreted
Ontheflyconversiontonativemachinecode
NetworkSavvy
Supportfornetworkprotocols(http,ftp...) Highperformance
VMcodedesignedforsimplemachinecode
Robust generation.Optimizedbytecodegeneratedbythe
Nopointers,nomemorycorruption,true compiler.VMinterpreteroptimizations.
arrays.Strictcompileandruntimechecking.
Multithreaded
Secure Multithreadsupportinthelanguageitself.But
Builtforsecurityinnetworkingenvironments. RealtimeperformancelimitedbyOSRTperf.
Dataprotection(nopointers).
Dynamic
Architectureneutral Upgradingaclassdoesn'tforcetorecompilethe
CoderunsanywhereaVMisavailable applicationsusingit.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
8
JNI:JavaNativeInterface

Helpstounderstandhowyoucanaccessthehardware
withtheJVM!
TheJNIletscoderunningontheJVMoperatewith
applicationsandlibrarieswritteninotherlanguagessuch
asC,C++orassembly.
Neededtousesystemdependentroutineshandling
hardwareaccess.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
9
Java'sstrengthsinembeddedsystems

HidesthespecificitiesofthedeviceandtheembeddedOS
ProvidesanumberoffeaturesbeyondthoseofferedbytheOS
Allowstobuildnetworkinteroperableembeddedsystems,whatever
theirhardwarearchitecture.
Simplifiesproductdevelopment.Thesoftwarecaneasilybedeveloped
onworkstationsinparallelwiththehardware.
Makesitpossibletoreusecode
EasyintegrationofJavaCodeandnativecode
Smallerapplicationsfootprint:morecompactbytecodeandhigherlevel
classavailability.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
10
SunJavaplatforms

Sundefined3platformstargetingdifferentapplication
environments
JavaPlatformMicroEdition(JavaME),
forenvironmentswithlimitedresources
JavaPlatformStandardEdition(JavaSE),for
workstationenvironments.Theversioneveryoneuseson
hisworkstationtorunJavaapplicationsorapplets
JavaPlatformEnterpriseEdition(JavaEE),forlarge
distributedenterpriseorInternetenvironments

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
11
Javaterminology

TorunJavaapplications,aJREisrequired
JavaRuntimeEnvironment
ComposedofaJVM,JavaVirtualMachine,
whichexecutesthebytecode
AndofanimplementationofallstandardJavaclasses
TodevelopJavaapplications,aJDKisneeded
JavaDevelopmentKit
ComposedofaJREanddevelopmenttools
suchastheJavacompiler

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
12
JavaME

JavaMEspecifiestwoconfigurations,withdifferentsetofclassesandAPIs
ConnectedLimitedDeviceConfiguration,thesmallestpossibleJava
configurationforembeddeddevicessuchasphones.
ConnectedDeviceConfiguration,amuchmorefeaturefulconfigurationfor
largerembeddeddevicessuchashighendPDAs,settopboxes,etc.
Eachconfigurationexistsindifferentprofiles
definingexactlywhatfeaturesareavailable.
Sunprovidesareferenceimplementation,
butthirdpartiesoftenhavetheirownimplementation.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
13
ImplementationsfromSun

ImplementationsoriginatingfromSun

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
14
Sun'simplementationofJavaSE
SunimplementationofJavausedtobeclosedsource
Officialreasonwasthefearofincompatibleforksthatwould
breaktheuniformityoftheJavaplatform.
In2006,SunopenedthesourcecodeofitsJavaSEimplementation
underGPLversion2.
TheversionavailabletodayforLinux,WindowsandSolaris,both
x86andx86_64.
SomepiecesofcodecouldnotbereleasedundertheGPL,because
Sunwasnotthefullownerofthecopyright.Sunstartedthe
OpenJDKprojecttoreplacethesepartswithopensourceversions.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
15
JavaSEforembedded

WiththeincreasinglyfastCPUsandgrowingamountofmemory
foundinembeddedsystems,SunisnowadverstisingJavaSEfor
embeddedsystems.
Suitableifyouhavemorethan32MBofmemoryandstorage,
otherwiseonlyJavaMEissuitable.
AvailableforARM,MIPSandPowerPC.Headlessversions
available,reducedfootprintoftheJRE.
However,theseversionsarenotreleasedundertheGPL,and
subjecttoroyaltieswhendistributed.
http://java.sun.com/javase/embedded/

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
16
OpenJDK(1)

http://openjdk.java.net/
ProjectstartedbySunafteropensourcingJavainNovember2006
Goal:tocollaborateonanopensourceimplementationofthe
JavaPlatform,StandardEditionandrelatedprojects
Encumberedparts:audioengine,cryptographiccode,font
rasterizer,colormanagement,etc.
InJune2007,RedHatstartedtheIcedTeaprojecttocreate
experimentalpatchestoreplacethesepartsandwasshipping
IcedTeainitsdistribution.
Seehttp://en.wikipedia.org/wiki/IcedTea

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
17
OpenJDK(2)

November2007,RedHatjoinsOpenJDK.
December2007,JavasourcecodemovedtoMercurial.
February2008,firstread/writeaccesstotherepositorytonon
Sunengineers.
February2008,OpenJDK6createdtoquicklyhaveafullyOpen
Sourceimplementationwithasfewdifferencesaspossible.
ThisversionisnowshippedinUbuntu8.04,Fedora9andRed
HatEntrepriseLinux5.
http://www.sun.com/software/opensource/java/faq.jsp

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
18
OpenJDKlicense

OpenJDKisreleasedundertheGNUGeneralPublic
Licenseversion2,withClasspathexception.
TheClasspathexceptionhasbeendesignedfortheGNU
Classpathproject(coveredlater).
Itallowstocreateanddistributeproprietaryapplications
ontopoffreeimplementationsofJava.
http://www.sun.com/software/opensource/java/faq.jsp#g

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
19
PhoneME

https://phoneme.dev.java.net/
ProjectcreatedafteropensourcingSunimplementationofJavaME
Twoversions
PhoneMEfeaturesoftware(CLDC),formobilephones
PhoneMEadvancedsoftware(CDC),forhigherenddevices
Referenceimplementationsavailableforx86,ARMandMIPS.
Portingtootherplatformsandarchitecturessaidtobeeasy.
JavastillsellsitscommercialversionofJavaME

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
20
IndependentJ2SEimplementations

IndependentJ2SEimplementations

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
21
Components(1)

AusableimplementationofJavaismadeofseveral
importantcomponents
AJavacompiler,eithertomachineorbytecode
AvirtualmachinecapableofexecutingtheJava
bytecode
TheclasslibraryimplementingallstandardJavaclasses
andmethods

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
22
Components(2)

Developingavirtualmachineisinteresting,alotofinnovation
andresearchispossible
Lotsofdifferentprojectsavailable
Developingtheclasslibraryisnotreallyinteresting,verylong
andprobablyboring
Onlyoneusableproject:GNUClasspath
Thevirtualmachineandclasslibraryarenotindependent:
someintegrationbetweenthemisneeded
http://wiki.debian.org/Java/DevJam/2008/Fosdem?action=AttachFile&do=get&target=fosdem2008vminterfaces.pdf

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
23
GNUClasspath

http://www.gnu.org/software/classpath/
JavaclassesimplementationfromtheGNUproject
License:GNUGPL,whichanexceptionforlinkingwiththis
library.So,nolicenseissuewithproprietaryJavaprograms.
ExhaustiveJavaAPIimplementation,abletorunapplications
suchasEclipse.
GraphicalapplicationsrelyonGTKorQt.
Activeproject.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
24
GNUcompilerforJava
http://gcc.gnu.org/java/ libgcj:runtimeforgcj
gcjcancompile: compiledapplications
Javasourcecodedirectlytonative coreclasslibraries
machinecode
garbagecollector
JavasourcecodetoJavabytecode
bytecodeinterpreter
(classfiles)
Javabytecodetonativemachine libgcjisnowmergedwith
code. GNUClasspath,sothesupportis
verywide.
gcjcanalsobeconfiguredasa
crosscompiler! gij:bytecodeinterpreter
gdbsupport

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
25
Usinggcj:sampleprogram

classHello{
publicstaticvoidmain(Stringargs[]){
System.out.println("HelloWorld");
}
};

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
26
Usinggcj:nativecode

$gcjHello.javamain=Helloohello
$filehello
hello:ELF32bitLSBexecutable,Intel80386,version1(SYSV),for
GNU/Linux2.6.8,dynamicallylinked(usessharedlibs),notstripped
$./hello
HelloWorld

$lddhello
[...]
libgcj.so.90=>/usr/lib/libgcj.so.90(0xb5f5c000)
[...]
On a Debian system, libgcj.so takes ~32 MB.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
27
Usinggcj:bytecode

Compiling
$gcjHello.javaC
$lsHello.*
Hello.classHello.java

Executing with gij and Sun's JVM


$gijHello
HelloWorld
$javaHello
HelloWorld

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
28
Othercompilers

Jikes
InitiallycreatedbyIBM,nowacommunityproject
http://jikes.sourceforge.net
Eclipsecompiler
IncrementalcompilerusedinEclipse
Nowusedforparsingbygcj,sincegcc4.3(March2008),in
ordertosupportthelatestadditionsofJava1.5suchasgenerics
http://www.eclipse.org/jdt/core/

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
29
Kaffe
http://www.kaffe.org/
CleanroomJVMimplementationplusassociatedclasslibrariesneededbyaJava
runtimeenvironment,takenfromtheGNUClasspathproject
NotanofficiallylicensedJVMimplementation.
NotfullycompatiblewithJavaspecsandlackssomekeyfeatures(security,etc.)
Supportedinseveralplatforms:x86,arm,mips,m68k,ppc...
GreatforVMeducationorresearch,orinaFreeSoftwareJavadistribution.
Untilversion1.1.9,KaffehasadditionalgraphicalbackendsoverClasspathbut
theywillbedroppedinfutureversions
License:GNUGeneralPublicLicense

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
30
JikesRVM

http://oss.software.ibm.com/developerworks/opensource/jikesrvm/
RVM:ResearchVirtualMachine
OpenSource(CommonPublicLicense)implementationfrom
IBM
ImplementedonJava,runningonitselfwithoutrequiringasecond
virtualmachine
SupportedLinuxPlatforms:
x86andPowerPC
ReliesonGNUClasspath.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
31
SableVM

http://sablevm.org/
Arobust,clean,easytomaintainandextend,extremelyportable,
efficient,andspecificationcompliantJavavirtualmachine
CleanroomJVMimplementation
RoughlysupportedonmostarchitecturessupportedbyLinux
(ARMinparticular)
CompatiblewithJVMandJavaLanguagespecifications
License:GNULesserGeneralPublicLicense
UsesGNUClasspath(GPLwithanexceptionforlinking)

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
32
JamVM

http://jamvm.sourceforge.net/
AcompactVirtualMachine
Verycompact:~200KBonPowerPC,180KBonx86
Fullfeatured,conformingtothespecifications,contrarytoother
lightweightJVMs
Activelydeveloped
AvailableforLinuxonPowerPC,x86,ARM,x86_64andMIPS
DesignedtoworkwithGNUClasspath

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
33
Cacao

http://www.cacaojvm.org/
AnotherVirtualMachineusingJIT
WorksonARM,MIPS,PowerPC,x86,x86_64
CanuseeitherGNUClasspath,OpenJDKorPhoneME
asaJavaruntimelibrary.
PackagesnowavailableinDebianunstable.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
34
IBM'sJavaonLinux

http://www106.ibm.com/developerworks/java/jdk/linux140/
CompleteimplementationfromIBM:
J2SE,J2EE,J2ME,includingIBM'sVM.
SupportedLinuxplatforms(onlyin32bitmode)
IA32,AMD64,Itanium,PowerPC64bit,zSeries
IBM'simplementations
ReengineeredJavaMachine,IBM'sJustInTimecompiler...
JavaisatthecoreofIBM'sstrategy(WebSphereinparticular)

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
35
IndependentJ2MEimplementations

IndependentJ2MEimplementations

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
36
J2MEimplementations

MIDPath
JavalibrarythatprovidesaMIDP2implementation,alternativetothe
referenceimplementationofPhoneME.Canbeusedtogetherwiththe
CLDCversionofCacaoVM.
MIDP2isaspecificprofileofCLDCfoundonmanyphones
http://midpath.thenesis.org/
Microemu
J2MEemulatorthatrunsontopofJ2SE
PurelyimplementedinJava
http://www.microemu.org/

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
37
JavahardwareaccelerationinLinux

SomeARMcoresdirectlysupportJavabytecodeexecution(Jazelletechnology):
http://www.arm.com/products/multimedia/java/jazelle.html
Theprocessorcandirectlyexecute~120Javabytecodeinstructions,and
generateanexceptionfortherestsothattheexecutionofthebytecodecanbe
emulated.
Unfortunately,ARMdoesn'tpublishthespecificationsofthistechnology
OnlylicenseescangetinformationaboutJazelle
Sun'sJVMareJazelleaware,butthroughabinaryonlycomponent
Somereverseengineeringisinprogress.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
38
Conclusion

Javahasgreatcompetitiveadvantagesfordeveloping
applicationsforoperatingsystems.
FreeSoftwareimplementationsforGNU/Linuxare
availablenowandsatisfymostneeds.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
39
Usefulreading

EmbeddedJava+Linuxreference:
http://www.linuxdevices.com/articles/AT8918758707.html
Javaoverviewandhistory:
http://en.wikipedia.org/wiki/Java_programming_language

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
40
Relateddocuments
AllthetechnicalpresentationsandtrainingmaterialscreatedandusedbyFreeElectrons,
availableunderafreedocumentationlicense(morethan1500pages!).

http://freeelectrons.com/training LinuxUSBdrivers
IntroductiontoUnixandGNU/Linux RealtimeinembeddedLinuxsystems
EmbeddedLinuxkernelanddriverdevelopment IntroductiontouClinux
FreeSoftwaretoolsforembeddedLinuxsystems LinuxonTIOMAPprocessors
AudioinembeddedLinuxsystems FreeSoftwaredevelopmenttools
MultimediainembeddedLinuxsystems JavainembeddedLinuxsystems
IntroductiontoGNU/LinuxandFreeSoftware
http://freeelectrons.com/articles Linuxandecology
AdvantagesofFreeSoftwareinembeddedsystems What'snewinLinux2.6?
EmbeddedLinuxoptimizations HowtoportLinuxonanewPDA
EmbeddedLinuxfromScratch...in40min!

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
41
Howtohelp

Ifyousupportthiswork,youcanhelp...
Bysendingcorrections,suggestions,contributionsandtranslations
Byaskingyourorganizationtoordertrainingsessionsperformedby
theauthorofthesedocuments(seehttp://freeelectrons.com/training)
Byspeakingaboutittoyourfriends,colleagues
andlocalFreeSoftwarecommunity.
Byaddinglinkstoouronlinematerialsonyourwebsite,
toincreasetheirvisibilityinsearchengineresults.

JavainEmbeddedLinuxSystems
Copyright20042007,FreeElectrons,
CreativeCommonsAttributionShareAlike2.5license
http://freeelectrons.com
Sep15,2009
42
EmbeddedLinuxTraining FreeElectronsservices
UnixandGNU/Linuxbasics
Linuxkernelanddriversdevelopment
RealtimeLinux
uClinux CustomDevelopment
Developmentandprofilingtools Systemintegration
Lightweighttoolsforembeddedsystems EmbeddedLinuxdemosandprototypes
Rootfilesystemcreation Systemoptimization
Audioandmultimedia Linuxkerneldrivers
Systemoptimization Applicationandinterfacedevelopment

Consulting TechnicalSupport
Helpindecisionmaking Developmenttoolandapplicationsupport
Systemarchitecture Issueinvestigationandsolutionfollowupwith
Identificationofsuitabletechnologies mainstreamdevelopers
Managinglicensingrequirements Helpgettingstarted
Systemdesignandperformancereview

http://freeelectrons.com
Relateddocuments

Allourtechnicalpresentations
onhttp://freeelectrons.com/docs

Linuxkernel
Devicedrivers
Architecturespecifics
EmbeddedLinuxsystemdevelopment

FreeElectrons.Kernel,driversandembeddedLinuxdevelopment,consulting,trainingandsupport.http//freeelectrons.com
Howtohelp

Youcanhelpustoimproveandmaintainthisdocument...
Bysendingcorrections,suggestions,contributionsand
translations
Byaskingyourorganizationtoorderdevelopment,consulting
andtrainingservicesperformedbytheauthorsofthese
documents(seehttp://freeelectrons.com/).
Bysharingthisdocumentwithyourfriends,colleagues
andwiththelocalFreeSoftwarecommunity.
Byaddinglinksonyourwebsitetoouronlinematerials,
toincreasetheirvisibilityinsearchengineresults.

FreeElectrons.Kernel,driversandembeddedLinuxdevelopment,consulting,trainingandsupport.http//freeelectrons.com
Linuxkernel
Linuxdevicedrivers
FreeElectrons
Boardsupportcode Ourservices
Mainstreamingkernelcode
Kerneldebugging
CustomDevelopment
Systemintegration
EmbeddedLinuxTraining
EmbeddedLinuxdemosandprototypes
Allmaterialsreleasedwithafreelicense! Systemoptimization
UnixandGNU/Linuxbasics Applicationandinterfacedevelopment
Linuxkernelanddriversdevelopment
RealtimeLinux,uClinux Consultingandtechnicalsupport
Developmentandprofilingtools Helpindecisionmaking
Lightweighttoolsforembeddedsystems Systemarchitecture
Rootfilesystemcreation Systemdesignandperformancereview
Audioandmultimedia Developmenttoolandapplicationsupport
Systemoptimization Investigatingissuesandfixingtoolbugs

Das könnte Ihnen auch gefallen