No meu dispositivo Android, existe o arquivo chamado /proc/net/unix
who's content não está de acordo com o de qualquer distribuição linux padrão (que mostra os soquetes de domínio unix).
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) O que essas colunas diferentes representam?
EDIT : Ok, eu encontrei isso :
Aqui 'Num' é o número do slot da tabela do kernel, 'RefCount' é o número de usuários do soquete, 'Protocol' atualmente é sempre 0, 'Flags' representam os sinalizadores internos do kernel que mantêm o status do soquete. Atualmente, o tipo é sempre '1' (soquetes de grama de dados do domínio Unix ainda não são suportados no kernel). 'St' é o estado interno do soquete e Path é o caminho vinculado (se houver) do soquete.
No entanto, isso não está atualizado, pois temos um type
e não esclarecemos o que "estado interno" significa.
(2) Também no final do caminho, às vezes há um número adicional sem o próprio nome da coluna. O que é isso?
Além disso, onde no código fonte do kernel eu poderia esperar encontrar onde isso é criado?
EDIT: 2016-04-27 (Resolvido)
Graças à resposta abaixo, confirmei lsof |grep qmux
que o número na última coluna de qmux_client_sockets
itens é o PID do processo que o utiliza.
fonte
/dev/socket/qmux_radio/
apenas no abridor de soquete virtual chamadoqmux_client_socket
. Mas sua ajuda me fez verificarps
quais são os mesmos.