My favorites | Sign in
Project Home Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
DebuggerDesign  
Updated Feb 4, 2010 by xuwenhao...@gmail.com

出现的问题及其主要原因

问题

  • 在使用horde执行引擎时,当执行在其他节点的程序出现问题时,不易调试;

原因

  1. 出现问题的进程是由其他进程创建的,并且运行到其他的节点上,虽然可以用调试器(gdb)远程attach到一个进程,仍然造成调试的困难;
  2. 出现问题的进程是和其他进程有各种交互(消息传递),要想调试,必须启动所有的其他进程;
  3. 线程的执行的不确定性和一些sys call的不确定性,导致重现问题比较复杂

目标

  出现问题时,可以在本地方便的调试

方法

Record&Replay

  1. 记录此进程收到的消息,记录到日志文件"进程号_运行号_.debuggerlog"中
  2. 在调试时,
  3.  1. 修改配置文件中的监听地址,在本地监听
     2. 在配置文件中,添加日志文件名
     3. 启动gdb调试即可,所有的消息都是从日志文件中回放出来
 
Powered by Google Project Hosting