Embedded Computer Systems and Embedded Operating Systems
Wu Guofa
October 22, 2023
Abstract: This is an advanced popular science article that can only be understood by readers with basic knowledge of computers. The article concisely introduces the basic concepts of embedded computer systems, development stages, types of embedded hardware, types of embedded software, and then specifically discusses the concepts and types of embedded operating systems.
Keywords: Embedded Systems Microprocessors Microcontrollers Operating Systems Linux
(1) Basic Concepts of Embedded Computer Systems
Embedded Systems are application-centered, based on computer technology, and can flexibly tailor software and hardware modules according to user needs (functionality, reliability, cost, size, power consumption, environment, etc.) to form a dedicated computer system.
Embedded systems consist of hardware and software. The software of embedded systems includes operating systems, middleware, and applications. The hardware of embedded systems includes signal processors, memory, communication modules (input/output interfaces), etc.

Compared to general computer processing systems, various embedded systems exhibit significant differences. Embedded systems do not have large-capacity storage capabilities, as there are no matching large-capacity storage media.
Embedded systems are widely used in industrial control, smart cars, high-end precision instruments, smartphones, smart home appliances, and weapon systems (such as tanks, missiles, and radar), as shown in the figure below:

(2) Development Stages of Embedded Systems
Embedded Systems have roughly gone through the following three stages:
First Stage: Early stage of embedded technology, No Operating System. Embedded systems existed in the form of programmable controllers centered around microcontrollers, with functions such as monitoring, servo control, and device indication. These systems were mostly used in various industrial controls and weapon systems like tanks, aircraft, and missiles.
Second Stage: Marked by high-end embedded CPUs and Embedded Operating Systems. The main feature of embedded systems in this stage was the emergence of highly reliable, low-power embedded CPUs, such as ARM, PowerPC, etc., which supported the development and operation of operating systems and complex applications.
Third Stage: Marked by chip technology and Internet technology. With the rapid development of microelectronics technology, SoC (System on Chip) has made embedded systems smaller while increasing functionality. Currently, most embedded systems still operate independently of the Internet. In the future, Internet technology will closely integrate with industrial control technology, smart devices, and smart home appliances, and many embedded systems will connect to the Internet.
(3) Main Types of Embedded Hardware Systems
In the following sections, we will discuss the types and software of embedded systems in the third stage.
From a hardware perspective, embedded systems mainly have the following four types:
(1) Embedded Microprocessors (Micro Processor Unit, MPU)
Today’s embedded microprocessors (MPU) have evolved from CPUs in general computers. They are processors with 32 bits or more. Compared to industrial control computers, embedded microprocessors are small, lightweight, low-cost, and highly reliable.
The main types of embedded processors include Am186/88, 386EX, SC-400, Power PC, 68000, MIPS, ARM/StrongARM series, etc.
(2) Embedded Microcontrollers (Microcontroller Unit, MCU)
Early microcontrollers (Microcontroller Unit, MCU) integrated a computer into a single chip to achieve embedded applications, hence also known as single-chip microcomputers.
Single-chip microcomputers are integrated circuit chips that form the main unit of a microcomputer. Compared to microcomputers, single-chip microcomputers only lack I/O (input/output) devices.
Compared to embedded microprocessors, the biggest feature of microcontrollers is their single-chip design, which greatly reduces size, thus lowering power consumption and cost while improving reliability. Microcontrollers are suitable for real-time control, hence the name.
MCUs have the most varieties. Representative MCUs include Intel 8051, MCS-251, MCS-96/196/296, P51XA, C166/167, 68000 series, as well as 8XC930/931, C540, C541, and many others that support I2C, CAN-Bus, LCD, and numerous specialized MCUs and compatible series.
(3) Embedded Digital Signal Processors (Embedded Digital Signal Processor, DSP)
DSP (Digital Signal Processor) is a processor specifically used for signal processing. It has high compilation efficiency and instruction execution speed, capable of performing discrete-time signal processing very quickly.
The most widely used DSPs are TI (Texas Instruments) TMS320C2000/C5000 series and Motorola’s 5600X series; followed by Intel’s MCS-296, Siemens’ TriCore, etc.
(4) Embedded System on Chip (System On Chip, SoC)
Embedded System on Chip(SoC) is a highly inclusive integrated device. The biggest feature of SoC is the seamless integration of hardware and software, directly embedding the operating system code modules within the processor chip.
Typical SoC products include Philips’ Smart XA. Other SoCs include Siemens’ TriCore, Motorola’s M-Core, certain ARM series devices, and the Neuron chip jointly developed by Echelon and Motorola, etc.
(4) Concept of Embedded Software Systems
(A) Basic Concept of Embedded Software Systems
The components of embedded software systems are as follows:
(1) System software, including operating systems (the core of system software), middleware, etc., used to control and manage the resources of micro systems;
(2) Supporting software, tools that assist in software development, including design tools, simulation tools, testing tools, maintenance tools, etc.;
(3) Application software, including application software for micro systems in various fields.
(B) Basic Concept of Embedded Operating Systems
Embedded Operating Systems (EOS) refer to operating systems used for embedded systems. Embedded operating systems typically include hardware-related low-level driver software, system kernels, device driver interfaces, communication protocols, graphical interfaces, standardized browsers, etc.
Embedded operating systems are responsible for the allocation of all software and hardware resources in embedded systems, task scheduling, and controlling and coordinating system activities.
EOS can achieve additional functionality by loading certain modules.
Most embedded operating systems are Real-Time Operating Systems (RTOS).
Mobile operating systems are all embedded operating systems.
(C) Embedded Real-Time Operating Systems (RTOS)
Embedded Real-Time Operating Systems (Real Time Operating System, RTOS) can complete the functions of real-time systems within specified or determined time frames.
RTOS’s standard kernel is a program embedded in the target code, executed first after the system reset. RTOS acts as the main program for users, with other programs built on top of RTOS.
RTOS features are as follows:
Ø has real-time, parallelism, multiplexing, and interactivity;
Ø has constraints, including time constraints, resource constraints, execution order constraints, etc.;
Ø has predictability, with predictable execution time and results;
Ø has reliability.
(5) Development Stages of Embedded Operating Systems
The development of embedded operating systems has gone through the following four stages:
First Stage: No Operating System stage, 1970s; the hardware of embedded systems is represented by the 51 microcontroller.
Second Stage: Simple Operating System stage, 1980s; the hardware of embedded systems is large-scale integrated circuits (VLSI).
Third Stage: Real-Time Operating System stage, 1990s; real-time, multi-tasking systems are the mainstream of embedded operating systems; the hardware of embedded systems is still large-scale integrated circuits (VLSI).
Fourth Stage: Internet-oriented stage, where Java can be used for development; system software includes embedded databases, real-time CORBA, etc., with a complete development platform.
(6) Common General Embedded Operating Systems Used Internationally
There are about 50 types of embedded operating systems (EOS) internationally. The commonly used general embedded operating systems are as follows:
Ø Palm OS, a general EOS developed by a subsidiary of 3Com, occupies a global market share of up to 50%. In the US market, Palm OS has an even higher share of 80%, leading by a wide margin.
Ø Windows Embedded (WE), developed by Microsoft, has a high market share in the US, second only to Palm OS.
Ø VxWorks, a real-time operating system developed by WindRiver in the US.
Ø µC/OS-III, a real-time operating system developed by Micrium, open-source.
Ø Embedded Linux, with many varieties, its miniaturized version is μCLinux, open-source.
Ø Android, developed by Google, is an open-source operating system specifically for mobile phones and tablets.
Ø iOS, developed by Apple, is specifically for Apple products.
All of the above operating systems are developed by American companies and research institutions.
Huawei’s HarmonyOS is specifically for Huawei’s mobile phones, tablets, autonomous vehicles, and other smart products.
(7) Features of Embedded Linux Systems
Embedded Linux is a modified version of the Linux operating system that allows it to run on embedded systems.
Embedded Linux has the following features:
Ø The source code of Embedded Linux is completely open, with no “backdoors” or black-box technology.
Ø The kernel of Embedded Linux is small (the smallest is only 134KB), highly efficient; the kernel can be trimmed as needed.
Ø Embedded Linux has good portability, having been ported to over 20 CPU architectures, including x86, ARM, MIPS, IA64, AVR32, M68K, S390, etc.
Ø Embedded Linux is a free operating system, making it highly competitive in terms of price.
Ø There are over 1000 expert “volunteers” worldwide providing free technical support for Embedded Linux.
Embedded Linux mainly has the following three types:
(1) Linux designed specifically for embedded features, with a very small kernel and good portability;
(2) Linux designed specifically for real-time performance, with good controllability and strong real-time capabilities;
(3) Linux designed to combine embedded features and real-time features, providing integrated development solutions.
(8) Distributions of Embedded Linux Systems
Representative distributions of Embedded Linux operating systems include the following six:
(1) μClinux, suitable for simple microcontroller embedded systems, with a very small kernel; developed by Lineo in the US.
(2) RT-Linux, suitable for real-time control, is a representative of real-time Linux; developed by the Mexican Institute of Technology.
(3) Embedix, suitable for complex embedded systems, with debugging toolkits, graphical interface browsers, etc., is a complete embedded Linux solution; developed by Luneo in the US.
(4) QUARK, developed by the US company XLinux, is currently the smallest Linux in the world, with a kernel size of only 143KB. QUARK not only has a standard character set but also includes character sets from 12 countries and regions, suitable for international applications.
(5) Mizi Linux, with a small kernel (512KB); integrates the Apache web server and MySQL database management system; equipped with a powerful SDK development platform. Developed by Mizi in South Korea.
(6) MidoriLinux, a powerful and versatile embedded operating system; not only is the operating system free, but it also provides free development tools and application packages; developed by Monta Vista in the US.
Among the six embedded Linux distributions, except for Mizi Linux, which is developed by a South Korean company, the other five are developed by American companies and universities.
China’s Zhongke Hongqi Software Technology Co., Ltd. developed Hongqi Embedded Linux, which has not gained widespread application.