Professional Documents
Culture Documents
Embedded Linux
Embedded Linux
Embedded Linux
Bo Co Mn H iu Hnh
Nhn xt.
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
Ni Dung
I. GII THIU TNG QUAN V H THNG NHNG V H IU HNH THI
GIAN THC ....................................................................................................................... 4
1. H thng nhng (Embedded System) ........................................................................ 4
a) Khi nim ............................................................................................................... 4
b) H thng thi gian thc.......................................................................................... 4
c) c trng................................................................................................................ 5
d) Giao din ................................................................................................................ 5
e) Kin trc CPU ........................................................................................................ 5
f)
c) Th vin C .......................................................................................................... 37
d)
I.
kim sot tin trnh (trong nh my, hay trong vin ht nhn, trong h thng hng khng,
thng qua cc h thng dn ng tch hp trn my bay v v tinh). S pht trin ca h
thng thng tin thi gian thc yu cu mi phn t ca h thng phi thi gian thc, v
mt h thng c thit k theo cch nh vy c gi l h iu hnh thi gian thc.
c) c trng
H thng nhng thng c mt s c im chung nh sau:
Cc h thng nhng c thit k thc hin mt s nhim v chuyn dng ch
khng phi ng vai tr l cc h thng my tnh a chc nng. Mt s h thng i
hi rng buc v tnh hot ng thi gian thc m bo an ton v tnh ng
dng; mt s h thng khng i hi hoc rng buc cht ch, cho php n gin ha
h thng phn cng gim thiu chi ph sn xut.
Mt h thng nhng thng khng phi l mt khi ring bit m l mt h thng
phc tp nm trong thit b m n iu khin.
Phn mm c vit cho cc h thng nhng c gi l firmware v c lu tr
trong cc chip b nh ROM hoc b nh flash ch khng phi l trong mt a.
Phn mm thng chy vi s ti nguyn phn cng hn ch: khng c bn phm,
mn hnh hoc c nhng vi kch thc nh, dung lng b nh thp Sau y, ta s i
su, xem xt c th c im ca cc thnh phn ca h thng nhng.
d) Giao din
Cc h thng nhng c th khng c giao din (i vi nhng h thng n nhim)
hoc c y giao din giao tip vi ngi dng tng t nh cc h iu hnh trong
cc thit b bn. i vi cc h thng n gin, thit b nhng s dng nt bm, n
LED v hin th ch c nh hoc ch hin th s, thng i km vi mt h thng menu
n gin.
Cn trong mt h thng phc tp hn, mt mn hnh ha, cm ng hoc c cc
nt bm l mn hnh cho php thc hin cc thao tc phc tp m ti thiu ha c
khong khng gian cn s dng; ngha ca cc nt bm c th thay i theo mn hnh
v cc la chn. Cc h thng nhng thng c mt mn hnh vi mt nt bm dng cn
iu khin (joystick button). S pht trin mnh m ca mng ton cu mang n cho
nhng nh thit k h nhng mt la chn mi l s dng mt giao din web thng qua
vic kt ni mng. iu ny c th gip trnh c chi ph cho nhng mn hnh phc tp
nhng ng thi vn cung cp kh nng hin th v nhp liu phc tp khi cn n, thng
qua mt my tnh khc. iu ny l ht sc hu dng i vi cc thit b iu khin t
xa, ci t vnh vin. V d, cc router l cc thit b ng dng tin ch ny.
e) Kin trc CPU
Mt phng php khc m cc kernel thi gian thc hay s dng chnh l m hnh
sp xp mc u tin. Trong m hnh ny, mi lung s i km vi mc u tin ca
n, lc ny, vi x l s thit lp ng truy cp ti lung no c mc u tin cao nht
khi n i hi c phc v. Cng c mt vi bin th ca phng php ny, tuy nhin
vn phi m bo cc lung c mc u tin thp nht vn phi c th truy cp ti vi
x l mt vi ln. Hnh di m t phng php cch x l ca phng php ny.
nng chnh nh h thng file, giao din mng li, Ni chung, kin trc ny thng
c p dng trong cc h thng m vic chuyn i v giao tip gia cc tc v l
nhanh.
Cn nhn ngoi (exokernel) tin hnh giao tip hiu qu bng cch s dng cc li
gi chng trnh con thng thng. Phn cng v ton b phn mm trong h thng lun
p ng v c th c m rng bi cc ng dng.
g) Nhn khi (monolithic kernels)
Trong kin trc ny, mt nhn y vi cc kh nng phc tp c chuyn i
ph hp vi mi trng nhng. iu ny gip cc nh lp trnh c c mt mi trng
ging vi h iu hnh trong cc my bn nh Linux hay Microsoft Windows v v
th rt thun li cho vic pht trin. Tuy nhin, n li i hi ng k cc ti nguyn phn
cng lm tng chi ph ca h thng. Mt s loi nhn khi thng dng l Embedded
Linux v Windows CE. Mc d chi ph phn cng tng ln nhng loi h thng nhng
ny ang tng trng rt mnh, c bit l trong cc thit b nhng mnh nh Wireless
router hoc h thng nh v GPS. L do ca iu ny l:
H thng ny c cng kt ni n cc chip nhng thng dng
H thng cho php s dng li cc on m sn c ph bin nh cc trnh iu khin
thit b, Web Servers, Firewalls,
Vic pht trin h thng c th c tin hnh vi mt tp nhiu loi c tnh, chc
nng cn sau lc phn phi sn phm, h thng c th c cu hnh loi b
mt s chc nng khng cn thit. iu ny gip tit kim c nhng vng nh m
cc chc nng chim gi.
H thng c ch ngi dng d dng chy cc ng dng v g ri. Nh , qui
trnh pht trin c thc hin d dng hn v vic lp trnh c tnh linh ng hn.
C nhiu h thng nhng thiu cc yu cu cht ch v tnh thi gian thc ca h
thng qun l. Cn mt h thng nh Embedded Linux c tc nhanh tr li cho
nhiu ng dng. Cc chc nng cn n s phn ng nhanh cng c th c t vo
phn cng.
II.
ng, chng ta thch th mnh ca Linux nhng cng khng phi b qua im yu
cht ngi ca Linux.
Tuy cc Distribution c bc tin di trong vic a Linux xung cho ngi s
dng bnh thng ( Home-User ) nhng Linux dng nh vn c khong cch xa l,
khng thn thin nh windows.
V Linux min ph nn nhng nh sn xut phn cng i lc mun gi b mt v
phn cng ca mnh, v th nhng thng tin cn thit vit chng trnh iu khin
thit b phn cng khng c thng bo. iu ny dn ti Linux khng th h tr nhiu
phn cng nh Windows. Vic kim tra HCL ( Hardware Compatibility List - Danh sch
Phn cng tng thch ) l cc k cn thit trc khi ci t 1 h thng Linux, bn c th
c mt thit b khng hot ng nu bn khng chc chn vn ny. ( Ti thi im
ny: hu ht cc phn cng thit b PC thng thng c Linux h tr ).
Vn tip theo l Game, cc game ln hin nay tuy pht trin phin bn cho
Linux, nhng cng ch dng li mc ca Quack III Arena, The Sim, ... bn vn s
phi s dng windows nu bn l Gamer.
2. Linux Kernel
a) Kin trc nhn
Qun l b nh
Qun l h thng file
X l cc li v ngt
Thc hin cc dch v I/O
Cp pht ti nguyn h thng cho cc ngi dng
Microkernel:
Microkernel c y cc tnh nng cn thit qun l b vi x l, b nh v IPC.
C rt nhiu th khc trong my tnh c th c nhn thy, tip xc v qun l trong ch
ngi dng. Microkernel c tnh linh hot kh cao, v vy bn khng phi lo lng khi
thay i 1 thit b no , v d nh card mn hnh, cng lu tr... hoc thm ch l c
h iu hnh. Microkernel vi nhng thng s lin quan footprint rt nh, tng t vi
b nh v dung lng lu tr, chng cn c tnh bo mt kh cao v ch nh r rng
nhng tin trnh no hot ng trong ch user mode, m khng c cp quyn nh
trong ch gim st - supervisor mode.
u im:
Tnh linh hot cao.
Bo mt.
S dng t footprint ci t v lu tr.
Nhc im:
Phn cng i khi kh hiu hn thng qua h thng driver.
Phn cng hot ng di mc hiu sut thng thng v cc trnh iu khin
trong ch user mode.
Cc tin trnh phi ch i c nhn thng tin.
Cc tin trnh khng th truy cp ti nhng ng dng khc m khng phi ch i.
Monolithic Kernel:
Vi Monolithic th khc, chng c chc nng bao qut rng hn so vi microkernel,
khng ch tham gia qun l b vi x l, b nh, IRC, chng cn can thip vo trnh iu
khin driver, tnh nng iu phi file h thng, cc giao tip qua li gia server...
Monolithic tt hn khi truy cp ti phn cng v a tc v, bi v nu 1 chng trnh
mun thu thp thng tin t b nh v cc tin trnh khc, chng cn c quyn truy cp
trc tip v khng phi ch i cc tc v khc kt thc. Nhng ng thi, chng cng l
nguyn nhn gy ra s bt n v nhiu chng trnh chy trong ch supervisor mode
hn, ch cn 1 s c nh cng khin cho c h thng mt n nh.
u im:
Truy cp trc tip n cc phn cng.
D dng x l cc tn hiu v lin lc gia nhiu thnh phn vi nhau.
Nu c h tr y , h thng phn cng s khng cn ci t thm driver
cng nh phn mm khc.
Giao din chnh gia ht nhn v khng gian ngi dng c thit lp cc h thng
cuc gi.
Giao din h thng cuc gi c bao bc bi th vin C v ng dng khng gian
ngi dng khng bao gi thc hin c cuc gi h thng trc tip.
C khong 300 h thng cc cuc gi cung cp dch v ht nhn chnh
Linux 3.1:
gzip nn lu tr tar: 93 MB
mng,h tr
Li ca Linux l kh nh
c) File System
Trong h iu hnh Linux, nhng tp tin m ngi s dng nhn thy c u theo
cu trc cy th mc, viroot nm trn cng. T im ny cc th mc v tp tin mi
mc nhnh ra lan dn xung pha di. Th mc cao nht, c k hiu bng vch /,
c gi l root directory (th mc gc).
Vi ngi s dng bnh thng th cy th mc ny l mt di nhng tp tin v th
mc ni lin nhau. Trn thc t, nhiu th mc trong cy th mc ny nm nhiu v tr
vt l khc nhau, trn cc partition khc nhau, v thm ch trn cc a khc nhau. Khi
mt trong cc partition y c kt ni vi cu trc cy ti mt th mc gi l mount
point (im kt ni, im lp rp), th mount point ny v tt c cc th mc cp di
c gi l file system.
H iu hnh Linux hnh thnh t nhiu th mc v tp tin khc nhau. Cc th mc
c th lp thnh nhiu file system khc nhau, ty vo cch ci t bn chn. Nhn
chung, a phn h iu hnh nm hai file system: root file system (file system gc)
c k hiu l /, v mt file system khc c kt ni theo /usr (c l user).
Khi dng lnh cd / chuyn v th mc gc v gi hin th danh sch th mc, bn
s thy nhiu th muc. Nhng th mc ny to thnh ni dung ca root file system, ng
thi cung cp mount point cho cc file system khc
Th mc /bin cha cc chng trnh thi hnh c, cn gi l cc binaries (nh phn).
Chng l chng trnh h thng ch yu. Nhiu lnh ca Linux, chng hn nh ls, l cc
chng trnh nm ti cc th mc y.
Th mc /sbin cha cc file nh phn h thng. Hu ht cc tp tin y dng
qun tr h thng. (superuser-bin).
Th mc /etc rt quan trng v cha nhiu file cu hnh Linux. Chng gip cho h
thng my bn c "c tnh". File mt khu passwdnm th mc ny, cng nh fstab ,
danh sch cc file system cn np vo khi khi ng my. Ngoi ra th mc cn cha cc
script khi ng cho Linux, danh sch cc host km a ch IP, cng vi nhiu thng tin
cu hnh khc.
Cc th vin dng chung c cha trong th mc /lib. Khi dng chung th vin,
nhiu chng trnh s s dng li cng loi m, hn na khi c cha cng ch, th
vin s gip gim thiu kch c chng trnh kha cnh thi gian chy.
Th mc /dev cha cc file c bit gi l device files (file thit b, c h thng s
dng chy cc phn cng. V d file/dev/mouse s c thng tin t chut. Khi t chc
s dng phn cng theo cch ny, Linux lm cho vic tng tc vi phn cng trng
ging nh mt phn mm. iu ny c ngha l trong nhiu trng hp, bn c th dng
c php nh khi dng vi directory ca mnh trn a mm, ta c th dng lnh: tar -cdf
/dev/fd0 tackett . /dev/fd0 ch cho lnh tar bit phi dng a mm. Nhiu thit b trong
th mc /dev c tp hp thnh nhm logical.
Bng 1.1: Cc thit b thng dng cha trong th mc /dev
File thit b Description
Bn giao tip h thng, l mn hnh ni kt vt l
/dev/console
vi h thng
Giao din driver cho cc cng IDE. Thit b
/dev/hd*
/dev/hda1 ch partition u tin trn cng had.
Thit b /dev/had ch ton b cng hda.
/usr/include
/usr/g++include
Description
Lu nhiu file thi hnh ca h thng.
Lu nhiu file cu hnh h thng
Ti y v trong nhiu th mc cp di ca
/usr/include l ni lu tt c cc file km theo
b bin dch C. Nhng file header ny nh
ngha cc hng v hm dng trong lp trnh
bng C.
Lu cc file km theo b bin dch C.
Thng qua nhng mc tiu khc nhau, nh ngha hnh ng nn lm (cu hnh,
bin dch, ci t, ..). Chy make help thy tt c cc mc tiu c sn
Ht nhn bao gm hng ngn driver thit b, driver file h thng, giao thc mng, v
nhng mc cu hnh khc. Hng ngn ty chn c sn, ci c s dng bin dch mt
phn code ngun ht nhn. Cu hnh ht nhn l x l nh ngha thit t ty chn ci
m bn mun ht nhn c bin dch. Thit t ty chn ph thuc vo:
-
Phn cng ca bn
Khi nhng ty chn c nhng ph thuc, ng bao gi chnh s bng tay, hy thng qua
giao din ha hay vn bn
-
Tm kim t kha trong tn ca cc thng s. Cho php chn hay khng chn nhng
thng s c tm thy
Make gconfig
GTK da trn giao din cu hnh ha
Chc nng tng t trong xconfig
Ch thiu chc nng tm kim
Yu cu gi Debian: libglade2-dev
Make menuconfig
-
li ch khi khng c ha l c
sn. Kh tin li.
yu cu gi Debian:libncurses-dev
Make nconfig
-
yu cu gi Debian:libncursesdev
Make oldconfig
-
yu cu gi tr cho thng s mi
Nu bn chnh sa file .config bng tay, khuyn khch chy make oldconfig sau .
Make allnoconfig
-
Mt vn thng xuyn:
-
cho php kch hot hoc v hiu ha mt cch hon ton h tr m-un . Nu h
thng ca bn khng cn nhng m-un ht nhn, tt nht v hiu ha n v n
tit kim khong khng gian v b nh ng k
Loi vi x l v tnh nng (x86) hay loi h thng (ARM) hay s la chn CPU (MIPS)
-
Trn x86, lin quan s ti u ha, trn nhng kin trc khc rt quan trong , v
khng ph hp.
ty chn qun l nng lng cn cho tt c nhng qun l nng lng lin quan
n nhng tnh nng.
H tr mng:
-
Ngn xp mng
Ty chn mng
TCP/IP protocol with options for multicast, routing, tunneling, Ipsec, Ipv6,
congestion algorithms, etc.
Drivers thit b
-
MTD l h thng con cho flash (NOR, NAND, OneNand, battery-backed memory,
etc)
SCSI
nhn SCSI, cn cho thit b SCSI m cn cho USB, cng ATA, PATA
Trong th mc li chnh.
Generates( to ra)
-
Install
-
snd-intel8x0m l tn ca driver
3. Toolchain
a) Cross compiler
Cross compiler l mt trnh bin dch c s dng thc thi cho h thng nhng,
n c kh nng to ra m thc thi cho mt nn tng khc so vi trnh bin dch c
chy.
Cross compiler h tr:
Thc hin bin dch nhiu chng trnh phc tp trn bt c my no, bt k phn
cng hoc phin bn h iu hnh m n ang chy.
Bin dch cc cng c cn thit khi pht trin mt nn tng phn mm mi, hoc
gi lp ca mt nn tng tng lai.
Cc m hnh my o cho php u ra trong cng mt trnh bin dch s c s
dng trn ton h thng.
b) nh ngha Toolchain v cc thnh phn
L mt tp cng c c dng xy dng cc ng dng hoc to image cho mt
thit b nhng. Cc toolchain cn cho php bin dch (compile) trn mt kin trc cho
mt kin trc khc (nh l bin dch mt image ca ARM trn mt my tnh c nhn xi
h iu hnh Linux; iu ny c gi l cross-compiling v cc compile c gi l
cross-compile).
-
Toolchain ny chy v to m theo kin trc hin ti, thng thng l x86 (32bit)
Thnh phn :
Bi vy, qu trnh bin dch cn c nhng kernel header, v c nhiu chng trnh
khc cng cn chng.
GCC complier
c) Th vin C
Eglibc : mc ch cho vic gim thiu cc chn, cc thnh phn thit lp, h tr tt
cho bin dch cng nh kim tra li.
d) Toolchain Options
ABI (Application Binary Interface) (Trnh giao tip)
-
Nhng chng trnh trn mt h thng phi c bin dch trn cng mt ABI v
tt nhin nhn (kernel) phi hiu c ABI ny.
Trn ARM, c 2 ABI chnh l OABI v EABI (EABI c s dng rng ri hn)
e) Xy dng mt Toolchain
-
Tm mt toolchain c sn
-
Sourcery CodeBench
-
Linaro toolchains
-
Ci t v s dng toolchain
-
Mt cch khc s dng tin ch l automate the process building the toolchain
(t ng tin hnh build toolchain)
o Bn khng cn phi qu lo lng v nhng chi tit trong qu trnh thc hin.
o Nhng cng sn sng cung cp nhng ty chn linh hot trong thit lp, la
chn phin bn,v..v
o Cung cp mt s bn v li trn nhng thnh phn thuc kin trc khc.
o Nhiu cng c c tch hp nhiu tnh nng cho php t ng ly v, gii
nn, thit lp, bin dch v ci t trn cc thnh phn khc nhau.
Crosstool-ng
Tnh nng y : h tr uClibc, glibc, eglibc, hard and soft float, nhiu kin trc
hn.
Crosstool-NG: ci t v s dng
-
s dng mt thit lp mu
./ct-ng <sample-name>
iu chnh li mt s thit lp
./ct-ng menuconfig
Build toolchain
./ct-ng build
Mt s lu
-
4. Bootloader
a) Gii thiu Bootloader
Bootloader l mt thnh phn quan trng ca h thng nhng, n
cung cp nn tng v phn b cho cc h thng phn mm khc hot
ng.
Bt c chng trnh no mun chy, n phi c bootloader ly
m s khi to t thit b lu tr (thng l b nh Flash) khi ng.
Bootloader s chu trch nhim qun l chng trnh trong sut qu
trnh sng ca n.
Bootloader l mt on m chu trch nhim:
-
U-boot
make BOARDNAME_config.
BOARDNAME thng l tn ca nhng file cu hnh trong include/ configs /,
ngoi tr file *.h
Hy chc chn rng trnh bin dch cho (cross-compiler) c sn trong PATH.
Compile U-Boot, bng cch xc nh trnh bin dch cho.
V d, nu trnh bin dch cho ca bn l: arm-linux-gcc th ta lm nh sau: make
CROSS_COMPILE=arm-linuxKt qu l mt file u-boot.bin, l file nh U-Boot.
Ci t U-boot
Lu vi U-boot
U-boot shell cung cp cc tp lnh. Xem ti liu tham kho bit cch s dng cc tp
lnh ny.
Thng tin tp lnh
Version details
TFTP
Network vn chuyn gia development workstation v u-boot trn cc target thng qua
TFTP.
-
U-boot mkimage
Kernel image m u-boot np v khi ng phi c chun b, v vy m mt header UBoot c th c thm vo pha trc ca image.
-
Header ny cho bit cc chi tit nh kch thc hnh nh, a ch np d kin, cc
loi nn, vv
Hoc, bin dch n bi chnh bn: ch n gin l cu hnh U-Boot cho bt k board ca
kin trc bt k v bin dch n. Sau ci t:
mkimage:
cp tools / mkimage / usr / local / bin /
- Target t bit uImage ca kernel, Makefile c th c s dng to ra mt kernel
image ph hp vi u-boot.
III.
1. Yu cu phn cng
Phi p ng c c cc yu cu sau:
-- B vi x l / vi iu khin 32 bit tr ln, c cha mt n v qun l b nh (MMU).
-- Phi b nh RAM cung cp cho h thng. Embedded Linux yu cu ti thiu
khong 4MB SDRam v 2MB flash i vi mt h thng bao gm c networking v file
system. Tuy nhin ta cng hon ton c th disable phn networking v file system ny.
Vi b nh 16MB hoc 32MB SDRAM v 4MB flash s cho php thm cc rich set of
applications cho php tng hiu nng.
Mt vi ty chn phn cng kh dng:
+ x86
+ ARM
+ IBM/Motorola Power PC
+ IBM970FX
+ MIPS
+ Hitachi Super H
+ Motorola 68000
Ngoi ra mt s cc h iu hnh Embedded Linux c b nh nh sau y:
uClinux c s dng cho dng Motorola, ARM.
Storage
Display Devices
2. Kh nng tch hp phn cng
Hin nay, h thng nhng ang rt pht trin. Vi FPGA, vi ngn ng m t phn cng,
vi s h tr c lc ca cc phn mm, chng ta c th d dng xy dng c mt h
thng tch hp trn mt chip (SoC - system on chip).
Sau y l mt vi v d v cc kin trc vi x l tch hp cng ngh SoC.
a. PowerPC (Performance Optimization With Enhanced RISC Performance Computing)
l mt vi x l theo hng RISC (Reduced Instructions Set Computer - My tnh vi tp
lnh n gin ha) c to ra vo nm 1991 bi s hp tc gia Apple-IBM-Motorola.
PowerPC tm ra hng i cho cc sn phm nhng. T cc ng dng trn t, tiu
dng, n cc ng dng mng li thng tin rng ln. PowerPC hin l mt trong nhng
kin trc ph bin nht cho cc ng dng nhng.
AMCC PowerPC c th l AMCC PowerPC 440EP Embedded Processor.
440EP hin ang l chip x l c tm thy nhiu nht trong cc sn phm h thng
mng v giao tip. Mt s c tnh ni bt ca 440EP:
Broadcom MIPS
c. ARM
u ghi 8 knh
a) Ci t X-loader
Download v gii nn source X-loader
sudo apt-get install git
git clone git://git.igep.es/pub/scm/x-loader.git
cd x-loader
git checkout v1.4.4-3
p dng mt patch h tr NAND flash cho X-loader.
cat ../x-loader-1.4.4-3-igep-nand-support.patch | patch -p1
compile X-loader cn khi to mt enviroment variable (bin mi trng) v
PATH n toolchain nh sau:
export CROSS_COMPILE=arm-linux-
export PATH=/usr/local/xtools/arm-unknown-linux-uclibcgnueabi/bin:$PATH
Lnh cu hnh cho target board IGEPv2:
make igep0020-sdcard_config
V cui cng l build X-loader bng lnh make, kt qu to ra file x-load.bin.ift s
c chp vo th nh.
b) Ci t U-boot
Ti v U-boot:
wget ftp://ftp.denx.de/pub/u-boot/u-boot-2011.12.tar.bz2
tar xvf u-boot-2011.12.tar.bz2
cd u-boot-2011.12
p dng patch h tr NAND flash cho IGEPv2:
cat ../u-boot-2011.12-igep-nand-support.patch | patch -p1
Cu hnh bng lnh:
make include/configs/igep0020.h
dng giy php Apache 2.0, c ngha l nh pht trin c th pht trin m rng chc
nng m khng cn cng b m ngun ca phn m rng . iu ny mang li kh nng
cc k to ln cho cc nh sn xut thit b di ng, v to nn mt c hch cho th trng
ny.Cc th mnh ca Android:
Application Framework c thit k tt.
ng dng da trn Java, mt ngn ng ph bin
Nn tng Linux HH ngun m
H tr NDK (Native Development Kit): Cho php nhng cc thnh phn s dng
m C++ vo ng dng Android. iu ny c bit quan trng i vi cc ng dng i
hi hiu sut cao m ng dng da trn Java v my o Dalvik khng p ng c.
Giy php s dng: Rt hp dn v tt c cc gi nhn u c m ngun theo
Apache 2.0. Cc phn pht trin thm khng cn phi cng b m ngun.
M ngun: B m ngun d hiu. Mt s trnh iu khin cng c m m
ngun.
Th trng cc ln ca in thoi di ng
Chun ton cu
Cc phin bn mi c cp nht lin tc.
Kin trc
Tham Kho
Ngun tham kho chnh l internet, training ca free-electrons.com
Mt s sch ting anh chuyn ngnh: Embedded Linux Primer, Building
Embedded Linux System.