Для чего используется sys / user.h? - PullRequest
2 голосов
/ 01 мая 2010

Я проверял код приложения linux и увидел #include в одном из файлов кода. Я попытался найти его на opengroup.org, но не смог найти его, вот как выглядит каталог sys: http://www.opengroup.org/onlinepubs/000095399/basedefs/sys/. Я предполагаю, что это не стандартный заголовочный файл, но я проверил его в моем / usr / include / sys, и он был там.

Что он делает и для чего он используется? Если бы вы могли предоставить мне какое-то руководство для этого, я был бы признателен. Благодарю.

Ответы [ 2 ]

2 голосов
/ 02 мая 2010

Комментарий в верхней части заголовка говорит о многом:

#ifndef _SYS_USER_H
#define _SYS_USER_H     1

/* The whole purpose of this file is for GDB and GDB only.  Don't read
   too much into it.  Don't use it for anything other than GDB unless
   you know what you are doing.  */

GNU-специфичные расширения обычно довольно легко идентифицировать (например, _GNU_SOURCE). Однако отладка и инструментарий должны работать, даже если эти расширения не включены. Например, люди хотят использовать GDB для кода, который не #define _GNU_SOURCE.

В этом случае материал, который не определен в ISO C (и не требуется POSIX), обычно четко обозначен как таковой.

Вы также найдете все виды странно выглядящих символов в программах, которые включают заголовки Valgrind .

2 голосов
/ 01 мая 2010

Используется совместно с ptrace (2) (см. PTRACE_PEEKUSER): http://linux.die.net/man/2/ptrace

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...