rhl@computing-maths.cardiff.ac.uk (Robert Hartill) (11/20/90)
As part of my research into writing a realtime operating system for a 80386 programmable communications controller, i'm now looking into the different approaches taken to implement device drivers. At the moment i'm looking at UNIX (yuck!!). If anyone out there has some info that will save me some time (and work!) i would be grateful. Has anyone implemented a form of STREAMS in a realtime OS ? ----- Robert Hartill. Dept' Of Computing Mathematics, UWCC, Cardiff, UK.
steved@hrshcx.csd.harris.com (Steve Daukas) (11/22/90)
In article <1990Nov20.095649.7328@computing-maths.cardiff.ac.uk>, rhl@computing-maths.cardiff.ac.uk (Robert Hartill) writes: > As part of my research into writing a realtime operating system for a 80386 > programmable communications controller, i'm now looking into the different > approaches taken to implement device drivers. > > At the moment i'm looking at UNIX (yuck!!). > > If anyone out there has some info that will save me some time (and work!) > i would be grateful. > > Has anyone implemented a form of STREAMS in a realtime OS ? > Harris has lots of real-time device drivers for Unix. These drivers are multi-threaded, preemptable, etc.. The code for the driver has some distinct charactersitics, such as spl8 doesn't, two processes can be in the driver at one time, int level routines don't stop non-int level routines from running in the same code, etc.. Of course, these features need some support from the OS. The combination of device driver & OS features allows a response time of less than 5 microseconds to an edge triggered device, and about 50 microseconds for a context switch. The neat part is having more than one process able to use the device driver at the same time... This is all done in a Unix that is SVID and SVVS and Posix and BCS and... I don't think I should get into specifics because someone I work for might get a wee bit upset. suffice it to say that yuck to unix isn't true anymore for a real-time environment... The scheduling algorithm can't exist as it does in regular unix because it isn't deterministic. You need to have static priority levels, etc.. As far as streams, yup. Steve -- Stephen C. Daukas | sdaukas@csd.harris.com Harris Corporation | uunet!hcx1!misg!sdaukas Computer Systems Division | (617) 221-1834, (617) 221-1830 "Old MacDonald had an agricultural real estate tax abatement."
andy@modcomp.uucp (Andy Tate) (11/23/90)
rhl@computing-maths.cardiff.ac.uk (Robert Hartill) writes: >As part of my research into writing a realtime operating system for a 80386 >programmable communications controller, i'm now looking into the different >approaches taken to implement device drivers. >At the moment i'm looking at UNIX (yuck!!). >If anyone out there has some info that will save me some time (and work!) >i would be grateful. >Has anyone implemented a form of STREAMS in a realtime OS ? >----- > Robert Hartill. > Dept' Of Computing Mathematics, > UWCC, > Cardiff, > UK. Yes, we have implemented STREAMS under our fully preemptive REAL/IX O/S. There are several interfaces which use STREAMs under REAL/IX such as BSD "in-kernel" sockets, AT&T's TLI, and application software which make direct references to the driver(s) beneath. Any process executing in REAL/IX STREAMs can be preempted by a higher priority process. Andrew Tate MODCOMP, an AEG Company Advanced Systems Development Ft. Lauderdale, FL uunet!modcomp!andy
rdenton@encore.com (Roger Denton) (12/01/90)
From article <1990Nov20.095649.7328@computing-maths.cardiff.ac.uk>, by rhl@computing-maths.cardiff.ac.uk (Robert Hartill): > At the moment i'm looking at UNIX (yuck!!). > > If anyone out there has some info that will save me some time (and work!) > i would be grateful. > > Has anyone implemented a form of STREAMS in a realtime OS ? > We have STREAMS running in a real-time version of Encore's UMAX V. Streams processing is done by a process running under a scheduler and priority that are defined by the system administrator. By the way, real time and unix no longer directly corresponds to "yuck." If you would like more information please let me know. Roger Denton UMAX Development Encore Computer Corp.
alex@vmars.tuwien.ac.at (Alexander Vrchoticky) (12/02/90)
rdenton@encore.com (Roger Denton) writes: >By the way, real time and unix no longer directly corresponds to "yuck." I would be surprised if they (together) did not. -- Alexander Vrchoticky, Tech Univ Vienna, CS, Dept for Real-Time Systems Voice: +43/222/58801-8168 Fax: +43/222/569149 Internet: alex@vmars.tuwien.ac.at Path: vmars!alex@relay.eu.net