Difference between revisions of "Embedded"

From Free Pascal wiki
Jump to navigationJump to search
(added Nitendo section)
m (minor spelling)
Line 14: Line 14:
 
   For this devices, a special target in FPC exists [[TARGET Embedded]]
 
   For this devices, a special target in FPC exists [[TARGET Embedded]]
  
== Nitendo platforms ==
+
== Nintendo platforms ==
 
   For this devices, special targets exist in FPC.
 
   For this devices, special targets exist in FPC.
 
   Also there exist specially built crosscompilers for the X86 Windows platform:
 
   Also there exist specially built crosscompilers for the X86 Windows platform:

Revision as of 00:47, 9 December 2011

English (en) español (es) 中文(中国大陆)‎ (zh_CN) 中文(台灣)‎ (zh_TW)

The original EMBEDDED topic has been moved to TARGET Embedded (Embedded Systems w/o OS)


An embedded system is a computer system designed to perform one or a few dedicated functions often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer (such as a PC, is designed to be flexible and to meet a wide range of end-user needs. Embedded systems control many devices in common use today. See Wikipedia:Embedded System for further description.

As the general purpose systems (PCs) are becoming smaller and smaller and the embedded systems become more and more powerful (and universally usable devices), the border between embedded systems and general purpose computers will wash out in future. Also a point of discussion would be to which section smart phones shall be assigned.

We can divide embedded systems into several sections:

Embedded systems w/o general purpose operating system (OS).

 For this devices, a special target in FPC exists TARGET Embedded

Nintendo platforms

 For this devices, special targets exist in FPC.
 Also there exist specially built crosscompilers for the X86 Windows platform:
 Gameboy Advanced (http://de.wikipedia.org/wiki/Game_Boy_Advance) (OS_TARGET=gba CPU_TARGET=arm BINUTILSPREFIX=arm-eabi)
 : Hauptprozessor:ARM7tdmi)
 : Subprozessor:Z80
 ftp://ftp.freepascal.org/pub/fpc/dist/2.4.2/arm-gba/arm-gba-fpc-2.4.2.i386-win32.zip
 Nitendo DS (http://de.wikipedia.org/wiki/Nintendo_DS)            (OS_TARGET=nds CPU_TARGET=arm BINUTILSPREFIX=arm-eabi)
 : Hauptprozessor: ARM946E-S (67 MHz, bei DSi: 133 MHz)
 : Subprozessor: ARM7TDMI (33 MHz)
 ftp://ftp.freepascal.org/pub/fpc/dist/2.4.2/arm-nds/arm-nds-fpc-2.4.2.i386-win32.zip
 

Embedded systems with a general purpose operating system

 There are serveral operating systems commonly used in embedded systems
  • Embedded Linux
 Here several flavours exist:
 From (slightly to radical) slimmed down desktop linux distributions (like Debian) to even slimmer variants consisting of 
 a linux kernel and some compact tools packages like [BusyBox]. Other variants like 
 [Open RTLinux] aim on enhancements of the real-time behaviour.
 ARM Linux Embedded Systems
 i386 Linux Embedded Systems
  • Embedded Windows
 Here we have XPe (XP-Embedded) which behaves mostly like it's desktop counterpart (i386 only) but offers the following
 benefits:
 - System Builder allows to include/exclude components to slim down system
 - Readonly Filesystems supported for more robust operation
 - Licensing done in System Builder, no individual licensing at product rollout
 The successor is <please add>
 The other branch are the Windows-Mobile/Windows-CE Variants:
 - i386, ARM and MIPS available
 Windows Embedded Systems
 <to be extended>
  • Others