EmbeddedRelated.com
Forums
Memfault Beyond the Launch

What is Real Time Operating System?

Started by Allen March 27, 2004
Hi,

I saw the word "RTOS" appeared many times in this group but have no
idea what it is.  So could the experts here give me a brief idea what
is it in non-technical terms?

Which OSes in the market are qualified as RTOS?

Allen
Hi Allen,
a Real Time Operating System allows to run multiple tasks in a quasi
paralell manner.
The Tasks are executed in a way that hard real time constraints are met.

Very often an RTOS is used to coordinate multiple operations of an
application and symplify the system design.

Example:
A mobile phone has several things to do.
The display must be fed with information to the user.
The keypad must be serviced to read information from the user and finally
the send/receive functions for the High Frequency Transmitter must be
operated.
If you were to write a single monolithic Program to do this, that would be
very difficult.
Instead a RTOS is used and the various functions are implemented as
independent modules.

Below all this is a scheduler that allots CPU time for each task to perform
these operations and utilize the CPU more efficiently.

Have a look at: http://www.netrino.com/Publications/Glossary/

grtnx
/jan


Allen <sfbong@tm.net.my> schrieb in im Newsbeitrag:
f91a20cb.0403262235.14b05887@posting.google.com...
> Hi, > > I saw the word "RTOS" appeared many times in this group but have no > idea what it is. So could the experts here give me a brief idea what > is it in non-technical terms? > > Which OSes in the market are qualified as RTOS? > > Allen
Allen wrote:
> Hi, > > I saw the word "RTOS" appeared many times in this group but have no > idea what it is. So could the experts here give me a brief idea what > is it in non-technical terms? > > Which OSes in the market are qualified as RTOS? > > Allen
http://www.google.com/search?q=real+time+operating+system+definition&sourceid=mozilla-search&start=0&start=0&ie=utf-8&oe=utf-8 HTH
"Allen" <sfbong@tm.net.my> wrote in message
news:f91a20cb.0403262235.14b05887@posting.google.com...
> Hi, > > I saw the word "RTOS" appeared many times in this group but have no > idea what it is. So could the experts here give me a brief idea what > is it in non-technical terms?
In a RTOS the response to an external input or alarm is predictable chronologically speaking i.e. if the temperature of a nuclear reactor starts to rise above critical level the program running on a RTOS can be guaranteed to open a cooling water valve within a certain amount of time. The scheduler in the RTOS is deterministic. In any ordinary OS (such as Windows) it is not, from a theoretical point of view it is impossible to predict how long it will take for a thread or process to get CPU time. Ussually it means that the scheduler in a RTOS is capable of only a limited number of threads or processes, whereas in OS'es like Windows, the number of possible processes is only limited by available memory.
> > Which OSes in the market are qualified as RTOS? >
- vxWorks - eCos - QNX to name a few.
Allen wrote:
> > I saw the word "RTOS" appeared many times in this group but have > no idea what it is. So could the experts here give me a brief > idea what is it in non-technical terms?
A system where you can make a guarantee of the maximum interval between requesting an action and performing that action. In other words it can't continuously put it off because something more important came up. -- Chuck F (cbfalconer@yahoo.com) (cbfalconer@worldnet.att.net) Available for consulting/temporary embedded and systems. <http://cbfalconer.home.att.net> USE worldnet address!
"Allen" <sfbong@tm.net.my> wrote in message
news:f91a20cb.0403262235.14b05887@posting.google.com...
> Hi, > > I saw the word "RTOS" appeared many times in this group but have no > idea what it is. So could the experts here give me a brief idea what > is it in non-technical terms? > > Which OSes in the market are qualified as RTOS? > > Allen
This sure smells like someone's homework! Is Google available in Malaysia? --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.642 / Virus Database: 410 - Release Date: 03/26/2004
Uddo Graaf <u.NOSPAMgraaf@DELETETHISchello.nl> says...

