Я использую команду:strace -e trace = сеть, показывающая только SIGCHLD?
Трассирование -tt -o $ {имя файла} -e след = сетевой GDB --args $ {EXECUTABLE}
отслеживать какие системные вызовы происходят во время подключения и отправлять сообщения одноранговому узлу. Тем не менее, я только получать следующие данные:
15:40:11.908857 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=5019, si_status=SIGSTOP, si_utime=0, si_stime=0} ---
15:40:11.911130 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=4987, si_status=SIGTRAP, si_utime=1, si_stime=0} ---
15:40:11.914907 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4987, si_status=0, si_utime=1779, si_stime=180} ---
15:40:11.963586 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=4983, si_status=SIGTRAP, si_utime=37, si_stime=4} ---
15:40:11.973691 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=5019, si_status=SIGSTOP, si_utime=0, si_stime=0} ---
15:40:11.975929 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=4983, si_status=SIGTRAP, si_utime=37, si_stime=4} ---
15:40:11.979922 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4983, si_status=0, si_utime=1816, si_stime=184} ---
Если я не вижу гнездовые звонки в read()
close()
и т.д.?
Вы пытались добавить '-f', чтобы следовать за fork? – mpromonet
@mpromonet Я изначально не был. Просто попробовал strace -tt -f -o $ {filename} -e trace = network gdb -args $ {EXECUTABLE}, но получить Невозможно создать процесс: операция не разрешена. Во время запуска программа вышла с кодом 127. – user997112
Почему бы не использовать 'strace -f -tt -o $ {filename} -e trace = network $ {EXECUTABLE}' без gdb? С вашей командой вы регистрируете системный вызов gdb. – mpromonet