Improving on "memory fault - core dumped"
Ian Cottam
ian at cs.man.ac.uk
Sat Jun 22 02:40:40 AEST 1991
I have found that many users here, and elsewhere, are reluctant to
learn dbx, dbxtool, xdbx or whatever your preferred debugger is called
on your UNIX system. Students often want to delay learning about such
arcane beasts until they have mastered the programming language
of choice.
I have written a sh script that drives dbx automatically to produce
what on some other systems is called a post-mortem dump - hence the
command script's name: pmd.
Suppose running
testprog S3--C/TESTS/kmt_data_module
produces
Memory fault - core dumped
Below is what running
pmd testprog S3--C/TESTS/kmt_data_module
produces
Script started on Fri Jun 21 09:53:24 1991
$ pmd testprog S3--C/TESTS/kmt_data_module
/arch/ian/bin/pmd: 24595 Memory fault - core dumped
(testprog S3--C/TESTS/kmt_data_module) -- fault on or about line 434
testprog.c
skipPragma
431 return;
432 }
433 ++ cp;
434 while (ch= f[cp-100000], ch != '\0') {
435 ++ cp;
436 if (ch == '>' && f[cp] == ')')
437 break;
ch = 0
Called from function: skipWCPS
465 skipPragma();
testprog.c
pos = 27
ch = 40
Called from function: process
149 skipWCPS();
testprog.c
word = "KMT_DATA_M"
startword2 = 11553
startword = 7
len = 10
Called from function: main
130 process();
testprog.c
argv = 0xefffdc8
argc = 2
$ ^D
script done on Fri Jun 21 09:53:33 1991
I find pmd quite convenient, even though I am an experienced *dbx* user.
(For example, typing cont.-\ at a looping program gives you some useful
info as to why the loop has not terminated.)
Would anyone be interested in a free copy of this script, or is it
too trivial to be useful?
Should it be posted, and if so what is the appropriate news group?
--
Ian Cottam, Room IT209, Department of Computer Science,
University of Manchester, Oxford Road, Manchester, M13 9PL, U.K.
Tel: (+44) 61-275 6157 FAX: (+44) 61-275-6236
Internet: ian%cs.man.ac.uk; JANET: ian at uk.ac.man.cs
More information about the Comp.unix.programmer
mailing list