идентификатор / идентификатор процесса анализа из / proc, идентификаторы потоков

Когда я обрабатываю идентификаторы процессов из / proc, очевидно, что каждый поток процесса получает свой собственный идентификатор. И я понимаю, что все потоки в том же процессе могут быть собраны из /proc/${pid}/task/ .

Но мой вопрос: могу ли я предположить, что первый идентификатор в списке (самый низкий номер один?) Является основным потоком процесса?

Цель, которую я в конечном счете пытаюсь сделать, – написать быстрый скрипт ps в python без использования подпроцесса или вызова оболочки.

One Solution collect form web for “идентификатор / идентификатор процесса анализа из / proc, идентификаторы потоков”

Вы не можете предположить, что идентификаторы процессов (и идентификаторы потоков) могут быть повторно использованы, поэтому заказ не гарантируется. (Это маловероятно для недавно загруженной 64-битной системы, но вы увидите ее на машинах с большими перерывами).

Вы можете получить идентификатор группы потоков (который является идентификатором процесса) из /proc/${id}/status . Это в строке Tgid: nnnnn .

Пример:

 $ cat /proc/8288/status Name: vlc State: S (sleeping) Tgid: 8281 // main vlc process id Pid: 8288 // thread id 
  • Выполнение команды на всех серверах с использованием Fabric
  • чувствительность к регистру; те же целевые идентификаторы
  • Установите Cython с python3 в Docker
  • python vs bc при оценке 6 ^ 6 ^ 6
  • Две версии python 2.x, установленные в одной системе
  • Невозможно использовать python IPWhois: экземпляр IPWhois не имеет атрибута 'lookup_rws'
  • Установка новейшей версии go в debian, не найденная другими программами
  • Центр программного обеспечения не открывается в Linux Mint
  • Modoboa 1.1.1 Ошибки развертывания
  • Как изменить файл общего файла python (.so)?
  • "Except (IOError, OSError), e: SyntaxError: недопустимый синтаксис" при настройке файла блокировки python
  • readline - почему он делает только возврат каретки, а не линию при достижении конца строки?
  • Interesting Posts

    переформатирование команды вывода в сценарии bash

    Как закрыть терминал, не убив запущенную команду?

    сценарий оболочки для перемещения выбранных файлов из одного каталога в другой

    Как мне отменить / заменить один элемент запуска `cmd1 && cmd2 && cmd3 && …` chain?

    Может ли 32-разрядные приложения на 64-битном ядре использовать всю память?

    Мостовой интерфейс Ethernet

    grep – распознать возврат каретки как новую строку

    Порт SSH Переслать локальный IRC-сервер на мой удаленный сервер

    tmux: объединить все окна как панели

    Как пометить все, что хранится в файловой системе Linux?

    Список только временных псевдонимов в bash

    перенаправить звук (микрофон) через ssh, как позвонить через ssh?

    SSH-подобный сеанс, который выживает при отключении физической сети

    Как найти процесс, выполняющий очень высокое чтение io (без iotop)

    Автоматизация разделов USB NTFS на Gnome не работает, если имя устройства – sdb (FAT32 в порядке)

    Linux и Unix - лучшая ОС в мире.