EmbeddedRelated.com
Forums

What is Real Time Operating System?

Started by Allen March 27, 2004
"Jan Homuth" <jandothomuth@altium.com> wrote in message news:<c43edl$2eqq6a$1@ID-139563.news.uni-berlin.de>...
> 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
Thanks Jan, So the OS for the computers that runs a 747 or an electronic organ is also considered as RTOS? On the 747, if the pilot gives a command to the plane he is flying, and the command is delayed for seconds it would mean disaster. Or on an electronic organ, if a C key is pressed and the musical tone only comes out 1 or 2 seconds later, nobody will buy that organ, am I right? Allen
> > > 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
Elder Costa <elder.costa@terra.com.br> wrote in message news:<c43pml$2dmug8$1@ID-217921.news.uni-berlin.de>...
> 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
Oops! it's time to do some more reading. Thanks Elder. Allen
Elder Costa <elder.costa@terra.com.br> says...
> >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.
I disagree. In either of those systems it is possible (although unlikely in the case of Linux) that they may take over 60 minutes to respond to an input while operating normally. Just last week I had Windows NT sit there for six hours thinking about how to print a pdf file with Japanese fonts in it, and during that time all further print requests waited. -- 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" <http://www.guymacon.com> wrote in message
news:nZSdnZWY_JAQOvjdRVn-uQ@speakeasy.net...
> > Elder Costa <elder.costa@terra.com.br> says... > > > >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. > > I disagree. In either of those systems it is possible (although > unlikely in the case of Linux) that they may take over 60 minutes > to respond to an input while operating normally. Just last week > I had Windows NT sit there for six hours thinking about how to > print a pdf file with Japanese fonts in it, and during that time > all further print requests waited. > >
I agree with Guy, recently I decided to check out a screensaver in KDE on my other laptop and the darn thing locked up the whole desktop! Can you imagine? Luckily that Linux box wasn't running the nuclear reactor. tee hee
Guy Macon wrote:
> Elder Costa <elder.costa@terra.com.br> says... > >>Guy Macon wrote: >>
[...]
> > I disagree. In either of those systems it is possible (although > unlikely in the case of Linux) that they may take over 60 minutes > to respond to an input while operating normally. Just last week > I had Windows NT sit there for six hours thinking about how to > print a pdf file with Japanese fonts in it, and during that time > all further print requests waited. >
Printing is an application level activity, not OS level, regardless of the obfuscation and improper use of the word 'driver' in the windows realm.
Guy Macon <http://www.guymacon.com> writes:

> In other words, slow but real-time.
There are also "soft" real time systems. Some people hate that concept, but it does exist and such systems are conceptually very similar to true real time systems. No one has gone through and calculated how long the maximum delays might be. But if there is a delay, you can be sure it's not because the OS wants to finish the current system call before doing a context switch. Of course, this stuff just says what an RTOS is, not what they actually look like and how to recognize one from its features. -- Darin Johnson I'm not a well adjusted person, but I play one on the net.
Allen wrote:
> Thanks Jan, > > So the OS for the computers that runs a 747 or an electronic organ is > also considered as RTOS? On the 747, if the pilot gives a command to > the plane he is flying, and the command is delayed for seconds it > would mean disaster. Or on an electronic organ, if a C key is pressed > and the musical tone only comes out 1 or 2 seconds later, nobody will > buy that organ, am I right? > > Allen
I don't know about 747 and organs/synthetizers but there are many embedded systems that have no RTOS at all. Realtime type tasks are for instance performed by some kind of interrupt service routine. Look at a recent article on a poll at linuxdevices - AFAIR most embedded systems use a home made solution and I suspect from reading some recent threads at this NG that most of them fits in this non RTOS category. Some people think an RTOS add to complexity and not necessarily improves the design cleanliness and reliability. Regards. Elder.
Elder Costa <elder.costa@terra.com.br> writes:

> AFAIR most embedded > systems use a home made solution and I suspect from reading some > recent threads at this NG that most of them fits in this non RTOS > category. Some people think an RTOS add to complexity and not > necessarily improves the design cleanliness and reliability.
We used uC/OS II in a product, which essentially meant that we wrote most of the stuff that actually did work. We never used more than just the message queues in uC/OS II, and we rolled our own timers since uC/OS II's only provided coarse grained tick-based timers. Later, a project went with OSE, which was a bumpy ride. In hindsight, there was no advantage over the $50 uC/OS II, unless we had been rewritten our application from scratch. -- Darin Johnson Support your right to own gnus.
CBFalconer <cbfalconer@yahoo.com> wrote in message news:<406530CC.BF3516E4@yahoo.com>...
> 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.
I can understand this one.
> > In other words it can't continuously put it off because something > more important came up.
Does it mean that an interrupt can not be interrupted by another interrupt? Or in another word, there is no interrupt priority (except put into queue) in RTOS? Allen
Darin Johnson wrote:
> Later, a project went with OSE, which was a bumpy ride. In hindsight, > there was no advantage over the $50 uC/OS II, unless we had been > rewritten our application from scratch.
$50? Did you use it in a commercial product? Many years agou I asked Labrosse about licensing policy and it was rather expensive. I ended by purchasing OnTime's RTkernel. Regards. Elder.