UNIX STREAMS

UNIX STREAMS

Post by Ron Hu » Sun, 28 May 1995 04:00:00



Hi,
        I use an OS called QNX. Its a realtime, preemptive multitasking,
micro kernel, (...) operating system.  It also happens to be POSIX
compliant.  My problem is that my company uses this Os to
make telephony equipment, and I always end up porting
UNIX STREAMS device drivers over to it.  I was wondering if anyone
knows of a good reference, or a definition of the API and functionality
required in a STREAMS interface.  If I can find code (or pseudo code ) I
may even port it to QNX (at least the API ) to make it look like
I am running a STREAMS based OS even though I'm not (I'll hide the
massage passing, interrupt proxying, etc inside the STREAMS stuff.

Is this possible, and can someone point me in the right direction?

Thanks,
Ron.
-----------

Ron Hume

Network Administrator
Cygnus Telecommunications Engineering Labs
CANADA

 
 
 

UNIX STREAMS

Post by Steve Ra » Mon, 29 May 1995 04:00:00



>Hi,
>    I use an OS called QNX. Its a realtime, preemptive multitasking,
>micro kernel, (...) operating system.  It also happens to be POSIX
>compliant.  My problem is that my company uses this Os to
>make telephony equipment, and I always end up porting
>UNIX STREAMS device drivers over to it.  I was wondering if anyone
>knows of a good reference, or a definition of the API and functionality
>required in a STREAMS interface.  If I can find code (or pseudo code ) I
>may even port it to QNX (at least the API ) to make it look like
>I am running a STREAMS based OS even though I'm not (I'll hide the
>massage passing, interrupt proxying, etc inside the STREAMS stuff.

>Is this possible, and can someone point me in the right direction?

Yes, it's possible.  Check out any DDI/DKI (Device-Driver Interface/
Driver-Kernel Interface) manual.  The interfaces are pretty explicit.
While I was at AT&T someone even built a user-level simulator for
testing STREAMS modules and drivers, so I think you can go fairly
far towards building a separate environment.  The only problem you
might run into is in duplicating the "implementation details" without
access to the actual STREAMS environment source code.  Things like
undocumented side-effects come to mind.

Steve Rago


 
 
 

UNIX STREAMS

Post by Jim Robins » Tue, 30 May 1995 04:00:00



>Yes, it's possible.  Check out any DDI/DKI (Device-Driver Interface/
>Driver-Kernel Interface) manual.  The interfaces are pretty explicit.
>While I was at AT&T someone even built a user-level simulator for
>testing STREAMS modules and drivers, so I think you can go fairly
>far towards building a separate environment.

Does anyone know of a commercially available user-level STREAMS emulator?
The standard debugging environment available for debugging STREAMS code is
not terribly user-friendly, to say the least. The target platform is
Solaris 2.3 (and 2.4).

Thanks

--
Jim Robinson

{ubc-cs!van-bc,uunet}!mdivax1!robinson

 
 
 

UNIX STREAMS

Post by Mark J Hewit » Wed, 31 May 1995 04:00:00



Quote:> Does anyone know of a commercially available user-level STREAMS emulator?
> The standard debugging environment available for debugging STREAMS code is
> not terribly user-friendly, to say the least. The target platform is
> Solaris 2.3 (and 2.4).

Once, I managed a project where the hardware was delayed, so one
enterprising employee coded a limited STREAMS emulator for the
development we were about to undertake.  This ran on an in-house
machine that did not support STREAMS.  All he needed was the header
files and a good knowledge of C, UNIX, shared memory and timer services.
I also don't recall this being more than maybe 1k or so lines of code.

I don't believe I have a copy of this now, but I post this just to indicate
that such a thing is possible.

(Shaun - if you are listening, whatever happened to that emulator ? !)
--

 
 
 

UNIX STREAMS

Post by Steve Ra » Sat, 03 Jun 1995 04:00:00



>What tools exist in the SVR4.2/Unixware 1.X distribution (including
>Software Development Kit with all the Device Driver material) that
>could help one see what is going on with their STREAMS code (e.g. test
>modules)?

Check out strace(1M) and log(7).  They allow you to embed trace
statements in your code and display them during module operation.
Other than that, I don't think there is anything to help test
your code.

Steve Rago

 
 
 

UNIX STREAMS

Post by Arthur Mar » Sat, 03 Jun 1995 04:00:00


: Yes, it's possible.  Check out any DDI/DKI (Device-Driver Interface/
: Driver-Kernel Interface) manual.  The interfaces are pretty explicit.
: While I was at AT&T someone even built a user-level simulator for
: testing STREAMS modules and drivers

What tools exist in the SVR4.2/Unixware 1.X distribution (including
Software Development Kit with all the Device Driver material) that
could help one see what is going on with their STREAMS code (e.g. test
modules)?

--
Arthur Marsh, telephone +61-8-370-2365, fax +61-8-223-5082

.endofsig

 
 
 

1. user level STREAMS emulators (was Re: UNIX STREAMS)

Does anyone know of a commercially available user-level STREAMS emulator?
The standard debugging environment available for debugging STREAMS code is
not terribly user-friendly, to say the least. The target platform is
Solaris 2.3 (and 2.4).

Thanks

--
Jim Robinson

{ubc-cs!van-bc,uunet}!mdivax1!robinson

2. ELF & X11

3. UNIX Stream programming: How can I create a new queue in driver

4. Solaris 2.2 Telnet source needed

5. Information about SCO Unix STREAMS network driver?

6. Debian,Netscape and shared libraries

7. Unix streams (stropts.h)

8. Install won't recognize CDROM

9. UNIX Streams Emulator

10. Unix STREAMS

11. UNIX STREAMS Information please

12. FS: UNIX Streams Programmer's Guide

13. Questions on Unix STREAMS Head