how to choose an rtos?

12
How to choose an RTOS

Upload: rohit-choudhury

Post on 17-Feb-2017

109 views

Category:

Engineering


2 download

TRANSCRIPT

Page 1: How to choose an RTOS?

How to choose an RTOS

Page 2: How to choose an RTOS?

Introduction

• A real-time operating system (RTOS) is an operating system (OS) intended to serve real-time application process data as it comes in, typically without buffering delays.

• Processing time -tenths of seconds or shorter.

Page 3: How to choose an RTOS?

Questions while choosing an RTOs

Page 4: How to choose an RTOS?

How large?

• Determining how much memory the embedded system allows (i.e. how much and what type of RAM is supported).

• Then, there are two factors to consider :- 1) What memory is required by the RTOS itself. 2) How much memory the application requires.

• Use an RTOS simulator to gain an accurate estimation, if we are working with a severely limited system.

Page 5: How to choose an RTOS?

How Flexible?

1. Scheduling policies- Generally not more than one policy is required in the application. E.g. Preemptive, Round Robin, Cooperative, Time-Sliced and Multivariate Slicing.

2. Runtime Behavior- Finding out if the RTOS supports dynamic objects at runtime. This will allow for greater flexibility in your code.

Page 6: How to choose an RTOS?

3. Interrupts- Determining how the RTOS handles interrupts and whether functions are supported.

4. Event Synchronization- Finding out if the RTOS supports multiple tasks waiting on a single event and/or a single task waiting on multiple events.

5. Memory Management- Looking for the ability to create deterministic memory allocations so that we can avoid additional overhead associated with garbage cleanup and fragmentation.

Page 7: How to choose an RTOS?

6. Application Programming Interface (API)- Verify the APIs supported by the RTOS and if it in particular supports the one needed by the application.

7. Messaging- Check the messaging options available for passing data between various objects.

Page 8: How to choose an RTOS?

How Fast?• There are two basic types of RTOSs- hard and soft. • A hard system is required when you have a situation

where a task not meeting a deadline would result in a failure.

• A soft system has no guarantee that the deadline would be met, but there is some window of reliability.

• The response time is the measure of the hardness of a RTOS. The lower the response time, the better (harder) the RTOS.

• The worst case of response time, the application can live with is determined by the amount of Jitter in the system.

Page 9: How to choose an RTOS?

How much?

• When considering the necessary budget for implementing a RTOS, keep the following possible costs in mind:

1. Initial software license fees2. Recurring license fees3. Support Costs4. Training Costs5. Development labor costs (programmer, QA, manager,

etc.)

Page 10: How to choose an RTOS?

Other Parameters

1. Safety• Avoiding operator error• Certification

2. Reliability• Writing reliable software • Having high-quality tools like an OS-aware

debugger and performance profiler available with the selected RTOS can help produce reliable code.

Page 11: How to choose an RTOS?

3. Functionality• Wireless connectivity• USB• Portability

Page 12: How to choose an RTOS?

• Thank You!