Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Embedded operating system
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Type of computer operating system}} {{lead extra info|date=February 2022}} [[File:DHCOM Computer On Module - AM35x.jpg|thumb|right|An ''embedded system'' on a plug-in card, featuring a processor, memory, power supply, and various external interfaces]] An '''embedded operating system''' (EOS) is an [[operating system]] designed specifically for [[embedded system|embedded computer systems]]. These systems aim to enhance functionality and reliability to perform dedicated tasks.<ref name=":0">{{cite arXiv|last1=Jabeen|first1=Qamar|last2=Khan|first2=Fazlullah|last3=Hayat|first3=Muhammad Nouman|last4=Khan|first4=Haroon|last5=Jan|first5=Syed Roohullah|last6=Ullah|first6=Farman|date=2016-05-11|title=A Survey: Embedded Systems Supporting By Different Operating Systems|class=cs.OH|eprint=1610.07899}}</ref> When the [[computer multitasking|multitasking]] method employed allows for timely task execution, such an OS may qualify as a [[real-time operating system]] (RTOS).<ref>{{cite web|url=https://www.pcmag.com/encyclopedia/term/embedded-os|title=Definition of embedded OS|website=[[PC Magazine]]|access-date=13 September 2023}}</ref> == Overview == [[File:Fuji Xerox Document Centre 505 and Taiwan Xerox Walk-In 120D at ROC National Central Library 20101211.jpg|thumb|A [[Xerox]] Document Centre 505 digital photocopier in 2010]] Embedded operating systems are integral to [[consumer electronics]] such as [[camera]]s and [[mobile phone]]s. Additionally, they power [[automotive electronics]], aiding in functions like [[cruise control]] and [[navigation]]. Moreover, they are essential for [[factory automation infrastructure]]. Everyday applications of EOS include [[office automation]] devices such as [[image scanner]]s, [[photocopier]]s, and [[wireless access point]]s. [[Home automation]] systems, including [[security system]]s, also depend on EOS.<ref>{{Cite book|title= Embedded Operating Systems: A Practical Approach | author1=Alan Holt | author2= Chi-Yu Huang |publisher= Springer International Publishing |year=2018 |isbn=9783319729770 | pages=5}}</ref> == Design == Embedded systems comprise a [[Processor (computing)|processor]] and corresponding [[software]]. [[Embedded software]] requires storage for [[executable]]s and temporary data processing during [[Runtime (program lifecycle phase)|runtime]]. Embedded systems typically utilize [[ROM]] and [[RAM]] as [[main memory]] components. For functionality, embedded systems necessitate input and output interfaces. [[Embedded hardware]] configurations are often unique, varying according to the application.<ref>{{Cite journal |last1=Sager |first1=P. M. |last2=Agarwal |first2=V. |date=November 2002 |title=Embedded operating systems for real-time applications |url=https://www.ee.iitb.ac.in/~esgroup/es_mtech02_sem/es02_sem_rep_sagar.pdf |journal=M. Tech. Credit Seminar Report |publisher=Electronic Systems Group, EE Dept, IIT Bombay |pages=14}}</ref> Given the resource limitations of embedded system hardware, operating systems are designed with a narrow scope, tailored to specific applications to ensure optimal operation within hardware constraints. The choice of embedded operating system, which organizes and controls the hardware, often dictates the additional required embedded hardware components. Software developers might write essential code in [[assembly language]] to harness the full processing power of the [[central processing unit]] (CPU). Assembly language, being ''machine-efficient,'' can enhance speed in [[deterministic system]]s but may reduce [[Portability (computer science)|portability]] and [[maintainability]]. Frequently, embedded operating systems are coded in portable programming languages like [[C (programming language)|C]]. ==History== ===Early embedded operating systems=== The concept of a real-time multitasking kernel emerged in the late 1970s. During the 1980s, as embedded systems applications grew in complexity, operating systems with real-time multitasking kernels struggled to meet the evolving demands of embedded development. This led to the evolution of the real-time multitasking kernel into a comprehensive operating system ([[RTOS]]), encompassing networking, file management, development, and [[debugging]] capabilities. Today, RTOS constitues a global industry. In 1981, Ready System developed VRTX32, the world’s first commercial embedded real-time kernel. In 1993, following a merger, Ready System and Silicon Valley’s Microtec Research developed two new RTOS kernels, VRTX32 and VRTXsa, building upon [[VRTXmc]]. Concurrently, the VRTX integrated development environment, Spectra, was introduced. In 1996, [[Microsoft]] released its embedded operating system, [[WinCE]], which supported various processor architectures including [[x86]], [[ARM architecture|ARM]], [[SuperH|SH4]], and [[MIPS architecture|MIPS]]. WinCE has since become obsolete, with mainstream support having ended in 2018.<ref>{{Cite web|title=Microsoft - Lifecycle for Windows Embedded Compact 2013.|url=https://docs.microsoft.com/en-us/lifecycle/products/windows-embedded-compact-2013|access-date=3 Feb 2022|website=Microsoft Docs}}</ref> [[OS-9]] and [[VxWorks]] are also notable embedded operating systems. === Modern embedded operating systems === In the current landscape of the [[internet of things]] (IoT), embedded devices are ubiquitous, with cars alone utilizing hundreds of sensors. IoT systems, in contrast to traditional embedded systems, necessitate lower power consumption, enhanced safety and reliability, and the capability for [[ad hoc network]]ing {{Citation needed|date=March 2024}}. The communication layer must facilitate the conversion between diverse protocols, while the application layer should enable [[cloud computing]] capabilities over the [[Internet]]. ==Contemporary embedded operating systems== As a result, several new embedded operating systems have gained popularity, such as [[Linux on embedded systems|embedded Linux]]<ref>{{cite web|url=https://ubuntu.com/blog/what-is-embedded-linux|title=What is embedded Linux?|website=[[Ubuntu]]|date=24 November 2021|author-first=Edoardo|author-last=Barbieri|access-date=13 September 2023}}</ref> variants ([[OpenWrt]], [[Zeroshell]], [[Android (operating system)|Android]], [[LineageOS]], [[LEDE]], [[LibreCMC]]), [[OpenHarmony]], [[OpenHarmony#Oniro OS|Oniro OS]], [[HarmonyOS]], [[NetBSD]],<ref>{{cite web|url=https://www.netbsd.org/docs/guide/en/chap-intro.html|title=Chapter 1. What is NetBSD?|website=[[NetBSD]]|access-date=13 September 2023}}</ref> [[PX5 RTOS]], [[ThreadX]], [[FreeRTOS]], [[Segger_Microcontroller_Systems|SEGGER embOS]], [[Tock (opearting system)|Tock]] among others. ==Linux-based projects== Numerous [[Linux]]-based projects, toolkits, and frameworks have been developed for creating operating systems that operate on a variety of embedded systems. Prominent examples of these include [[OpenEmbedded]], [[BusyBox]], [[uClibc]], [[Musl|musl libc]], and [[Buildroot]]. ==See also== * [[Linux on embedded systems]] * [[Embeddable Linux Kernel Subset]], a [[Linux]] operating system that fits on a [[floppy disk]] * [[List of operating systems#Embedded|List of embedded operating systems]] * [[OpenWrt]] * [[Principle of least privilege]] (computer security) ==References== {{Reflist}} {{Embedded systems}} {{Operating system}} {{DEFAULTSORT:Embedded Operating System}} [[Category:Embedded operating systems| Embedded operating system]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Citation needed
(
edit
)
Template:Cite arXiv
(
edit
)
Template:Cite book
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite web
(
edit
)
Template:Embedded systems
(
edit
)
Template:Lead extra info
(
edit
)
Template:Operating system
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)