Hi there, I am looking for some C++(object oriented) source codes of applications designed for embedded systems. I am going to use them as benchmarks. does anybody know some web-sites where to get these sort of c++ source codes ?
I know that thgere's at least one C++ example on the mspgcc site. It calims it was written just to test that c++ part of mspgcc actually produces vaguely sensible code, not as a working program, and not wanting c++ I've never really examined it.
It depends on the size of the system, specifically of the processor. What have traditionally been in embedded products, 8-bit and 16-bit microcontrollers, generally only have C compilers available, but 'larger' 32-bit processors have C++ compilers for them, and often run 'big' OS'es such as Linux or some flavor of Windows.
C compilers, even for legacy 8-bit processors, are finally good enough that writing in assembly is increasingly uncommon. It's still nice to know something about assembly, but modern C is a Good Thing.
As we've seen in this forum, there *is* a wide range that falls under the definition of "embedded."
However, note that the "test project" is only intended to demonstrate some of the more complex systems contained within the OSCL without cross-compiling.
Much of the OSCL was developed while running under the KRUX "RTOS" (contained within the OSCL) on MPC8xx and CPU32 platforms. More recently, I have been applying the OSCL in the reactive portions of embedded Linux based applications using pthreads ... but that's a relatively new use.
The OSCL is project/platform independent, and was developed with the needs of embedded systems in mind (e.g. no hidden malloc/free new/delete.)
The OSCL was never designed for extremely resource constrained embedded systems.
The OP wasn't very specific about *his* definition of "embedded."
Please ... no "that's not embedded" wars :-)
Michael N. Moran (h) 770 516 7918
5009 Old Field Ct. (c) 678 521 5460
"Embedded" is (IMHO) the least specific of all computing categories. It can includes aspects of pretty much _every_ other computing subject, including system programming, communications, databases, security, cryptography, DSP, linear algebra, discrete and/or continuous simulation, graphics, information theory, and anything else I haven't mentioned. I personally have worked on "embedded" systems ranging from a PIC with 0.5k of OTP PROM and less than 32 bytes of memory, up to 32-bit processors with multiple megabytes of RAM, hard drives, TCP/IP and NFS (I once evaluated a 64-bit MIPS processor for an embedded system, but that project was cancelled).
Even so, the last project I worked on that was programmed entirely in assembler was an avionics (navigation) system which was released in
1983. Every other project was written primarily in some higher-level language, almost always C (Exceptions: one large C++ project, some hardware bring-ups that used Forth, and another avionics written in PLM-80 back in the mid-1980s).