What is the Difference Between C and Embedded C?
Difference Between C and Embedded C:
In our previous posts, we had seen the introduction about Embedded C... Now let us see the difference between C and Embedded C...
The following table gives us the summary of the difference between C and Embedded C.
|C Language||Embedded C|
|A type of high level language.||Nothing but an extension of C.|
|Has a free-format of program coding.||The source code format depends upon the type of microprocessor/ microcontroller that is used.|
|Optimization is normal.||High level of optimization.|
|An Operating system is essential to function.||Can work with or without an Operating system.|
|Used for desktop applications.||Used for microcontroller/ microprocessor applications.|
|Does not bother about memory resources.
i.e., use entire memory available in CPU.
|Uses limited resources.
Hence consider memory allocation of the embedded processor.
|C programs run in console.
Hence see the output through desktop
|They run in realtime constraints.
Hence output is not available in OS
|Directly or indirectly support other various programming languages during application.||Supports only required processor of the application.|
|Input can be given to the program while it is running.||Only the pre-defined input can be given to the running program.|
|C compilers are OS dependent.
i.e, run the ram directly from OS terminal.
|Requires compilers of Embedded C.
These compilers in turn enable access to all resources of the embedded system. Hence OS independent.
|Some of the examples of Applications: logical programs, system software programs.||Some of the examples of real-time Applications: DVD, TV,Digital camera.|
By the way, these are simple and normal differences that exist between C and Embedded C for an open eye.
But in real there is no such logical differences between C and Embedded C. As I said earlier in the previous post, The Embedded C is just an extension of C.
Somehow we can say that the only difference between C and C on embedded systems is just their Input and Output is too on the way the input is given and output is seen.
Say for example, consider the following:
Input: Printf <<< read_pin_no (the pin number where input is given)
Output: scanf <<< read_pin_no (the pin number from where output is taken)
Hence there is no differences between C and Embedded C except these type of some small disturbances...
Thanks for reading....