HP3000-L Archives

January 1996, Week 3

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Reply To:
Date:
Mon, 15 Jan 1996 17:27:58 -0800
Content-Type:
text/plain
Parts/Attachments:
text/plain (47 lines)
Dan replied to me privately, but I suspect he intended to send this to the
list, since he probably wants more than just *my opinion :-)
 
> >Dan's original message suggested that there was a POSIX interface on unix
that
> >could be used to lock a file into memory.  Is this true?  I'd be kind of
> >surprised if the POSIX.1 standard included such an interface (and shouldn't
we
> >then have it on MPE/iX too?).
>
> It's not POSIX.1, it's POSIX.4. And it's not locking files into memory, it's
> locking pages (portions of code, memory, or an entire program) into memory.
 
Ah!  I suppose there's not much chance we will see more POSIX implemented on
MPE in the near future.
 
> Another question, is it possible to do multithreading on MPE ala POSIX.4a?
 
I'm not familliar with exactly what the POSIX.4a interface looks like, but as
of 5.0, MPE/iX includes a complete kernel-level threads interface.  The only
thing so far that uses it (as far as I know) is DCE.  Since threads are one of
the DCE components, if you buy the DCE developer's kit, you get all the
documentation and interface definitions for using threads (even if you don't
care about DCE at all, this is currently the only way to get access to threads
on MPE/iX that I know of).
 
The downside is that for a program to run with more than one thread, all if
its code must be 'thread safe' meaning that you must lock around accesses to
shared globals and things like that.  Unfortunately, not all MPE subsystems
have been made thread safe, and I seem to recall hearing that even things like
the COBOL runtime library were not thread safe either (this may have changed).
 
Also, any library procedures that you call must be thread-safe as well, and
speifically any product that intercepts system calls either with AIF:PE or
some other method will probably need to be modified before you can use it on a
system that has threaded processes running.
 
On a system with running threads you will see them with a :SHOWPROC command.
The threads will show up with fractional PIN numbers like 58.1, 58.2, 58.3
etc.  DEBUG at least has been enhanced to have the features required for
debugging threaded applications.
 
Has anyone out there programmed with threads on the 3000?  Anyone from HP want
to give us an update on the availability and usability of threads in 5.0?
 
G.

ATOM RSS1 RSS2