>"Allen" <sfbong@tm.net.my> wrote... >> >> I saw the word "RTOS" appeared many times in this group but have no >> idea what it is. So could the experts here give me a brief idea what >> is it in non-technical terms? > >In a RTOS the response to an external input or alarm is predictable >chronologically speaking i.e. if the temperature of a nuclear reactor starts >to rise above critical level the program running on a RTOS can be guaranteed >to open a cooling water valve within a certain amount of time. > >The scheduler in the RTOS is deterministic. In any ordinary OS (such as >Windows) it is not, from a theoretical point of view it is impossible to >predict how long it will take for a thread or process to get CPU time.
Excellent explanation. Some people confuse "real-time" with "fast", but they are different concepts. As a practical matter, you can take an efficient OS such as command-line Linux (Linux kernel 2.6 has improved real-time capabilities, but is not a RTOS), run it on a multi-gigahertz processor, and give it a light workload and it will do everything you ask it to in a very short amount of time. That's good enough for most uses, but not for our nuclear reactor cooling water valve example. For that we need to know that it will always (not just usually) do the job within the time limit. I once implemented a real-time system that controlled the heaters in a huge tank full of wax. If the wax became too hot it would catch fire, and if it became too cool it would solidify and it would take several days to melt it. In this case, a response from the control system that happened within 30 minutes was fine, but I could not under any circumstances have a delay of over 60 minutes. The system didn't have to be fast, but it did have to be predictable. In other words, slow but real-time. -- Guy Macon, Electronics Engineer & Project Manager for hire. Remember Doc Brown from the _Back to the Future_ movies? Do you have an "impossible" engineering project that only someone like Doc Brown can solve? My resume is at http://www.guymacon.com/
Guy Macon wrote:
> > I once implemented a real-time system that controlled the heaters > in a huge tank full of wax. If the wax became too hot it would > catch fire, and if it became too cool it would solidify and it would > take several days to melt it. In this case, a response from the > control system that happened within 30 minutes was fine, but I could > not under any circumstances have a delay of over 60 minutes. The > system didn't have to be fast, but it did have to be predictable. > In other words, slow but real-time. >
For such a case even Linux 2.4.x or Windows (assuming no BSOD :-) ) could qualify as real time. Regards. Elder.
Guy Macon <http://www.guymacon.com> says...

>Linux kernel 2.6 has improved real-time capabilities
References: http://linuxdevices.com/articles/AT7751365763.html http://www.linuxdevices.com/articles/AT6105045931.html http://www.linuxdevices.com/news/NS9430710378.html http://www.linuxdevices.com/news/NS6292137578.html http://linuxdevices.com/news/NS7430744051.html http://linuxdevices.com/news/NS3561263272.html http://www.linuxdevices.com/articles/AT8267298734.html http://www.linuxdevices.com/articles/AT5152980814.html http://www.linuxdevices.com/articles/AT4185744181.html http://www.linuxdevices.com/articles/AT5997007602.html http://www.linuxdevices.com/articles/AT5709748392.html http://www.linuxdevices.com/articles/AT9837719278.html -- Guy Macon, Electronics Engineer & Project Manager for hire. Remember Doc Brown from the _Back to the Future_ movies? Do you have an "impossible" engineering project that only someone like Doc Brown can solve? My resume is at http://www.guymacon.com/
"Allen" <sfbong@tm.net.my> wrote...
> > I saw the word "RTOS" appeared many times in this group but have no > idea what it is. So could the experts here give me a brief idea what > is it in non-technical terms?
Here are some web pages that may help. http://www.linuxdevices.com/articles/AT5997007602.html http://www.linuxdevices.com/articles/AT5709748392.html http://www.linuxdevices.com/articles/AT9837719278.html Selected quotes from the above web pages: "An operating environment where we can determine the worst-case time for a given response time or requirement is deterministic. Operating environments that don't allow us to determine a worst- case time are called nondeterministic. Real-time applications require a deterministic operating environment, and real-time operating systems are capable of providing a deterministic operating environment." "A typical real-time application involves a task performing some operation within a deadline. For example: storing some data, or updating a display. The task often is designed to repeat such activities ad infinitum, beginning each iteration at the occurrence of a hardware interrupt. This interrupt may be caused by a human clicking a button, a temperature reading, data from a visual sensor, or innumerable other possibilities." "the IEEE definition ... is a good one, and a clear one. Namely: 'a real-time system is a system whose correctness includes its response time as well as its functional correctness.' The system doesn't just run software to plough through the process; it needs to do it in a timely manner." -- Guy Macon, Electronics Engineer & Project Manager for hire. Remember Doc Brown from the _Back to the Future_ movies? Do you have an "impossible" engineering project that only someone like Doc Brown can solve? My resume is at http://www.guymacon.com/

Memfault Beyond the Launch