|
From: Michael E. L. <me...@co...> - 2003-08-29 22:33:34
|
On Friday 29 August 2003 03:51 pm, Steve G wrote: > > As for doing a transaction based system, it sounds like you > are going to be doing a setjmp & longjmp when it doesn't > work out. This is similar in concept to libchkpt which is a > check pointing library. The only difference is that rather > than moving the process to another machine, you will want > to do something else. > > You may be able to adapt libsafe+libchkpt to achieve a > transaction based system. Sounds interesting. Great suggestion, thanks. I appreciate the pointers. I'll check out your additions to libsafe and look into combining a libckp= t=20 approach. As I understand it, our main problem with using libsafe is twof= old:=20 its termination of the process when an overflow is discovered, and libsaf= e=20 only covers certain C library functions. We'd want to mark sections of co= de=20 that should be run intstrumented no matter what functions are inside the=20 marked section. In addition, we're really looking for fine-grained tracking of memory (mo= re=20 than the bounds checking done by libsafe/libverify, Stackguard, Propolice= ,=20 etc.) -- and Valgrind seems to provide that capability very well. Cheers, Michael |