2013-11-20 3 views
0

Я видел много учебников и документации о том, как получить дескрипторы файлов из заданного pid. Ну, я хочу сделать иначе.Можно получить ПИД из заданного дескриптора файла (программно используя C++)?

Спасибо.

+1

В противном случае, что теперь? Возможно, вы ищете исходный код для [lsof] (http://en.wikipedia.org/wiki/Lsof)? –

+0

Спасибо за комментарии. Бен уже отвечает мне. –

+0

Это зависит от системы. Вы можете сделать это на linux, например, используя SO_PEERCRED для извлечения файла ucred.pid. Аналогично, Solaris получила возможность получить зону peer + pid. –

ответ

2

Конечно, нет, это похоже на попытку получить PID, который вызвал main. Каждый процесс имеет дескриптор файла 0 (stdin), 1, 2 и т. Д., И они означают разные вещи для каждого процесса.

Дескриптор файла, который является просто маленьким целым, не имеет смысла, если вы уже не знаете, о каком процессе вы говорите.

Смежные вопросы