What are the main features of embedded systems? What are the advantages of embedded operating systems?

What is an embedded system

Embedded system is an application-centric, computer-based technology, software and hardware can be tailored to meet the specific requirements of the application system for the function, reliability, cost, size, power consumption and other special computer systems.

What are the main features of embedded systems? What are the advantages of embedded operating systems?

Embedded System Features

(1) Embedded systems are application-specific. The CPU in the embedded system is specially designed for specific applications. It has features such as low power consumption, small size, and high integration. It can integrate many of the tasks performed by the board in a general-purpose CPU into the chip, which is beneficial to the overall system design. It tends to be miniaturized.

(2) The embedded system involves various industries such as advanced computer technology, semiconductor technology, electronic technology, communications and software. It is a technology-intensive, capital-intensive, highly decentralized, and continuously innovative knowledge integration system.

(3) The embedded system hardware and software must be highly customizable.

(4) The life cycle of embedded systems is quite long. Embedded systems and specific applications are organically combined, and their upgrading is also synchronized with specific products.

(5) The embedded system itself does not have the ability to further develop on it. After the design is completed, if users need to modify the program functions, they must rely on a set of special development tools and environment.

(6) In order to improve the execution speed and system reliability, the software in the embedded system is generally solidified in a memory chip or a microcontroller, instead of being stored in a carrier such as a disk.

What are the main features of embedded systems? What are the advantages of embedded operating systems?

Embedded Operating System Introduction

Embedded operating system is an operating system software that supports embedded system applications. It is an extremely important component of embedded systems (including hard and software systems), and usually includes hardware-related bottom driver software, system kernels, and device drivers. Interfaces, communication protocols, graphical interfaces, standardized browsers, etc. The embedded operating system has the basic features of a general operating system, such as being able to efficiently manage more and more complex system resources; being able to virtualize hardware, freeing developers from busy driver porting and maintenance; providing library functions, Drivers, toolsets, and applications. Compared with general operating systems, embedded operating systems have outstanding features in terms of system real-time efficiency, hardware dependencies, software solid-state, and application specificity.

What are the main features of embedded systems? What are the advantages of embedded operating systems?

The necessity of using a real-time operating system

Embedded real-time operating systems have become more and more widely used in current embedded applications, especially in applications with complex functions and large systems.

· First, the embedded real-time operating system improves system reliability. In the control system, for security reasons, it is required that the system can not crash at least, but also have the ability to recover. It is not only required to improve the reliability and anti-interference of the system in terms of hardware design, but also to improve the system's anti-jamming performance in software design to reduce the potential for security loopholes and unreliability. For a long period of time, front-end system software design encounters strong interference, which causes the running program to generate abnormalities, errors, runaways, and even endless loops, causing the system to crash. In systems managed by a real-time operating system, this type of interference may only cause one of several processes to be destroyed and can be repaired by the system's system monitoring process. Usually, this system monitoring process is used to monitor the running status of each process. When abnormal conditions are encountered, some measures are taken to make the system stable and reliable, such as clearing the problematic tasks.

· Secondly, it improves the development efficiency and shortens the development cycle. In the embedded real-time operating system environment, to develop a complex application program, the entire program can usually be decomposed into multiple task modules according to the decoupling principle in software engineering. The debugging and modification of each task module hardly affects other modules. Commercial software generally provides a good multitasking debugging environment.

· Again, embedded real-time operating systems give full play to the multitasking potential of 32-bit CPUs. The 32-bit CPU is faster than the 8- and 16-bit CPUs. In addition, it is designed for running multi-user, multi-tasking operating systems. It is particularly suitable for running multi-tasking real-time systems. 32-bit CPUs are designed to improve system reliability and stability, making it easier to avoid crashes. For example, CPU operating status is divided into system status and user status. Separate the system stack from the user stack, and give the CPU's running status in real time, allowing the user to protect the running of the real-time kernel from both hardware and software in the system design. If you still use the previous front-end method, you can not play the advantages of 32-bit CPU.

In a sense, computers without operating systems (bare metal) are useless. In embedded applications, only embedding the CPU into the system and embedding the operating system in it is a real computer embedded application.

What are the main features of embedded systems? What are the advantages of embedded operating systems?

What are the advantages of embedded operating system?

1) Strong specificity: The advantage of embedded operating system lies in its strong individuality, in which the combination of software system and hardware is very close. Generally, the system must be transplanted to the hardware, even in the same brand and the same series of products. Need to constantly modify according to changes and additions and deletions of system hardware. At the same time, for different tasks, it is often necessary to make major changes to the system. The compilation and download of the program must be combined with the system.

