⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 todo

📁 很好用的内存泄漏检测工具。要配合linux的gcc使用,安装后将你的编译器gcc命令换成yamd-gcc就行了
💻
字号:
Hey Emacs, this is a -*- text -*- file.To do:- yamd.c is getting large and messy.  Should be split into several  files.  This will cause a bit of namespace pollution and force me to  type messy names starting with underscores, but is probably worth it.  - Figure out possible /tmp race with script.- Use file version numbers (yamd0nn.zip etc) and change the website to  show past versions.  First part done.- log_vprintf really ought to use vsnprintf when possible.  It looks  like DJGPP should have this before too long; that's a good thing.  Don't forget to correctly handle the overflow case.- Audit for correct aliasing so that gcc 2.95 and its  -fstrict-aliasing can be used.  Have had a look and nothing seems horribly wrong.- Write the "interpreting logfile" docs.- Fill freshly allocated memory with some (user-specified) pattern.  Currently we get random garbage (if regular malloc is used) or zeros  (if mmap); neither is probably very good for finding uninitialized  memory bugs.- autoconf might be a good idea.  The manual HAVE_* macros are getting  messy.- Add more INFO-level logging, of normal events.  ??? Like what ???- Output could be prettier.  Work on do-syms.  Also have it find the  executable name automagically.- Add checking for use of uninitialized memory.  386 has no write-only  pages, so set all pages not-present and have the fault handler barf  if they are read.  Handling each page individually would be slower  and involve a lot more bookkeeping, so maybe just deal with the  whole block.  But: This will probably catch only the grossest bugs,  so I wonder if it's really worth it.  Also, I'd rather see the fault  handler gone.- I wonder if the signal handler should be removed entirely.  This  would have the following advantages:  * Eliminates system-specific fault handling code.  * Traceback stuff could be much simplified, as we will always be on    the call chain.  Much better portability.    But: Under Linux, when dynamically loaded, postmortem debugging    can't use YAMD.  This means we need to describe the related block    at once; we won't be able to get that info later.    OTOH, I could write a GDB script that emulates describe_address by    walking the block chain itself.  This makes it GDB-dependent,    however, and maybe depending on postmortem debugging working is    unwise... hmm.    This may also just be a GDB or glibc/ld.so bug.  Try it with 4.18    and 2.1.1.- Clean up some of the ugly address arithmetic.- Fix signal handler under DJGPP.  Hmm... dang hard.- Eliminate all the -D's on the compilation command line by making  some sort of config.h that the Makefile creates.- Check for suitable DPMI server on startup; else warn user.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -