Embedded open source system to explore the possibility of: ZDNet ChinaThursday, July 31 2003 1:11 PM
Open Source Codes and GNU Public Authorization (GPL) software is continuing to bring excellent free software into most areas of the information industry, including embedded systems. Recently, Wind River and Green Hills Software announced a step-by-step homework, which indicates how traditional Embedded tool manufacturers have carried out business.
In the past few years, I have exposed a variety of open source software. At the beginning, the developer uses ordinary tools and editors, then the cross compiler and library, and finally the entire operating system, such as embedded Linux and ECOS.
In my experience in using open source software, most of them are positive; reliable free software, especially the developers of the entire community knowledge that provide technical support that cannot be combined. If you prefer more traditional methods, such as Red Hat and Montavista provide packaged open source software and paid technical support.
Below is an incomplete list of top-level open source code projects, which are related to developers of embedded systems. Most items are rewritten in accordance with mainstream software items, and the best performance is exhibited when used for 32-bit or 16-bit processors including ARM, MIPS, PowerPC, SUPERH and X86 architectures.
GCC
GNU Compiler Collection (GCC) includes a C / C compiler, assembler, connector, and library management program. It is provided as a built-in compiler to Linux and Windows / DOS, and can be used as a cross-compiler for most mainstream 32 bits (and some 16-bit) embedded architectures. Your commercial compiler may be practical in the GCC of different coats.
GDB
GDB is a debugger for a source code layer with a GCC compiler tool. By implementing a small ROM monitor (or STUB) that communicates with a GDB debugger (running on the workstation), you can integrate GDB into an embedded environment. GDB is essentially a command-driven program, but it can have a variety of graphics front ends, including DDD and Insight.
Embedded Linux
Embedded Linux is a standard Linux operating system code base that is repositioned to an embedded environment, usually by removing unnecessary features and dedicated support for certain features, such as flash file systems, and improved priority behaviors. Realized.
Embedded Linux is an ideal solution for certain embedded devices, but because of the size of its size, and actually performance is not sure, it is not suitable for many embedded design.
ECOS
If the embedded Linux is too large, then ECOS may meet the requirements. It is an embedded RTOS for transplantable open source for 16-bit, 32-bit and 64-bit processors. Unlike embedded Linux, it is designed by a working group specially designed to embedded system. ECOS has a considerable feature and a configuration tool that allows you to choose the features you need.
Newlib
NEWLIB is an open source C language library whose goal is an embedded system. It is very small, fast, can be ported to many CPU architectures. Newlib won't assume which operating system you are using (if any), so you can put it into almost all embedded environments - if you have enough remaining memory.
Uclibc
If you are running embedded Linux, then you may have to touch UCLIBC. It is a mini version of a large GLIBC C language library in the standard Linux release, which makes it more suitable for only a limited memory embedded environment.