У меня есть машина x86_64
, и она может запускать процесс IA32
, потому что я установил 32-битную библиотеку. Теперь я хочу знать, что такое платформа, которую использует запущенный процесс? 64 бит или 32 бит?Как найти платформу работающего процесса
Единственный способ получить доступ к процессу - это системный вызов ptrace
; У меня нет исполняемого файла (например, я могу просто выполнить файл, но у меня нет прав на чтение и запись), поэтому я не могу получить заголовок ELF.
OS, который я использую, - Ubuntu 14.04 LTS.
Я не хочу получать исполняемый файл, а затем анализировать формат ELF. ТОЛЬКО ПУТЬ Я могу получить доступ к процессу: ptrace
или другие системные вызовы, такие как ptrace
, если вы знаете, скажите, пожалуйста. Потому что я хочу проанализировать процесс в программе на C.
Работает ли 'ldd'? (Он фактически выполняет файл, с некоторым скрытым параметром) –
@BenVoigt nop, на самом деле это запущенный процесс. Я прикрепляю его 'ptrace'. – litao3rd
У вас есть доступ к lsof? – tink