Xref: utzoo comp.unix.questions:9236 comp.sys.pyramid:235 Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!cornell!batcomputer!itsgw!brspyr1!tim From: tim@brspyr1.BRS.Com (Tim Northrup) Newsgroups: comp.unix.questions,comp.sys.pyramid Subject: Use of MONITOR(3) Message-ID: <4500@brspyr1.BRS.Com> Date: 16 Sep 88 17:18:34 GMT Organization: BRS Information Technologies, Latham NY Lines: 53 I am trying to use the monitor(3) system call to restrict profiling to a given set of routines, but it doesn't seem to be working. Here is the test case I have been trying. Is there something I am doing wrong here? [ this is on a Pyramid 90x, running OSx 3.1 ] =========================================================================== #define MB_Func 600 /* allow up to 600 routines */ #define MB_Size 10240 /* give a good size buffer */ short MonBuf[MB_Size]; /* where counts should go */ int StartRoutine(); /* where to start monitoring */ int AfterRoutine(); /* routine after 1 to stop in */ main () { /* monitor selected routines */ monitor(StartRoutine,AfterRoutine,MonBuf,MB_Size,MB_Func); StartRoutine(); /* call a monitored routine */ monitor((int (*)())0,0,0,0,0); /* terminate monitor */ system("mv mon.out mon.save"); /* save output file */ exit(0); } StartRoutine () { return(AnotherRoutine()); } AnotherRoutine () { return(0); } AfterRoutine () { return(0); } =========================================================================== I compiled and linked this using: "cc -p -o tfile tfile.c" After running, I get a mon.save file, and a mon.out file, but prof(1) cannot deal with either of them. It gives a Floating Point Exception and a core dump when run. Inspecting the mon.* files shows that the header looks correct (low-pc, high-pc and nfunc all appear to match what I specified), but after that all values are 0. Does anyone out there have any experience getting this beast to work? Also, what makes a good value for the size of the buffer? Any help would be appreciated. [ the actual module I want to use this on is VERY large, and doing a complete module profile does not work -- too many functions in it I suppose ] Thanx in advance for any assistance. -- Tim N. -- Tim Northrup +------------------------------------------+ +---------------------------------+ GEnie: T.Northrup | UUCP: uunet!steinmetz!brspyr1!tim | Air Warrior: "Duke" | ARPA: tim@brspyr1.BRS.Com +------------------------------------------+