2) The system kernel is small: For general applications in small electronic devices, the system resources are limited, and the embedded operating system kernel is much smaller than the traditional operating system.

3) High real-time performance: EOS is generally real-time and can be used for various device control

4) Cutability: Supports an open and scalable architecture.

5) System simplification and security: Embedded operating systems generally do not have a clear distinction between system software and application software, and do not require too complex a functional design and implementation. This is beneficial to controlling system costs and is also conducive to system security.

6) Unified interface. Provide a unified drive interface for the device.

7) Curing code. In the embedded system, the embedded operating system and application software are fixed in the ROM of the embedded system computer.

8) Longer life cycle: Since the embedded operating system is organically integrated with specific application applications, the upgrading is also performed synchronously.

9) Strong stability, weak interactivity. The advantage of the embedded operating system is that it does not require too much user intervention at the beginning of the operation. The user interface generally does not provide operation commands. It provides services to user programs through the system's calling commands. This requires that the EOS responsible for system management has strong stability.

10) Convenient and simple operation, providing friendly graphical GUI and graphical interface, providing powerful network functions, supporting TCP/IP protocol and other protocols, providing TCP/UDP/IP/PPP protocol support and a unified MAC access layer interface. Various mobile computing devices reserve interfaces.

11) It can meet the needs of portable virtual instruments: Embedded operating system has entered the post-PC era. Its small size and high reliability can meet the needs of portable virtual instruments in field and harsh environments.

12) Flexible customization: Compared with general-purpose computer systems, embedded systems have low power consumption and high reliability; powerful functions, high performance-to-price ratio, real-time performance, and support for multiple tasks; small footprint and high efficiency; Applications can be customized flexibly as needed.

What are the main features of embedded systems? What are the advantages of embedded operating systems?

Types of embedded operating systems

Under normal circumstances, embedded operating systems can be divided into two categories. One is real-time operating systems for areas such as control and communications, such as Wind River's VxWorks, ISI's pSOS, QNX System Software's QNX, ATI's Nucleus, etc. The other category is non-real-time operating systems for consumer electronics products, such as personal digital assistants (PDAs), mobile phones, set-top boxes, e-books, WebPhones, and others.

a. Non-real-time operating system

In early embedded systems there was no concept of an operating system. Programmers who wrote embedded programs often face bare and bare devices. In this case, the embedded program is usually divided into two parts, the foreground program and the background program. The foreground program handles events through the middle section. Its structure is generally an infinite loop. The background program is responsible for the allocation and management of software and hardware resources of the entire embedded system and the scheduling of tasks. It is a system management scheduler. This is what is commonly called the front-back system. Under normal circumstances, the background program is also called task-level program, and the foreground program is also called event-level program. When the program runs, the background program checks whether each task has an operating condition and completes the corresponding operation through a certain scheduling algorithm. For the real-time requirements of particularly stringent operations usually completed by the interrupt, only in the interrupt service program marked event occurs, no more work to exit the interrupt, after the background program scheduling, transferred to the foreground program to complete the event processing, It will not cause the processing of time-consuming events in the interrupt service routine to affect subsequent and other interrupts.

In fact, the front-end system's real-time performance is worse than expected. This is because the front-end and back-end systems think that all tasks have the same priority level, that is, they are equal, and the execution of the tasks is queued through the FIFO queue. Therefore, tasks that require high real-time performance cannot be processed immediately. In addition, because the foreground program is an infinite loop structure, as soon as the task being processed in the loop body crashes, other tasks in the entire task queue cannot be processed, causing the entire system to crash. Due to the simple structure of such a system, almost no overhead of RAM/ROM is required, and thus it is widely used in simple embedded applications.

b. Real-time operating system

A real-time system is a computer system that can perform its function within a determined time and respond to external asynchronous events. The correctness of its operation depends not only on the correctness of the logic design but also on the timing of these operations. "At a certain time" is the core of this definition. In other words, real-time systems have strict requirements on response time.

The logic and timing requirements of the real-time system are very strict, and if the logic and timing deviations will cause serious consequences. There are two types of real-time systems: soft real-time systems and hard real-time systems. Soft real-time systems only require that the incident response be real-time and do not require limiting how long a certain task must be completed. In hard real-time systems, not only the mission response is required to be real-time, but also the event is required to be completed within the specified time. deal with. Usually, most real-time systems are a combination of the two. The design of real-time application software is generally more difficult than the design of non-real-time application software. The key technology of real-time systems is how to ensure the real-time performance of the system.

