ssg-otc presentation template contents · embedded linux and the mainline kernel david woodhouse...
TRANSCRIPT
Software and Services Group
Embedded Linux and the mainline kernelDavid Woodhouse
CELF Embedded Linux Conference
April 2009
2
Software and Services Group 2
Ubiquitous Linux
Embedded control device... phone... PDA... Internet tablet... router...media device... netbook... laptop... desktop... server... supercomputer...
3
Software and Services Group 3
“Embedded”...?
Portable Media Players
Phones
PDAs
“Internet Tablets”
Routers
Televisions
VCR / PVR / DVD / Media
Netbooks (?)
4
Software and Services Group 4
“Embedded”...?
Headless?
Handheld?
Power source?
Physical size?
Limited RAM?
Storage?
Other...
5
Software and Services Group 5
Embedded needs
Power management
Fast startup
Headless operation
Uncluttered user interfaces
Solid state storage
6
Software and Services Group 6
Embedded needs
Power management
Fast startup
Headless operation
Uncluttered user interfaces
Solid state storage
Other users need these features too!
7
Software and Services Group 7
Power Management
Battery life
8
Software and Services Group 8
Power Management
Battery life
Cost of power consumption
Heat output
9
Software and Services Group 9
Tickless operation
Power savings
10
Software and Services Group 10
Tickless operation
Power savings
Scalability for virtualisation
11
Software and Services Group 11
Fast boot
Hard limits for mobile telephones
User experience for consumer electronics
12
Software and Services Group 12
Fast boot
Hard limits for mobile telephones
User experience for consumer electronics
Server availability
13
Software and Services Group 13
User interfaces
Ease of use for consumer equipment
14
Software and Services Group 14
User interfaces
Ease of use for consumer equipment
... and for everyone else:OLPC / Sugar
Netbooks
Simple desktop environments
15
Software and Services Group 15
Solid state storage
FLASH storage in “embedded” devices
16
Software and Services Group 16
Solid state storage
FLASH storage in “embedded” devices
Solid State Disk
17
Software and Services Group 17
Others...
Execute in place (XIP)From FLASH for embedded systems
Shared file system data under virtualisation
DMA API usageFor cache coherency on embedded systems (ARM, some PPC)
For IOMMU on larger systems
18
Software and Services Group 18
We are not so special!
19
Software and Services Group 19
Community impressions
“Enterprise” Linux
“Embedded” Linux
20
Software and Services Group 20
Community impressions
“Enterprise” Linux
“Embedded” LinuxWorking with old code
Not working with upstream
Inclined towards “special” one-off hacks
Irrelevant to the general case
21
Software and Services Group 21
Community impressions
“Enterprise” Linux
“Embedded” LinuxWorking with old code
Not working with upstream
Inclined towards “special” one-off hacks
Irrelevant to the general case
We must prove them wrong!
22
Software and Services Group 22
“Embedded” success stories
Tickless
Preemptive kernel
Power management
Suspend to RAM
Solid state storage
Squashfs
23
Software and Services Group 23
Working with the community
Find generic points of interest
Publish early and oftenIn git trees
Separate trees for separate development efforts
Also send patches for review
Solicit and respond to feedback
Work with upstream maintainers
BE PART OF THE COMMUNITY!
24
Software and Services Group 24
Staying close to upstream
AdvantagesEasier for product updates and new products
Easy to use fixes and new features
External contributions
Code review and testing
CostsWriting acceptable code can be hard and takes time
Upstream kernel is a fast-moving target
Releasing information may be difficult
25
Software and Services Group 25
Tips on contributing code
Find parallel requirements
Avoid “hacking around” problems
Avoid overengineering
Care about locking
Coding Style
Submit patches carefully
26
Software and Services Group 26
What's next for “Embedded” Linux?
Solid state storageMore work on SSDs
Flash file system development (UBI, logfs, btrfs)
Better power management
More real time development
What do you need?
27
Software and Services Group 27
Questions?