В этой статье есть несколько проблем. Помогите улучшить ее или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти сообщения )
|
ltrace — это отладочная утилита в Linux , используемая для отображения вызовов, которые пользовательское приложение делает для общих библиотек . Она делает это, подключаясь к динамической системе загрузки , что позволяет ей вставлять прокладки , которые отображают параметры , используемые приложением при выполнении вызова, и возвращаемое значение , которое сообщает вызов библиотеки. ltrace также может отслеживать системные вызовы Linux . Поскольку она использует механизм динамического подключения библиотек, ltrace не может отслеживать вызовы библиотек, которые статически связаны напрямую с целевым двоичным файлом. Начиная с версии 0.7.3, ltrace также может отслеживать вызовы библиотек, которые загружаются с помощью dlopen .
Ниже приведены первые несколько строк вызова xterm . Он показывает ltrace, отображающий вызовы различных библиотек, включая стандартную библиотеку C (malloc, strlen), библиотеки POSIX (getuid), X Toolkit Intrinsics (XtOpenApplication) и библиотеку межклиентской связи X11 (IceAddConnectionWatch). Возвращаемое значение вызова показано после символа =.
[pid 11783] __libc_start_main(0x407420, 1, 0x7fff75b6aad8, 0x443cc0, 0x443d50 <незаконченный ...>[pid 11783] geteuid() = 1000[pid 11783] getegid() = 1000[pid 11783] getuid() = 1000[pid 11783] getgid() = 1000[pid 11783] setuid(1000) = 0[pid 11783] malloc(91) = 0x00cf8010[pid 11783] XtSetLanguageProc(0, 0, 0, 0x7f968c9a3740, 1) = 0x7f968bc16220[pid 11783] ioctl(0, 21505, 0x7fff75b6a960) = 0[pid 11783] XtSetErrorHandler(0x42bbb0, 0x44f99c, 0x669f80, 146, 0x7fff75b6a72c) = 0[pid 11783] XtOpenApplication(0x670260, 0x44f99c, 0x669f80, 146, 0x7fff75b6a72c) = 0xd219a0[pid 11783] IceAddConnectionWatch(0x42adc0, 0, 0, 0x7f968c9a3748, 0 <незавершенный ...>[pid 11783] IceConnectionNumber(0xd17ec0, 0, 1, 0xcfb138, 0xd17c00) = 4[pid 11783] <... IceAddConnectionWatch возобновлен> ) = 1[pid 11783] XtSetErrorHandler(0, 0, 1, 0xcfb138, 0xd17c00) = 0[pid 11783] XtGetApplicationResources(0xd219a0, 0x6701c0, 0x66b220, 34, 0) = 0[pid 11783] strlen("выкл") = 3