Embedded Linux Pitfalls
Transcript of Embedded Linux Pitfalls
![Page 1: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/1.jpg)
Sean HudsonEmbedded Linux Architect
Embedded Systems Division
Embedded Linux Pitfalls
![Page 2: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/2.jpg)
Outline
IntroductionA bit o’ perspectivePitfallsConclusionsQ&A
2
![Page 3: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/3.jpg)
Introduction
Setting expectations
3
![Page 4: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/4.jpg)
A bit o’ perspective (History)
Click to edit Master text stylesSecond level
Third levelFourth level
Fifth level
4
![Page 5: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/5.jpg)
A bit o’ perspective (History)
5
![Page 6: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/6.jpg)
Pitfalls
6
![Page 7: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/7.jpg)
Pitfalls – Some Fundamentals
Hardware and software: an impedance mismatch?
7
![Page 8: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/8.jpg)
Pitfalls – Some Fundamentals
NIH syndrome
8
![Page 9: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/9.jpg)
Pitfalls – Some Fundamentals
What do you mean this runs on my desktop?
9
![Page 10: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/10.jpg)
Click icon to add table
Pitfalls - Maintenance
10
nBuilding the “Tower of Babel”
Click icon to add table
![Page 11: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/11.jpg)
nCarrying too many patches
Pitfalls – Maintenance
11
Click to edit Master text stylesSecond level
Third levelFourth level
Fifth level
![Page 12: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/12.jpg)
Pitfalls – System Design
Interfaces, APIs, & contracts
12
![Page 13: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/13.jpg)
Pitfalls – System Design
Upgrade path
13
![Page 14: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/14.jpg)
Pitfalls – Tools
Debuggers are your friend. No, really.
14
![Page 15: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/15.jpg)
Pitfalls – Tools
Use NFS to mount your target rootfs
15
![Page 16: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/16.jpg)
Conclusions
16
![Page 17: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/17.jpg)
Questions?
17
![Page 18: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/18.jpg)
PitfallsFundamentals:
What do you mean that I can’t use my hammer?
What do you mean this runs on my desktop?
Treating Linux the same as you would your commercial/bare metal OS
Hardware isn’t a product
NIH syndrome
Planning/Design:What’s in the choice of a CPU? Know thy footprint!
Interfaces, interfaces, interfaces
Forgetting the upgrade path until the end, if at all
Hardening
Maintenance:Building a tower of Babel
Carrying too many patches
ToolsDebugging with printf()
Are you ready to cross Canada?
18
![Page 19: Embedded Linux Pitfalls](https://reader031.fdocuments.net/reader031/viewer/2022020623/61f13612562e09123311c993/html5/thumbnails/19.jpg)
Pitfalls – Some Fundamentals
Failure to learn about Linux specifics early on
19