Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!uakari.primate.wisc.edu!uflorida!travis!hrshcx!steved From: steved@hrshcx.csd.harris.com (Steve Daukas) Newsgroups: comp.realtime Subject: Re: Device Drivers Message-ID: <867@hrshcx.csd.harris.com> Date: 21 Nov 90 16:24:32 GMT References: <1990Nov20.095649.7328@computing-maths.cardiff.ac.uk> Organization: Harris Computer Systems - Fort Lauderdale, Fl. Lines: 42 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."