stf12 wrote on Tuesday, June 10, 2014:
thanks to open this discussion. I’m pleasure to share with you and this forum my thinking about the evolution of embedded application, but I don’t want to convince anyone because I’m not a GURU.
A “small” MCU (40 Mhz and 32KB RAM) designed for application that are small in term of code lines, is not a good choice to push the OO evolution in the embedded world
When I designed the FreeRTOS_EC classes I have had in mind the evolution we saw a lot of years ego in the PC world: more powerful CPU => complex and bigger (in term of code lines) applications => new programming paradigm to manage this complexity. For this reason we saw the evolution the programming languages from Assembler to procedural languages © to functional and object orient language (C++), and so on.
Are we in time to introduce C++ in the embedded world? I think of yes if I look to application like the smart brand or the internet of things. A Cortex-M MCU today is powerful enough to manage a complex multitouch application. So it is time to design in a different way the application.
For sure we need to learn how fine tune the g++ compiler for an embedded application.For example in term of code size is it possible:
- to remove the exception handler feature
- to remove RTTI feature
- to remove the portion of the runtime that manage the execution of static and global object distractor
It could be interesting to make some test between C and C++ code using some well defined code samples (may be a standard FreeRTOS demo implemented in both way). What do you think?