Embracing Embedded Environments for Development Success

Post on 16-Jan-2016

29 views 0 download

Tags:

description

Embracing Embedded Environments for Development Success. By : Mark Recoskie. Embedded Systems. Small Special purpose Solid state Low power Less expensive. PC versus Embedded Device. Embedded Device embedded processor small-med applications low cost - PowerPoint PPT Presentation

Transcript of Embracing Embedded Environments for Development Success

Embracing Embedded Environments for Development Success

By : Mark Recoskie

3

Embedded Systems

• Small • Special purpose• Solid state• Low power• Less expensive

4

PC versus Embedded Device PC

• x86 processor

• small-med-large applications

• greater cost

• greater integration effort (cards & drivers, choosing components and building PC)

• stigma – PC not as reliable as a proprietary PBX

• large in size

• familiar development environment

Embedded Device

• embedded processor

• small-med applications

• low cost

• little or no integration effort required

• purpose built, solid state, more reliable

• small in size

• embedded development environment – different skill set required

5

Considerations

• Processor• Memory• Cost of the unit• Special hardware integration• Software tools

6

Development Differences

• Why is development different?– Cross compile (Host Target)– Different tools and libraries– Dependencies and packages– File systems– Optimizations– Debugging

• Special skill set required

7

• “Building a gcc / glibc cross-toolchain for use in embedded systems development used to be a scary prospect, requiring iron will, days if not weeks of effort, lots of Unix and Gnu lore, and sometimes willingness to take dodgy shortcuts.”

- Dan Kegel : a Google software engineer

8

Embedded Development Environments• What are they?

– Usually consist of a set of tools and framework– Installed on a independent computer– Most are a toolchain + Buildroot concept

• Examples,– OpenWrt– PADS– Astfin– BAPS– AADK– Scripts

9

Embedded Dev Suites (cont’d)

• Various levelsA) Toolchain (gcc, scripts, etc.)

B) Buildroot concept (on top of toolchain)

C) Buildroot+ (GUI, package manager)

• Assembly line for code

10

The Process

• Automation is the word

• 1) Selection• 2) Compilation• 3) Preparation• 4) Commitment• 5) Debugging

11

The Process (cont’d)

12

Benefits of Embedded Development Environments

• Much less technical knowledge of an embedded environment is required

• Much less setup time• Consistent and reproducible• Portable mechanism from machine to machine • Automation

13

Summary

• A good Embedded Development Environment is essential

• Getting easier and easier to adopt• Embedded development is just different

development – not harder