Programming for Embedded Systems: Porting vs. Abstraction – MapuSoft
Summary
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. You must determine how much memory your embedded system allows (i.e. how much and what type of RAM is supported). 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.