isaac@goanna.oz (Isaac Balbin) (10/25/89)
Well, I do have three versions of undump which used to work properly on our two encores. Two were for BSD and the other for SYSV. I haven't had a need to do undump for a while, and in the meantime we have upgraded operating systems a few times. Now I find that neither of the undump's work, ie they create a binary but under SYSV it dumps core and under BSD it just exits silently. The operating systems we are using are Umaxnfs 4.2 (B3_3.21) and UMAX V 2.2H R3.1 (I have tried both universes in 2.2H under both dumps, and the same results) What I want to know is: if you have either of these OS's _and_ you have recently remade, say TeX, ie initex plain \dump virtex '&plain' xyz ^\ undump tex virtex core if it still works. For the moment, I am thankful for old binaries. This is a trite confusing and I was hoping someone had encountered and fixed it.
dwm@encore.Encore.COM (Dave Mitchell) (10/26/89)
In article <2511@goanna.oz> isaac@goanna.oz (Isaac Balbin) writes: >Well, I do have three versions of undump which used to work >properly on our two encores. Two were for BSD and the other for SYSV. > ... >The operating systems we are using are Umaxnfs 4.2 (B3_3.21) and >UMAX V 2.2H R3.1 > The format of core files was changed to so that any shared memory regions would also be available through the core file. I believe this change was made with BSD release 3.3 and SysV release 2.2. You will need to rebuild undump; some minor source changes may be needed. Consult /usr/include/sys/ptrace.h for detailed information about the new core file format. Enclosed below is a pictorial sketch of the core layout, stolen from ptrace.h: The ptrace_user structure is found at the beginning of core files. The layout of a Umax core file is as follows: +-------------------------------+ 0 | struct ptrace_user | +-------------------------------+ sizeof(struct ptrace_user) ///////////////////////////////// +-------------------------------+ <===== ptrace_user.pt_memptr | pt_mem_desc[ pt_nmem ] | +-------------------------------+ ///////////////////////////////// +-------------------------------+ <===== ptrace_user.pt_dataptr | data | +-------------------------------+ ptrace_user.pt_dataptr + dsize | stack | +-------------------------------+ ptrace_user.pt_dataptr+dsize+ssize | extra memory 0 | optional +-------------------------------+ ... + pt_mem_desc[0].pt_mem_size | extra memory 1 | optional +-------------------------------+ ... + pt_mem_desc[1].pt_mem_size | etc. | optional +-------------------------------+ Notice that the three or more components are contiguous and no padding or alignment is used. The extra memory regions are all the shared memory regions and shared library data regions. Dave Mitchell Usenet: ...!{bu-cs,decvax,necntc,talcott}!encore!dwm Internet: dwm@multimax.ARPA *<8-O) Yow!
madd@world.std.com (jim frost) (10/26/89)
In article <10202@encore.Encore.COM> dwm@encore.Encore.COM (Dave Mitchell) writes: | The format of core files was changed to so that any | shared memory regions would also be available through | the core file. I believe this change was made with | BSD release 3.3 and SysV release 2.2. Interesting. I've never seen a BSD 3.3. :-) jim frost software tool & die madd@std.com
dwm@pinocchio.Encore.COM (Dave Mitchell) (10/27/89)
In article <1989Oct26.145318.5161@world.std.com> madd@world.UUCP (jim frost) writes: >In article <10202@encore.Encore.COM> (Dave Mitchell) writes: >| The format of core files was changed to so that any >| shared memory regions would also be available through >| the core file. I believe this change was made with >| BSD release 3.3 and SysV release 2.2. > >Interesting. I've never seen a BSD 3.3. :-) > Sorry, I should have said Umax4.2 R3.3 and UmaxV R2.2, denoting Encore's BSD and SysV based products. Dave Mitchell Usenet: ...!{bu-cs,decvax,necntc,talcott}!encore!dwm Internet: dwm@encore.com *<8-O) Yow!