
The 8MB figure looks familiar. It is the default size that many Unices allocate to the program's stack.
What really puzzles me is that when the HP-UX bible talks about maxdsiz (maximum size of data segment) and maxssiz (maximum size of stack segment) it states for both that the size affects the size of the local heap. This seems weird, I mean the local heap surely resides EITHER on the stack OR in the data segment but not both?!?!
And this is also where you step out of my experience too. I have run my compiled programs on multiprocessor Alphas and also Linices, but they are really only single process programs. I have never had to use threads and have used fork rarely so don't have much experience in debugging such programs. The techniques I described in my last post are what I have found very useful in my own programming.
There is a debugger available under HP-UX which is based on gdb but requires an X-client (it's called wdb). The debugger is excellent and offers all essential features and more, but with the relatively slow connection to the server via an Internet VPN connection it is hardly usable. Many thanks for your help!