[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::digital_unix

Title:DIGITAL UNIX(FORMERLY KNOWN AS DEC OSF/1)
Notice:Welcome to the Digital UNIX Conference
Moderator:SMURF::DENHAM
Created:Thu Mar 16 1995
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:10068
Total number of notes:35879

9686.0. "Threads in V4.0 (what are customer application im[pacts?)" by MAIL1::GHAHRAMANI () Wed Apr 30 1997 15:36

    
    I have a customer who is contemplating going from Digital Unix V3.2 to
    Digital Unix V4.0.
    
    They are aware of the general changes between V3.2 and V4.0.  They want
    to be able to understand the impact the changes in threads on their
    applications.  Do we have documentation that lists the details of the
    changes (I have already suggested the Digital Unix Realtime and
    DECthreads guides), however they want a whitepaper type of document
    that tells them what areas they will need to change.
    
    1. Do we have white-papers on this or anything that details the changes
    and how to upgrade code?
    
    2. Can the porting assistant be used to  point out areas of code that
    needs to be changed for compliance to 1003.1c standards and 1003.1b?
    
    3.  In general, is there a document that explains what application
    development impacts are between the two versions?  I have Sara Tappa's
    document, although it lists the changes,  there is no detail on what
    areas of applications need to be recoded.
    
    Thanks,
    
    Forough
T.RTitleUserPersonal
Name
DateLines
9686.1SMURF::DENHAMDigital UNIX KernelWed Apr 30 1997 18:537
    Dave Butenhof, our DECthreads architect did a nice whitepaper on the
    threads differences between draft 4 and the final POSIX 1003.1c
    implementation on Digital UNIX V4.0.
    
    There are pointers to this document in CLT::CMA notes conference.
    I might worth posting a note in there to make sure the document
    is OK to give to customers.
9686.2DCETHD::BUTENHOFDave Butenhof, DECthreadsThu May 01 1997 08:0254
Uh, well, er, ah... thanks, Jeff, but...

Yeah, I wrote a brief document once upon a time to describe changes in the
POSIX drafts. It was NOT intended for general distribution. Furthermore, I
originally wrote it to describe the changes from draft 4 ("DCE threads") to
draft 7, which was the first draft that we (the POSIX working group) thought
had a realistic chance of passing. It didn't, and we went on to draft 8,
draft 9, and finally draft 10 before a real standard was approved. I updated
the original document for draft 8, (way back in January 1994), but after that
I never found time to get back to it. While the changes in draft 9 and 10,
and the additional changes resulting from the merge of 1003.1c-1995 with
1003.1b-1993 were "relatively minor", they add up to enough that the existing
document is dangerously inaccurate with respect to the final standard and our
implementation of it.

>    1. Do we have white-papers on this or anything that details the changes
>    and how to upgrade code?

Some of that document became the basis for the Migration section of Appendix
G in the Guide to DECthreads for Digital UNIX 4.0 and OpenVMS 7.0, although
Appendix G is less complete.

Perhaps I can find a few hours in the near future to update the document. If
so, I'll post it (or a pointer).

Also, although I would strongly recommend migrating to POSIX threads when
moving to Digital UNIX 4.0, it's not essential. Digital UNIX 4.0 continues to
support the DCE threads interfaces. For most threaded code, no source changes
are required, although there are a few O/S-imposed changes to the thread
signal model. (The POSIX thread signal model is very different from the DCE
thread model; and because the older DEC OSF/1 threaded signal model was
completely broken anyway, and nearly useless, we didn't attempt much in the
way of binary compatibility.) Although the DCE thread interface is officially
RETIRED, the unfortunate fact of the matter is that, until OSF modifies the
DCE specification to use POSIX threads instead of DCE threads, we probably
won't be able to actually remove support.

>    2. Can the porting assistant be used to  point out areas of code that
>    needs to be changed for compliance to 1003.1c standards and 1003.1b?

There is no such thing as a "porting assistant" to automatically identify
thread changes.

>    3.  In general, is there a document that explains what application
>    development impacts are between the two versions?

Aside from any changes implied by the differences in syntax, I'm not sure
what you mean by this. Although there will be a lot of source changes to
migrate from DCE threads to POSIX threads, it doesn't require any algorithm
changes. There are no sweeping changes to the thread model -- just
syntactical changes and a few minor semantic changes (most of them in the
area of signal handling).

	/dave
9686.3Porting Assistant toolMAIL1::GHAHRAMANIFri May 02 1997 11:5311
    Thank you for your reply.  My question regarding Porting Assistant
    referrs to the Software Development tool available to customers for
    porting apps to Digital Unix.  My thought process was to run 3.2 code
    through this tool and to have it complain about non-standard code.    
    Among the non-standards-based code that the tool would find are the
    threads semantics differences....I may have let my imagination run wild
    with the capabilities of the Porting Assistant and various uses!
    
    Does the Porting assistant tool provide this type of feature?
    
    Forough