Programming for Embedded Systems: Porting vs. Abstraction

Sep 25, 2023Articles

In this two part article we will look at the differences between porting and abstracting code with the purpose of helping you understand why and when to use each method. In the case where you need your code to execute on multiple embedded operating systems (platforms), it is almost guaranteed that you will need to adjust your code for each platform. Each platform has its own system call interface (or software development kit) that is accessed through code using differing protocols, sometimes even for the same functionality. In other cases, your target platform may not include certain functionality or may include additional functionality that could be used to enhance your platform.

Porting

Most embedded systems have tight memory constraints. You must determine how much memory your embedded system allows (i.e. how much and what type of RAM is supported). Then, there are two factors to consider 1) what memory is required by the RTOS itself and 2) how much memory your application requires. For the second factor, you may need to utilize an RTOS simulator (most RTOSs come with one) to gain an accurate estimation, which is especially important if you are working with a severely
limited system.

 

For more information: Contact Us

Explore Products

AppCOE

OS Changer

Programming Language Changer

Hardware/OS Support

Try or Buy

Trial Software

Contact Sales

Installation Help

Training

Get Support

Support Portal

FAQ

Technical Data

Testimonials

Company

Career

News Room

Contact Us

Customers