Category: Entertainment

Presentation Description



By: ujjwalparmar62 (39 month(s) ago)

Thank u so much!!!! where do u live???

By: kofiomari (50 month(s) ago)

A wonderful presentation. A good material for both intemediary and advanced student.

By: abhijeet786 (52 month(s) ago)


Presentation Transcript

Slide 1: 

Submitted By P. ManojKumar II D.C.E Sri Durga Devi Polytechnic College Chennai REAL TIME OPERATING SYSTEM

Definition- Real Time Operating System : 

Definition- Real Time Operating System A real-time operating system (RTOS) is an operating system that guarantees a certain capability within a specified time constraint. It is a multitasking operating system intended for real-time applications. Such applications include embedded systems (programmable thermostats, household appliance controllers), industrial robots, spacecraft, industrial control (see SCADA), and scientific research equipment.

Slide 3: 

An RTOS must respond in a timely manner to changes, but that does not necessarily mean that an RTOS can handle a large throughput of data. Sometimes an RTOS will even need to drop data to ensure that it meets its strict deadlines. An RTOS may be either event-driven or time-sharing. An event-driven RTOS is a system that changes state only in response to an incoming event. A time-sharing RTOS is a system that changes state as a function of time

Architecture of Real Time Operating System : 

Architecture of Real Time Operating System Two basic designs exist: Event-driven (priority scheduling) designs switch tasks only when an event of higher priority needs service, called pre-emptive priority. Time-sharing designs switch tasks on a clock interrupt, and on events, called round robin. Time-sharing designs switch tasks more often than is strictly needed, but give smoother, more deterministic multitasking, giving the illusion that a process or user has sole use of a machine. Early CPU designs needed many cycles to switch tasks, during which the CPU could do nothing useful, so early OSes tried to minimize wasting CPU time by maximally avoiding unnecessary task-switches.

Scheduling : 

Scheduling In typical designs, a task has three states: 1) running, 2) ready, 3) blocked. Most tasks are blocked, most of the time. Only one task per CPU is running. In simpler systems, the ready list is usually short, two or three tasks at most. The real key is designing the scheduler. Usually the data structure of the ready list in the scheduler is designed to minimize the worst-case length of time spent in the scheduler's critical section, during which preemption is inhibited, and, in some cases, all interrupts are disabled. But, the choice of data structure depends also on the maximum number of tasks that can be on the ready list.

Algorithms Used in RTOS : 

Algorithms Used in RTOS Some commonly used RTOS scheduling algorithms are: Cooperative scheduling Round-robin scheduling Preemptive scheduling Fixed priority pre-emptive scheduling, an implementation of preemptive time slicing Fixed-Priority Scheduling with Deferred Preemption Fixed-Priority Non-preemptive Scheduling Critical section preemptive scheduling Static time scheduling

Interrupt handlers and the scheduler : 

Interrupt handlers and the scheduler Since an interrupt handler blocks the highest priority task from running, and since real time operating systems are designed to keep thread latency to a minimum, interrupt handlers are typically kept as short as possible. The interrupt handler defers all interaction with the hardware as long as possible; The interrupt handler then queues work to be done at a lower priority level, often by unblocking a driver task (through releasing a semaphore or sending a message). The scheduler often provides the ability to unblock a task from interrupt handler context.

Examples for Real Time Operating System : 

Examples for Real Time Operating System These are the best known, most widely deployed real-time operating systems. QNX RTLinux VxWorks Windows CE

Background : 

Background Real-time systems are not necessarily fast (fast is a relative term), however there is a bounded latency on the time required to complete certain tasks. In general, real-time systems must be able to respond predictably to unpredictable events, meet completion deadlines of particular tasks, and process multiple tasks at once. There are two flavors of real-time systems, depending on the degree of failure if the system does not meet a deadline.

Overview Of Real Time System : 

Overview Of Real Time System A real-time operating system (RTOS) may be a stripped-down version of an operating system that is common on desktop PCs, with a few special characteristics. RTOSs are generally preemptible (a process that has control of the processor must yield to an arriving process with higher priority, allowing the higher priority process to run) and able to support multi-threaded processes (the ability of separate sections of a process to run concurrently). Determinism is the ability of the operating system to perform a task in a determined amount of time. This attribute is probably most affected by the time required to acknowledge that an interrupt has occurred (i.e. interrupt latency).

Description Of Real Time Operating System : 

Description Of Real Time Operating System There are additional fundamental aspects of RTOS design. One is the ability of a particular process to communicate with another process (formally called interprocess communication or IPC). This allows separate applications to interact with each other and share the same data. The concept of IPC introduces another important operating system aspect, preventing a process from changing data while another process is using the data.

Features Of Real Time Operating System : 

Features Of Real Time Operating System Real-time systems are typically embedded systems. The use of a commercial real-time operating system liberates the embedded applications programmer, saving the time and cost developing a hardware interface. The principle is the same as using a high-level language to write software, instead of assembly language. A possible tradeoff is some overhead in return for low development cost and effectiveness.

Slide 13: 

Advantages:- Simple implementation Low overhead Very predictable Disadvantages:- Can’t handle sporadic events Everything must operate in lockstep Code must be scheduled manually

References : 


Slide 15: 

Thank You