1 / 19

Embedded and Real-time Operating Systems

Embedded and Real-time Operating Systems. The suitability of Linux. Operating Systems. Before looking at embedded and real-time it would be good to review the role and position of the OS Started after BIOS Controls all application interaction with hardware Generally is the kernel

Download Presentation

Embedded and Real-time Operating Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Embedded and Real-time Operating Systems The suitability of Linux

  2. Operating Systems • Before looking at embedded and real-time it would be good to review the role and position of the OS • Started after BIOS • Controls all application interaction with hardware • Generally is the kernel • Role of file system(s), libraries, and applications • Is always memory resident in kernel space • Interface is through system calls for user processes

  3. Operating System

  4. Real-time requirements #1 • Real-time systems can be classed as hard and soft • Hard real-time systems must meet processing deadlines, data must/cannot be missed/ignored. The system is safety critical, i.e. medical systems, military systems. • Soft real-time systems have real-time data but can afford to miss some data, force re-transmissions and don’t need to be too strict about deadlines. For example audio or video streaming • Many systems are a mix of above – the data is real-time, but there are tolerances in the system. White goods equipment, engine management.

  5. Real-time requirements #2 • There are 2 major requirements for real-time systems: latency and jitter • Latency is the amount of time required to service a real-time task. The task must be dealt with immediately, complete and cannot be interrupted by the operating system. For example a bar code read. • Jitter is periodic but crucial data. The data rate can be very short and unpredictable, so data could be lost. An example could be any sensor reading in a real-time environment. • A system could involve both of these requirements

  6. Standards • The POSIX standard are for Portable Operating Systems. They are a set of graded standards for UNIX like OSs. They are supported by various governments (i.e. US), IEEE and ISO. • POSIX 1003.1d • Set of real-time extensions to UNIX like operating systems

  7. POSIX Standards

  8. Linux comparisons

  9. Review of commercial real-time systems

  10. Linux Version

  11. Real-time Linux? • From version 2.5.4 Robert Love introduced a patch that allowed pre-emption in the kernel. • This means that higher priority task can interrupt (pre-empt) lower priority ones. • This is now standard in the 2.6 kernels • It allows Linux, as standard, to run soft real-time tasks (e.g. streaming video) with a latency of 1 millisecond (100s MHz Pentiums).

  12. Pre-emptable Linux Kernel

  13. Micro kernels • The other versions of real-time Linux involve major patches to the existing systems • RTLinux and RTAI linux are both micro-kernel patches. • This means that the kernel is run as a low priority task from the micro-kernel • Thus the micro-kernel can interrupt the Linux kernel to run a real-time task. • These versions can run the POSIX 1003.13 version of real-time.

  14. Micro-kernel real-time architecture

  15. Nano-kernels • This was developed by ADEOS as an open source real-time Linux • The micro kernel approach has been patented. • This system runs various tasks and operating systems from a micro-kernel • It is rather similar to VMWare

  16. Nano kernel real-time architecture

  17. Resource kernel • This is a modification to the standard kernel that allows high speed pre-emption. • The resource kernel allows tasks to request and control resources (memory, CPU cycles) that a normal kernel would not allow. • Can’t reach hard real-time latencies.

  18. Resource kernel real-time architecture

  19. Performance comparison

More Related