Я использую ptrace для подсчета системных вызовов программы.
Проблема в том, что для программы A моя программа выводит количество сделанных системных вызовов (открыть, закрыть, прочитать, записать).
Результаты моей программы и strace (с опцией -c) с программой A в качестве аргумента были идентичными, за исключением открытых системных вызовов.
Моя программа напечатала 15, а strace напечатала 3.
Но я предполагаю, что, поскольку strace печатает и некоторые другие системные вызовы, в сумме они могут составлять 15 открытых системных вызовов, которые подсчитала моя программа.
Я использую SYS_open для проверки результатов ptrace при просмотре регистра ORIG_EAX/RAX.
Системные вызовы, которые печатает strace, находятся здесь.
Обновление:
Я скомпилировал свою программу из терминала и запустил ее оттуда, и с помощью strace результаты были такими же.
Я разрабатываю в netbeans.
Почему это случилось?
SYS_open
. (Я добавил обновление полчаса назад, пожалуйста, посмотрите) - person Chris   schedule 08.04.2013