Embedded & Desktop Compilers - What's the difference?
On-demand Web Seminar
This webinar will take a detailed look at the required facilities and capabilities in compilers designed for embedded applications.
A compiler is a tool that converts a high level programming language, like C or C++, into machine code (or assembly language) for a particular processor. It is always expected that a compiler will do a good job in making that conversion, generating optimal code as a result. Most modern compilers do perform excellent optimization, but they are also focused on the needs of desktop applications.
Embedded systems place special demands on a compiler, because they are so diverse in their design. Primarily, the embedded software developer needs to have very fine control over the behavior or the compiler and the code generation process.
Resource constraints are a fact of life for all embedded designs: CPU power, memory size, or both. It is critical that an embedded compiler provides aggressive, but controlled optimizations to address these issues.
What You Will Learn
- What facilities are specifically needed in compilers for embedded applications
- When language extensions make sense
- How optimization can impact code size, speed or both
- Why writing assembly language should be outlawed
About the Presenter
A Technical Marketing Manager, Colin has over twenty-five years experience in the electronics industry, largely dedicated to embedded software. A frequent presenter at conferences and seminars and author of numerous technical articles and two books on embedded software, Colin is a member of the marketing team of the Mentor Graphics Embedded Systems Division, and is based in the UK.
Book: Embedded Software: The Works
Blog: The Colin Walls Blog
Who Should View
- Embedded software engineers - both inexperienced and veterans
- Technical managers leading embedded software development teams
Integrating Smart Devices into Linux-based Infotainment Systems
Car drivers and passengers increasingly expect to make use of their personal Smart Devices remotely controlled from the In-Vehicle Infotainment system (IVI). Smart device capabilities such as personalized...
Debugging Graphics Synchronization issues with Sourcery Analyzer
The modern user interface (UI) has come of age. UIs are ubiquitous among many of the more popular consumer electronic products in use today, from mobile phones and smart appliances to automotive in-vehicle...
Enabling Multi-OS Embedded Systems with Hypervisor Technology
Business managers and software developers alike face a conundrum when building today’s intelligent embedded systems: How does one successfully develop and deliver an increasingly complex, connected,...