A real-time multitasking operating system refers to an operating system that has real-time capability and can support real-time control system work. Its primary task is to schedule all available resources to complete real-time control tasks, and secondly to focus on improving the efficiency of computer systems. The important feature is to meet the time constraints and requirements. The real-time operating system has the following functions: task management (multitasking and priority-based task scheduling), synchronization and communication between tasks (semaphores and mailboxes, etc.), memory optimization management (including ROM management), real-time clock services, and interrupt management service. The real-time operating system has the following features: small size, short interruption time for interrupts, short interrupt processing time, and fast task switching.

Real-time operating systems can be classified into preemptive and non-preemptable types. For a priority-based system, the preemptive real-time operating system refers to the kernel can grab the right to use the CPU of the running task and give the right to use the higher priority task into the ready state. The kernel is grabbing the CPU. Other tasks run. When a non-preemptive real-time operating system uses an algorithm and decides to let a task run, it gives the CPU control to the task until it actively returns control of the CPU. Interrupts are handled by the interrupt service routine, which activates a sleep-state task and puts it in a ready state. This task, which enters the ready state, is not yet ready to run. It waits until the currently running task is overriding the control of the CPU. The real-time performance of using such a real-time operating system is better than that of a system that does not use a real-time operating system, and its real-time performance depends on the execution time of the longest task. The disadvantage of a non-preemptive real-time operating system is precisely this point. If the execution time of the longest task cannot be determined, the real-time nature of the system cannot be determined.

The preemptive real-time operating system has good real-time performance. A high-priority task can run as soon as it has the operating conditions or is ready to go. In other words, in addition to the task with the highest priority, other tasks may be interrupted at any time during its operation and interrupted by tasks of higher priority than the task with the highest priority. The task scheduling in this way ensures the real-time performance of the system. However, if the CPUs do not handle the control right between tasks, the system crashes, crashes, and other serious consequences.

What are the main features of embedded systems? What are the advantages of embedded operating systems?

Development of Embedded Operating System

Embedded operating systems have experienced four distinct phases along with the development of embedded systems.

The first stage is an embedded algorithm stage without an operating system. It is a system in the form of a programmable controller with a single chip as the core, and has the functions of cooperating with monitoring, servo, and pointing devices. Most of these systems are used in some highly specialized industrial control systems. Generally, they are not supported by the operating system. They are directly controlled by assembly language programming, and the memory is cleared after the operation is completed. The main characteristics of this phase of the system are: the system structure and function are relatively single, the processing efficiency is low, the storage capacity is small, and there is almost no user interface. Because this kind of embedded system is easy to use and the price is low, it has been widely used in domestic industrial fields before. However, it has not been able to meet the needs of high-efficiency modern industrial control and emerging information appliances that require large-capacity storage media.

The second stage is an embedded system based on an embedded CPU with a simple operating system as its core. The main features of this phase of the system are: a large variety of CPUs, poor generality, low system overhead, and high efficiency; generally equipped with a system simulator, the operating system has a certain degree of compatibility and scalability; application software is more professional, and the user interface is insufficient. Friendly; system is mainly used to control the system load and monitor application operation.

The third stage is a general-purpose embedded real-time operating system stage, which is an embedded system with an embedded operating system as its core. The main features of this phase of the system are: the embedded operating system can run on various types of microprocessors; the compatibility is good; the operating system kernel is small and efficient, and has a high degree of modularity and scalability; File and directory management, device support, multitasking, network support, graphics windows, and user interface functions; with a large number of application program interfaces (API), the development of simple applications; rich embedded application software.

The fourth stage is an embedded system based on the Internet. This is a stage that is rapidly developing. At present, most embedded systems are isolated from the Internet, but with the development of the Internet and Internet technologies,

The combination of information home appliances and industrial control technologies is becoming increasingly close. The combination of embedded devices and the Internet will represent the true future of embedded technologies.

Liquid Crystal Display For Medical Use

Liquid Crystal Display For Medical Use,Super Liquid Crystal Instrument Medical Display,Medical Liquid Crystal Instrument Lcd Display,Thin Transparent Lcd Medical Display

Dongguan Yijia Optoelectronics Co., Ltd. , https://www.everbestlcdlcms.com