1 / 14

Real Time Systems

Real Time Systems. RTOS. Some terms. Program Process Thread Tasks. What are Real Time Systems. An RTS is a (computing) system where correctness of computing depends not only on the correctness of the logical result of the computation, but also on the result delivery time

merv
Download Presentation

Real Time 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. Real Time Systems RTOS

  2. Some terms • Program • Process • Thread • Tasks

  3. What are Real Time Systems • An RTS is a (computing) system where correctness of computing depends not only on the correctness of the logical result of the computation, but also on the result delivery time • RT System is required to complete its work and deliver its service on a timely basis • E.g. Cruise control in cars, Blood pressure monitor, Air traffic controller, Industrial control systems, Aircraft control system • When real time system work correctly and well they make us forget their existence. • From the developer perspective distinguishing feature • Timeliness • Priorities

  4. RTS- Classification • Hard Real Time systems • the system is taken to have failed if a computing deadline is not met • Soft Real Time Systems • a limited extent of failure in meeting deadlines results in degraded performance of the system but not catastrophic failure

  5. OS Classification

  6. Basic structure of the OS

  7. RTOS-Basics • From the programmers perspective-What is OS? • Collection of system calls • Provide basic services to interact with the hardware • Core of the OS is kernel • Microkernel • For RTOS Kernel tends to be small and highly optimized

  8. RTOS- Features

  9. Can we use a GPOS in place of RTOS? • Factors affecting the decision • COST • GPU or Microcontrollers • RTOS are designed to extract extremely fast, predictable response times from lower-end hardware • services provided by an RTOS make many computing problems easier to solve, particularly when multiple activities compete for a system’s resources

  10. RTOS vs. GPOS • GPOS, the scheduler typically uses a “fairness” policy to dispatch threads and processes onto the CPU • it offers no assurances that high priority, time-critical threads will execute in preference to lower-priority threads • GPOS may decay the priority assigned to a high-priority thread • GPOSs have unbounded dispatch latencies: the more threads in the system, the longer it takes for the GPOS to schedule a thread for execution

  11. RTOS Vs. GPOS • threads execute in order of their priority • High priority task get within a small and bounded time interval access to CPU • high-priority thread can run uninterrupted until it has finished what it needs to do • In most GPOSs, the OS kernel isn’t preemptible • A lower priority tasks may invoke a system call which can block access of CPU to a higher priority task • In RTOS kernel operations are preemptible

  12. RTOS Vs. GPOS • RTOS imposes an upper bound on how long preemption is held off and interrupts disabled • RTOS provide Mechanism to avoid Priority inversion • priority inversion occurs when two tasks of differing priority share a resource, and the higher-priority task cannot obtain the resource from the lower-priority task • Overall precise control over timing made possible by an RTOS adds a form of reliability that cannot be achieved with a GPOS

  13. Basic Requirement for RTOS “250 uSec latency performance for greater than 99.5 percent of all scheduled tasks” • Predefined latencies • Task switching latency • Interrupt latency • Time elapsed between last inst. of interrupted task and ISR • Interrupt dispatch latency • Time to switch from last inst. of ISR to next task first Inst. • Multi tasking and preemptible • Sufficient priority levels • Dynamic deadline identification

  14. Real-time operating systems (RTOS) • Windows CE • Built specifically for embedded systems and appliance market • Scalable real-time 32-bit platform • Supports Windows API • Perfect for systems designed to interface with Internet • Preemptive priority scheduling with 256 priority levels per process • Kernel is 400 Kbytes • QNX • Real-time microkernel surrounded by optional processes (resource managers) that provide POSIX and UNIX compatibility • Microkernels typically support only the most basic services • Optional resource managers allow scalability from small ROM-based systems to huge multiprocessor systems connected by various networking and communication technologies • Preemptive process scheduling using FIFO, round-robin, adaptive, or priority-driven scheduling • 32 priority levels per process • Microkernel < 10 Kbytes and complies with POSIX real-time standard • Others : LynxOS, VxWorks, Psos etc.

More Related