Solaris 模块调试器指南

进程间通信调试支持 (ipc)

ipc 模块可为实现消息队列、信号和共享内存进程间通信元语提供调试支持。

dcmd

::ipcs [-l]

显示系统范围的 IPC 标识符的列表,这些标识符对应于已知的消息队列、信号和共享内存段。 如果指定了 -l 选项,则显示较长的信息列表。

address ::msg [-l] [-t type]

显示指定的消息队列元素(结构 msg)的属性。 如果存在 -l 选项,则使用十六进制和 ASCII 显示消息的原始内容。 如果存在 -t 选项,则可以将其用于过滤输出并仅显示指定类型的消息。 这可能有助于将 msgqueue walker 的输出传输到 ::msg

id ::msqid [-k]

将指定的消息队列 IPC 标识符转换为指向对应内核实现结构的指针,并列显此内核结构的地址。 如果存在 -k 选项,则将 id 相应地解释为要匹配的消息队列键(请参见 msgget(2))。

[ address ] ::msqid_ds [-l]

列显指定的 msqid_ds 结构或活动 msqid_ds 结构(消息队列标识符)表。 如果指定了 -l 选项,则显示较长的信息列表。

id ::semid [-k]

将指定的信号 IPC 标识符转换为指向对应内核实现结构的指针,并列显此内核结构的地址。 如果存在 -k 选项,则将 id 相应地解释为要匹配的信号键(请参见 semget(2))。

[ address ] ::semid_ds [-l]

列显指定的 semid_ds 结构或活动 semid_ds 结构(信号标识符)表。 如果指定了 -l 选项,则显示较长的信息列表。

id ::shmid [-k]

将指定的共享内存 IPC 标识符转换为指向对应内核实现结构的指针,并列显此内核结构的地址。 如果存在 -k 选项,则将 id 相应地解释为要匹配的共享内存键(请参见 shmget(2))。

[ address ] ::shmid_ds [-l]

列显指定的 shmid_ds 结构或活动 shmid_ds 结构(共享内存段标识符)表。 如果指定了 -l 选项,则显示较长的信息列表。

Walker

msg

遍历与消息队列标识符相对应的活动 msqid_ds 结构。此结构在 <sys/msg.h> 中定义。

msgqueue

迭代当前在指定消息队列中排队的 message 结构。

sem

遍历与信号标识符相对应的活动 semid_ds 结构。此结构在 <sys/sem.h> 中定义。

shm

遍历与共享内存段标识符相对应的活动 shmid_ds 结构。此结构在 <sys/shm.h> 中定义。