En mi dispositivo Android hay un archivo llamado /proc/net/unix
cuyo contenido no se ajusta al de ninguna distribución estándar de Linux (que muestra los sockets de dominio de Unix). Primeras líneas:
Num RefCount Protocol Flags Type St Inode Path
00000000: 00000002 00000000 00000000 0002 01 5287581 /data/misc/wifi/sockets/wpa_ctrl_789-3189
00000000: 00000003 00000000 00000000 0001 03 6402 /dev/socket/qmux_radio/qmux_client_socket 297
00000000: 00000002 00000000 00010000 0001 01 7180 /dev/.secure_storage/ssd_socket
00000000: 00000002 00000000 00010000 0001 01 6424 /dev/socket/cnd
00000000: 00000002 00000000 00010000 0001 01 6400 @QMulticlient
...
(1) ¿Qué significan estas diferentes columnas?
EDITAR : Ok, he encontrado esto :
Aquí 'Num' es el número de ranura de la tabla del kernel, 'RefCount' es el número de usuarios del socket, 'Protocol' actualmente siempre es 0, 'Flags' representan las banderas internas del kernel que contienen el estado del socket. Actualmente, el tipo es siempre '1' (los sockets de gramo de datos de dominio de Unix aún no son compatibles en el núcleo). 'St' es el estado interno del socket y Path es la ruta enlazada (si existe) del socket.
Sin embargo, eso no está actualizado ya que tenemos type
y no aclaramos qué significa "estado interno".
(2) También al final de la ruta, a veces hay un número adicional sin su propio nombre de columna. ¿Que es eso?
Además, ¿en qué parte del código fuente del kernel podría esperar encontrar dónde se crea esto?
EDITAR: 2016-04-27 (Resuelto)
Gracias a la respuesta a continuación, he confirmado lsof |grep qmux
que el número en la última columna para los qmux_client_sockets
elementos es el PID del proceso que lo usa.
fuente
/dev/socket/qmux_radio/
del abridor de socket virtual llamadoqmux_client_socket
. Pero tu ayuda me hizo comprobarps
cuáles son las mismas.