embedded_linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
embedded_linux [2011/09/10 11:33] – [Workstation emulators] adminembedded_linux [2025/10/31 22:20] (current) admin
Line 1: Line 1:
 +====== Embedded linux components ======
 +
 +  * Toolchain
 +  * Boot loader
 +  * kernel
 +  * user space
  
 ====== Embedded linux tools ====== ====== Embedded linux tools ======
Line 4: Line 10:
 **U-Boot** - GPL boot loader **U-Boot** - GPL boot loader
  
-**uClibc** is a small C standard library intended for embedded linux systems that was created to support uClinux, a version of linux that does not require an MMU. Currently, the kernel codebases for uClinux and linux are the same, having just different configurations (since the 2.6 Linux release). It is now supported by MontaVista, TimeSys and Windriver. A native uClibc toolchain can be built using the uClibc buildroot-based system.+**uClibc** is a small C standard library intended for embedded linux systems that was created to support uClinux, a version of linux that does not require an MMU. Currently, the kernel codebases for uClinux and linux are the same, having just different configurations (since the 2.6 Linux release). It is now supported by MontaVista, TimeSys and Windriver. A native uClibc toolchain can be built using the uClibc buildroot-based system (see [[http://free-electrons.com/docs/uclinux/]]).
  
-**Busybox** is a userland software running on top of the linux kernel, that provides the usual set of Unix tools (sh, ls....). Its size is less than 500KB when compiled statically with uClibc.+**[[http://linux.die.net/man/1/busybox|Busybox]]** is a userland software running on top of the linux kernel, that provides the usual set of Unix tools (sh, ls....). Its size is less than 500KB when compiled statically with uClibc.
  
 A cross-compiling toolchain for a specific architecture, like PowerPC or ARM, contains the following components: A cross-compiling toolchain for a specific architecture, like PowerPC or ARM, contains the following components:
Line 20: Line 26:
  
 libgcc is a low-level runtime library used by gcc-compiled code, e.g. to support complex arithmetic operations libgcc is a low-level runtime library used by gcc-compiled code, e.g. to support complex arithmetic operations
 +
 +===== Boot process =====
 +
 +  * https://www.0xkato.xyz/linux-boot/
  
  
Line 25: Line 35:
  
   * Code Sourcery G++, which includes their modified GNU C and C++ compilers and the Eclipse IDE framework   * Code Sourcery G++, which includes their modified GNU C and C++ compilers and the Eclipse IDE framework
-  * DENX ELDK (U-Boot)+  * DENX ELDK (U-Boot). They offer [[http://www.denx.de/wiki/Training2/GenericOverview|training]]. See their further reading [[http://www.denx.de/wiki/view/DULG/MoreInformationFurtherReading|list]].
   * Free Electrons   * Free Electrons
   * CrossWorks for ARM (using the GNU gcc compiler)   * CrossWorks for ARM (using the GNU gcc compiler)
Line 47: Line 57:
  
   * [[http://crosstool-ng.org/|crosstool-ng]]   * [[http://crosstool-ng.org/|crosstool-ng]]
-  * [[http://buildroot.uclibc.org/|Buildroot]] is a set of Makefiles and patches that make it easy to generate a cross-compilation toolchain and root filesystem for your target Linux system using the uClibc C library.+  * [[http://buildroot.uclibc.org/|Buildroot]] is a set of Makefiles and patches that make it easy to generate a cross-compilation toolchain and root filesystem for your target Linux system using the uClibc C library. Some instructions [[http://free-electrons.com/pub/conferences/2011/elce/using-buildroot-real-project.pdf|here]]. See http://autobuild.buildroot.org/.
   * [[http://www.pengutronix.de/software/ptxdist/index_en.html|PTXDist]] is a tool to create a Linux **root filesystem** (kernel, scripts, programs and libraries) for small/embedded computer systems. PTXDist provides a defined and repeatable way of building toolchains and root filesystems, consisting of open-source packages and user applications/libraries. In contrast to tools like OpenWrt or Buildroot, its principal library is glibc and not one of its lightweight counterparts like uclibc or dietlibc.   * [[http://www.pengutronix.de/software/ptxdist/index_en.html|PTXDist]] is a tool to create a Linux **root filesystem** (kernel, scripts, programs and libraries) for small/embedded computer systems. PTXDist provides a defined and repeatable way of building toolchains and root filesystems, consisting of open-source packages and user applications/libraries. In contrast to tools like OpenWrt or Buildroot, its principal library is glibc and not one of its lightweight counterparts like uclibc or dietlibc.
   * [[http://www.openembedded.org/index.php/Main_Page|Open Embedded]] is a software framework to create Linux distributions aimed at embedded devices.    * [[http://www.openembedded.org/index.php/Main_Page|Open Embedded]] is a software framework to create Linux distributions aimed at embedded devices. 
Line 90: Line 100:
 http://www.embeddedlinuxconference.com/elc_europe10/sessions.html#Anders http://www.embeddedlinuxconference.com/elc_europe10/sessions.html#Anders
  
 +====== ELC2011 ======
  
 +https://events.linuxfoundation.org/images/stories/pdf/lf_elc12_yau.pdf
 ====== Interesting links ====== ====== Interesting links ======
  
  • embedded_linux.1315654412.txt.gz
  • Last modified: 15 years ago
  • by admin