Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!lll-winken!uwm.edu!ogicse!milton!yoda.eecs.wsu.edu!pcooper From: pcooper@eecs.wsu.edu (Phil Cooper - CS495) Newsgroups: comp.realtime Subject: Re: AmigaDOS as realtime system? Message-ID: <1991Feb28.194655.1294@eecs.wsu.edu> Date: 28 Feb 91 19:46:55 GMT References: <1566@swrinde.nde.swri.edu> <1991Feb27.090231.5412@newcastle.ac.uk> Reply-To: pcooper@yoda.UUCP (Phil Cooper - CS495) Organization: Washington State University, Pullman Lines: 62 In article <1991Feb27.090231.5412@newcastle.ac.uk> A.Waterworth@newcastle.ac.uk (A Waterworth) writes: >kent@swrinde.nde.swri.edu (Kent D. Polk) writes: > >>In article tims@infidel.lanl.gov (Tim Sullivan) writes: >>>I just saw a posting in which AmigaDOS was described as a realtime >>>multitasking operating system. Can anyone shed light on its realtime >>>abilities? >>> >>>Tim Sullivan (tims@infidel.lanl.gov) >> . >> . >>The Amiga is so quick, responsive and easy to program compared to any >>other real-time system... >> . >> . >>Even after reading this simple example, wouldn't you agree that Amigas >>qualify as having a real-time OS? > >I probably won't be the only one to mention this, but here goes anyway... ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Well, you are the first one so far... > > For example, supposing that you have a process control task which >absolutely must be performed within 750ms. Can the Amiga OS _guarantee_ that >that task will never (in the absence of faults or failures) miss its deadline? >If it cannot make such a guarantee, then it isn't a real-time OS - although it >might act as a decent starting point from which to develop one. > > Adrian. > Adrian, it should be obvious to you that any OS which operates in an interrupt-driven environment (not to mention multitasking), would fail the requirements you have set forth for a real-time OS. If you are collecting data and monitoring events from several different sources, some with higher priority than others, an unfortunate sequence of interrupts could prevent lower level requests from being processed. In reality, this would be a rare (if not unheard of) event, but still plausible. To meet your requirements you would need a single-tasking, polled I/O system with a seperate micro- processor dedicated to each data collection (I/O) port. And then, you would need to ensure that your processing code would complete its work before the next event arrived (every time). Or, you could buffer the events to be processed, but what if the buffer fills? Also, if you are going to take someone to task about a posting, please do not edit it so much that it is barely recognizable. Kent Polk's posting was very informative, and provided an excellent example of how Amigas are used to do real-time processing. It may not meet your definition, but then, I don't know of any OS in existence that does. Are you an expert in the internals of the AmigaOS? Have you ever used an Amiga for real-time processing? Have you ever even SEEN an Amiga? I thought not. -Phil- P.S. Please insert :-)'s where appropriate :-) -- /********************************************************************\ * Real Life: Phillip R. Cooper * * Email: pcooper@yoda.eecs.wsu.edu * * Disclaimer: Disclaimer?? I don't need no stinkin' disclaimer!!! *