|
Chapter 13 Embedded Systems Characteristics of Embedded Operating Systems Embedded System
|
Sana | 18.04.2020 | Hajmi | 278,5 Kb. | | #45793 |
| Bog'liq Chap13
Embedded System - A combination of hardware and software designed to perform a dedicated function
- Often, embedded systems are part of a larger system or product,
- e.g., antilock braking system in a car
- Embedded systems are tightly coupled to their environment imposes real-time constraints by the need to interact with the environment
Examples of Embedded Devices Differences from typical computer - A variety of interfaces
- enable the system to measure, manipulate, and interact with the external environment
- human interface may be as simple as a flashing light or as complicated as real-time robotic vision
- Use of a diagnostic port for diagnosing the system
- Use of special purpose hardware to increase performance or safety
- Fixed-function or application-specific software
Roadmap - Embedded Systems
- Characteristics of Embedded Operating Systems
- Characteristics of Embedded OS
- Using a general-purpose OS for an embedded system may not be possible
- constraint of memory space
- constraint of power consumption
- real-time requirements
- Special-purpose OS designed for the embedded system environment is commonly used.
Characteristics of Embedded OS - Real-time operation
- Reactive operation
- needs to consider worst-case conditions in execution in order to respond to external events that do not occur at predictable intervals
Characteristics of Embedded OS - Configurability
- supports flexible configuration so that only the functionality needed for a specific application and hardware suite is provided
- e.g., allows to select only the necessary OS modules to load
- I/O device flexibility
- Characteristics of Embedded OS
- Streamlined protection mechanisms
- requires limited protection because tested software can be assumed to be reliable
- e.g., I/O instructions need not be privileged instructions that trap to OS tasks can directly perform their own I/O
- no use of an OS service call avoid overhead for saving and restoring the task context
- Characteristics of Embedded OS
- Direct use of interrupts
- permits user process to use interrupts directly
- no need to go through OS interrupt service routines
- have efficient control over a variety of devices
Developing an Embedded OS - Two general approaches
- Take an existing OS and adapt it for embedded purposes
- Design a purpose-built OS solely for embedded use
Adapting an Existing OS - Examples include Windows, Linux
- familiar interfaces facilitate portability
- slower and less predictable than special purpose embedded OS
- not optimized for real-time and embedded applications require considerable modification to achieve adequate performance
- optimizes for the average case rather than the worst case for scheduling
- assigns resources on demand
- ignores semantic information about an application
- Need to add
- real-time capability
- streamlining operation
- other specialized and necessary functionality for the given device
Purpose-Built Embedded OS - Most OS are designed from the ground up for embedded applications
- Typical characteristics include:
- Has thread switch (fast and lightweight)
- Real time scheduling policy
- Small size
- Responds to external interrupts quickly (<10 s)
- Minimizes intervals during which interrupts are disabled
- Purpose-Built Embedded OS
- Typical characteristics include:
- Provides fixed or variable sized partitions for memory management and the ability to lock code and data in memory
- Provides special sequential files that can accumulate data at a fast rate
Purpose-Built Embedded OS - To deal with timing constraints, the kernel:
- provides bounded execution time for primitives
- maintains a real-time clock
- provides for special alarms and timeouts
- supports real-time queuing disciplines, e.g., EDF (earliest deadline first)
- provides primitives to delay processing and to suspend/resume execution
10>
Do'stlaringiz bilan baham: |
|
|