push_target (&child_ops);
push_target (&deprecated_child_ops);
ptrace_him (int pid){  push_target (&child_ops);  /* On some targets, there must be some explicit synchronization     between the parent and child processes after the debugger     forks, and before the child execs the debuggee program.  This     call basically gives permission for the child to exec.   */  target_acknowledge_created_inferior (pid);  /* START_INFERIOR_TRAPS_EXPECTED is defined in inferior.h,   * and will be 1 or 2 depending on whether we're starting   * without or with a shell.   */  startup_inferior (START_INFERIOR_TRAPS_EXPECTED);  /* On some targets, there must be some explicit actions taken after     the inferior has been started up.   */  target_post_startup_inferior (pid_to_ptid (pid));}