pidin [опции]
условное_обозначение
Neutrino
-d задержка
Задержка (в десятых долях секунды). Значение по умолчанию – 10.-F форматы
Формат |
Описание |
A |
Аргументы. |
a |
Идентификатор процесса. |
B |
Параметры блокировки. См. приведенный ниже раздел "Значения в столбце Blocked". |
b |
Идентификатор потока. |
c |
Размер кода процесса. |
d |
Размер данных процесса. |
E |
Окружение. |
e |
Идентификатор родительского процесса. |
f |
Флаги процесса (см. условное обозначение flags ниже). |
H |
Информация, связанная с диспетчеризацией, по каждому потоку. В случае использования адаптивного квотирования отображается название раздела, в котором выполняется поток. Для получения дополнительной информации см. «Руководство системного программиста (администратора)» КПДА.10964-01 32, раздел по адаптивной декомпозиции. Этот код форматирования был добавлен в QNX Neutrino Core OS 6.3.2. |
h |
Имя потока. Если у потока нет имени, то утилита pidin отображает его идентификатор (tid). Этот код форматирования был добавлен в QNX Neutrino Core OS 6.3.2. |
I |
Идентификатор процесса и идентификатор потока. |
i |
Процессорная маска и маска наследования. Этот код форматирования был добавлен в QNX Neutrino Core OS 6.3.2. |
J |
Состояние потока. См. раздел "Thread life cycle" ("Жизненный цикл потока") в главе "QNX Neutrino Microkernel" ("Микроядро QNX Neutrino") руководства по системной архитектуре. |
K |
Последний выполненный вызов ядра. |
l |
("эль") Последний ЦП, в котором выполнялся поток. |
M |
Память, используемая для процесса с данным идентификатором. |
m |
Размер стека процесса. |
N |
Краткое имя процесса. |
n |
Полное имя процесса. |
o |
Идентификаторы соединений и дескрипторы файлов, связанные с процессом (см. условное обозначение fds ниже). Этот код форматирования был добавлен в QNX Neutrino Core OS 6.3.2. |
P |
("P" в верхнем регистре) Родительская группа. |
p |
("p" в нижнем регистре) Приоритет потока. |
Q |
Обработчики прерываний. |
q |
Обратная трассировка подпрограмм вызова. Для достижения оптимальных результатов следует использовать данный символ управления форматом вместе с символом I. Этот код форматирования был добавлен в QNX Neutrino 6.4.0. |
R |
Таймеры. |
S |
Маска игнорируемых сигналов. |
s |
Маска ожидающих в очереди сигналов. |
T |
Число потоков. |
[ |
Длина очередей отправки, получения, ответов и импульсов. Этот код форматирования был добавлен в QNX Neutrino 6.4.0. |
f – алгоритм диспетчеризации FIFO;
r – алгоритм циклической ("карусельной") диспетчеризации;
o – другой алгоритм диспетчеризации (в настоящий момент соответствует алгоритму циклической диспетчеризации);
s – алгоритм спорадической диспетчеризации.
-f форматы
-h
Вывести краткое сообщение о способах использования утилиты.-k
-l
Режим цикла. Выводить статистику с задержкой (в десятых долях секунды), заданной опцией -d.-M форматы
Формат |
Описание |
< |
Размер кода объекта памяти. |
= |
Размер данных объекта памяти. |
> |
Адрес объекта памяти. |
? |
Смещение объекта памяти. |
M |
Память, используемая для процесса с данным идентификатором. |
: (двоеточие) |
Имя объекта памяти. |
; (точка с запятой) |
Смещение. |
-n узел
Имя удаленного узла, от которого требуется получить информацию.-o приоритет
Выполнить с приоритетом, указанным в значении аргумента приоритет.-P идентифиатор_процесса
Отобразить только указанное семейство процессов (значение аргумента идентификатор_процесса может быть представлено именем или номером).-p идентификатор_процесса
Отобразить только указанный процесс (значение аргумента идентификатор_процесса может быть представлено именем или номером).arguments
Вывести аргументы отображаемых процессов.backtrace
Вывести информацию по обратной трассировке для каждого потока в отображаемых процессах. Пример.$ pidin -p devc-con-hid back
pid-tid backtrace
4103-01 b033ab5b:b03323cb:b03324f3:804f6ed:804c120:804a285
4103-02 b033af63:805ca60:b031f0ad
channels
environment
Вывести информацию об окружении для отображаемых процессов.extsched
family
Вывести информацию о сеансах, группах процессов, а также родительских, одноуровневых и порожденных процессах отображаемых процессов.fds
дескриптор файла; если это побочный канал, то за дескриптором файла указывается s;
идентификатор процесса, с которым установлено соединение;
открытые флаги (r или -, за которыми указываются w или - ) или MP для точки монтирования;
смещение;
имя файла или устройства (при наличии).
flags
Отобразить флаги процессов в шестнадцатеричном формате следующим образом:
Флаг |
Значение |
_NTO_PF_NOCLDSTOP |
0x00000001 |
_NTO_PF_LOADING |
0x00000002 |
_NTO_PF_TERMING |
0x00000004 |
_NTO_PF_ZOMBIE |
0x00000008 |
_NTO_PF_NOZOMBIE |
0x00000010 |
_NTO_PF_FORKED |
0x00000020 |
_NTO_PF_ORPHAN_PGRP |
0x00000040 |
_NTO_PF_STOPPED |
0x00000080 |
_NTO_PF_DEBUG_STOPPED |
0x00000100 |
_NTO_PF_BKGND_PGRP |
0x00000200 |
_NTO_PF_NO_LIMITS |
0x00000400 |
_NTO_PF_CONTINUED |
0x00000800 |
_NTO_PF_CHECK_INTR |
0x00001000 |
_NTO_PF_COREDUMP |
0x00002000 |
_NTO_PF_PTRACED |
0x00004000 |
_NTO_PF_RING0 |
0x00008000 |
_NTO_PF_SLEADER |
0x00010000 |
_NTO_PF_WAITINFO |
0x00020000 |
_NTO_PF_VFORKED |
0x00040000 |
_NTO_PF_DESTROYALL |
0x00080000 |
_NTO_PF_NOCOREDUMP |
0x00100000 |
_NTO_PF_NOCTTY |
0x00200000 |
_NTO_PF_THREADWATCH |
0x80000000 |
info
Вывести информацию о системе, например, тип процессора (процессоров) и объем свободной памяти.irqs
Показать обработчики запросов прерывания, принадлежащие процессу. Для каждого обработчика утилита pidin отображает следующие данные:id – идентификатор прерывания, возвращаемый при выполнении функции InterruptAttach() или InterruptAttachEvent().
vector – вектор прерывания, передаваемый функции InterruptAttach() или InterruptAttachEvent().
mask_count – счетчик уровня маски.
flags – флаги прерывания. К действительным флагам относятся следующие:
T–_NTO_INTR_FLAGS_TRK_MSK
P–_NTO_INTR_FLAGS_PROCESS
E–_NTO_INTR_FLAGS_END
handler:area – адрес обработчика прерываний и область обработчика прерываний.
event – описание доставляемого события сигнализации. К действительным описаниям относятся следующие:
SIGNAL – номер сигнала;
SIGNAL_CODE – код_сигнала:значение;
SIGNAL_THREAD – код_сигнала:значение;
PULSE – идентификатор_соединения:код_приоритета:значение;
UNBLOCK;
INTR;
THREAD – код:значение.
mapinfo
Вывести информацию об отображении объектов в памяти. Выходные данные представлены следующим образом:4101 8 proc/boot/io-usb 10o RECEIVE 80K 424K 4096(20K)
libc.so.3 @b0300000 452K 16K
devu-uhci.so @b8200000 24K 4096
devu-ohci.so @b8207000 24K 4096
devu-ehci.so @b820e000 28K 4096
Mapped Phys Memory @40100000 (ee000000) 12K S
Эти выходные данные включают в себя следующую информацию:
имя объекта памяти или Mapped Phys Memory в случае отображения объектов в физической памяти;
адрес объекта памяти, за которым указывается смещение (если применимо);
размеры кода и данных объекта;
флаги объекта памяти, которые могут быть представлены следующими флагами:
ANON – MAP_PRIVATE, MAP_ANON;
E – MAP_ELF;
F – MAP_FIXED;
P – MAP_PRIVATE;
S – MAP_SHARED.
memory
/dev/mem @38100000 ( 0) 172K
net
Вывести системную информацию обо всех узлах в сети Qnet.pmem
Вывести информацию только о памяти, используемой процессом.rc
Вывести имена и аргументы процессов всех удаленных узлов, подключенных к компьютеру.regs
Вывести значения регистров.rmasks
sched
session
signals
Вывести состояние сигналов отображаемого процесса.syspage
threads
Вывести имя потока. Если у потока нет имени, то утилита pidin отображает его идентификатор (идентификатор_потока).timers
Вывести информацию о таймерах, принадлежащих процессу. Для каждого таймера выводятся следующие данные:id – идентификатор таймера, возвращаемый функцией TimerCreate().
tid – идентификатор потока, связанный с этим таймером (0 для всего процесса).
overruns – количество переполнений.
clock_type – используемый тип часов. К действительным описаниям относятся следующие:
REAL – CLOCK_REALTIME;
SOFT – CLOCK_SOFTTIME;
MONO – CLOCK_MONOTONIC.
flags – флаг таймера. К действительным флагам относятся следующие:
X – _NTO_TI_EXPIRED;
A – _NTO_TI_ABSOLUTE;
a – _NTO_TI_ACTIVE;
msec – время, оставшееся до истечения срока (в миллисекундах).
interval_msec – интервал таймера (в миллисекундах).
event – описание события сигнализации, доставляемого по истечении срока таймера. Список действительных описаний событий приведен в описании условного обозначения irq.
times
Для каждого отображаемого процесса выводятся следующие данные:start time – время и дата запуска процесса;
utime – время использования ЦП процессом (в секундах);
stime – время использования ЦП ядром от имени процесса (в секундах);
cutime – время использования ЦП процессами, порожденными данным процессом (в секундах);
cstime – время использования ЦП ядром от имени процессов, порожденных данным процессом (в секундах).
ttimes
Отобразить значения времени потоков.users
pidin syspage=asinfo
Состояние |
Значение |
CONDVAR |
Адрес переменной условия. |
JOIN |
Идентификатор блокирующего потока. |
MUTEX |
Адрес взаимного исключения или идентификаторы блокируемого процесса и потока, за которыми указывается количество блокировок в следующем формате: идентификатор_процесса-идентификатор_потока #количество_блокировок |
RECEIVE |
Идентификатор канала в процессе, в котором блокируется поток. |
REPLY |
Идентификатор процесса. |
SEM |
Адрес семафора. |
SEND |
Идентификатор процесса. |
STACK |
Размер стека. |
WAITPAGE |
Виртуальный адрес страницы. |
WAITTHREAD |
Идентификатор блокирующего потока. |
pid tid name prio STATE Blocked
1 1 /sys/procnto-instr 0f READY
1 3 /sys/procnto-instr 10r RUNNING
1 4 /sys/procnto-instr 12r RECEIVE 1
1 5 /sys/procnto-instr 12r RECEIVE 1
1 6 /sys/procnto-instr 12r RECEIVE 1
1 11 /sys/procnto-instr 12r RECEIVE 1
1 12 /sys/procnto-instr 10r RECEIVE 1
1 13 /sys/procnto-instr 10r RECEIVE 1
1 15 /sys/procnto-instr 255r RECEIVE 1
1 16 /sys/procnto-instr 10r RECEIVE 1
1 17 /sys/procnto-instr 10r RECEIVE 1
2 1 sbin/tinit 10o REPLY 1
3 1 proc/boot/slogger 10o RECEIVE 1
5 1 proc/boot/pci-bios 10o RECEIVE 1
6 1 roc/boot/devb-eide 10o SIGWAITINFO
6 2 roc/boot/devb-eide 21r RECEIVE 1
…
pid-tid name
1-01 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-03 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-04 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-05 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-06 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-11 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-12 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-13 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-15 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-16 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
1-17 rldbuild/cdr/qnx6/tmp/target/qnx6/x86/boot/sys/procnto-instr
2-01 sbin/tinit
3-01 proc/boot/slogger
5-01 proc/boot/pci-bios
6-01 proc/boot/devb-eide
…
Команда pidin mem выводит следующие данные:pid tid name prio STATE code data stack
1 1 /sys/procnto-instr 0f READY 1812K 12K 0(320)*
1 3 /sys/procnto-instr 10r RUNNING 1812K 12K 0(8192)
1 4 /sys/procnto-instr 12r RECEIVE 1812K 12K 0(8192)
1 5 /sys/procnto-instr 12r RECEIVE 1812K 12K 0(8192)
1 6 /sys/procnto-instr 12r RECEIVE 1812K 12K 0(8192)
1 11 /sys/procnto-instr 12r RECEIVE 1812K 12K 0(8192)
1 12 /sys/procnto-instr 10r RECEIVE 1812K 12K 0(8192)
1 13 /sys/procnto-instr 10r RECEIVE 1812K 12K 0(8192)
1 15 /sys/procnto-instr 255r RECEIVE 1812K 12K 0(8192)
1 16 /sys/procnto-instr 10r RECEIVE 1812K 12K 0(8192)
1 17 /sys/procnto-instr 10r RECEIVE 1812K 12K 0(8192)
procnto-instr @cfbe5000 12K 12K
2 1 sbin/tinit 10o REPLY 8192 36K 4096(516K)*
ldqnx.so.2 @b0300000 344K 16K
3 1 proc/boot/slogger 10o RECEIVE 8192 104K 4096(516K)*
ldqnx.so.2 @b0300000 344K 16K
5 1 proc/boot/pci-bios 10o RECEIVE 36K 40K 8192(516K)*
ldqnx.so.2 @b0300000 344K 16K
6 1 roc/boot/devb-eide 10o SIGWAITINFO 52K 91M 8192(516K)*
6 2 roc/boot/devb-eide 21r RECEIVE 52K 91M 4096(12K)
…
Команда pidin syspage=asinfo выводит следующие данные:Section:asinfo offset:0x00000568 size:0x00000240
0) 0-ffff o:ffff a:0000 p:100 n:io
20) 0-ffffffff o:ffff a:0010 p:100 n:memory
40) 0-ffffff o:0020 a:0010 p:100 n:memory/isa
a0) 0-9fbff o:0040 a:0017 p:100 n:memory/isa/ram
180) 1000-cfff o:00a0 a:0007 p:100 n:memory/isa/ram/sysram
1a0) 20f98-9fbff o:00a0 a:0007 p:100 n:memory/isa/ram/sysram
c0) 100000-ffffff o:0040 a:0037 p:100 n:memory/isa/ram
1c0) 100000-40e507 o:00c0 a:0007 p:100 n:memory/isa/ram/sysram
1e0) 5e533c-ffffff o:00c0 a:0027 p:100 n:memory/isa/ram/sysram
60) 6000000-ffefffff o:0020 a:0013 p:100 n:memory/device
100) 6000000-ffeafff o:0060 a:0017 p:100 n:memory/device/ram
220) 6000000-ffeafff o:0100 a:0007 p:100 n:memory/device/ram/sysram
80) fff00000-ffffffff o:0020 a:0005 p:100 n:memory/rom
e0) 1000000-5ffffff o:0020 a:0037 p:100 n:memory/ram
200) 1000000-5ffffff o:00e0 a:0027 p:100 n:memory/ram/sysram
120) 40e508-5e533b o:0020 a:0005 p:100 n:memory/imagefs
140) 400400-40e507 o:0020 a:0007 p:100 n:memory/startup
160) 40e508-5e533b o:0020 a:0007 p:100 n:memory/bootram