Subject: Possible solution to gdb problem
From: [email-masked] (Walter Pineda)

14 Feb 1997 22:58:09 -0800
Approved: [email-masked]
Distribution: cygnus
Message-ID: <[email-masked]>
Reply-To: [email-masked]
Original-To: [email-masked]
Original-Sender: [email-masked]

Hi,

I am working on Windows95, 90 MHZ, 16MB RAM, cygwin32 b.17.

1)
  It is known that gdb on Win32 can lunch only one time the debugged.
  The problem is solved calling ContinueDebugEvent function ever after
  getting the EXIT_PROCESS_DEBUG_EVENT (line 469, file win32-nat.c).

  I have tested it, however gdb stops running after few consecutive
  executions of the debugged.
  May be in this case the problem is a different one (are all the handles
  closed? for threads, processes and files ?).

2)
  I have compiled a simple application :
           // file dumb.cxx
           int main() {
             int i = 0;
	     i++;
	     return i;
           }
         gcc -g -o dumb dumb.cxx

  gdb shows me the creation of two threads (sometimes the second thread is
                                            not created).
  - Why does this simple applications start a second thread ?
  - Is the second thread created in a DLL ? from cygnus ? from Microsoft ?

3)
  I am writing a debugger for multi-thread applications (the debugger
  himself is also multi-thread). I can run the debugged several times.

  I have some problems. I thanks people giving me some ideas :

  a) 
     Where can I get more information about Debug functions in the
     Win32API ?
     I have found documentation related to debug Win32API functions on :
        - Win32 programmer's reference (official documentation from Microsoft).
        - VisualC++ 4.0 on-line doc.
     Programming a debug is not a current topic in the news groups, nor in
     the TechNet database, nor in the Microsoft KDB.

  b) I am getting debug events related to a thread id which creation have not been
     announced by a CREATE_THREAD_DEBUG_EVENT.
     Is it possible ?
     Documentation suggest that ALL debug events are reported to the debugger.
     Is it true ? or can some events be missed by (or not sent to) the
     debugger ? which ?
     (this situation does not arrives in gdb.
      my debugger is a multi-thread application, is it the reason to missing
      events ?).

  Walter.

-- 
+---------------------------------------------------------------------------+
| Walter PINEDA ESPINOSA, Laboratoire de Teleinformatique                   |
| Ecole Polytechnique Federal de Lausanne, SUISSE                           |
| [email-masked]  Tel (++41) (21) 693 4652, Fax: (++41) (21) 693 6600    |
| Ingenieria Electrica, Universidad del Valle - Cali - Colombia             |
+---------------------------------------------------------------------------+
-
For help on using this list, send a message to
"[email-masked]" with one line of text: "help".