Jump to content

Linux on embedded systems: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Monkbot (talk | contribs)
m Task 18 (cosmetic): eval 5 templates: hyphenate params (7×);
Line 12: Line 12:
}}</ref>
}}</ref>


== Variants ==
The [[Embeddable Linux Kernel Subset]] is a [[Linux distribution]] that fits on a [[floppy disk]] for outdated or [[Minimalism (computing)|low resource]] [[Computer hardware|hardware]].
The [[Embeddable Linux Kernel Subset]] is a [[Linux distribution]] that fits on a [[floppy disk]] for outdated or [[Minimalism (computing)|low resource]] [[Computer hardware|hardware]].<ref>{{Cite web|title=ELKS: The Embeddable Linux Kernel System|url=http://elks.sourceforge.net/|access-date=2021-03-08|website=elks.sourceforge.net}}</ref>


==Devices coverage==
==Devices coverage==
Line 24: Line 25:
==Platform usage==
==Platform usage==
The advantages of embedded Linux over proprietary [[embedded operating system]]s include multiple suppliers for software, development and support; no royalties or licensing fees; a stable kernel; the ability to read, modify and redistribute the source code. The technical disadvantages include a comparatively large memory footprint (kernel and root filesystem); complexities of user mode and kernel mode memory access, and a complex [[device driver]]s framework.<ref name="vxworks-migration" />
The advantages of embedded Linux over proprietary [[embedded operating system]]s include multiple suppliers for software, development and support; no royalties or licensing fees; a stable kernel; the ability to read, modify and redistribute the source code. The technical disadvantages include a comparatively large memory footprint (kernel and root filesystem); complexities of user mode and kernel mode memory access, and a complex [[device driver]]s framework.<ref name="vxworks-migration" />

== Limitations ==
Not every embedded Linux distribution is required to or meets [[Real-time computing|real-time]] requirements.<ref>{{Citation|last=Erciyes|first=K.|title=Real-Time Operating Systems|date=2019|url=http://link.springer.com/10.1007/978-3-030-22570-4_4|work=Distributed Real-Time Systems|pages=65–88|place=Cham|publisher=Springer International Publishing|language=en|doi=10.1007/978-3-030-22570-4_4|isbn=978-3-030-22569-8|access-date=2021-03-08}}</ref><ref>{{Cite web|title=What does it mean to say "linux kernel is preemptive"?|url=https://stackoverflow.com/questions/5283501/what-does-it-mean-to-say-linux-kernel-is-preemptive|access-date=2021-03-08|website=Stack Overflow}}</ref> This is particular relevant for [[Safety-critical system|safety critical]] applications and systems.<ref>{{Cite web|title=Real-Time Operating System - an overview {{!}} ScienceDirect Topics|url=https://www.sciencedirect.com/topics/computer-science/real-time-operating-system|access-date=2021-03-08|website=www.sciencedirect.com}}</ref>


==See also==
==See also==
Line 33: Line 37:
** [[Linux range of use]]
** [[Linux range of use]]
** [[Linux for mobile devices]]
** [[Linux for mobile devices]]
* Products:
* Products/Distributions:
** [[BusyBox]]
** [[Embeddable Linux Kernel Subset]]
** [[Ubuntu]] - Core and Server, on RPi, x86, ARM
** Google's [[Android (operating system)|Android]] well-known type of embedded Linux, e.g. on [[smartphone]]s
** [[Tizen]] – embedded Linux for smartphones
** [[Debian]] – used on [[Raspberry Pi]]
** [[Debian]] – used on [[Raspberry Pi]]
** [[Embeddable Linux Kernel Subset]]
** [[Emdebian Grip]]
** [[Emdebian Grip]]
** [[BusyBox]]
** [[OpenMoko]]
** [[Familiar Linux]]
** [[Familiar Linux]]
** Google's [[Android (operating system)|Android]] well-known type of embedded Linux, e.g. on [[smartphone]]s
** [[Mobilinux]]
** [[Mobilinux]]
** [[OpenMoko]]
** [[OpenWrt]]
** [[OpenWrt]]
** [[RTLinux]]
** [[Tizen]] – embedded Linux for smartphones
** [[Ubuntu]] - Core and Server, on RPi, x86, ARM
* Vendors:
* Vendors:
** [[Access Co.]]
** [[Access Co.]]
** [[Canonical (company)|Canonical]] with [https://ubuntu.com/core Ubuntu Core] and Ubuntu Server
** [[Canonical (company)|Canonical]] with [https://ubuntu.com/core Ubuntu Core] and Ubuntu Server
** [[LynuxWorks]]
** [[LynuxWorks]]
** Mender
** [[Mentor Graphics]]
** [[Mentor Graphics]]
** [[MontaVista Software]]
** [[MontaVista Software]]
Line 63: Line 67:
==Further reading==
==Further reading==
*{{cite book|last=Weinberg|first=Bill|title=Uniting Mobile Linux Application Platforms|publisher=LinuxPundit.com|date=July 2008|pages=18|url=http://www.linuxpundit.com/cv/docs/Platforms_WP_LP.pdf|access-date=2009-05-08|archive-url=https://web.archive.org/web/20120216071824/http://www.linuxpundit.com/cv/docs/Platforms_WP_LP.pdf|archive-date=2012-02-16|url-status=dead}}
*{{cite book|last=Weinberg|first=Bill|title=Uniting Mobile Linux Application Platforms|publisher=LinuxPundit.com|date=July 2008|pages=18|url=http://www.linuxpundit.com/cv/docs/Platforms_WP_LP.pdf|access-date=2009-05-08|archive-url=https://web.archive.org/web/20120216071824/http://www.linuxpundit.com/cv/docs/Platforms_WP_LP.pdf|archive-date=2012-02-16|url-status=dead}}

== See also ==

* [[Preemption (computing)]]
* [[Safety-critical system]]


==External links==
==External links==

Revision as of 17:41, 8 March 2021

Operating systems based on the Linux kernel are used in embedded systems such as consumer electronics (i.e. set-top boxes, smart TVs, personal video recorders (PVRs), in-vehicle infotainment (IVI), networking equipment (such as routers, switches, wireless access points (WAPs) or wireless routers), machine control, industrial automation, navigation equipment, spacecraft flight software, and medical instruments in general).

Because of their versatility, operating systems based on the Linux kernel can be also found in mobile devices that are actually touchscreen-based embedded devices, such as smartphones and tablets, together with personal digital assistants (PDAs) and portable media players that also include a touchscreen. This is a challenge for most learners because their computer experience is mainly based on GUI (Graphical user interface) based interaction with the machine and high-level programming on the one hand and low-level programming of small microcontrollers on the other hand while the concept of command line interfaces is widely unknown. [1]

History

The Linux kernel has been ported to a variety of CPUs which are not only primarily used as the processor of a desktop or server computer, but also ARC, ARM, AVR32, ETRAX CRIS, FR-V, H8300, IP7000, m68k, MIPS, mn10300, PowerPC, SuperH, and Xtensa processors. Linux is also used as an alternative to using a proprietary operating system and its associated toolchain.[2]

Variants

The Embeddable Linux Kernel Subset is a Linux distribution that fits on a floppy disk for outdated or low resource hardware.[3]

Devices coverage

Due to its low cost (freely available source code) and ease of customization, Linux has been shipped in many consumer devices. Devices covering PDAs (like the Sharp Zaurus family), TomTom GPS navigation devices, residential gateways like the Linksys WRT54G series or smartphones such as the Motorola exz series, Openmoko handsets, devices running Sailfish OS developed by Jolla like Jolla C and Intex Aqua Fish and the Nokia N900 and Nokia N9.

Android, a Linux-kernel-based operating system acquired and extended by Google and introduced in 2008, has become a highly competitive platform for smartphones and tablets. In July 2012, Android's smartphone market share in the United States was at 52%,[4] reaching 82% worldwide in Q2 2015.[5]

Communities

With the availability of consumer embedded devices, communities of users and developers were formed around these devices: replacement or enhancements of the Linux distribution shipped on the device has often been made possible thanks to availability of the source code and to the communities surrounding the devices. Due to the high number of devices, standardized build systems have appeared, including Yocto, OpenEmbedded, Buildroot, OpenWrt, and LTIB.[citation needed]

Platform usage

The advantages of embedded Linux over proprietary embedded operating systems include multiple suppliers for software, development and support; no royalties or licensing fees; a stable kernel; the ability to read, modify and redistribute the source code. The technical disadvantages include a comparatively large memory footprint (kernel and root filesystem); complexities of user mode and kernel mode memory access, and a complex device drivers framework.[2]

Limitations

Not every embedded Linux distribution is required to or meets real-time requirements.[6][7] This is particular relevant for safety critical applications and systems.[8]

See also

References

  1. ^ Graphical User Interface,[dead link] What is Embedded Linux? And How does it work? , Retrieved on 2019-06-05.
  2. ^ a b "Migrating VxWorks applications to Linux" (PDF). Monta Vista Software. 2008. Archived from the original (PDF) on 2014-02-10. Retrieved 2013-11-13.
  3. ^ "ELKS: The Embeddable Linux Kernel System". elks.sourceforge.net. Retrieved 2021-03-08.
  4. ^ Fingas, Jon (2012-09-04). "ComScore: Android tops 52 percent of US smartphone share, iPhone cracks the 33 percent mark". Engadget.com. Retrieved 2012-11-24.
  5. ^ "IDC: Smartphone OS Market Share, 2015 Q2". idc.com. 2015-08-01. Retrieved 2016-05-13.
  6. ^ Erciyes, K. (2019), "Real-Time Operating Systems", Distributed Real-Time Systems, Cham: Springer International Publishing, pp. 65–88, doi:10.1007/978-3-030-22570-4_4, ISBN 978-3-030-22569-8, retrieved 2021-03-08
  7. ^ "What does it mean to say "linux kernel is preemptive"?". Stack Overflow. Retrieved 2021-03-08.
  8. ^ "Real-Time Operating System - an overview | ScienceDirect Topics". www.sciencedirect.com. Retrieved 2021-03-08.

Further reading

See also

External links